cgse 0.16.14__tar.gz → 0.17.0__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.
- cgse-0.17.0/.env.example +9 -0
- cgse-0.17.0/CHANGELOG.md +135 -0
- {cgse-0.16.14 → cgse-0.17.0}/PKG-INFO +5 -2
- {cgse-0.16.14 → cgse-0.17.0}/README.md +3 -1
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/coding_style.md +15 -10
- cgse-0.17.0/docs/dev_guide/dotenv.md +38 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/getting_started.md +2 -1
- {cgse-0.16.14 → cgse-0.17.0}/docs/user_guide/cli.md +2 -0
- cgse-0.17.0/docs/user_guide/env.md +69 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/pyproject.toml +2 -3
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/cgse_common/cgse.py +5 -1
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/decorators.py +2 -1
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/device.py +8 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/env.py +115 -49
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/heartbeat.py +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/log.py +9 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/plugins/metrics/influxdb.py +34 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/scpi.py +15 -7
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/settings.py +4 -5
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/setup.py +12 -6
- cgse-0.17.0/libs/cgse-common/src/egse/socketdevice.py +377 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_env.py +42 -5
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_influxdb_plugin.py +2 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_ratelimit.py +1 -1
- cgse-0.17.0/libs/cgse-common/tests/test_socketdevice.py +329 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/pyproject.toml +3 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/services.py +2 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/confman/__init__.py +2 -25
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/confman/confman_cs.py +21 -17
- cgse-0.16.14/libs/cgse-core/src/egse/connect-todo.py → cgse-0.17.0/libs/cgse-core/src/egse/connect.py +125 -23
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/control.py +0 -3
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/logger/log_cs.py +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/monitoring.py +3 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/registry/client.py +5 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/storage/__init__.py +3 -2
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/storage/persistence.py +4 -4
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/storage/storage_cs.py +1 -1
- cgse-0.17.0/libs/cgse-core/tests/simple_server.py +135 -0
- cgse-0.17.0/libs/cgse-core/tests/test_connect.py +668 -0
- cgse-0.17.0/libs/cgse-core/tests/test_proxy.py +15 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/pyproject.toml +1 -1
- cgse-0.17.0/make-a-release.md +23 -0
- {cgse-0.16.14 → cgse-0.17.0}/mkdocs.yml +5 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/README.md +24 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/pyproject.toml +64 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/ariel_tcu/cgse_explore.py +16 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/ariel_tcu/cgse_services.py +57 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/ariel_tcu/settings.yaml +20 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/__init__.py +105 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/tcu.py +1118 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/tcu.yaml +43 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/tcu_cmd_utils.py +1389 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/tcu_cs.py +246 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/tcu_devif.py +104 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/src/egse/ariel/tcu/tcu_protocol.py +147 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/tests/test_tcu.py +2047 -0
- cgse-0.17.0/projects/ariel/ariel-tcu/tests/test_tcu_cmd_utils.py +8 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/cgse-tools/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_cs.py +9 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_dev.py +11 -7
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_mon.py +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/cgse_services.py +0 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/settings.yaml +2 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_ui.py +3 -2
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-fits/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-hdf5/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-hdf5/src/egse/plugins/storage/hdf5.py +1 -1
- cgse-0.17.0/projects/plato/plato-spw/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-spw/pyproject.toml +1 -1
- {cgse-0.16.14 → cgse-0.17.0}/pyproject.toml +3 -2
- {cgse-0.16.14 → cgse-0.17.0}/service_registry.db +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/service_registry.db-shm +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/service_registry.db-wal +0 -0
- cgse-0.16.14/buffer_vat.log +0 -2860
- cgse-0.16.14/buffer_vat.png +0 -0
- cgse-0.16.14/libs/cgse-common/src/egse/socketdevice.py +0 -205
- cgse-0.16.14/libs/cgse-core/.envrc.disabled +0 -9
- cgse-0.16.14/libs/cgse-core/src/egse/connect.py +0 -55
- cgse-0.16.14/libs/cgse-core/tests/test_connect.py +0 -200
- cgse-0.16.14/projects/generic/keithley-tempcontrol/temperature_readings.log +0 -1266
- cgse-0.16.14/temperature_readings.log +0 -158
- {cgse-0.16.14 → cgse-0.17.0}/.github/workflows/ruff-format-check.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/.gitignore +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/bump.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/conftest.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/bits.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/calibration.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/command.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/config.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/control.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/counter.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/decorators.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/device.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/dicts.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/dummy.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/env.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/exceptions.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/heartbeat.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/hk.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/listener.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/metrics.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/mixin.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/monitoring.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/observer.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/obsid.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/persistence.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/plugin.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/process.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/reload.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/settings.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/setup.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/api/system.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/custom_theme/main.html +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/docs.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/installation.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/monitoring.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/monorepo.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/nox.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/plugins.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/project-configuration.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/unit_testing.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/uv.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/dev_guide/versioning.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/help.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/images/cli-cgse.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/images/github-fork-clone-dark.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/images/github-fork-clone.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/images/grafana-queries.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/images/icons/cgse-logo-blue.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/images/icons/cgse-logo.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/initialize.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-common/images/load_methods.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-common/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-common/settings.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-common/setup.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-coordinates/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-core/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-core/notifyhub.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-core/registry.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/cgse-gui/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/libs/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/package_list.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/projects/cgse-tools.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/projects/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/projects/symetrie-hexapod.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/roadmap.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/stylesheets/custom.css +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/stylesheets/extra.css +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/tutorial.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/docs/user_guide/index.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/duckdb_metrics.db +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/duckdb_metrics.db.wal +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/identifier.sqlite +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/justfile +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/justfile +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/noxfile.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/service_registry.db +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/cgse_common/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/cgse_common/settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/bits.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/calibration.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/config.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/counter.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/dicts.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/exceptions.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/hk.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/metrics.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/observer.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/obsid.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/persistence.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/plugin.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/plugins/metrics/duckdb.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/plugins/metrics/timescaledb.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/process.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/py.typed +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/randomwalk.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/ratelimit.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/reload.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/resource.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/response.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/signal.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/state.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/system.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/task.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/version.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/src/egse/zmq_ser.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/conftest.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/COPYING +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00028_201028_155259.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00029_201028_155331.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00030_210311_134043.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00080_210917_105245.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00081_210922_142259.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00082_210923_094458.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL1/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/CSL2/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/IAS/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/INTA/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/LAB23/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00027_211119_140441.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00028_211119_160406.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00029_211119_172918.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00030_211122_103604.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00031_211123_124900.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/common/telemetry/tm-dictionary-default.csv +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/conf/SETUP_20250114_1519.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/conf/config-file.toml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/cal_coeff_1234.csv +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/calibration.csv +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/calibration.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/command.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/corrupt.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/data-file.txt +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/empty_data_file.txt +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/empty_yaml_file.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/local_settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/new_local_settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/data/test_setup.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/icons/hourglass.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/icons/keyboard.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/icons/soap_sponge.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/lib/dev1/shared-lib.so +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/data/lib/dev2/shared-lib.so +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/fixtures/default_env.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/fixtures/helpers.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/scripts/empty_process.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/scripts/handle_sigterm.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/scripts/process_with_children.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/scripts/raise_value_error.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/scripts/void-0.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/scripts/void-1.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_bits.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_config.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_decorators.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_device.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_fixtures.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_hk.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_log.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_metrics.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_plugin.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_process.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_resource.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_response.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_settings.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_setup.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_signal.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_state.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_system.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_task.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-common/tests/test_zmq_ser.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/cgse_coordinates/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/cgse_coordinates/settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/avoidance.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/cslmodel.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/laser_tracker_to_dict.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/point.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/pyplot.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/referenceFrame.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/refmodel.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/rotationMatrix.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/src/egse/coordinates/transform3d_addon.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_avoidance.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_coordinates_plot.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_coordinates_serialize.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_point.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_ref_model.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_reference_frames.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-coordinates/tests/test_refmodel.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/service_registry.db +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/_start.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/_status.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/_stop.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/cgse_explore.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/cgse_core/settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/_setup_core.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/async_control.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/async_control_claude.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/command.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/confman/__main__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/confman/confman.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/confman/confman_acs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/dummy.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/busy.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/operational-mode.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/pm_ui.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/simulator-mode.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/start-process-button.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/stop-process-button.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/icons/user-interface.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/listener.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/logger/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/logger/__main__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/metricshub/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/metricshub/server.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/mixin.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/notifyhub/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/notifyhub/client.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/notifyhub/event.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/notifyhub/server.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/notifyhub/services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/notifyhub/test.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/procman/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/procman/procman.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/procman/procman_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/procman/procman_protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/procman/procman_ui.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/proxy.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/registry/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/registry/backend.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/registry/server.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/registry/service.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/services.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/storage/__main__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/src/egse/storage/storage.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/conftest.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/data/local_settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/fixtures/default_env.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/fixtures/helpers.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/fixtures/services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/marimo/intro.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/script_subscribe_to_notifyhub.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/script_test_async_registry_client.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/script_test_registry_client_server.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/script_test_service_registry_server.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/script_test_sync_registry_client.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/stress_test_registry_server.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_async_control.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_client_server_interaction.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_cm_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_command.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_confman_setups.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_control.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_dummy.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_event_notification.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_extensions.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_listener.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_logger.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_mixin.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_notify_hub.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_registry_backend.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_registry_service.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_server_running.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_server_running_with_fixture.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_settings_core.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-core/tests/test_zmq_microservice.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/buttons.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/aeu-cs-start.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/aeu-cs-stop.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/aeu-cs.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/aeu_cs-started.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/aeu_cs-stopped.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/aeu_cs.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/alert.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/arrow-double-left.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/arrow-double-right.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/arrow-up.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/backward.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/busy.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/cleaning.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/color-scheme.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/cs-connected-alert.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/cs-connected-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/cs-connected.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/cs-not-connected.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/double-left-arrow.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/double-right-arrow.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/erase-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/erase.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/fitsgen-start.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/fitsgen-stop.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/fitsgen.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/forward.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/fov-hk-start.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/fov-hk-stop.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/fov-hk.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/front-desk.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/home-actioned.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/home-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/home.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/info.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/invalid.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-green.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-grey.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-orange.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-red.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-square-green.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-square-grey.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-square-orange.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/led-square-red.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/limit-switch-all-green.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/limit-switch-all-red.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/limit-switch-el+.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/limit-switch-el-.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/location-marker.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-dpu.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-gimbal.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-huber.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-ogse.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-puna.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-tcs.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/logo-zonda.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/maximize.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/meter.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/more.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk-start.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk-stop.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/observing-off.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/observing-on.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/open-document-hdf5.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/open-document-hdf5.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/ops-mode.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/play-green.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/plugged-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/plugged.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/pm_ui.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/power-button-green.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/power-button-red.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/power-button.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/radar.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/radioactive.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/reload.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/remote-control-off.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/remote-control-on.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/repeat-blue.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/repeat.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/settings.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/shrink.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/shutter.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/sign-off.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/sign-on.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/sim-mode.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/small-buttons-go.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/small-buttons-minus.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/small-buttons-plus.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/sponge.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/start-button-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/start-button.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/stop-button-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/stop-button.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/stop-red.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/stop.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/switch-disabled-square.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/switch-disabled.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/switch-off-square.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/switch-off.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/switch-on-square.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/switch-on.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/temperature-control.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/th_ui_logo.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/unplugged.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/unvalid.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/user-interface.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/vacuum.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/valid.png +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/zoom-to-pixel-dark.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/icons/zoom-to-pixel-white.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/led.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/limitswitch.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/states.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/styles/dark.qss +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/styles/default.qss +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/styles.qss +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/libs/cgse-gui/src/egse/gui/switch.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/noxfile.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/overrides/.icons/custom/dbend-dark.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/overrides/.icons/custom/dbend-light.svg +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/overrides/.icons/custom/gear.svg +0 -0
- {cgse-0.16.14/projects/generic/cgse-tools/src/cgse_tools → cgse-0.17.0/projects/ariel/ariel-tcu/src/ariel_tcu}/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/cgse-tools/README.md +0 -0
- {cgse-0.16.14/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol → cgse-0.17.0/projects/generic/cgse-tools/src/cgse_tools}/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/cgse-tools/src/cgse_tools/cgse_clock.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/cgse-tools/src/cgse_tools/cgse_commands.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/cgse-tools/src/cgse_tools/cgse_services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/cgse-tools/src/egse/tools/status.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/justfile +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/noxfile.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/service_registry.db +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_acs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_adev.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_sim.py +0 -0
- {cgse-0.16.14/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol → cgse-0.17.0/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol}/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/cgse_explore.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/tests/script_daq6510_central_heating.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/tests/script_daq6510_mon.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/tests/script_plot_readings.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/tests/test_adev.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/keithley-tempcontrol/tests/test_dev.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_devif.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_protocol.py +0 -0
- {cgse-0.16.14/projects/generic/symetrie-hexapod/src/symetrie_hexapod → cgse-0.17.0/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol}/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/cgse_explore.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/cgse_services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/lakeshore-tempcontrol/tests/test_lakeshore336_simulator.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/alpha.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/dynalpha.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/hexapod.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/hexapod_ui.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_ui.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/pmac.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/pmac_regex.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_sim.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/punaplus.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_devif.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_protocol.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_ui.py +0 -0
- /cgse-0.16.14/projects/plato/plato-hdf5/README.md → /cgse-0.17.0/projects/generic/symetrie-hexapod/src/symetrie_hexapod/__init__.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/cgse_explore.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/cgse_services.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/settings.yaml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/tests/test_puna.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/tests/test_puna_cs.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/generic/symetrie-hexapod/tests/test_puna_simulator.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-fits/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-fits/src/egse/plugins/storage/fits.py +0 -0
- {cgse-0.16.14/projects/plato/plato-spw → cgse-0.17.0/projects/plato/plato-hdf5}/README.md +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/projects/plato/plato-spw/src/egse/spw.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/ruff.toml +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/scratch/advanced-process-monitoring.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/scratch/live-process-monitoring.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/scratch/match-case.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/scratch/processes.json +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/scratch/simple-process-monitoring.py +0 -0
- {cgse-0.16.14 → cgse-0.17.0}/test_service_registry.db +0 -0
cgse-0.17.0/.env.example
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
PROJECT='ARIEL'
|
|
2
|
+
SITE_ID='VACUUM_LAB'
|
|
3
|
+
|
|
4
|
+
# The variable below all start with the project name.
|
|
5
|
+
|
|
6
|
+
ARIEL_DATA_STORAGE_LOCATION=~/data/ARIEL/VACUUM_LAB
|
|
7
|
+
ARIEL_CONF_DATA_LOCATION=~/data/ARIEL/VACUUM_LAB/conf
|
|
8
|
+
ARIEL_LOCAL_SETTINGS=~/data/ARIEL/VACUUM_LAB/local_settings.yaml
|
|
9
|
+
ARIEL_LOG_FILE_LOCATION=~/data/ARIEL/VACUUM_LAB/log
|
cgse-0.17.0/CHANGELOG.md
ADDED
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
|
|
2
|
+
# Changelog
|
|
3
|
+
|
|
4
|
+
All notable changes to this project will be documented in this file.
|
|
5
|
+
|
|
6
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [Unreleased](https://github.com/IvS-KULeuven/cgse/compare/v0.17.0...HEAD)
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- ...
|
|
13
|
+
|
|
14
|
+
## [v0.17.0](https://github.com/IvS-KULeuven/cgse/compare/v0.16.14...v0.17.0)
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
- Added this CHANGELOG file.
|
|
18
|
+
- Added an initial implementation of the ARIEL Telescope Control Unit (TCU). This is a separate package in this monorepo that is located at `projects/ariel/ariel-tcu`. The package will be added to PyPI as `ariel-tcu`.
|
|
19
|
+
- Added a `read_string()` method to the `DeviceTransport` and `AsyncDeviceTransport` classes.
|
|
20
|
+
### Fixed
|
|
21
|
+
- Fixed the `sm_cs` for the missing `--full` cli argument.
|
|
22
|
+
- Fixed the configuration of the InfluxDB client. The client can now be fully configured with environment variables if needed.
|
|
23
|
+
### Changed
|
|
24
|
+
- Improved initialization of the process environment with `setup_env()`.
|
|
25
|
+
- The configuration manager now also re-registers the obsid table to the storage.
|
|
26
|
+
- The `cgse` subcommand to start the notification hub is changed from `not` to `nh`. Use `cgse nh [start|stop|status]`.
|
|
27
|
+
- The environment variables that contain a path can start with a tilde '`~`' which will be expanded to the user's home directory when used.
|
|
28
|
+
### Docs
|
|
29
|
+
- Documentation updates for the Python version, the CLI `cgse` subcommands, environment and the introduction of `dotenv`, ...
|
|
30
|
+
- Updated information on the use of `dotenv` in the developer guid.
|
|
31
|
+
- Added information on the environment variables to the user guide.
|
|
32
|
+
|
|
33
|
+
## [0.16.14](https://github.com/IvS-KULeuven/cgse/compare/v0.16.13...v0.16.14) – 24/10/2025
|
|
34
|
+
|
|
35
|
+
### Added
|
|
36
|
+
- Added `cmd_string_func` parameter to the `@dynamic_command` interface. Use this parameter if you need to create a fancy command string from the arguments passed into the command function.
|
|
37
|
+
|
|
38
|
+
## [0.16.13](https://github.com/IvS-KULeuven/cgse/compare/v0.16.12...v0.16.13) – 23/10/2025
|
|
39
|
+
|
|
40
|
+
### Changed
|
|
41
|
+
- Improved unit tests for the `mixin.py` module.
|
|
42
|
+
|
|
43
|
+
## [0.16.12](https://github.com/IvS-KULeuven/cgse/compare/v0.16.11...v0.16.12) – 21/10/2025
|
|
44
|
+
|
|
45
|
+
### Fixed
|
|
46
|
+
- Fixed a bug in starting the puna proxy.
|
|
47
|
+
|
|
48
|
+
## [0.16.11](https://github.com/IvS-KULeuven/cgse/compare/v0.16.10...v0.16.11) – 21/10/2025
|
|
49
|
+
|
|
50
|
+
### Fixed
|
|
51
|
+
- Fixed starting the hexapod GUI by specifying a device identifier.
|
|
52
|
+
- Fixed registration and connection of the notification hub.
|
|
53
|
+
### Added
|
|
54
|
+
- Added a dependency for the `dotenv` module.
|
|
55
|
+
### Changed
|
|
56
|
+
- The PUNA GUI script now starts as a Typer app.
|
|
57
|
+
- The `get_port_number()` in `zmq_ser.py` now returns 0 (zero) on error.
|
|
58
|
+
- Improved logging for the Symétrie hexapods.
|
|
59
|
+
- Introduced the `VERBOSE_DEBUG` environment variable that can be used to restrict debug logging messages only when
|
|
60
|
+
this environment variable is set. Use this for very verbose debug logging.
|
|
61
|
+
|
|
62
|
+
## [0.16.10](https://github.com/IvS-KULeuven/cgse/compare/v0.16.9...v0.16.10) – 03/10/2025
|
|
63
|
+
|
|
64
|
+
### Changed
|
|
65
|
+
- Renamed Settings for external logger from `TEXTUALOG_*` to `EXTERN_LOG_*`.
|
|
66
|
+
- The heartbeat ZeroMQ protocol now uses ROUTER-DEALER instead of REQ-REP. This was needed because too often we got an invalid state for the REQ sockets after one of the services went down.
|
|
67
|
+
|
|
68
|
+
## [0.16.9](https://github.com/IvS-KULeuven/cgse/compare/v0.16.8...v0.16.9) – 02/10/2025
|
|
69
|
+
|
|
70
|
+
### Removed
|
|
71
|
+
- Removed caching from the async registry client.
|
|
72
|
+
|
|
73
|
+
## [0.16.8](https://github.com/IvS-KULeuven/cgse/compare/v0.16.7...v0.16.8) – 02/10/2025
|
|
74
|
+
|
|
75
|
+
### Fixed
|
|
76
|
+
- Fixed re-registration for the async registry client.
|
|
77
|
+
|
|
78
|
+
## [0.16.7](https://github.com/IvS-KULeuven/cgse/compare/v0.16.6...v0.16.7) – 01/10/2025
|
|
79
|
+
|
|
80
|
+
### Fixed
|
|
81
|
+
- Fixed re-registration problem in the service registry.
|
|
82
|
+
### Changed
|
|
83
|
+
- Read the Settings in the `__init__.py` files where possible. Do not spread Settings in all modules of a package.
|
|
84
|
+
|
|
85
|
+
## [0.16.6](https://github.com/IvS-KULeuven/cgse/compare/v0.16.5...v0.16.6) – 30/09/2025
|
|
86
|
+
|
|
87
|
+
### Fixed
|
|
88
|
+
- Fixed timeouts for Proxy (sub)classes to seconds instead of milliseconds. We strive to have all timeout in seconds and only convert to milliseconds when needed for a library call.
|
|
89
|
+
|
|
90
|
+
## [0.16.5](https://github.com/IvS-KULeuven/cgse/compare/v0.16.4...v0.16.5) – 29/09/2025
|
|
91
|
+
|
|
92
|
+
### Changed
|
|
93
|
+
- The service type for the notification hub is now `NH_CS` instead of `NOTIFY_HUB`.
|
|
94
|
+
- Remove the leading dot '`.`' from all startup log filenames. Startup log files are log files per `cgse` subcommand that are located in the `LOG_FILE_LOCATION`. You will find a log file there for the `start` and the `stop` for each core service or device control server.
|
|
95
|
+
|
|
96
|
+
## [0.16.4](https://github.com/IvS-KULeuven/cgse/compare/v0.16.3...v0.16.4) – 29/09/2025
|
|
97
|
+
|
|
98
|
+
### Added
|
|
99
|
+
- Added the `bool_env()` function in `env.py`.
|
|
100
|
+
### Changed
|
|
101
|
+
- The listeners functionality has been transferred to the notification hub and services subscribe to this notification service.
|
|
102
|
+
- Log messages to the `general.log` file now contain the logger name.
|
|
103
|
+
### Removed
|
|
104
|
+
- Remove the listener notification from the configuration manager.
|
|
105
|
+
- Remove listener registration from the storage manager and the process manager.
|
|
106
|
+
|
|
107
|
+
## [0.16.3](https://github.com/IvS-KULeuven/cgse/compare/v0.16.2...v0.16.3) – 19/09/2025
|
|
108
|
+
|
|
109
|
+
### Fixed
|
|
110
|
+
- Fixed a circular import problem in `system.py`.
|
|
111
|
+
|
|
112
|
+
## [0.16.2](https://github.com/IvS-KULeuven/cgse/compare/v0.16.1...v0.16.2) – 19/09/2025
|
|
113
|
+
|
|
114
|
+
### Changed
|
|
115
|
+
- The output of startup scripts is now redirected to the log location.
|
|
116
|
+
|
|
117
|
+
## [0.16.1](https://github.com/IvS-KULeuven/cgse/compare/v0.16.0...v0.16.1) – 19/09/2025
|
|
118
|
+
|
|
119
|
+
### Changed
|
|
120
|
+
- Use the `get_endpoint()` function in Proxy subclasses.
|
|
121
|
+
- Define constants from settings with proper defaults.
|
|
122
|
+
- Cleanup port numbers for core services in Settings. All core services now have a fixed port number, which can be
|
|
123
|
+
overwritten in the local settings file.
|
|
124
|
+
- When `port == 0` use the service registry to get the endpoint.
|
|
125
|
+
|
|
126
|
+
## [0.16.0](https://github.com/IvS-KULeuven/cgse/compare/v0.15.1...v0.16.0) – 17/09/2025
|
|
127
|
+
|
|
128
|
+
### Added
|
|
129
|
+
- Added a `deregister` subcommand to the service registry. Usage: `cgse reg deregister <SERVICE_TYPE>`.
|
|
130
|
+
### Fixed
|
|
131
|
+
- Fixed proper sorting of cgse subcommands.
|
|
132
|
+
- Fixed port numbers for core services.
|
|
133
|
+
### Changed
|
|
134
|
+
- Proxies now handle fixed port numbers properly.
|
|
135
|
+
- Renamed `cgse` subcommands `registry` → `reg`, `notify` → `not`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cgse
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.17.0
|
|
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>
|
|
@@ -10,6 +10,7 @@ Requires-Dist: cgse-common
|
|
|
10
10
|
Requires-Dist: cgse-core
|
|
11
11
|
Requires-Dist: cgse-tools
|
|
12
12
|
Requires-Dist: marimo>=0.17.0
|
|
13
|
+
Requires-Dist: pandas-stubs==2.3.2.250926
|
|
13
14
|
Requires-Dist: rich>=13.9.4
|
|
14
15
|
Requires-Dist: tomlkit>=0.13.2
|
|
15
16
|
Description-Content-Type: text/markdown
|
|
@@ -36,12 +37,14 @@ We have the following generic packages:
|
|
|
36
37
|
- `cgse-tools`: Tools for the `cgse` command.
|
|
37
38
|
- `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.
|
|
38
39
|
- `keithley-tempcontrol`: The DAQ6510 data acquisition and logging multimeter from Keithley.
|
|
40
|
+
- `lakeshore-tempcontrol`: The LakeShore Model 336 Temperature Controller.
|
|
39
41
|
|
|
40
42
|
We have the following project specific packages:
|
|
41
43
|
|
|
42
44
|
- `plato-spw`: The PLATO SpaceWire drivers.
|
|
43
45
|
- `plato-fits`: The PLATO FITS plugins.
|
|
44
46
|
- `plato-hdf5`: The PLATO HDF5 plugins.
|
|
47
|
+
- `ariel-tcu`: The Telescope Control Unit for the ARIEL spacecraft
|
|
45
48
|
|
|
46
49
|
# Installation
|
|
47
50
|
|
|
@@ -56,6 +59,6 @@ $ pip install cgse
|
|
|
56
59
|
Always install in a virtual environment or use `uv`:
|
|
57
60
|
|
|
58
61
|
```shell
|
|
59
|
-
$ uv venv
|
|
62
|
+
$ uv venv --python 3.12
|
|
60
63
|
$ uv pip install cgse
|
|
61
64
|
```
|
|
@@ -20,12 +20,14 @@ We have the following generic packages:
|
|
|
20
20
|
- `cgse-tools`: Tools for the `cgse` command.
|
|
21
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
22
|
- `keithley-tempcontrol`: The DAQ6510 data acquisition and logging multimeter from Keithley.
|
|
23
|
+
- `lakeshore-tempcontrol`: The LakeShore Model 336 Temperature Controller.
|
|
23
24
|
|
|
24
25
|
We have the following project specific packages:
|
|
25
26
|
|
|
26
27
|
- `plato-spw`: The PLATO SpaceWire drivers.
|
|
27
28
|
- `plato-fits`: The PLATO FITS plugins.
|
|
28
29
|
- `plato-hdf5`: The PLATO HDF5 plugins.
|
|
30
|
+
- `ariel-tcu`: The Telescope Control Unit for the ARIEL spacecraft
|
|
29
31
|
|
|
30
32
|
# Installation
|
|
31
33
|
|
|
@@ -40,6 +42,6 @@ $ pip install cgse
|
|
|
40
42
|
Always install in a virtual environment or use `uv`:
|
|
41
43
|
|
|
42
44
|
```shell
|
|
43
|
-
$ uv venv
|
|
45
|
+
$ uv venv --python 3.12
|
|
44
46
|
$ uv pip install cgse
|
|
45
47
|
```
|
|
@@ -8,13 +8,14 @@ The following sections will give the most used conventions with a few examples o
|
|
|
8
8
|
|
|
9
9
|
## TL;DR
|
|
10
10
|
|
|
11
|
-
| Type
|
|
12
|
-
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
|
11
|
+
| Type | Style | Example |
|
|
12
|
+
|---------------------|------------------------------|---------------------------------------------------------------------------|
|
|
13
|
+
| Language | American Standard English | Color (~~Colour~~), initialize (~~initialise~~), center (~~centre~~), ... |
|
|
14
|
+
| Classes | CapWords | ProcessManager, ImageViewer, CommandList, Observation, MetaData |
|
|
15
|
+
| Methods & Functions | lowercase with underscores | get_value, set_mask, create_image |
|
|
16
|
+
| Variables | lowercase with underscores | key, last_value, model, index, user_info |
|
|
17
|
+
| Constants | UPPERCASE with underscores | MAX_LINES, BLACK, COMMANDING_PORT |
|
|
18
|
+
| Modules & packages | lowercase **no** underscores | dataset, commanding, multiprocessing |
|
|
18
19
|
|
|
19
20
|
## General
|
|
20
21
|
|
|
@@ -31,6 +32,10 @@ The following sections will give the most used conventions with a few examples o
|
|
|
31
32
|
you will have to replace that text AND the brackets with your own text. As an example,
|
|
32
33
|
if you see `--prompt <venv name>`, replace this with something like `--prompt cgse-venv`.
|
|
33
34
|
|
|
35
|
+
## Language
|
|
36
|
+
|
|
37
|
+
The code and documentation shall be written in American Standard English for consistency and to avoid confusion when
|
|
38
|
+
searching for terms like "color" rather than "colour."
|
|
34
39
|
|
|
35
40
|
## Classes
|
|
36
41
|
|
|
@@ -83,21 +88,21 @@ Use simple words for modules, preferably just one word like `datasets` or `comma
|
|
|
83
88
|
* Never use the form `from <module> import *`
|
|
84
89
|
* Always use absolute imports in scripts
|
|
85
90
|
|
|
86
|
-
Be careful that you do not name any modules the same as a module in the Python standard library. This can result in strange effects and may result in an `AttributeError`. Suppose you have named a module `math` in the `egse` directory and it is imported and used further in the code as follows:
|
|
91
|
+
Be careful that you do not name any modules the same as a module in the Python standard library. This can result in strange effects and may result in an `AttributeError`. Suppose you have named a module `math` in the `egse` directory, and it is imported and used further in the code as follows:
|
|
87
92
|
|
|
88
93
|
```python
|
|
89
94
|
from egse import math
|
|
90
95
|
|
|
91
96
|
# in some expression further down the code you might use
|
|
92
97
|
|
|
93
|
-
math.exp(
|
|
98
|
+
math.exp(2)
|
|
94
99
|
```
|
|
95
100
|
|
|
96
101
|
This will result in the following runtime error:
|
|
97
102
|
|
|
98
103
|
```text
|
|
99
104
|
File "some_module.py", line 8, in <module>
|
|
100
|
-
print(math.exp(
|
|
105
|
+
print(math.exp(2))
|
|
101
106
|
AttributeError: module 'egse.math' has no attribute 'exp'
|
|
102
107
|
```
|
|
103
108
|
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Using dotenv
|
|
2
|
+
|
|
3
|
+
The `cgse` command and subcommands make use of `dotenv`. The package loads environment variables from a `.env` file into
|
|
4
|
+
your application's environment (`os.environ`). The idea is to store sensitive data like API keys, database passwords, or
|
|
5
|
+
configuration settings in the `.env` file. This file stays local on your machine and is ignored by git making your
|
|
6
|
+
project more secure. At the start of an application, call `load_dotenv()` and then access variables using
|
|
7
|
+
`os.getenv('KEY')` throughout your code.
|
|
8
|
+
|
|
9
|
+
The typical workflow is: create a `.env` file with your environment variables in your project root or in your
|
|
10
|
+
working directory, add `.env` to the `.gitignore`, commit a `.env.example` template (with dummy values) so other
|
|
11
|
+
developers know what variables are needed, and call `load_dotenv()` at the top of your main entry point before
|
|
12
|
+
accessing any environment variables. In production, you usually skip the `.env` file entirely and set real
|
|
13
|
+
environment variables through your hosting platform.
|
|
14
|
+
|
|
15
|
+
!!! note
|
|
16
|
+
The `load_dotenv()` function will **not overwrite** existing environment variables in `os.environ`. This means
|
|
17
|
+
environment variables already set in your shell or system take precedence over values in your `.env` file.
|
|
18
|
+
To override this behavior and force `.env` values to take priority, use `load_dotenv(override=True)`.
|
|
19
|
+
|
|
20
|
+
!!! Warning
|
|
21
|
+
Since the CGSE is a package that is used by and installed by other packages, the CGSE command loads the `.env` from
|
|
22
|
+
your current working directory instead of the location of the executing script. Otherwise, it would always look
|
|
23
|
+
into the folder where the `cgse.py` script is located and that is probably not what you want.
|
|
24
|
+
|
|
25
|
+
Below, we have summarised some basic know-hows for using dotenv:
|
|
26
|
+
|
|
27
|
+
- place the `.env` file at the root location of your project or in your current working directory.
|
|
28
|
+
When you are developing for the CGSE, use the top-level folder of the monorepo. Please note that
|
|
29
|
+
the `load_dotenv()` function searches for a `.env` file in the current folder, the parent folder
|
|
30
|
+
up until it hits your home directory.
|
|
31
|
+
- the format to use for the environment variables is `KEY=VALUE`.
|
|
32
|
+
- do not use quotes, unless the VALUE contains spaces.
|
|
33
|
+
- do not use the _`export`_ statement (the `.env` files are not shell scripts).
|
|
34
|
+
- add a comment after a hash character: '`#`'
|
|
35
|
+
- call the `load_dotenv()` function at the top of your entry point file or app, right after the imports.
|
|
36
|
+
- Call the `load_dotenv()` function only once at application startup, not in every module.
|
|
37
|
+
- You might want to consider calling `load_dotenv(find_dotenv(usecwd=True))` instead
|
|
38
|
+
- Do not call the function in library code.
|
|
@@ -2,7 +2,8 @@ All you need to get started using and building the CGSE.
|
|
|
2
2
|
|
|
3
3
|
## Requirements
|
|
4
4
|
|
|
5
|
-
- Python 3.10.x (we
|
|
5
|
+
- Python 3.10.x (although we know at least the `cgse-common` works with Python versions up to 3.13, we do not yet
|
|
6
|
+
fully support higher versions, but are working to extend the list)
|
|
6
7
|
- macOS or Linux
|
|
7
8
|
|
|
8
9
|
## Virtual environment
|
|
@@ -18,6 +18,7 @@ The _Commands_ section lists the `cgse` commands that are not linked to a core s
|
|
|
18
18
|
|
|
19
19
|
The _Core Command_ section lists the sub-command for each of the core services, use `core` when you want to
|
|
20
20
|
start/stop all core services in one go. The core services are:
|
|
21
|
+
|
|
21
22
|
- **reg** the service registry for all core services and control servers
|
|
22
23
|
- **not** the notification server that collects and published all events
|
|
23
24
|
- **log** the log server that collects and stores all log messages
|
|
@@ -27,6 +28,7 @@ start/stop all core services in one go. The core services are:
|
|
|
27
28
|
|
|
28
29
|
The _Device Command_ section lists the sub-commands for all device packages that have been installed and have a
|
|
29
30
|
plugin for the `cgse` command. In the `cgse` package, the following devices are available:
|
|
31
|
+
|
|
30
32
|
- **DAQ6510** the Keithley Data Acquisition and Logging Multimeter
|
|
31
33
|
- **LakeShore336** the LakeShore Temperature Controller
|
|
32
34
|
- **puna**, **joran**, **zonda** the Symétrie positioning Hexapods
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# The Environment
|
|
2
|
+
|
|
3
|
+
The CGSE uses a number of environment variables that you will need to set in order to properly run services. There
|
|
4
|
+
are currently two mandatory environment variables:
|
|
5
|
+
|
|
6
|
+
- **PROJECT**: which is the name of your project, use ALL_CAPS to set its value. The value of this environment
|
|
7
|
+
variable is used as a prefix for other known environment variable specific for your project. For instance, when
|
|
8
|
+
your PROJECT=ARIEL, you will have a number of environment variables starting with `ARIEL_`, e.g.
|
|
9
|
+
`ARIEL_DATA_STORAGE_LOCATION`.
|
|
10
|
+
- **SITE_ID**: this is the name of the site or lab where the CGSE is running. The site id makes your tests and
|
|
11
|
+
environment unique. Suppose you have a laboratory with three test setupt, you can distinct site ids for each of
|
|
12
|
+
these setups. The `SITE_ID` will be used to assemble the path location of your storage, database, configurations
|
|
13
|
+
files, etc.
|
|
14
|
+
|
|
15
|
+
Besides the mandatory environment variables, the CGSE also maintains a number of _known_ environment variables. When
|
|
16
|
+
these variables are not set, they will be determined from defaults.
|
|
17
|
+
|
|
18
|
+
**`{PROJECT}_DATA_STORAGE_LOCATION`**
|
|
19
|
+
|
|
20
|
+
: This directory contains all the data files that are generated and filled by
|
|
21
|
+
the control servers and other components. The folder is the root folder for all
|
|
22
|
+
data from your test equipment, the SUT (system under test) and
|
|
23
|
+
all site ids.
|
|
24
|
+
|
|
25
|
+
**`{PROJECT}_CONF_DATA_LOCATION`**:
|
|
26
|
+
|
|
27
|
+
: This directory is the root folder for all the Setups of the site, the site is part
|
|
28
|
+
of the name. By default, this directory is located in the overall data storage folder.
|
|
29
|
+
|
|
30
|
+
**`{PROJECT}_LOG_FILE_LOCATION`**:
|
|
31
|
+
|
|
32
|
+
: This directory contains the log files with all messages that were sent to the
|
|
33
|
+
logger control server. The log files are rotated on a daily basis at midnight UTC.
|
|
34
|
+
By default, this directory is also located in the overall data storage folder, such
|
|
35
|
+
that log files are kept per project and site id.
|
|
36
|
+
|
|
37
|
+
**`{PROJECT}_LOCAL_SETTINGS`**:
|
|
38
|
+
|
|
39
|
+
: This file is used for local site-specific settings. When the environment
|
|
40
|
+
variable is not set, no local settings will be loaded. By default, the name
|
|
41
|
+
of this file is assumed to be 'local_settings.yaml'.
|
|
42
|
+
|
|
43
|
+
You can inspect your current environment with the command given below. The example is for
|
|
44
|
+
a project called ARIEL and a test setup in the vacuum lab.
|
|
45
|
+
|
|
46
|
+
```shell
|
|
47
|
+
➜ cgse show env
|
|
48
|
+
Environment variables:
|
|
49
|
+
PROJECT = ARIEL
|
|
50
|
+
SITE_ID = VACUUM_LAB
|
|
51
|
+
ARIEL_DATA_STORAGE_LOCATION = ~/data/ARIEL/VACUUM_LAB
|
|
52
|
+
ARIEL_CONF_DATA_LOCATION = ~/data/ARIEL/VACUUM_LAB/conf
|
|
53
|
+
ARIEL_CONF_REPO_LOCATION = not set
|
|
54
|
+
ARIEL_LOG_FILE_LOCATION = ~/data/ARIEL/VACUUM_LAB/log
|
|
55
|
+
ARIEL_LOCAL_SETTINGS = ~/data/ARIEL/VACUUM_LAB/local_settings.yaml
|
|
56
|
+
|
|
57
|
+
Generated locations and filenames
|
|
58
|
+
get_data_storage_location() = '~/data/ARIEL/VACUUM_LAB'
|
|
59
|
+
get_conf_data_location() = '~/data/ARIEL/VACUUM_LAB/conf'
|
|
60
|
+
get_conf_repo_location() = None ⟶ ERROR: The configuration repository location doesn't exist!
|
|
61
|
+
get_log_file_location() = '~/data/ARIEL/VACUUM_LAB/log'
|
|
62
|
+
get_local_settings_path() = '~/data/ARIEL/VACUUM_LAB/local_settings.yaml'
|
|
63
|
+
|
|
64
|
+
use the '--full' flag to get a more detailed report, '--doc' for help on the variables.
|
|
65
|
+
```
|
|
66
|
+
!!! note
|
|
67
|
+
|
|
68
|
+
Note that the environment variables can start with the tilde `~` character which will be expanded into the
|
|
69
|
+
user's home folder when used.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "cgse-common"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.17.0"
|
|
4
4
|
description = "Software framework to support hardware testing"
|
|
5
5
|
authors = [
|
|
6
6
|
{name = "IvS KU Leuven"}
|
|
@@ -48,7 +48,6 @@ dependencies = [
|
|
|
48
48
|
|
|
49
49
|
[project.scripts]
|
|
50
50
|
cgse = 'cgse_common.cgse:app'
|
|
51
|
-
monitor = "egse.monitoring:app"
|
|
52
51
|
|
|
53
52
|
[project.entry-points."cgse.version"]
|
|
54
53
|
cgse-common = 'egse.version:get_version_installed'
|
|
@@ -61,7 +60,7 @@ pythonpath = "src"
|
|
|
61
60
|
testpaths = ["tests"]
|
|
62
61
|
addopts = "-ra --cov --cov-branch --cov-report html"
|
|
63
62
|
log_cli = true
|
|
64
|
-
log_cli_level = "
|
|
63
|
+
log_cli_level = "DEBUG"
|
|
65
64
|
filterwarnings = [
|
|
66
65
|
"ignore::DeprecationWarning"
|
|
67
66
|
]
|
|
@@ -72,7 +72,7 @@ class SortedCommandGroup(TyperGroup):
|
|
|
72
72
|
commands = super().list_commands(ctx)
|
|
73
73
|
|
|
74
74
|
# Define priority commands in specific order
|
|
75
|
-
priority_commands = ["init", "version", "show", "top", "core", "reg", "
|
|
75
|
+
priority_commands = ["init", "version", "show", "top", "core", "reg", "log", "nh", "cm", "sm", "pm"]
|
|
76
76
|
|
|
77
77
|
# Custom sort:
|
|
78
78
|
# First the priority commands in the given order (their index)
|
|
@@ -175,6 +175,10 @@ def main(ctx: typer.Context, verbose: bool = False):
|
|
|
175
175
|
- inspect, configure, monitor the core services and device control servers.
|
|
176
176
|
"""
|
|
177
177
|
|
|
178
|
+
from egse.env import setup_env
|
|
179
|
+
|
|
180
|
+
setup_env()
|
|
181
|
+
|
|
178
182
|
# This is more of a show-case for using application wide optional arguments and how to pass
|
|
179
183
|
# them into (sub-)commands.
|
|
180
184
|
|
|
@@ -15,7 +15,6 @@ from typing import Optional
|
|
|
15
15
|
|
|
16
16
|
import rich
|
|
17
17
|
|
|
18
|
-
from egse.settings import Settings
|
|
19
18
|
from egse.system import get_caller_info
|
|
20
19
|
from egse.log import logger
|
|
21
20
|
|
|
@@ -390,6 +389,8 @@ def profile(func):
|
|
|
390
389
|
if not hasattr(profile, "counter"):
|
|
391
390
|
profile.counter = 0
|
|
392
391
|
|
|
392
|
+
from egse.settings import Settings
|
|
393
|
+
|
|
393
394
|
@functools.wraps(func)
|
|
394
395
|
def wrapper_profile(*args, **kwargs):
|
|
395
396
|
if Settings.profiling():
|
|
@@ -199,7 +199,7 @@ class DeviceConnectionInterface(DeviceConnectionObservable):
|
|
|
199
199
|
|
|
200
200
|
|
|
201
201
|
class DeviceInterface(DeviceConnectionInterface):
|
|
202
|
-
"""
|
|
202
|
+
"""A generic interface for all device classes."""
|
|
203
203
|
|
|
204
204
|
@dynamic_interface
|
|
205
205
|
def is_simulator(self) -> bool:
|
|
@@ -237,6 +237,7 @@ class DeviceTransport:
|
|
|
237
237
|
raise NotImplementedError
|
|
238
238
|
|
|
239
239
|
def read_string(self, encoding="utf-8") -> str:
|
|
240
|
+
"""Reads a bytes object from the instrument and returns it converted into a stripped UTF-8 string."""
|
|
240
241
|
return self.read().decode(encoding).strip()
|
|
241
242
|
|
|
242
243
|
def trans(self, command: str) -> bytes:
|
|
@@ -297,6 +298,11 @@ class AsyncDeviceTransport:
|
|
|
297
298
|
|
|
298
299
|
raise NotImplementedError
|
|
299
300
|
|
|
301
|
+
async def read_string(self, encoding="utf-8") -> str:
|
|
302
|
+
"""Reads a bytes object from the instrument and returns it converted into a stripped UTF-8 string."""
|
|
303
|
+
b = await self.read()
|
|
304
|
+
return b.decode(encoding).strip()
|
|
305
|
+
|
|
300
306
|
async def trans(self, command: str) -> bytes:
|
|
301
307
|
"""
|
|
302
308
|
Send a single command to the device controller and block until a response from the
|
|
@@ -389,7 +395,7 @@ class AsyncDeviceConnectionInterface(DeviceConnectionObservable):
|
|
|
389
395
|
|
|
390
396
|
|
|
391
397
|
class AsyncDeviceInterface(AsyncDeviceConnectionInterface):
|
|
392
|
-
"""
|
|
398
|
+
"""A generic interface for all device classes."""
|
|
393
399
|
|
|
394
400
|
def is_simulator(self) -> bool:
|
|
395
401
|
"""Checks whether the device is a simulator rather than a real hardware controller.
|