cgse 2023.38.0__tar.gz → 2024.1.4__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 (842) hide show
  1. cgse-2024.1.4/.gitignore +35 -0
  2. cgse-2024.1.4/NOTES.md +124 -0
  3. cgse-2024.1.4/PKG-INFO +38 -0
  4. cgse-2024.1.4/README.md +27 -0
  5. cgse-2024.1.4/TODO.md +3 -0
  6. cgse-2024.1.4/bump.py +85 -0
  7. cgse-2024.1.4/libs/cgse-common/README.md +39 -0
  8. cgse-2024.1.4/libs/cgse-common/pyproject.toml +80 -0
  9. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/bits.py +266 -41
  10. cgse-2024.1.4/libs/cgse-common/src/egse/calibration.py +250 -0
  11. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/command.py +11 -30
  12. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/config.py +17 -12
  13. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/control.py +62 -155
  14. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/decorators.py +17 -13
  15. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/device.py +5 -3
  16. cgse-2024.1.4/libs/cgse-common/src/egse/env.py +592 -0
  17. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/exceptions.py +1 -1
  18. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/hk.py +66 -37
  19. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/metrics.py +31 -23
  20. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/mixin.py +4 -4
  21. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/monitoring.py +2 -1
  22. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/obsid.py +0 -2
  23. cgse-2024.1.4/libs/cgse-common/src/egse/persistence.py +58 -0
  24. cgse-2024.1.4/libs/cgse-common/src/egse/plugin.py +97 -0
  25. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/process.py +13 -4
  26. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/protocol.py +5 -1
  27. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/proxy.py +2 -2
  28. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/reload.py +3 -3
  29. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/resource.py +186 -81
  30. cgse-2024.1.4/libs/cgse-common/src/egse/response.py +101 -0
  31. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/settings.py +33 -31
  32. cgse-2024.1.4/libs/cgse-common/src/egse/settings.yaml +7 -0
  33. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/setup.py +117 -82
  34. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/system.py +134 -24
  35. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/version.py +8 -4
  36. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/zmq_ser.py +28 -0
  37. cgse-2024.1.4/libs/cgse-common/tests/data/CSL1/README.md +4 -0
  38. cgse-2024.1.4/libs/cgse-common/tests/data/CSL2/README.md +4 -0
  39. cgse-2024.1.4/libs/cgse-common/tests/data/IAS/README.md +4 -0
  40. cgse-2024.1.4/libs/cgse-common/tests/data/INTA/README.md +4 -0
  41. cgse-2024.1.4/libs/cgse-common/tests/data/conf/SETUP_20250114_1519.yaml +24 -0
  42. cgse-2024.1.4/libs/cgse-common/tests/data/data/cal_coeff_1234.csv +4 -0
  43. cgse-2024.1.4/libs/cgse-common/tests/data/data/calibration.csv +4 -0
  44. cgse-2024.1.4/libs/cgse-common/tests/data/data/data-file.txt +44 -0
  45. {cgse-2023.38.0/src/tests → cgse-2024.1.4/libs/cgse-common/tests/data}/data/test_setup.yaml +1 -1
  46. cgse-2024.1.4/libs/cgse-common/tests/data/icons/keyboard.png +0 -0
  47. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-common/tests}/dummy.py +7 -45
  48. cgse-2024.1.4/libs/cgse-common/tests/helpers.py +108 -0
  49. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_bits.py +18 -0
  50. cgse-2024.1.4/libs/cgse-common/tests/test_config.py +177 -0
  51. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_decorators.py +159 -0
  52. cgse-2024.1.4/libs/cgse-common/tests/test_env.py +196 -0
  53. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_hk.py +12 -0
  54. cgse-2024.1.4/libs/cgse-common/tests/test_resource.py +220 -0
  55. cgse-2024.1.4/libs/cgse-common/tests/test_response.py +109 -0
  56. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_setup.py +81 -78
  57. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_system.py +32 -13
  58. cgse-2024.1.4/libs/cgse-coordinates/README.md +1 -0
  59. cgse-2024.1.4/libs/cgse-coordinates/pyproject.toml +53 -0
  60. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/referenceFrame.py +45 -45
  61. cgse-2024.1.4/libs/cgse-core/README.md +1 -0
  62. cgse-2024.1.4/libs/cgse-core/pyproject.toml +66 -0
  63. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/confman/__init__.py +67 -22
  64. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/confman/confman_cs.py +43 -42
  65. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/logger/__init__.py +39 -21
  66. cgse-2024.1.4/libs/cgse-core/src/egse/logger/__main__.py +12 -0
  67. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/logger/log_cs.py +39 -50
  68. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/storage/__init__.py +91 -6
  69. cgse-2024.1.4/libs/cgse-core/src/egse/storage/__main__.py +3 -0
  70. cgse-2024.1.4/libs/cgse-core/src/egse/storage/persistence.py +537 -0
  71. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/storage/storage_cs.py +17 -30
  72. cgse-2024.1.4/libs/cgse-core/src/scripts/cgse.py +179 -0
  73. cgse-2024.1.4/libs/cgse-core/tests/conftest.py +204 -0
  74. cgse-2024.1.4/libs/cgse-core/tests/test_confman_setups.py +25 -0
  75. cgse-2024.1.4/libs/cgse-core/tests/test_logger.py +83 -0
  76. cgse-2024.1.4/libs/cgse-gui/README.md +1 -0
  77. cgse-2024.1.4/libs/cgse-gui/pyproject.toml +37 -0
  78. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-gui}/src/egse/gui/__init__.py +9 -0
  79. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-gui}/src/egse/gui/states.py +3 -3
  80. cgse-2024.1.4/libs/cgse-gui/src/egse/gui/styles/default.qss +48 -0
  81. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-gui}/src/egse/gui/switch.py +2 -6
  82. cgse-2024.1.4/projects/generic/cgse-tools/README.md +1 -0
  83. cgse-2024.1.4/projects/generic/cgse-tools/pyproject.toml +69 -0
  84. cgse-2024.1.4/projects/generic/cgse-tools/src/egse/tools/status.py +86 -0
  85. cgse-2024.1.4/projects/generic/cgse-tools/src/scripts/cgse_plugins.py +9 -0
  86. cgse-2024.1.4/projects/generic/cgse-tools/src/scripts/cgse_service_plugins.py +10 -0
  87. cgse-2024.1.4/projects/generic/symetrie-hexapod/README.md +1 -0
  88. cgse-2024.1.4/projects/generic/symetrie-hexapod/pyproject.toml +64 -0
  89. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/__init__.py +43 -14
  90. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/alpha.py +35 -50
  91. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/dynalpha.py +2 -6
  92. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/hexapod_ui.py +17 -22
  93. cgse-2024.1.4/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.py +266 -0
  94. cgse-2023.38.0/src/egse/stages/huber/smc9300.yaml → cgse-2024.1.4/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.yaml +15 -16
  95. cgse-2023.38.0/src/egse/gimbal/symetrie/gimbal_cs.py → cgse-2024.1.4/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_cs.py +41 -40
  96. cgse-2024.1.4/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_protocol.py +128 -0
  97. cgse-2024.1.4/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_ui.py +449 -0
  98. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/puna.yaml +5 -5
  99. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/puna_cs.py +3 -2
  100. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/puna_protocol.py +3 -3
  101. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/puna_ui.py +5 -7
  102. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/punaplus.py +1 -1
  103. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/zonda.py +3 -3
  104. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/zonda.yaml +21 -21
  105. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/zonda_cs.py +1 -0
  106. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/zonda_ui.py +5 -6
  107. cgse-2024.1.4/projects/generic/symetrie-hexapod/src/scripts/cgse_service_plugins.py +27 -0
  108. cgse-2024.1.4/projects/plato/plato-fits/README.md +1 -0
  109. cgse-2024.1.4/projects/plato/plato-fits/pyproject.toml +55 -0
  110. cgse-2023.38.0/src/egse/storage/persistence.py → cgse-2024.1.4/projects/plato/plato-fits/src/egse/plugins/storage/fits.py +8 -1082
  111. cgse-2024.1.4/projects/plato/plato-hdf5/pyproject.toml +55 -0
  112. cgse-2024.1.4/projects/plato/plato-hdf5/src/egse/plugins/storage/hdf5.py +154 -0
  113. cgse-2024.1.4/projects/plato/plato-spw/pyproject.toml +50 -0
  114. {cgse-2023.38.0 → cgse-2024.1.4/projects/plato/plato-spw}/src/egse/spw.py +1 -0
  115. cgse-2024.1.4/pyproject.toml +42 -0
  116. cgse-2024.1.4/ruff.toml +25 -0
  117. cgse-2023.38.0/COPYING +0 -674
  118. cgse-2023.38.0/COPYING.LESSER +0 -165
  119. cgse-2023.38.0/PKG-INFO +0 -144
  120. cgse-2023.38.0/README.md +0 -71
  121. cgse-2023.38.0/pyproject.toml +0 -181
  122. cgse-2023.38.0/setup.cfg +0 -4
  123. cgse-2023.38.0/src/cgse.egg-info/PKG-INFO +0 -144
  124. cgse-2023.38.0/src/cgse.egg-info/SOURCES.txt +0 -780
  125. cgse-2023.38.0/src/cgse.egg-info/dependency_links.txt +0 -1
  126. cgse-2023.38.0/src/cgse.egg-info/entry_points.txt +0 -75
  127. cgse-2023.38.0/src/cgse.egg-info/requires.txt +0 -59
  128. cgse-2023.38.0/src/cgse.egg-info/top_level.txt +0 -2
  129. cgse-2023.38.0/src/cov_html/keybd_closed.png +0 -0
  130. cgse-2023.38.0/src/cov_html/keybd_open.png +0 -0
  131. cgse-2023.38.0/src/demos/hexapod_demo.py +0 -28
  132. cgse-2023.38.0/src/demos/stages_demo.py +0 -38
  133. cgse-2023.38.0/src/egse/__init__.py +0 -12
  134. cgse-2023.38.0/src/egse/__main__.py +0 -32
  135. cgse-2023.38.0/src/egse/aeu/aeu.py +0 -5235
  136. cgse-2023.38.0/src/egse/aeu/aeu_awg.yaml +0 -265
  137. cgse-2023.38.0/src/egse/aeu/aeu_crio.yaml +0 -273
  138. cgse-2023.38.0/src/egse/aeu/aeu_cs.py +0 -626
  139. cgse-2023.38.0/src/egse/aeu/aeu_devif.py +0 -321
  140. cgse-2023.38.0/src/egse/aeu/aeu_main_ui.py +0 -912
  141. cgse-2023.38.0/src/egse/aeu/aeu_metrics.py +0 -131
  142. cgse-2023.38.0/src/egse/aeu/aeu_protocol.py +0 -463
  143. cgse-2023.38.0/src/egse/aeu/aeu_psu.yaml +0 -204
  144. cgse-2023.38.0/src/egse/aeu/aeu_ui.py +0 -873
  145. cgse-2023.38.0/src/egse/aeu/arbdata/FccdRead.arb +0 -2
  146. cgse-2023.38.0/src/egse/aeu/arbdata/FccdRead_min_points.arb +0 -2
  147. cgse-2023.38.0/src/egse/aeu/arbdata/HeaterSync_FccdRead.arb +0 -2
  148. cgse-2023.38.0/src/egse/aeu/arbdata/HeaterSync_ccdRead25.arb +0 -2
  149. cgse-2023.38.0/src/egse/aeu/arbdata/HeaterSync_ccdRead31_25.arb +0 -2
  150. cgse-2023.38.0/src/egse/aeu/arbdata/HeaterSync_ccdRead37_50.arb +0 -2
  151. cgse-2023.38.0/src/egse/aeu/arbdata/HeaterSync_ccdRead43_75.arb +0 -2
  152. cgse-2023.38.0/src/egse/aeu/arbdata/HeaterSync_ccdRead50.arb +0 -2
  153. cgse-2023.38.0/src/egse/aeu/arbdata/Heater_FccdRead_min_points.arb +0 -2
  154. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead25.arb +0 -2
  155. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead25_150ms.arb +0 -2
  156. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead31_25.arb +0 -2
  157. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead31_25_150ms.arb +0 -2
  158. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead37_50.arb +0 -2
  159. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead37_50_150ms.arb +0 -2
  160. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead43_75.arb +0 -2
  161. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead43_75_150ms.arb +0 -2
  162. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead50.arb +0 -2
  163. cgse-2023.38.0/src/egse/aeu/arbdata/ccdRead50_150ms.arb +0 -2
  164. cgse-2023.38.0/src/egse/alert/__init__.py +0 -1049
  165. cgse-2023.38.0/src/egse/alert/alertman.yaml +0 -37
  166. cgse-2023.38.0/src/egse/alert/alertman_cs.py +0 -234
  167. cgse-2023.38.0/src/egse/alert/alertman_ui.py +0 -603
  168. cgse-2023.38.0/src/egse/alert/gsm/beaglebone.py +0 -138
  169. cgse-2023.38.0/src/egse/alert/gsm/beaglebone.yaml +0 -51
  170. cgse-2023.38.0/src/egse/alert/gsm/beaglebone_cs.py +0 -108
  171. cgse-2023.38.0/src/egse/alert/gsm/beaglebone_devif.py +0 -130
  172. cgse-2023.38.0/src/egse/alert/gsm/beaglebone_protocol.py +0 -48
  173. cgse-2023.38.0/src/egse/camera.py +0 -44
  174. cgse-2023.38.0/src/egse/collimator/fcul/ogse.py +0 -1077
  175. cgse-2023.38.0/src/egse/collimator/fcul/ogse.yaml +0 -14
  176. cgse-2023.38.0/src/egse/collimator/fcul/ogse_cs.py +0 -154
  177. cgse-2023.38.0/src/egse/collimator/fcul/ogse_devif.py +0 -358
  178. cgse-2023.38.0/src/egse/collimator/fcul/ogse_protocol.py +0 -129
  179. cgse-2023.38.0/src/egse/collimator/fcul/ogse_sim.py +0 -431
  180. cgse-2023.38.0/src/egse/collimator/fcul/ogse_ui.py +0 -1108
  181. cgse-2023.38.0/src/egse/confman/confman_ui.py +0 -381
  182. cgse-2023.38.0/src/egse/confman/setup_ui.py +0 -565
  183. cgse-2023.38.0/src/egse/csl/__init__.py +0 -50
  184. cgse-2023.38.0/src/egse/csl/commanding.py +0 -78
  185. cgse-2023.38.0/src/egse/csl/icons/hexapod-connected-selected.svg +0 -30
  186. cgse-2023.38.0/src/egse/csl/icons/hexapod-connected.svg +0 -30
  187. cgse-2023.38.0/src/egse/csl/icons/hexapod-homing-selected.svg +0 -68
  188. cgse-2023.38.0/src/egse/csl/icons/hexapod-homing.svg +0 -68
  189. cgse-2023.38.0/src/egse/csl/icons/hexapod-retract-selected.svg +0 -56
  190. cgse-2023.38.0/src/egse/csl/icons/hexapod-retract.svg +0 -51
  191. cgse-2023.38.0/src/egse/csl/icons/hexapod-zero-selected.svg +0 -56
  192. cgse-2023.38.0/src/egse/csl/icons/hexapod-zero.svg +0 -56
  193. cgse-2023.38.0/src/egse/csl/icons/stop.svg +0 -1
  194. cgse-2023.38.0/src/egse/csl/initialisation.py +0 -102
  195. cgse-2023.38.0/src/egse/csl/mech_pos_settings.yaml +0 -18
  196. cgse-2023.38.0/src/egse/das.py +0 -1247
  197. cgse-2023.38.0/src/egse/das.yaml +0 -7
  198. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00000_170620_150000.yaml +0 -5
  199. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00001_170620_151010.yaml +0 -69
  200. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00002_170620_151020.yaml +0 -69
  201. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00003_170620_151030.yaml +0 -69
  202. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00004_170620_151040.yaml +0 -69
  203. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00005_170620_151050.yaml +0 -69
  204. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00006_170620_151060.yaml +0 -69
  205. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00007_170620_151070.yaml +0 -69
  206. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00008_170620_151080.yaml +0 -75
  207. cgse-2023.38.0/src/egse/data/conf/SETUP_CSL_00010_210308_083016.yaml +0 -138
  208. cgse-2023.38.0/src/egse/data/conf/SETUP_INTA_00000_170620_150000.yaml +0 -4
  209. cgse-2023.38.0/src/egse/data/conf/SETUP_SRON_00000_170620_150000.yaml +0 -4
  210. cgse-2023.38.0/src/egse/dpu/__init__.py +0 -2681
  211. cgse-2023.38.0/src/egse/dpu/ccd_ui.py +0 -508
  212. cgse-2023.38.0/src/egse/dpu/dpu.py +0 -786
  213. cgse-2023.38.0/src/egse/dpu/dpu.yaml +0 -153
  214. cgse-2023.38.0/src/egse/dpu/dpu_cs.py +0 -272
  215. cgse-2023.38.0/src/egse/dpu/dpu_ui.py +0 -668
  216. cgse-2023.38.0/src/egse/dpu/fitsgen.py +0 -2077
  217. cgse-2023.38.0/src/egse/dpu/fitsgen_test.py +0 -752
  218. cgse-2023.38.0/src/egse/dpu/fitsgen_ui.py +0 -399
  219. cgse-2023.38.0/src/egse/dpu/hdf5_model.py +0 -332
  220. cgse-2023.38.0/src/egse/dpu/hdf5_ui.py +0 -277
  221. cgse-2023.38.0/src/egse/dpu/hdf5_viewer.py +0 -506
  222. cgse-2023.38.0/src/egse/dpu/hk_ui.py +0 -468
  223. cgse-2023.38.0/src/egse/dpu_commands.py +0 -81
  224. cgse-2023.38.0/src/egse/dsi/constants.py +0 -220
  225. cgse-2023.38.0/src/egse/dsi/esl.py +0 -870
  226. cgse-2023.38.0/src/egse/dsi/rmap.py +0 -1042
  227. cgse-2023.38.0/src/egse/dsi/rmapci.py +0 -37
  228. cgse-2023.38.0/src/egse/dsi/spw.py +0 -154
  229. cgse-2023.38.0/src/egse/dsi/spw_state.py +0 -29
  230. cgse-2023.38.0/src/egse/dyndummy.py +0 -179
  231. cgse-2023.38.0/src/egse/env.py +0 -278
  232. cgse-2023.38.0/src/egse/fdir/__init__.py +0 -28
  233. cgse-2023.38.0/src/egse/fdir/fdir_manager.py +0 -85
  234. cgse-2023.38.0/src/egse/fdir/fdir_manager.yaml +0 -51
  235. cgse-2023.38.0/src/egse/fdir/fdir_manager_controller.py +0 -228
  236. cgse-2023.38.0/src/egse/fdir/fdir_manager_cs.py +0 -164
  237. cgse-2023.38.0/src/egse/fdir/fdir_manager_interface.py +0 -25
  238. cgse-2023.38.0/src/egse/fdir/fdir_remote.py +0 -73
  239. cgse-2023.38.0/src/egse/fdir/fdir_remote.yaml +0 -37
  240. cgse-2023.38.0/src/egse/fdir/fdir_remote_controller.py +0 -50
  241. cgse-2023.38.0/src/egse/fdir/fdir_remote_cs.py +0 -97
  242. cgse-2023.38.0/src/egse/fdir/fdir_remote_interface.py +0 -14
  243. cgse-2023.38.0/src/egse/fdir/fdir_remote_popup.py +0 -31
  244. cgse-2023.38.0/src/egse/fee/__init__.py +0 -114
  245. cgse-2023.38.0/src/egse/fee/f_fee_register.yaml +0 -43
  246. cgse-2023.38.0/src/egse/fee/fee.py +0 -631
  247. cgse-2023.38.0/src/egse/fee/feesim.py +0 -750
  248. cgse-2023.38.0/src/egse/fee/n_fee_hk.py +0 -761
  249. cgse-2023.38.0/src/egse/fee/nfee.py +0 -187
  250. cgse-2023.38.0/src/egse/filterwheel/__init__.py +0 -4
  251. cgse-2023.38.0/src/egse/filterwheel/eksma/__init__.py +0 -24
  252. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc4.py +0 -661
  253. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc4.yaml +0 -121
  254. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc4_cs.py +0 -144
  255. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc4_devif.py +0 -473
  256. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc4_protocol.py +0 -81
  257. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc4_ui.py +0 -940
  258. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5.py +0 -111
  259. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5.yaml +0 -105
  260. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5_controller.py +0 -307
  261. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5_cs.py +0 -141
  262. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5_interface.py +0 -65
  263. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5_simulator.py +0 -29
  264. cgse-2023.38.0/src/egse/filterwheel/eksma/fw8smc5_ui.py +0 -1068
  265. cgse-2023.38.0/src/egse/filterwheel/eksma/testpythonfw.py +0 -215
  266. cgse-2023.38.0/src/egse/fov/__init__.py +0 -65
  267. cgse-2023.38.0/src/egse/fov/fov_hk.py +0 -712
  268. cgse-2023.38.0/src/egse/fov/fov_ui.py +0 -861
  269. cgse-2023.38.0/src/egse/fov/fov_ui_controller.py +0 -140
  270. cgse-2023.38.0/src/egse/fov/fov_ui_model.py +0 -200
  271. cgse-2023.38.0/src/egse/fov/fov_ui_view.py +0 -345
  272. cgse-2023.38.0/src/egse/gimbal/__init__.py +0 -32
  273. cgse-2023.38.0/src/egse/gimbal/symetrie/__init__.py +0 -26
  274. cgse-2023.38.0/src/egse/gimbal/symetrie/alpha.py +0 -586
  275. cgse-2023.38.0/src/egse/gimbal/symetrie/generic_gimbal_ui.py +0 -1521
  276. cgse-2023.38.0/src/egse/gimbal/symetrie/gimbal.py +0 -877
  277. cgse-2023.38.0/src/egse/gimbal/symetrie/gimbal.yaml +0 -168
  278. cgse-2023.38.0/src/egse/gimbal/symetrie/gimbal_protocol.py +0 -135
  279. cgse-2023.38.0/src/egse/gimbal/symetrie/gimbal_ui.py +0 -361
  280. cgse-2023.38.0/src/egse/gimbal/symetrie/pmac.py +0 -1006
  281. cgse-2023.38.0/src/egse/graph.py +0 -132
  282. cgse-2023.38.0/src/egse/gui/focalplane.py +0 -1281
  283. cgse-2023.38.0/src/egse/gui/formatter.py +0 -10
  284. cgse-2023.38.0/src/egse/gui/mechanisms.py +0 -588
  285. cgse-2023.38.0/src/egse/gui/stripchart.py +0 -729
  286. cgse-2023.38.0/src/egse/h5.py +0 -274
  287. cgse-2023.38.0/src/egse/help/help_ui.py +0 -126
  288. cgse-2023.38.0/src/egse/hexapod/symetrie/pmac_regex.py +0 -83
  289. cgse-2023.38.0/src/egse/icons/logo-puna.svg +0 -92
  290. cgse-2023.38.0/src/egse/images/big-rotation-stage.png +0 -0
  291. cgse-2023.38.0/src/egse/images/connected-100.png +0 -0
  292. cgse-2023.38.0/src/egse/images/cross.svg +0 -6
  293. cgse-2023.38.0/src/egse/images/disconnected-100.png +0 -0
  294. cgse-2023.38.0/src/egse/images/gui-icon.png +0 -0
  295. cgse-2023.38.0/src/egse/images/home.svg +0 -6
  296. cgse-2023.38.0/src/egse/images/info-icon.png +0 -0
  297. cgse-2023.38.0/src/egse/images/led-black.svg +0 -89
  298. cgse-2023.38.0/src/egse/images/led-green.svg +0 -85
  299. cgse-2023.38.0/src/egse/images/led-orange.svg +0 -85
  300. cgse-2023.38.0/src/egse/images/led-red.svg +0 -85
  301. cgse-2023.38.0/src/egse/images/load-icon.png +0 -0
  302. cgse-2023.38.0/src/egse/images/load-setup.png +0 -0
  303. cgse-2023.38.0/src/egse/images/load.png +0 -0
  304. cgse-2023.38.0/src/egse/images/pause.png +0 -0
  305. cgse-2023.38.0/src/egse/images/play-button.svg +0 -8
  306. cgse-2023.38.0/src/egse/images/play.png +0 -0
  307. cgse-2023.38.0/src/egse/images/process-status.png +0 -0
  308. cgse-2023.38.0/src/egse/images/restart.png +0 -0
  309. cgse-2023.38.0/src/egse/images/search.png +0 -0
  310. cgse-2023.38.0/src/egse/images/sma.png +0 -0
  311. cgse-2023.38.0/src/egse/images/start.png +0 -0
  312. cgse-2023.38.0/src/egse/images/stop-button.svg +0 -8
  313. cgse-2023.38.0/src/egse/images/stop.png +0 -0
  314. cgse-2023.38.0/src/egse/images/switch-off.svg +0 -48
  315. cgse-2023.38.0/src/egse/images/switch-on.svg +0 -48
  316. cgse-2023.38.0/src/egse/images/undo.png +0 -0
  317. cgse-2023.38.0/src/egse/images/update-button.svg +0 -11
  318. cgse-2023.38.0/src/egse/imageviewer/exposureselection.py +0 -475
  319. cgse-2023.38.0/src/egse/imageviewer/imageviewer.py +0 -198
  320. cgse-2023.38.0/src/egse/imageviewer/matchfocalplane.py +0 -179
  321. cgse-2023.38.0/src/egse/imageviewer/subfieldposition.py +0 -133
  322. cgse-2023.38.0/src/egse/lampcontrol/__init__.py +0 -4
  323. cgse-2023.38.0/src/egse/lampcontrol/beaglebone/beaglebone.py +0 -178
  324. cgse-2023.38.0/src/egse/lampcontrol/beaglebone/beaglebone.yaml +0 -62
  325. cgse-2023.38.0/src/egse/lampcontrol/beaglebone/beaglebone_cs.py +0 -106
  326. cgse-2023.38.0/src/egse/lampcontrol/beaglebone/beaglebone_devif.py +0 -150
  327. cgse-2023.38.0/src/egse/lampcontrol/beaglebone/beaglebone_protocol.py +0 -73
  328. cgse-2023.38.0/src/egse/lampcontrol/energetiq/__init__.py +0 -22
  329. cgse-2023.38.0/src/egse/lampcontrol/energetiq/eq99.yaml +0 -98
  330. cgse-2023.38.0/src/egse/lampcontrol/energetiq/lampEQ99.py +0 -283
  331. cgse-2023.38.0/src/egse/lampcontrol/energetiq/lampEQ99_cs.py +0 -128
  332. cgse-2023.38.0/src/egse/lampcontrol/energetiq/lampEQ99_devif.py +0 -158
  333. cgse-2023.38.0/src/egse/lampcontrol/energetiq/lampEQ99_encode_decode_errors.py +0 -73
  334. cgse-2023.38.0/src/egse/lampcontrol/energetiq/lampEQ99_protocol.py +0 -69
  335. cgse-2023.38.0/src/egse/lampcontrol/energetiq/lampEQ99_ui.py +0 -465
  336. cgse-2023.38.0/src/egse/lib/CentOS-7/EtherSpaceLink_v34_86.dylib +0 -0
  337. cgse-2023.38.0/src/egse/lib/CentOS-8/ESL-RMAP_v34_86.dylib +0 -0
  338. cgse-2023.38.0/src/egse/lib/CentOS-8/EtherSpaceLink_v34_86.dylib +0 -0
  339. cgse-2023.38.0/src/egse/lib/Debian/ESL-RMAP_v34_86.dylib +0 -0
  340. cgse-2023.38.0/src/egse/lib/Debian/EtherSpaceLink_v34_86.dylib +0 -0
  341. cgse-2023.38.0/src/egse/lib/Debian/libetherspacelink_v35_21.dylib +0 -0
  342. cgse-2023.38.0/src/egse/lib/Linux/ESL-RMAP_v34_86.dylib +0 -0
  343. cgse-2023.38.0/src/egse/lib/Linux/EtherSpaceLink_v34_86.dylib +0 -0
  344. cgse-2023.38.0/src/egse/lib/Ubuntu-20/ESL-RMAP_v34_86.dylib +0 -0
  345. cgse-2023.38.0/src/egse/lib/Ubuntu-20/EtherSpaceLink_v34_86.dylib +0 -0
  346. cgse-2023.38.0/src/egse/lib/gssw/python3-gssw_2.2.3+31f63c9f-1_all.deb +0 -0
  347. cgse-2023.38.0/src/egse/lib/macOS/ESL-RMAP_v34_86.dylib +0 -0
  348. cgse-2023.38.0/src/egse/lib/macOS/EtherSpaceLink_v34_86.dylib +0 -0
  349. cgse-2023.38.0/src/egse/lib/ximc/__pycache__/pyximc.cpython-38 2.pyc +0 -0
  350. cgse-2023.38.0/src/egse/lib/ximc/__pycache__/pyximc.cpython-38.pyc +0 -0
  351. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/Frameworks/libbindy.dylib +0 -0
  352. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/Frameworks/libxiwrapper.dylib +0 -0
  353. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/Headers/ximc.h +0 -5510
  354. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/Resources/Info.plist +0 -42
  355. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/Resources/keyfile.sqlite +0 -0
  356. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/libbindy.so +0 -0
  357. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/libximc +0 -0
  358. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/libximc.so +0 -0
  359. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/libximc.so.7.0.0 +0 -0
  360. cgse-2023.38.0/src/egse/lib/ximc/libximc.framework/libxiwrapper.so +0 -0
  361. cgse-2023.38.0/src/egse/lib/ximc/pyximc.py +0 -922
  362. cgse-2023.38.0/src/egse/listener.py +0 -73
  363. cgse-2023.38.0/src/egse/ni/alarms/__init__.py +0 -26
  364. cgse-2023.38.0/src/egse/ni/alarms/cdaq9375.py +0 -300
  365. cgse-2023.38.0/src/egse/ni/alarms/cdaq9375.yaml +0 -89
  366. cgse-2023.38.0/src/egse/ni/alarms/cdaq9375_cs.py +0 -130
  367. cgse-2023.38.0/src/egse/ni/alarms/cdaq9375_devif.py +0 -183
  368. cgse-2023.38.0/src/egse/ni/alarms/cdaq9375_protocol.py +0 -48
  369. cgse-2023.38.0/src/egse/obs_inspection.py +0 -163
  370. cgse-2023.38.0/src/egse/powermeter/ni/__init__.py +0 -38
  371. cgse-2023.38.0/src/egse/powermeter/ni/cdaq9184.py +0 -224
  372. cgse-2023.38.0/src/egse/powermeter/ni/cdaq9184.yaml +0 -73
  373. cgse-2023.38.0/src/egse/powermeter/ni/cdaq9184_cs.py +0 -130
  374. cgse-2023.38.0/src/egse/powermeter/ni/cdaq9184_devif.py +0 -201
  375. cgse-2023.38.0/src/egse/powermeter/ni/cdaq9184_protocol.py +0 -48
  376. cgse-2023.38.0/src/egse/powermeter/ni/cdaq9184_ui.py +0 -544
  377. cgse-2023.38.0/src/egse/powermeter/thorlabs/__init__.py +0 -25
  378. cgse-2023.38.0/src/egse/powermeter/thorlabs/pm100a.py +0 -380
  379. cgse-2023.38.0/src/egse/powermeter/thorlabs/pm100a.yaml +0 -132
  380. cgse-2023.38.0/src/egse/powermeter/thorlabs/pm100a_cs.py +0 -136
  381. cgse-2023.38.0/src/egse/powermeter/thorlabs/pm100a_devif.py +0 -127
  382. cgse-2023.38.0/src/egse/powermeter/thorlabs/pm100a_protocol.py +0 -80
  383. cgse-2023.38.0/src/egse/powermeter/thorlabs/pm100a_ui.py +0 -725
  384. cgse-2023.38.0/src/egse/procman/cannot_start_process_popup.py +0 -43
  385. cgse-2023.38.0/src/egse/procman/procman_ui.py +0 -2081
  386. cgse-2023.38.0/src/egse/randomwalk.py +0 -140
  387. cgse-2023.38.0/src/egse/reg.py +0 -585
  388. cgse-2023.38.0/src/egse/reprocess.py +0 -675
  389. cgse-2023.38.0/src/egse/rst.py +0 -135
  390. cgse-2023.38.0/src/egse/search.py +0 -182
  391. cgse-2023.38.0/src/egse/serialdevice.py +0 -190
  392. cgse-2023.38.0/src/egse/settings.yaml +0 -980
  393. cgse-2023.38.0/src/egse/shutter/thorlabs/__init__.py +0 -19
  394. cgse-2023.38.0/src/egse/shutter/thorlabs/ksc101.py +0 -205
  395. cgse-2023.38.0/src/egse/shutter/thorlabs/ksc101.yaml +0 -105
  396. cgse-2023.38.0/src/egse/shutter/thorlabs/ksc101_cs.py +0 -136
  397. cgse-2023.38.0/src/egse/shutter/thorlabs/ksc101_devif.py +0 -201
  398. cgse-2023.38.0/src/egse/shutter/thorlabs/ksc101_protocol.py +0 -69
  399. cgse-2023.38.0/src/egse/shutter/thorlabs/ksc101_ui.py +0 -548
  400. cgse-2023.38.0/src/egse/shutter/thorlabs/sc10.py +0 -82
  401. cgse-2023.38.0/src/egse/shutter/thorlabs/sc10.yaml +0 -52
  402. cgse-2023.38.0/src/egse/shutter/thorlabs/sc10_controller.py +0 -81
  403. cgse-2023.38.0/src/egse/shutter/thorlabs/sc10_cs.py +0 -108
  404. cgse-2023.38.0/src/egse/shutter/thorlabs/sc10_interface.py +0 -25
  405. cgse-2023.38.0/src/egse/shutter/thorlabs/sc10_simulator.py +0 -30
  406. cgse-2023.38.0/src/egse/simulator.py +0 -41
  407. cgse-2023.38.0/src/egse/slack.py +0 -61
  408. cgse-2023.38.0/src/egse/socketdevice.py +0 -218
  409. cgse-2023.38.0/src/egse/sockets.py +0 -218
  410. cgse-2023.38.0/src/egse/stages/__init__.py +0 -12
  411. cgse-2023.38.0/src/egse/stages/aerotech/ensemble.py +0 -247
  412. cgse-2023.38.0/src/egse/stages/aerotech/ensemble.yaml +0 -205
  413. cgse-2023.38.0/src/egse/stages/aerotech/ensemble_controller.py +0 -275
  414. cgse-2023.38.0/src/egse/stages/aerotech/ensemble_cs.py +0 -110
  415. cgse-2023.38.0/src/egse/stages/aerotech/ensemble_interface.py +0 -132
  416. cgse-2023.38.0/src/egse/stages/aerotech/ensemble_parameters.py +0 -433
  417. cgse-2023.38.0/src/egse/stages/aerotech/ensemble_simulator.py +0 -27
  418. cgse-2023.38.0/src/egse/stages/aerotech/mgse_sim.py +0 -193
  419. cgse-2023.38.0/src/egse/stages/arun/smd3.py +0 -111
  420. cgse-2023.38.0/src/egse/stages/arun/smd3.yaml +0 -68
  421. cgse-2023.38.0/src/egse/stages/arun/smd3_controller.py +0 -472
  422. cgse-2023.38.0/src/egse/stages/arun/smd3_cs.py +0 -112
  423. cgse-2023.38.0/src/egse/stages/arun/smd3_interface.py +0 -53
  424. cgse-2023.38.0/src/egse/stages/arun/smd3_simulator.py +0 -27
  425. cgse-2023.38.0/src/egse/stages/arun/smd3_stop.py +0 -16
  426. cgse-2023.38.0/src/egse/stages/huber/__init__.py +0 -49
  427. cgse-2023.38.0/src/egse/stages/huber/smc9300.py +0 -904
  428. cgse-2023.38.0/src/egse/stages/huber/smc9300_cs.py +0 -178
  429. cgse-2023.38.0/src/egse/stages/huber/smc9300_devif.py +0 -345
  430. cgse-2023.38.0/src/egse/stages/huber/smc9300_protocol.py +0 -111
  431. cgse-2023.38.0/src/egse/stages/huber/smc9300_sim.py +0 -547
  432. cgse-2023.38.0/src/egse/stages/huber/smc9300_ui.py +0 -973
  433. cgse-2023.38.0/src/egse/statemachine.py +0 -274
  434. cgse-2023.38.0/src/egse/synoptics/__init__.py +0 -412
  435. cgse-2023.38.0/src/egse/synoptics/syn.yaml +0 -9
  436. cgse-2023.38.0/src/egse/synoptics/syn_cs.py +0 -195
  437. cgse-2023.38.0/src/egse/tcs/__init__.py +0 -14
  438. cgse-2023.38.0/src/egse/tcs/tcs.py +0 -874
  439. cgse-2023.38.0/src/egse/tcs/tcs.yaml +0 -14
  440. cgse-2023.38.0/src/egse/tcs/tcs_cs.py +0 -202
  441. cgse-2023.38.0/src/egse/tcs/tcs_devif.py +0 -292
  442. cgse-2023.38.0/src/egse/tcs/tcs_protocol.py +0 -177
  443. cgse-2023.38.0/src/egse/tcs/tcs_sim.py +0 -177
  444. cgse-2023.38.0/src/egse/tcs/tcs_ui.py +0 -543
  445. cgse-2023.38.0/src/egse/tdms.py +0 -171
  446. cgse-2023.38.0/src/egse/tempcontrol/__init__.py +0 -23
  447. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34970.py +0 -109
  448. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34970.yaml +0 -44
  449. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34970_cs.py +0 -116
  450. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34970_devif.py +0 -182
  451. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34970_protocol.py +0 -99
  452. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34972.py +0 -111
  453. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34972.yaml +0 -44
  454. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34972_cs.py +0 -117
  455. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34972_devif.py +0 -189
  456. cgse-2023.38.0/src/egse/tempcontrol/agilent/agilent34972_protocol.py +0 -101
  457. cgse-2023.38.0/src/egse/tempcontrol/beaglebone/beaglebone.py +0 -342
  458. cgse-2023.38.0/src/egse/tempcontrol/beaglebone/beaglebone.yaml +0 -110
  459. cgse-2023.38.0/src/egse/tempcontrol/beaglebone/beaglebone_cs.py +0 -117
  460. cgse-2023.38.0/src/egse/tempcontrol/beaglebone/beaglebone_protocol.py +0 -135
  461. cgse-2023.38.0/src/egse/tempcontrol/beaglebone/beaglebone_ui.py +0 -681
  462. cgse-2023.38.0/src/egse/tempcontrol/digalox/digalox.py +0 -107
  463. cgse-2023.38.0/src/egse/tempcontrol/digalox/digalox.yaml +0 -36
  464. cgse-2023.38.0/src/egse/tempcontrol/digalox/digalox_cs.py +0 -112
  465. cgse-2023.38.0/src/egse/tempcontrol/digalox/digalox_protocol.py +0 -55
  466. cgse-2023.38.0/src/egse/tempcontrol/keithley/__init__.py +0 -33
  467. cgse-2023.38.0/src/egse/tempcontrol/keithley/daq6510.py +0 -662
  468. cgse-2023.38.0/src/egse/tempcontrol/keithley/daq6510.yaml +0 -105
  469. cgse-2023.38.0/src/egse/tempcontrol/keithley/daq6510_cs.py +0 -163
  470. cgse-2023.38.0/src/egse/tempcontrol/keithley/daq6510_devif.py +0 -343
  471. cgse-2023.38.0/src/egse/tempcontrol/keithley/daq6510_protocol.py +0 -78
  472. cgse-2023.38.0/src/egse/tempcontrol/keithley/daq6510_sim.py +0 -186
  473. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/__init__.py +0 -33
  474. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/lsci.py +0 -361
  475. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/lsci.yaml +0 -162
  476. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/lsci_cs.py +0 -174
  477. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/lsci_devif.py +0 -292
  478. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/lsci_protocol.py +0 -73
  479. cgse-2023.38.0/src/egse/tempcontrol/lakeshore/lsci_ui.py +0 -389
  480. cgse-2023.38.0/src/egse/tempcontrol/spid/spid.py +0 -109
  481. cgse-2023.38.0/src/egse/tempcontrol/spid/spid.yaml +0 -81
  482. cgse-2023.38.0/src/egse/tempcontrol/spid/spid_controller.py +0 -279
  483. cgse-2023.38.0/src/egse/tempcontrol/spid/spid_cs.py +0 -136
  484. cgse-2023.38.0/src/egse/tempcontrol/spid/spid_protocol.py +0 -107
  485. cgse-2023.38.0/src/egse/tempcontrol/spid/spid_ui.py +0 -727
  486. cgse-2023.38.0/src/egse/tempcontrol/srs/__init__.py +0 -22
  487. cgse-2023.38.0/src/egse/tempcontrol/srs/ptc10.py +0 -875
  488. cgse-2023.38.0/src/egse/tempcontrol/srs/ptc10.yaml +0 -227
  489. cgse-2023.38.0/src/egse/tempcontrol/srs/ptc10_cs.py +0 -128
  490. cgse-2023.38.0/src/egse/tempcontrol/srs/ptc10_devif.py +0 -118
  491. cgse-2023.38.0/src/egse/tempcontrol/srs/ptc10_protocol.py +0 -42
  492. cgse-2023.38.0/src/egse/tempcontrol/srs/ptc10_ui.py +0 -906
  493. cgse-2023.38.0/src/egse/ups/apc/apc.py +0 -236
  494. cgse-2023.38.0/src/egse/ups/apc/apc.yaml +0 -45
  495. cgse-2023.38.0/src/egse/ups/apc/apc_cs.py +0 -101
  496. cgse-2023.38.0/src/egse/ups/apc/apc_protocol.py +0 -125
  497. cgse-2023.38.0/src/egse/user.yaml +0 -7
  498. cgse-2023.38.0/src/egse/vacuum/beaglebone/beaglebone.py +0 -149
  499. cgse-2023.38.0/src/egse/vacuum/beaglebone/beaglebone.yaml +0 -44
  500. cgse-2023.38.0/src/egse/vacuum/beaglebone/beaglebone_cs.py +0 -108
  501. cgse-2023.38.0/src/egse/vacuum/beaglebone/beaglebone_devif.py +0 -164
  502. cgse-2023.38.0/src/egse/vacuum/beaglebone/beaglebone_protocol.py +0 -193
  503. cgse-2023.38.0/src/egse/vacuum/beaglebone/beaglebone_ui.py +0 -638
  504. cgse-2023.38.0/src/egse/vacuum/instrutech/igm402.py +0 -92
  505. cgse-2023.38.0/src/egse/vacuum/instrutech/igm402.yaml +0 -90
  506. cgse-2023.38.0/src/egse/vacuum/instrutech/igm402_controller.py +0 -128
  507. cgse-2023.38.0/src/egse/vacuum/instrutech/igm402_cs.py +0 -108
  508. cgse-2023.38.0/src/egse/vacuum/instrutech/igm402_interface.py +0 -49
  509. cgse-2023.38.0/src/egse/vacuum/instrutech/igm402_simulator.py +0 -36
  510. cgse-2023.38.0/src/egse/vacuum/keller/kellerBus.py +0 -256
  511. cgse-2023.38.0/src/egse/vacuum/keller/leo3.py +0 -102
  512. cgse-2023.38.0/src/egse/vacuum/keller/leo3.yaml +0 -38
  513. cgse-2023.38.0/src/egse/vacuum/keller/leo3_controller.py +0 -83
  514. cgse-2023.38.0/src/egse/vacuum/keller/leo3_cs.py +0 -101
  515. cgse-2023.38.0/src/egse/vacuum/keller/leo3_interface.py +0 -33
  516. cgse-2023.38.0/src/egse/vacuum/mks/evision.py +0 -86
  517. cgse-2023.38.0/src/egse/vacuum/mks/evision.yaml +0 -75
  518. cgse-2023.38.0/src/egse/vacuum/mks/evision_cs.py +0 -101
  519. cgse-2023.38.0/src/egse/vacuum/mks/evision_devif.py +0 -316
  520. cgse-2023.38.0/src/egse/vacuum/mks/evision_interface.py +0 -60
  521. cgse-2023.38.0/src/egse/vacuum/mks/evision_simulator.py +0 -24
  522. cgse-2023.38.0/src/egse/vacuum/mks/evision_ui.py +0 -704
  523. cgse-2023.38.0/src/egse/vacuum/pfeiffer/acp40.py +0 -87
  524. cgse-2023.38.0/src/egse/vacuum/pfeiffer/acp40.yaml +0 -60
  525. cgse-2023.38.0/src/egse/vacuum/pfeiffer/acp40_controller.py +0 -117
  526. cgse-2023.38.0/src/egse/vacuum/pfeiffer/acp40_cs.py +0 -109
  527. cgse-2023.38.0/src/egse/vacuum/pfeiffer/acp40_interface.py +0 -40
  528. cgse-2023.38.0/src/egse/vacuum/pfeiffer/acp40_simulator.py +0 -39
  529. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tc400.py +0 -113
  530. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tc400.yaml +0 -83
  531. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tc400_controller.py +0 -140
  532. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tc400_cs.py +0 -109
  533. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tc400_interface.py +0 -70
  534. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tc400_simulator.py +0 -24
  535. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tpg261.py +0 -81
  536. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tpg261.yaml +0 -66
  537. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tpg261_controller.py +0 -150
  538. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tpg261_cs.py +0 -109
  539. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tpg261_interface.py +0 -60
  540. cgse-2023.38.0/src/egse/vacuum/pfeiffer/tpg261_simulator.py +0 -24
  541. cgse-2023.38.0/src/egse/visitedpositions.py +0 -398
  542. cgse-2023.38.0/src/egse/windowing.py +0 -213
  543. cgse-2023.38.0/src/egse/zmq/__init__.py +0 -28
  544. cgse-2023.38.0/src/egse/zmq/spw.py +0 -160
  545. cgse-2023.38.0/src/scripts/alerts/cold.yaml +0 -278
  546. cgse-2023.38.0/src/scripts/alerts/example_alerts.yaml +0 -54
  547. cgse-2023.38.0/src/scripts/alerts/transition.yaml +0 -14
  548. cgse-2023.38.0/src/scripts/alerts/warm.yaml +0 -49
  549. cgse-2023.38.0/src/scripts/analyse_n_fee_hk_data.py +0 -44
  550. cgse-2023.38.0/src/scripts/check_hdf5_files.py +0 -192
  551. cgse-2023.38.0/src/scripts/check_register_sync.py +0 -47
  552. cgse-2023.38.0/src/scripts/create_hdf5_report.py +0 -295
  553. cgse-2023.38.0/src/scripts/csl_model.py +0 -436
  554. cgse-2023.38.0/src/scripts/csl_restore_setup.py +0 -230
  555. cgse-2023.38.0/src/scripts/export-grafana-dashboards.py +0 -50
  556. cgse-2023.38.0/src/scripts/fdir/cs_recovery/fdir_cs_recovery.py +0 -59
  557. cgse-2023.38.0/src/scripts/fdir/fdir_table.yaml +0 -70
  558. cgse-2023.38.0/src/scripts/fdir/fdir_test_recovery.py +0 -11
  559. cgse-2023.38.0/src/scripts/fdir/hw_recovery/fdir_agilent_hw_recovery.py +0 -73
  560. cgse-2023.38.0/src/scripts/fdir/limit_recovery/fdir_agilent_limit.py +0 -64
  561. cgse-2023.38.0/src/scripts/fdir/limit_recovery/fdir_bb_heater_limit.py +0 -61
  562. cgse-2023.38.0/src/scripts/fdir/limit_recovery/fdir_ensemble_limit.py +0 -33
  563. cgse-2023.38.0/src/scripts/fdir/limit_recovery/fdir_pressure_limit_recovery.py +0 -71
  564. cgse-2023.38.0/src/scripts/fix_csv.py +0 -80
  565. cgse-2023.38.0/src/scripts/n_fee_supply_voltage_calculation.py +0 -92
  566. cgse-2023.38.0/src/scripts/playground.py +0 -30
  567. cgse-2023.38.0/src/scripts/print_hdf5_hk_data.py +0 -68
  568. cgse-2023.38.0/src/scripts/print_register_map.py +0 -43
  569. cgse-2023.38.0/src/scripts/sron/commanding/control_heaters.py +0 -44
  570. cgse-2023.38.0/src/scripts/sron/commanding/pumpdown.py +0 -46
  571. cgse-2023.38.0/src/scripts/sron/commanding/set_pid_setpoint.py +0 -19
  572. cgse-2023.38.0/src/scripts/sron/commanding/shutdown_bbb_heaters.py +0 -10
  573. cgse-2023.38.0/src/scripts/sron/commanding/shutdown_pumps.py +0 -33
  574. cgse-2023.38.0/src/scripts/sron/tm_gen/tm_gen_agilent.py +0 -38
  575. cgse-2023.38.0/src/scripts/sron/tm_gen/tm_gen_heaters.py +0 -4
  576. cgse-2023.38.0/src/scripts/sron/tm_gen/tm_gen_spid.py +0 -13
  577. cgse-2023.38.0/src/scripts/update_operational_cgse.py +0 -268
  578. cgse-2023.38.0/src/scripts/update_operational_cgse_old.py +0 -273
  579. cgse-2023.38.0/src/tests/conftest.py +0 -52
  580. cgse-2023.38.0/src/tests/data/conf/SETUP_CSL_00000_170620_150000.yaml +0 -5
  581. cgse-2023.38.0/src/tests/data/conf/SETUP_CSL_00001_170620_151010.yaml +0 -68
  582. cgse-2023.38.0/src/tests/data/conf/SETUP_CSL_00010_210308_083016.yaml +0 -138
  583. cgse-2023.38.0/src/tests/data/confman_settings.yaml +0 -2
  584. cgse-2023.38.0/src/tests/data/empty.yaml +0 -1
  585. cgse-2023.38.0/src/tests/data/settings.yaml +0 -26
  586. cgse-2023.38.0/src/tests/helper.py +0 -21
  587. cgse-2023.38.0/src/tests/itest_dpu_ui.py +0 -74
  588. cgse-2023.38.0/src/tests/scripts/dummy_cs.py +0 -17
  589. cgse-2023.38.0/src/tests/scripts/empty_process.py +0 -56
  590. cgse-2023.38.0/src/tests/scripts/void-0.py +0 -6
  591. cgse-2023.38.0/src/tests/scripts/void-1.py +0 -6
  592. cgse-2023.38.0/src/tests/test_aeu.py +0 -1185
  593. cgse-2023.38.0/src/tests/test_aeu_simulator.py +0 -2913
  594. cgse-2023.38.0/src/tests/test_automatic_dump_mode.py +0 -93
  595. cgse-2023.38.0/src/tests/test_avoidance.py +0 -45
  596. cgse-2023.38.0/src/tests/test_cm_cs.py +0 -49
  597. cgse-2023.38.0/src/tests/test_config.py +0 -171
  598. cgse-2023.38.0/src/tests/test_confman.py +0 -10
  599. cgse-2023.38.0/src/tests/test_confman_controller.py +0 -24
  600. cgse-2023.38.0/src/tests/test_confman_functions.py +0 -91
  601. cgse-2023.38.0/src/tests/test_constants.py +0 -23
  602. cgse-2023.38.0/src/tests/test_coordinates_plot.py +0 -29
  603. cgse-2023.38.0/src/tests/test_coordinates_serialize.py +0 -61
  604. cgse-2023.38.0/src/tests/test_daq6510.py +0 -104
  605. cgse-2023.38.0/src/tests/test_dpu_functions.py +0 -173
  606. cgse-2023.38.0/src/tests/test_dpu_internals.py +0 -34
  607. cgse-2023.38.0/src/tests/test_dpu_monitoring.py +0 -103
  608. cgse-2023.38.0/src/tests/test_dpu_nfee_state.py +0 -56
  609. cgse-2023.38.0/src/tests/test_dpu_send_commands.py +0 -39
  610. cgse-2023.38.0/src/tests/test_env.py +0 -93
  611. cgse-2023.38.0/src/tests/test_esl.py +0 -62
  612. cgse-2023.38.0/src/tests/test_fee.py +0 -92
  613. cgse-2023.38.0/src/tests/test_feesim.py +0 -168
  614. cgse-2023.38.0/src/tests/test_filterwheel_eksma.py +0 -46
  615. cgse-2023.38.0/src/tests/test_fixture_with_lru_cache.py +0 -59
  616. cgse-2023.38.0/src/tests/test_fov_hk__ias.py +0 -25
  617. cgse-2023.38.0/src/tests/test_gimbal.py +0 -199
  618. cgse-2023.38.0/src/tests/test_graph.py +0 -272
  619. cgse-2023.38.0/src/tests/test_hexapod.py +0 -188
  620. cgse-2023.38.0/src/tests/test_hexapod_simulator.py +0 -223
  621. cgse-2023.38.0/src/tests/test_hexapod_zonda.py +0 -659
  622. cgse-2023.38.0/src/tests/test_huber.py +0 -338
  623. cgse-2023.38.0/src/tests/test_huber_dev.py +0 -281
  624. cgse-2023.38.0/src/tests/test_imports.py +0 -44
  625. cgse-2023.38.0/src/tests/test_lakeshore.py +0 -91
  626. cgse-2023.38.0/src/tests/test_lakeshore_simulator.py +0 -38
  627. cgse-2023.38.0/src/tests/test_lampEQ99_encode_decode_errors.py +0 -33
  628. cgse-2023.38.0/src/tests/test_lampcontrol_energetiq.py +0 -109
  629. cgse-2023.38.0/src/tests/test_listener.py +0 -40
  630. cgse-2023.38.0/src/tests/test_logger.py +0 -40
  631. cgse-2023.38.0/src/tests/test_metrics.py +0 -47
  632. cgse-2023.38.0/src/tests/test_mixin.py +0 -356
  633. cgse-2023.38.0/src/tests/test_n_fee.py +0 -283
  634. cgse-2023.38.0/src/tests/test_n_fee_hk.py +0 -203
  635. cgse-2023.38.0/src/tests/test_n_fee_side.py +0 -138
  636. cgse-2023.38.0/src/tests/test_obs.py +0 -11
  637. cgse-2023.38.0/src/tests/test_obsid.py +0 -124
  638. cgse-2023.38.0/src/tests/test_ogse_functions.py +0 -166
  639. cgse-2023.38.0/src/tests/test_ogse_sim.py +0 -309
  640. cgse-2023.38.0/src/tests/test_persistence.py +0 -264
  641. cgse-2023.38.0/src/tests/test_persistence_hdf5.py +0 -38
  642. cgse-2023.38.0/src/tests/test_persistence_sqlite.py +0 -69
  643. cgse-2023.38.0/src/tests/test_pmac.py +0 -139
  644. cgse-2023.38.0/src/tests/test_pmac_regex.py +0 -137
  645. cgse-2023.38.0/src/tests/test_point.py +0 -90
  646. cgse-2023.38.0/src/tests/test_process.py +0 -206
  647. cgse-2023.38.0/src/tests/test_process_status.py +0 -43
  648. cgse-2023.38.0/src/tests/test_proxy.py +0 -200
  649. cgse-2023.38.0/src/tests/test_proxy_state.py +0 -57
  650. cgse-2023.38.0/src/tests/test_puna.py +0 -199
  651. cgse-2023.38.0/src/tests/test_puna_plus.py +0 -218
  652. cgse-2023.38.0/src/tests/test_ref_model.py +0 -68
  653. cgse-2023.38.0/src/tests/test_reference_frames.py +0 -480
  654. cgse-2023.38.0/src/tests/test_refmodel.py +0 -118
  655. cgse-2023.38.0/src/tests/test_reg.py +0 -454
  656. cgse-2023.38.0/src/tests/test_reload.py +0 -94
  657. cgse-2023.38.0/src/tests/test_resource.py +0 -145
  658. cgse-2023.38.0/src/tests/test_response.py +0 -43
  659. cgse-2023.38.0/src/tests/test_rmap.py +0 -133
  660. cgse-2023.38.0/src/tests/test_search.py +0 -40
  661. cgse-2023.38.0/src/tests/test_services.py +0 -176
  662. cgse-2023.38.0/src/tests/test_settings.py +0 -152
  663. cgse-2023.38.0/src/tests/test_slack.py +0 -17
  664. cgse-2023.38.0/src/tests/test_spw.py +0 -398
  665. cgse-2023.38.0/src/tests/test_stages.py +0 -198
  666. cgse-2023.38.0/src/tests/test_state.py +0 -39
  667. cgse-2023.38.0/src/tests/test_storage.py +0 -157
  668. cgse-2023.38.0/src/tests/test_storage_controller.py +0 -24
  669. cgse-2023.38.0/src/tests/test_storage_counter.py +0 -98
  670. cgse-2023.38.0/src/tests/test_storage_filename.py +0 -36
  671. cgse-2023.38.0/src/tests/test_syn_cs.py +0 -25
  672. cgse-2023.38.0/src/tests/test_tcs.py +0 -201
  673. cgse-2023.38.0/src/tests/test_tdms.py +0 -53
  674. cgse-2023.38.0/src/tests/test_thorlabs_controller.py +0 -41
  675. cgse-2023.38.0/src/tests/test_thorlabs_proxy.py +0 -32
  676. cgse-2023.38.0/src/tests/test_thorlabs_simulator.py +0 -32
  677. cgse-2023.38.0/src/tests/test_twos_complement.py +0 -12
  678. cgse-2023.38.0/src/tests/test_version.py +0 -24
  679. cgse-2023.38.0/src/tests/test_windowing.py +0 -213
  680. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/observer.py +0 -0
  681. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/services.py +0 -0
  682. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/services.yaml +0 -0
  683. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-common}/src/egse/state.py +0 -0
  684. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/CSL/conf/SETUP_CSL_00028_201028_155259.yaml +0 -0
  685. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/CSL/conf/SETUP_CSL_00029_201028_155331.yaml +0 -0
  686. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/CSL/conf/SETUP_CSL_00030_210311_134043.yaml +0 -0
  687. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/CSL/conf/SETUP_CSL_00080_210917_105245.yaml +0 -0
  688. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/CSL/conf/SETUP_CSL_00081_210922_142259.yaml +0 -0
  689. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/CSL/conf/SETUP_CSL_00082_210923_094458.yaml +0 -0
  690. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/SRON/conf/SETUP_SRON_00027_211119_140441.yaml +0 -0
  691. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/SRON/conf/SETUP_SRON_00028_211119_160406.yaml +0 -0
  692. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/SRON/conf/SETUP_SRON_00029_211119_172918.yaml +0 -0
  693. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/SRON/conf/SETUP_SRON_00030_211122_103604.yaml +0 -0
  694. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/data/SRON/conf/SETUP_SRON_00031_211123_124900.yaml +0 -0
  695. /cgse-2023.38.0/src/__init__.py → /cgse-2024.1.4/libs/cgse-common/tests/data/conf/config-file.toml +0 -0
  696. {cgse-2023.38.0/src/tests → cgse-2024.1.4/libs/cgse-common/tests/data}/data/calibration.yaml +0 -0
  697. {cgse-2023.38.0/src/tests → cgse-2024.1.4/libs/cgse-common/tests/data}/data/corrupt.yaml +0 -0
  698. /cgse-2023.38.0/src/egse/collimator/__init__.py → /cgse-2024.1.4/libs/cgse-common/tests/data/data/empty_data_file.txt +0 -0
  699. /cgse-2023.38.0/src/egse/collimator/fcul/__init__.py → /cgse-2024.1.4/libs/cgse-common/tests/data/lib/dev1/shared-lib.so +0 -0
  700. /cgse-2023.38.0/src/egse/help/__init__.py → /cgse-2024.1.4/libs/cgse-common/tests/data/lib/dev2/shared-lib.so +0 -0
  701. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_command.py +0 -0
  702. /cgse-2023.38.0/src/egse/powermeter/__init__.py → /cgse-2024.1.4/libs/cgse-common/tests/test_control.py +0 -0
  703. {cgse-2023.38.0/src → cgse-2024.1.4/libs/cgse-common}/tests/test_device.py +0 -0
  704. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/__init__.py +0 -0
  705. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/avoidance.py +0 -0
  706. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/cslmodel.py +0 -0
  707. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/laser_tracker_to_dict.py +0 -0
  708. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/point.py +0 -0
  709. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/pyplot.py +0 -0
  710. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/refmodel.py +0 -0
  711. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/rotationMatrix.py +0 -0
  712. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-coordinates}/src/egse/coordinates/transform3d_addon.py +0 -0
  713. /cgse-2023.38.0/src/egse/shutter/__init__.py → /cgse-2024.1.4/libs/cgse-core/src/egse/confman/__main__.py +0 -0
  714. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/confman/confman.yaml +0 -0
  715. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/procman/__init__.py +0 -0
  716. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/procman/procman.yaml +0 -0
  717. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/procman/procman_cs.py +0 -0
  718. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-core}/src/egse/storage/storage.yaml +0 -0
  719. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-gui}/src/egse/gui/buttons.py +0 -0
  720. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/aeu-cs-start.svg +0 -0
  721. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/aeu-cs-stop.svg +0 -0
  722. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/aeu-cs.svg +0 -0
  723. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/aeu_cs-started.svg +0 -0
  724. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/aeu_cs-stopped.svg +0 -0
  725. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/aeu_cs.svg +0 -0
  726. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/alert.svg +0 -0
  727. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/arrow-double-left.png +0 -0
  728. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/arrow-double-right.png +0 -0
  729. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/arrow-up.svg +0 -0
  730. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/backward.svg +0 -0
  731. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/busy.svg +0 -0
  732. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/cleaning.svg +0 -0
  733. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/color-scheme.svg +0 -0
  734. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/cs-connected-alert.svg +0 -0
  735. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/cs-connected-disabled.svg +0 -0
  736. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/cs-connected.svg +0 -0
  737. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/cs-not-connected.svg +0 -0
  738. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/double-left-arrow.svg +0 -0
  739. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/double-right-arrow.svg +0 -0
  740. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/erase-disabled.svg +0 -0
  741. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/erase.svg +0 -0
  742. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/fitsgen-start.svg +0 -0
  743. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/fitsgen-stop.svg +0 -0
  744. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/fitsgen.svg +0 -0
  745. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/forward.svg +0 -0
  746. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/fov-hk-start.svg +0 -0
  747. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/fov-hk-stop.svg +0 -0
  748. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/fov-hk.svg +0 -0
  749. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/front-desk.svg +0 -0
  750. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/home-actioned.svg +0 -0
  751. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/home-disabled.svg +0 -0
  752. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/home.svg +0 -0
  753. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/info.svg +0 -0
  754. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/invalid.png +0 -0
  755. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-green.svg +0 -0
  756. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-grey.svg +0 -0
  757. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-orange.svg +0 -0
  758. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-red.svg +0 -0
  759. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-square-green.svg +0 -0
  760. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-square-grey.svg +0 -0
  761. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-square-orange.svg +0 -0
  762. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/led-square-red.svg +0 -0
  763. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/limit-switch-all-green.svg +0 -0
  764. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/limit-switch-all-red.svg +0 -0
  765. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/limit-switch-el+.svg +0 -0
  766. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/limit-switch-el-.svg +0 -0
  767. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/location-marker.svg +0 -0
  768. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-dpu.svg +0 -0
  769. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-gimbal.svg +0 -0
  770. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-huber.svg +0 -0
  771. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-ogse.svg +0 -0
  772. {cgse-2023.38.0/src/egse/csl → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-puna.svg +0 -0
  773. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-tcs.svg +0 -0
  774. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/logo-zonda.svg +0 -0
  775. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/maximize.svg +0 -0
  776. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/meter.svg +0 -0
  777. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/more.svg +0 -0
  778. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/n-fee-hk-start.svg +0 -0
  779. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/n-fee-hk-stop.svg +0 -0
  780. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/n-fee-hk.svg +0 -0
  781. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/observing-off.svg +0 -0
  782. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/observing-on.svg +0 -0
  783. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/open-document-hdf5.png +0 -0
  784. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/open-document-hdf5.svg +0 -0
  785. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/ops-mode.svg +0 -0
  786. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/play-green.svg +0 -0
  787. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/plugged-disabled.svg +0 -0
  788. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/plugged.svg +0 -0
  789. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/pm_ui.svg +0 -0
  790. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/power-button-green.svg +0 -0
  791. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/power-button-red.svg +0 -0
  792. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/power-button.svg +0 -0
  793. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/radar.svg +0 -0
  794. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/radioactive.svg +0 -0
  795. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/reload.svg +0 -0
  796. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/remote-control-off.svg +0 -0
  797. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/remote-control-on.svg +0 -0
  798. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/repeat-blue.svg +0 -0
  799. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/repeat.svg +0 -0
  800. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/settings.svg +0 -0
  801. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/shrink.svg +0 -0
  802. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/shutter.svg +0 -0
  803. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/sign-off.svg +0 -0
  804. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/sign-on.svg +0 -0
  805. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/sim-mode.svg +0 -0
  806. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/small-buttons-go.svg +0 -0
  807. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/small-buttons-minus.svg +0 -0
  808. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/small-buttons-plus.svg +0 -0
  809. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/sponge.svg +0 -0
  810. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/start-button-disabled.svg +0 -0
  811. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/start-button.svg +0 -0
  812. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/stop-button-disabled.svg +0 -0
  813. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/stop-button.svg +0 -0
  814. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/stop-red.svg +0 -0
  815. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/stop.svg +0 -0
  816. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/switch-disabled-square.svg +0 -0
  817. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/switch-disabled.svg +0 -0
  818. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/switch-off-square.svg +0 -0
  819. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/switch-off.svg +0 -0
  820. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/switch-on-square.svg +0 -0
  821. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/switch-on.svg +0 -0
  822. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/temperature-control.svg +0 -0
  823. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/th_ui_logo.svg +0 -0
  824. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/unplugged.svg +0 -0
  825. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/unvalid.png +0 -0
  826. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/user-interface.svg +0 -0
  827. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/vacuum.svg +0 -0
  828. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/valid.png +0 -0
  829. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/zoom-to-pixel-dark.svg +0 -0
  830. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/icons/zoom-to-pixel-white.svg +0 -0
  831. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-gui}/src/egse/gui/led.py +0 -0
  832. {cgse-2023.38.0 → cgse-2024.1.4/libs/cgse-gui}/src/egse/gui/limitswitch.py +0 -0
  833. {cgse-2023.38.0/src/egse → cgse-2024.1.4/libs/cgse-gui/src/egse/gui}/styles/dark.qss +0 -0
  834. /cgse-2023.38.0/src/egse/styles/default.qss → /cgse-2024.1.4/libs/cgse-gui/src/egse/gui/styles.qss +0 -0
  835. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/__init__.py +0 -0
  836. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/pmac.py +0 -0
  837. {cgse-2023.38.0/src/egse/gimbal → cgse-2024.1.4/projects/generic/symetrie-hexapod/src/egse/hexapod}/symetrie/pmac_regex.py +0 -0
  838. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/puna.py +0 -0
  839. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/zonda_devif.py +0 -0
  840. {cgse-2023.38.0 → cgse-2024.1.4/projects/generic/symetrie-hexapod}/src/egse/hexapod/symetrie/zonda_protocol.py +0 -0
  841. /cgse-2023.38.0/src/egse/tempcontrol/ni/__init__.py → /cgse-2024.1.4/projects/plato/plato-hdf5/README.md +0 -0
  842. /cgse-2023.38.0/src/tests/test_dsi.py → /cgse-2024.1.4/projects/plato/plato-spw/README.md +0 -0
@@ -0,0 +1,35 @@
1
+ # Python versions and environment
2
+
3
+ __pycache__
4
+ .python-version
5
+ .envrc
6
+
7
+ # Build systems
8
+
9
+ build
10
+ dist
11
+ **/*.egg-info
12
+
13
+ # Apple specific
14
+
15
+ .DS_Store
16
+
17
+ # Unit testing
18
+
19
+ .pytest_cache
20
+ .coverage
21
+ htmlcov
22
+
23
+ # Virtual environments
24
+
25
+ .env
26
+ .venv
27
+ venv
28
+
29
+ # PyCharm IDE
30
+
31
+ .idea
32
+
33
+ # Packaging
34
+
35
+ uv.lock
cgse-2024.1.4/NOTES.md ADDED
@@ -0,0 +1,124 @@
1
+ # The monorepo structure
2
+
3
+ Currently, the structure starts with two folders in the root, i.e. `libs` and `projects`. Where _libs_ contains library type packages like common modules, small generic gui functions, reference frames, ... and _projects_ contain packages that build upon these libraries and can be device drivers or stand-alone applications.
4
+
5
+ There is one package that I think doesn't fit into this picture, that is `cgse-core`. This is not a library, but a – collection of – service(s). So, we might want to add a third top-level folder `services` but I also fear that this again more complicates the monorepo.
6
+
7
+ Anyway, the overall structure of the monorepo is depicted below:
8
+
9
+ ```
10
+ cgse/
11
+ │── pyproject.toml
12
+ ├── libs/
13
+ │ ├── cgse-common/
14
+ │ │ ├── src/
15
+ │ │ ├── tests/
16
+ │ │ └── pyproject.toml
17
+ │ ├── cgse-core/
18
+ │ ├── cgse-coordinates/
19
+ │ └── cgse-gui/
20
+
21
+ └── projects/
22
+ ├── generic/
23
+ │ ├── cgse-tools/
24
+ │ └── symetrie-hexapod/
25
+ └── plato/
26
+ ├── plato-spw/
27
+ ├── plato-fits/
28
+ └── plato-hdf5/
29
+ ```
30
+
31
+ We will discuss the structure of individual packages in a later section, for now let's look at the root of the monorepo. The root also contains a `pyproject.toml` file although this is not a package that will be build and published. The purpose of this root `pyproject.toml` file is to define properties that are used to build the full repo or any individual package in it. In the root folder we will also put some maintenance/management scripts to help you maintain and bump versions of the projects, build and publish all projects, create and maintain a changelog etc.
32
+
33
+ # Package Structure
34
+
35
+ We try to keep the package structure as standard as possible and consistent over the whole monorepo. The structure currently is as follows (example from cgse-common):
36
+
37
+ ```
38
+ ├── README.md
39
+ ├── dist
40
+ │ ├── cgse_common-2023.1.4-py3-none-any.whl
41
+ │ └── cgse_common-2023.1.4.tar.gz
42
+ ├── pyproject.toml
43
+ ├── src/
44
+ │ └── egse/ # namespace
45
+ │ ├── modules (*.py)
46
+ │ └── <sub-packages>/
47
+ └── tests/
48
+ ├── data
49
+ └── pytest modules (test_*.py)
50
+ ```
51
+
52
+ Note that each library or project is a standalone Poetry package with its own `pyproject.toml` file, source code and unit tests.
53
+
54
+ # Package versions
55
+
56
+ All packages in the monorepo will have the same version. This can be maintained with the `bump.py` script. This script will read the version from the `pyproject.toml` file at the root of the monorepo and propagate the version to all libs and projects in the monorepo. Note that you –for now– will have to update the version number in the `pyproject.toml` file located at the monorepo root folder manually.
57
+
58
+ # Use of Poetry (DEPRECATED: see below)
59
+
60
+ I have now Poetry configurations for all `libs` in this monorepo. So, how do we use Poetry in this project?
61
+
62
+ First thing to understand, Poetry is a development and dependency management tool. So, if you are installing the different packages in this repo from PyPI there is no need to use Poetry. The package will be installed in your current virtual environment.
63
+
64
+ You can choose how you want to manage your virtual environments for each of the packages in the monorepo. I personally use `pyenv` to manage my virtual environments and I disable the virtual environment that would normally be used by Poetry.
65
+
66
+ > Explain how to use `pyenv` for your virtual environments
67
+
68
+ The following command starts a new sub-shell and activates the virtual environment:
69
+ ```
70
+ $ poetry shell
71
+ ```
72
+
73
+ If you do not want to start a new shell, but just want to execute a command in the virtual environment, use the `poetry run` command, e.g.
74
+ ```
75
+ $ poetry run pytest tests/test_bits.py
76
+ ```
77
+ Or
78
+ ```
79
+ $ poetry run python -m egse.monitoring localhost 6001
80
+ ```
81
+
82
+ # Build and Publish
83
+
84
+ Building a source distribution and a wheel for your project is as easy as running the following command:
85
+ ```
86
+ $ pipx run build
87
+ * Creating isolated environment: venv+pip...
88
+ * Installing packages in isolated environment:
89
+ - hatchling
90
+ * Getting build dependencies for sdist...
91
+ * Building sdist...
92
+ * Building wheel from sdist
93
+ * Creating isolated environment: venv+pip...
94
+ * Installing packages in isolated environment:
95
+ - hatchling
96
+ * Getting build dependencies for wheel...
97
+ * Building wheel...
98
+ ```
99
+ Make sure you have updated/bumped the version number in the `pyproject.toml`. Publishing your package on PyPI needs some more preparation, since you need to prepare a token that allows you to upload your project to PyPI. Publishing itself is a peace of cake when the credentials have been configured correctly. Poetry will also automatically take the latest version to publish.
100
+ ```
101
+ $ pipx run twine publish
102
+ Publishing cgse-common (2023.1.5) to PyPI
103
+ - Uploading cgse_common-2023.1.5-py3-none-any.whl 100%
104
+ - Uploading cgse_common-2023.1.5.tar.gz 100%
105
+ ```
106
+
107
+ # The egse namespace
108
+
109
+ You might have notices that all packages in this monorepo have a `src/egse` folder in which they maintain their source code, preferably in a sub-package. Note that the `egse` folder is not a normal Python package but a namespace. There are two important facts you need to remember about namespaces:
110
+
111
+ 1. A namespace package **does not** contain an `__init__.py` module, never, in any of the packages in this or any other repo. If you place an `__init__.py` module in one of your `egse` package folders, you will break the namespace and therefore also the external contributions in plugins etc.
112
+ 2. A namespace package is spread out over several directories that can reside in different packages as distributed by PyPI.
113
+
114
+ # Questions
115
+
116
+ What is the meaning of the common egse root folder in this monorepo and when the packages are installed through PyPI?
117
+
118
+ * do we still need `get_common_egse_root()`
119
+
120
+ NO, this has nothing to do with a generic common egse and also the concept of a project root folder doesn't really work for PyPI projects, especially in a monorepo. What might work in this specific case is to use the egse namespace as a root and find folders and files in the folders that make up the namespace.
121
+
122
+ * what is the Projects root directory?
123
+
124
+ This folder basically contains device implementations and plugins for e.g. the storage manager.
cgse-2024.1.4/PKG-INFO ADDED
@@ -0,0 +1,38 @@
1
+ Metadata-Version: 2.4
2
+ Name: cgse
3
+ Version: 2024.1.4
4
+ Summary: Generic Common-EGSE: Commanding and monitoring lab equipment
5
+ Author-email: Rik Huygen <rik.huygen@kuleuven.be>, Sara Regibo <sara.regibo@kuleuven.be>
6
+ License: MIT
7
+ Requires-Python: >=3.9
8
+ Requires-Dist: rich>=13.9.4
9
+ Requires-Dist: tomlkit>=0.13.2
10
+ Description-Content-Type: text/markdown
11
+
12
+ # Common-EGSE
13
+
14
+ This is a monorepo with all the code and documentation for the common egse framework.
15
+
16
+ This repository is organized in two main areas, `libs` and `projects`. The `libs` folder contains library type
17
+ packages like common modules, small generic gui functions, reference frames, etc. and `projects` contains packages
18
+ that build upon these libraries and can be device drivers or stand-alone applications.
19
+
20
+ In the `libs` folder, we have the following packages:
21
+
22
+ - `cgse-common`: Common modules and functions for the EGSE framework.
23
+ - `cgse-coordinates`: Coordinate systems and transformations.
24
+ - `cgse-core`: Core services for the EGSE framework.
25
+ - `cgse-gui`: GUI functions for the EGSE framework.
26
+
27
+ The `projects` folder contains generic and project specific packages.
28
+
29
+ We have the following generic packages:
30
+
31
+ - `cgse-tools`: Tools for the `cgse` command.
32
+ - `symetrie-hexapod`: The Symétrie Hexapod drivers. We put this in the generic folder because it is a generic device driver that can be used by different projects.
33
+
34
+ We have the following project specific packages:
35
+
36
+ - `plato-spw`: The PLATO SpaceWire drivers.
37
+ - `plato-fits`: The PLATO FITS plugins.
38
+ - `plato-hdf5`: The PLATO HDF5 plugins.
@@ -0,0 +1,27 @@
1
+ # Common-EGSE
2
+
3
+ This is a monorepo with all the code and documentation for the common egse framework.
4
+
5
+ This repository is organized in two main areas, `libs` and `projects`. The `libs` folder contains library type
6
+ packages like common modules, small generic gui functions, reference frames, etc. and `projects` contains packages
7
+ that build upon these libraries and can be device drivers or stand-alone applications.
8
+
9
+ In the `libs` folder, we have the following packages:
10
+
11
+ - `cgse-common`: Common modules and functions for the EGSE framework.
12
+ - `cgse-coordinates`: Coordinate systems and transformations.
13
+ - `cgse-core`: Core services for the EGSE framework.
14
+ - `cgse-gui`: GUI functions for the EGSE framework.
15
+
16
+ The `projects` folder contains generic and project specific packages.
17
+
18
+ We have the following generic packages:
19
+
20
+ - `cgse-tools`: Tools for the `cgse` command.
21
+ - `symetrie-hexapod`: The Symétrie Hexapod drivers. We put this in the generic folder because it is a generic device driver that can be used by different projects.
22
+
23
+ We have the following project specific packages:
24
+
25
+ - `plato-spw`: The PLATO SpaceWire drivers.
26
+ - `plato-fits`: The PLATO FITS plugins.
27
+ - `plato-hdf5`: The PLATO HDF5 plugins.
cgse-2024.1.4/TODO.md ADDED
@@ -0,0 +1,3 @@
1
+ # TODO
2
+
3
+ * [x] we will use one global version for the monorepo -> create a bump script that updates all version numbers from the master pyproject.toml
cgse-2024.1.4/bump.py ADDED
@@ -0,0 +1,85 @@
1
+ """
2
+ This script bumps the version of all libs and projects in this monorepo to the version that
3
+ is currently in the `pyproject.toml` file in the root folder of the monorepo.
4
+
5
+ Usage:
6
+ $ python bump.py
7
+
8
+ Note:
9
+ You are expected to be in the minimal virtual environment associated with this monorepo,
10
+ being a `pyenv` or Poetry environment, or your global environment shall include the tomlkit
11
+ and the rich package.
12
+
13
+ """
14
+
15
+ # /// script
16
+ # requires-python = ">=3.9"
17
+ # dependencies = [
18
+ # "tomlkit",
19
+ # "rich",
20
+ # ]
21
+ # ///
22
+ import os
23
+ import pathlib
24
+
25
+ import rich
26
+ import tomlkit
27
+ import tomlkit.exceptions
28
+
29
+
30
+ def get_master_version(master_pyproject_path):
31
+ """Returns the version number of the master project, i.e. cgse."""
32
+
33
+ with open(master_pyproject_path, "r") as file:
34
+ data = tomlkit.parse(file.read())
35
+
36
+ return data["project"]["version"]
37
+
38
+
39
+ def update_project_version(project_dir, new_version):
40
+ """Updates the version of the subproject."""
41
+
42
+ os.chdir(project_dir)
43
+
44
+ # Check if the Poetry version is defined, otherwise print a message.
45
+
46
+ with open("pyproject.toml", "r") as file:
47
+ data = tomlkit.parse(file.read())
48
+
49
+ try:
50
+ data["project"]["version"] = new_version
51
+
52
+ with open("pyproject.toml", "w") as file:
53
+ tomlkit.dump(data, file)
54
+
55
+ except tomlkit.exceptions.NonExistentKey:
56
+ rich.print(f"[red]\[project.version] is not defined in pyproject.toml in {project_dir}[/]")
57
+
58
+
59
+ def update_all_projects_in_monorepo(root_dir):
60
+ """Updates all pyproject.toml files with the master version number."""
61
+
62
+ excluded_subdirs = ["__pycache__", ".venv", ".git", ".idea", "cgse/build", "cgse/dist"]
63
+
64
+ master_version = get_master_version(os.path.join(root_dir, "pyproject.toml"))
65
+
66
+ rich.print(f"Projects will be bumped to version {master_version}")
67
+
68
+ for subdir, dirs, files in os.walk(root_dir):
69
+ if subdir == "." or subdir == ".." or any(excluded in subdir for excluded in excluded_subdirs):
70
+ # rich.print(f"rejected {subdir = }")
71
+ continue
72
+ if "pyproject.toml" in files and subdir != str(root_dir): # Skip the master pyproject.toml
73
+ print(f"Updating version for project in {subdir}")
74
+ update_project_version(subdir, master_version)
75
+
76
+
77
+ if __name__ == "__main__":
78
+ monorepo_root = pathlib.Path(__file__).parent.resolve()
79
+
80
+ cwd = os.getcwd()
81
+ os.chdir(monorepo_root)
82
+
83
+ update_all_projects_in_monorepo(monorepo_root)
84
+
85
+ os.chdir(cwd)
@@ -0,0 +1,39 @@
1
+
2
+ ![PyPI - Version](https://img.shields.io/pypi/v/cgse-common)
3
+ ![Supported OS](https://img.shields.io/badge/Supported%20OS-Linux%20%7C%20macOS-blue)
4
+ ![Python Version from PEP 621 TOML](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2FIvS-KULeuven%2Fcgse%2Frefs%2Fheads%2Fmain%2Fpyproject.toml)
5
+ ![PyPI - Wheel](https://img.shields.io/pypi/wheel/cgse-common)
6
+
7
+ # Generic Functionality used in the Common-EGSE
8
+
9
+ This package 'cgse-common' contains functionality that is used by all `cgse` sub-packages, but it is designed to be a stand-alone generic package that can be used also in any other project.
10
+
11
+
12
+ ## Installation
13
+
14
+ Install the package using pip:
15
+
16
+ $ pip install cgse-common
17
+
18
+
19
+ ## Usage
20
+
21
+ All functionality resides in the package `egse`. As an example, if you need a standard way to format your timestamp, use the `format_datetime()` function from `egse.system`:
22
+
23
+ >>> from egse.system import format_datetime
24
+ >>> print(format_datetime())
25
+ 2023-10-10T08:41:51.937+0000
26
+
27
+
28
+ ## Included Functionality
29
+
30
+ A non-comprehensive list of available functionality:
31
+
32
+ ### Functionality of General Use
33
+
34
+ * **egse.bits**: contains a number of convenience functions to work with bits, bytes and integers
35
+ * **egse.decorators**: a collection of useful decorator functions
36
+ * **egse.reload**: a slightly better approach to reloading modules and function than the standard importlib.reload() function.
37
+ * **egse.resource**: provides convenience functions to use resources in your code without the need to specify an absolute path
38
+ * **egse.system**: defines convenience functions that provide information on system specific functionality like, file system interactions, timing, operating system interactions, etc.
39
+ * **egse.version**: functionality to retrieve the package version information
@@ -0,0 +1,80 @@
1
+ [project]
2
+ name = "cgse-common"
3
+ version = "2024.1.4"
4
+ description = "Software framework to support hardware testing"
5
+ authors = [
6
+ {name = "IVS KU Leuven"}
7
+ ]
8
+ maintainers = [
9
+ {name = "Rik Huygen", email = "rik.huygen@kuleuven.be"},
10
+ {name = "Sara Regibo", email = "sara.regibo@kuleuven.be"}
11
+ ]
12
+ readme = {"file" = "README.md", "content-type" = "text/markdown"}
13
+ requires-python = ">=3.9"
14
+ license = "MIT"
15
+ keywords = [
16
+ "CGSE",
17
+ "Common-EGSE",
18
+ "hardware testing",
19
+ "software framework"
20
+ ]
21
+ dependencies = [
22
+ "click>=8.1.8",
23
+ "deepdiff>=8.1.1",
24
+ "distro>=1.9.0",
25
+ "gitpython>=3.1.44",
26
+ "numpy==1.22.4",
27
+ "pandas>=1.5.1",
28
+ "pip>=24.3.1", # only used in setup
29
+ "prometheus-client>=0.21.1",
30
+ "psutil>=6.1.1",
31
+ "pyyaml>=6.0.2",
32
+ "pyzmq == 23.2.1",
33
+ "rich>=13.9.4",
34
+ ]
35
+
36
+ [project.entry-points."cgse.version"]
37
+ cgse-common = 'egse'
38
+
39
+ [tool.pytest.ini_options]
40
+ pythonpath = "src"
41
+ testpaths = ["tests"]
42
+ addopts = "-ra --cov --cov-report html"
43
+ filterwarnings = [
44
+ "ignore::DeprecationWarning"
45
+ ]
46
+
47
+ [tool.coverage.run]
48
+ omit = [
49
+ "tests/*",
50
+ ]
51
+
52
+ [tool.hatch.build.targets.sdist]
53
+ exclude = [
54
+ "/tests",
55
+ "/pytest.ini",
56
+ "/.gitignore",
57
+ "/*poetry*",
58
+ "/*setuptools*",
59
+ ]
60
+
61
+ [tool.hatch.build.targets.wheel]
62
+ packages = ["src/egse"]
63
+
64
+ [tool.ruff]
65
+ line-length = 120
66
+
67
+ [tool.ruff.lint]
68
+ extend-select = ["E", "W"]
69
+
70
+ [build-system]
71
+ requires = ["hatchling"]
72
+ build-backend = "hatchling.build"
73
+
74
+ [dependency-groups]
75
+ dev = [
76
+ "pytest>=8.3.4",
77
+ "pytest-cov>=6.0.0",
78
+ "pytest-mock>=3.14.0",
79
+ "ruff>=0.9.0",
80
+ ]