cgse 0.16.12__tar.gz → 0.16.13__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.16.12 → cgse-0.16.13}/PKG-INFO +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/async_control.py +0 -1
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/mixin.py +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_mixin.py +67 -2
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-fits/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-hdf5/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-spw/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/pyproject.toml +1 -1
- {cgse-0.16.12 → cgse-0.16.13}/service_registry.db +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/service_registry.db-shm +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/service_registry.db-wal +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/.github/workflows/ruff-format-check.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/.gitignore +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/buffer_vat.log +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/buffer_vat.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/bump.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/conftest.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/bits.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/calibration.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/command.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/config.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/control.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/counter.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/decorators.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/device.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/dicts.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/dummy.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/env.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/exceptions.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/heartbeat.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/hk.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/listener.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/metrics.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/mixin.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/monitoring.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/observer.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/obsid.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/persistence.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/plugin.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/process.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/reload.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/settings.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/setup.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/api/system.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/custom_theme/main.html +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/coding_style.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/docs.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/installation.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/monitoring.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/monorepo.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/nox.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/plugins.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/project-configuration.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/unit_testing.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/uv.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/dev_guide/versioning.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/getting_started.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/help.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/images/cli-cgse.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/images/github-fork-clone-dark.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/images/github-fork-clone.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/images/grafana-queries.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/images/icons/cgse-logo-blue.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/images/icons/cgse-logo.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/initialize.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-common/images/load_methods.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-common/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-common/settings.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-common/setup.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-coordinates/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-core/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-core/notifyhub.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-core/registry.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/cgse-gui/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/libs/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/package_list.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/projects/cgse-tools.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/projects/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/projects/symetrie-hexapod.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/roadmap.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/stylesheets/custom.css +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/stylesheets/extra.css +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/tutorial.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/user_guide/cli.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/docs/user_guide/index.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/duckdb_metrics.db +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/duckdb_metrics.db.wal +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/identifier.sqlite +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/justfile +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/justfile +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/noxfile.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/service_registry.db +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/cgse_common/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/cgse_common/cgse.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/cgse_common/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/bits.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/calibration.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/config.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/counter.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/decorators.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/device.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/dicts.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/env.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/exceptions.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/heartbeat.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/hk.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/log.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/metrics.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/observer.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/obsid.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/persistence.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/plugin.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/plugins/metrics/duckdb.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/plugins/metrics/influxdb.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/plugins/metrics/timescaledb.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/process.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/py.typed +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/randomwalk.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/ratelimit.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/reload.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/resource.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/response.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/scpi.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/settings.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/setup.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/signal.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/socketdevice.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/state.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/system.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/task.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/version.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/src/egse/zmq_ser.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/conftest.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/COPYING +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00028_201028_155259.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00029_201028_155331.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00030_210311_134043.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00080_210917_105245.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00081_210922_142259.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL/conf/SETUP_CSL_00082_210923_094458.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL1/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/CSL2/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/IAS/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/INTA/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/LAB23/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00027_211119_140441.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00028_211119_160406.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00029_211119_172918.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00030_211122_103604.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/SRON/conf/SETUP_SRON_00031_211123_124900.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/common/telemetry/tm-dictionary-default.csv +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/conf/SETUP_20250114_1519.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/conf/config-file.toml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/cal_coeff_1234.csv +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/calibration.csv +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/calibration.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/command.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/corrupt.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/data-file.txt +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/empty_data_file.txt +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/empty_yaml_file.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/local_settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/new_local_settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/data/test_setup.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/icons/hourglass.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/icons/keyboard.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/icons/soap_sponge.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/lib/dev1/shared-lib.so +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/data/lib/dev2/shared-lib.so +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/fixtures/default_env.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/fixtures/helpers.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/scripts/empty_process.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/scripts/handle_sigterm.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/scripts/process_with_children.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/scripts/raise_value_error.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/scripts/void-0.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/scripts/void-1.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_bits.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_config.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_decorators.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_device.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_env.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_fixtures.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_hk.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_influxdb_plugin.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_log.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_metrics.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_plugin.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_process.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_ratelimit.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_resource.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_response.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_settings.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_setup.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_signal.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_state.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_system.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_task.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-common/tests/test_zmq_ser.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/cgse_coordinates/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/cgse_coordinates/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/avoidance.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/cslmodel.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/laser_tracker_to_dict.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/point.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/pyplot.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/referenceFrame.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/refmodel.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/rotationMatrix.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/src/egse/coordinates/transform3d_addon.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_avoidance.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_coordinates_plot.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_coordinates_serialize.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_point.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_ref_model.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_reference_frames.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-coordinates/tests/test_refmodel.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/.envrc.disabled +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/service_registry.db +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/_start.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/_status.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/_stop.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/cgse_explore.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/cgse_core/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/_setup_core.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/async_control_claude.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/command.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/confman/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/confman/__main__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/confman/confman.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/confman/confman_acs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/confman/confman_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/connect-todo.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/connect.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/control.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/dummy.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/busy.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/operational-mode.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/pm_ui.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/simulator-mode.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/start-process-button.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/stop-process-button.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/icons/user-interface.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/listener.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/logger/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/logger/__main__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/logger/log_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/metricshub/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/metricshub/server.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/monitoring.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/notifyhub/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/notifyhub/client.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/notifyhub/event.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/notifyhub/server.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/notifyhub/services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/notifyhub/test.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/procman/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/procman/procman.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/procman/procman_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/procman/procman_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/procman/procman_ui.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/proxy.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/registry/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/registry/backend.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/registry/client.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/registry/server.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/registry/service.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/services.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/storage/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/storage/__main__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/storage/persistence.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/storage/storage.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/src/egse/storage/storage_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/conftest.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/data/local_settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/fixtures/default_env.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/fixtures/helpers.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/fixtures/services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/marimo/intro.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/script_subscribe_to_notifyhub.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/script_test_async_registry_client.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/script_test_registry_client_server.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/script_test_service_registry_server.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/script_test_sync_registry_client.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/stress_test_registry_server.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_async_control.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_client_server_interaction.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_cm_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_command.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_confman_setups.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_connect.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_control.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_dummy.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_event_notification.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_extensions.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_listener.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_logger.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_notify_hub.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_registry_backend.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_registry_service.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_server_running.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_server_running_with_fixture.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_settings_core.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-core/tests/test_zmq_microservice.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/buttons.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/aeu-cs-start.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/aeu-cs-stop.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/aeu-cs.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/aeu_cs-started.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/aeu_cs-stopped.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/aeu_cs.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/alert.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/arrow-double-left.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/arrow-double-right.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/arrow-up.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/backward.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/busy.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/cleaning.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/color-scheme.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/cs-connected-alert.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/cs-connected-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/cs-connected.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/cs-not-connected.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/double-left-arrow.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/double-right-arrow.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/erase-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/erase.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/fitsgen-start.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/fitsgen-stop.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/fitsgen.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/forward.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/fov-hk-start.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/fov-hk-stop.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/fov-hk.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/front-desk.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/home-actioned.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/home-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/home.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/info.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/invalid.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-green.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-grey.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-orange.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-red.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-square-green.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-square-grey.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-square-orange.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/led-square-red.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/limit-switch-all-green.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/limit-switch-all-red.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/limit-switch-el+.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/limit-switch-el-.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/location-marker.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-dpu.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-gimbal.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-huber.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-ogse.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-puna.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-tcs.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/logo-zonda.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/maximize.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/meter.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/more.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk-start.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk-stop.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/n-fee-hk.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/observing-off.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/observing-on.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/open-document-hdf5.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/open-document-hdf5.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/ops-mode.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/play-green.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/plugged-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/plugged.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/pm_ui.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/power-button-green.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/power-button-red.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/power-button.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/radar.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/radioactive.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/reload.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/remote-control-off.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/remote-control-on.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/repeat-blue.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/repeat.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/settings.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/shrink.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/shutter.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/sign-off.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/sign-on.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/sim-mode.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/small-buttons-go.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/small-buttons-minus.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/small-buttons-plus.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/sponge.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/start-button-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/start-button.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/stop-button-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/stop-button.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/stop-red.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/stop.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/switch-disabled-square.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/switch-disabled.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/switch-off-square.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/switch-off.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/switch-on-square.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/switch-on.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/temperature-control.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/th_ui_logo.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/unplugged.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/unvalid.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/user-interface.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/vacuum.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/valid.png +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/zoom-to-pixel-dark.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/icons/zoom-to-pixel-white.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/led.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/limitswitch.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/states.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/styles/dark.qss +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/styles/default.qss +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/styles.qss +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/libs/cgse-gui/src/egse/gui/switch.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/mkdocs.yml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/noxfile.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/overrides/.icons/custom/dbend-dark.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/overrides/.icons/custom/dbend-light.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/overrides/.icons/custom/gear.svg +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/src/cgse_tools/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/src/cgse_tools/cgse_clock.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/src/cgse_tools/cgse_commands.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/src/cgse_tools/cgse_services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/cgse-tools/src/egse/tools/status.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/justfile +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/noxfile.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/service_registry.db +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_acs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_adev.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_dev.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_mon.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/egse/tempcontrol/keithley/daq6510_sim.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/cgse_explore.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/cgse_services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/src/keithley_tempcontrol/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/temperature_readings.log +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/tests/script_daq6510_central_heating.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/tests/script_daq6510_mon.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/tests/script_plot_readings.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/tests/test_adev.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/keithley-tempcontrol/tests/test_dev.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_devif.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/egse/tempcontrol/lakeshore/lakeshore336_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/cgse_explore.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/cgse_services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/src/lakeshore_tempcontrol/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/lakeshore-tempcontrol/tests/test_lakeshore336_simulator.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/alpha.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/dynalpha.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/hexapod.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/hexapod_ui.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/joran_ui.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/pmac.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/pmac_regex.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_sim.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/puna_ui.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/punaplus.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_devif.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_protocol.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/egse/hexapod/symetrie/zonda_ui.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/__init__.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/cgse_explore.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/cgse_services.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/src/symetrie_hexapod/settings.yaml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/tests/test_puna.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/tests/test_puna_cs.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/generic/symetrie-hexapod/tests/test_puna_simulator.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-fits/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-fits/src/egse/plugins/storage/fits.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-hdf5/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-hdf5/src/egse/plugins/storage/hdf5.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-spw/README.md +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/projects/plato/plato-spw/src/egse/spw.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/ruff.toml +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/scratch/advanced-process-monitoring.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/scratch/live-process-monitoring.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/scratch/match-case.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/scratch/processes.json +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/scratch/simple-process-monitoring.py +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/temperature_readings.log +0 -0
- {cgse-0.16.12 → cgse-0.16.13}/test_service_registry.db +0 -0
|
@@ -18,7 +18,6 @@ from rich.traceback import Traceback
|
|
|
18
18
|
from egse.env import bool_env
|
|
19
19
|
from egse.exceptions import InitialisationError
|
|
20
20
|
from egse.log import logging
|
|
21
|
-
from egse.process import ProcessStatus
|
|
22
21
|
from egse.registry.client import AsyncRegistryClient
|
|
23
22
|
from egse.system import Periodic
|
|
24
23
|
from egse.system import get_current_location
|
|
@@ -104,7 +104,7 @@ def add_cr_lf(cmd_string: str) -> str:
|
|
|
104
104
|
return cmd_string
|
|
105
105
|
|
|
106
106
|
|
|
107
|
-
def expand_kwargs(kwargs: Dict):
|
|
107
|
+
def expand_kwargs(kwargs: Dict) -> str:
|
|
108
108
|
"""Expand keyword arguments and their values as 'key=value' separated by spaces."""
|
|
109
109
|
return " ".join(f"{k}={v}" for k, v in kwargs.items())
|
|
110
110
|
|
|
@@ -201,10 +201,26 @@ def pre_command(transport: DeviceTransport = None, **kwargs):
|
|
|
201
201
|
LOGGER.info(f"Inside pre_command({transport.__class__.__name__}, {kwargs})")
|
|
202
202
|
|
|
203
203
|
|
|
204
|
-
def post_command(transport: DeviceTransport = None, response: bytes = None):
|
|
204
|
+
def post_command(transport: DeviceTransport = None, response: bytes = None) -> bytes:
|
|
205
205
|
LOGGER.info(f"Inside post_command(transport={transport.__class__.__name__}, {response=})")
|
|
206
206
|
return response
|
|
207
207
|
|
|
208
|
+
def rewrite_kwargs(kwargs: dict) -> str:
|
|
209
|
+
"""Rewrite some of the keyword arguments according to device specs."""
|
|
210
|
+
|
|
211
|
+
def calc_crc(data) -> int:
|
|
212
|
+
return len(data)
|
|
213
|
+
|
|
214
|
+
# assume we need to build our own fancy device command string...
|
|
215
|
+
address = kwargs.get("address")
|
|
216
|
+
identifier = kwargs.get("identifier")
|
|
217
|
+
cargo1 = kwargs.get("cargo1", 1)
|
|
218
|
+
cargo2 = kwargs.get("cargo2", 2)
|
|
219
|
+
|
|
220
|
+
cmd = f"{address:06X} 0x{identifier:06x} DEV_07463 CARGO1={cargo1:04d} CARGO2={cargo2}"
|
|
221
|
+
|
|
222
|
+
return f"{cmd} {calc_crc(cmd)}"
|
|
223
|
+
|
|
208
224
|
|
|
209
225
|
class NewStyleCommandInterface:
|
|
210
226
|
"""Interface definition for new style dynamic commands."""
|
|
@@ -251,10 +267,25 @@ class NewStyleCommandInterface:
|
|
|
251
267
|
def test_cmd_enum_with_format(self, enumeration: MyEnum):
|
|
252
268
|
"""Returns the command string"""
|
|
253
269
|
|
|
270
|
+
@dynamic_command(
|
|
271
|
+
cmd_type="transaction",
|
|
272
|
+
cmd_string="ARG_EXPANSION::{mode}::{crc:06x}",
|
|
273
|
+
use_format=True
|
|
274
|
+
)
|
|
275
|
+
def test_cmd_with_arg_expansion(self, *, mode, crc):
|
|
276
|
+
"""Return the command string, after processing the arguments in the overriding function."""
|
|
277
|
+
|
|
254
278
|
@dynamic_command(cmd_type="transaction", cmd_string="msg = ${msg}", pre_cmd=pre_command, post_cmd=post_command)
|
|
255
|
-
def test_cmd_pre_post(self, msg: str):
|
|
279
|
+
def test_cmd_pre_post(self, msg: str) -> bytes:
|
|
256
280
|
"""Return the command string, executes pre- and post-commands."""
|
|
257
281
|
|
|
282
|
+
@dynamic_command(cmd_type="transaction", cmd_string="TRANS ${a} ${kwargs}")
|
|
283
|
+
def test_cmd_process_kwargs(self, *, a, **kwargs):
|
|
284
|
+
"""Returns the command string."""
|
|
285
|
+
|
|
286
|
+
@dynamic_command(cmd_type="transaction", cmd_string="TRANS ${kwargs}", process_kwargs=rewrite_kwargs)
|
|
287
|
+
def test_cmd_rewrite_kwargs(self, **kwargs):
|
|
288
|
+
"""Returns the command string with rewritten kwargs."""
|
|
258
289
|
|
|
259
290
|
class NewStyleCommand(DynamicCommandMixin, NewStyleCommandInterface):
|
|
260
291
|
"""Simple new style commanding interface."""
|
|
@@ -263,6 +294,30 @@ class NewStyleCommand(DynamicCommandMixin, NewStyleCommandInterface):
|
|
|
263
294
|
self.transport = NewStyleTransport()
|
|
264
295
|
super().__init__()
|
|
265
296
|
|
|
297
|
+
def test_cmd_with_arg_expansion(self, *, mode, **kwargs):
|
|
298
|
+
# This function overrides the function from the NewStyleCommandInterface. The reason for doing that is
|
|
299
|
+
# because we need to reformat and/or process the arguments before passing them to the decorated function.
|
|
300
|
+
|
|
301
|
+
# rewrite 'mode'
|
|
302
|
+
mode = f"{mode:04x}"
|
|
303
|
+
|
|
304
|
+
if "crc" in kwargs:
|
|
305
|
+
crc = kwargs['crc']
|
|
306
|
+
else:
|
|
307
|
+
# 'calculate' the checksum
|
|
308
|
+
crc = 0x1234
|
|
309
|
+
|
|
310
|
+
# pass the method as defined in the NewStyleCommandInterface, to the handle_dynamic_command method of
|
|
311
|
+
# the mixin class. Provide the expected parameters as if the decorated function would have been called.
|
|
312
|
+
return DynamicCommandMixin.handle_dynamic_command(
|
|
313
|
+
self,
|
|
314
|
+
super().test_cmd_with_arg_expansion
|
|
315
|
+
)(
|
|
316
|
+
mode=mode, crc=crc
|
|
317
|
+
)
|
|
318
|
+
|
|
319
|
+
# Note that the following doesn't work, I didn't really figure out why yet...
|
|
320
|
+
# return super().test_cmd_with_mode_expansion(mode, crc)
|
|
266
321
|
|
|
267
322
|
def test_new_style(caplog):
|
|
268
323
|
caplog.set_level(logging.INFO)
|
|
@@ -319,6 +374,16 @@ def test_new_style(caplog):
|
|
|
319
374
|
in caplog.text
|
|
320
375
|
)
|
|
321
376
|
|
|
377
|
+
assert ns.test_cmd_with_arg_expansion(mode=23) == b"ARG_EXPANSION::0017::001234"
|
|
378
|
+
assert ns.test_cmd_with_arg_expansion(mode=0x10, crc=5678) == b"ARG_EXPANSION::0010::00162e"
|
|
379
|
+
|
|
380
|
+
# This tests the expansion of kwargs in the function's signature, by the default `expand_kwargs`
|
|
381
|
+
assert ns.test_cmd_process_kwargs(a=5, b=2, c=3) == b"TRANS 5 b=2 c=3"
|
|
382
|
+
|
|
383
|
+
tcu_mode=42 # == 0x2A
|
|
384
|
+
assert ns.test_cmd_rewrite_kwargs(address=5, identifier=2, cargo2=f"{hex(int(tcu_mode))[2:].zfill(4)}") == (
|
|
385
|
+
b"TRANS 000005 0x000002 DEV_07463 CARGO1=0001 CARGO2=002a 49"
|
|
386
|
+
)
|
|
322
387
|
|
|
323
388
|
def test_interface_definition():
|
|
324
389
|
with pytest.raises(TypeError):
|
|
index 7a86c87..563ad6b 100644
|
|
|
Binary file
|
|
index f188d32..0f4029d 100644
|
|
|
Binary file
|
|
index 8bddc71..4b17179 100644
|
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|