leaf-framework 0.1.10.48__tar.gz → 0.3.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.
Files changed (104) hide show
  1. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/PKG-INFO +1 -1
  2. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/mqtt.py +6 -2
  3. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/pyproject.toml +1 -1
  4. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/LICENSE +0 -0
  5. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/README.md +0 -0
  6. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/__init__.py +0 -0
  7. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/adapters/__init__.py +0 -0
  8. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/adapters/core_adapters/__init__.py +0 -0
  9. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/adapters/core_adapters/continuous_experiment_adapter.py +0 -0
  10. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/adapters/core_adapters/discrete_experiment_adapter.py +0 -0
  11. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/adapters/core_adapters/upload_adapter.py +0 -0
  12. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/adapters/equipment_adapter.py +0 -0
  13. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/config/configuration.yaml +0 -0
  14. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/data/marketplace.yaml +0 -0
  15. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/error_handler/__init__.py +0 -0
  16. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/error_handler/error_holder.py +0 -0
  17. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/error_handler/exceptions.py +0 -0
  18. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/measurement_handler/__init__.py +0 -0
  19. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/measurement_handler/handler.py +0 -0
  20. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/measurement_handler/measurements.yaml +0 -0
  21. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/measurement_handler/terms.py +0 -0
  22. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/.gitkeep +0 -0
  23. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/__init__.py +0 -0
  24. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/__init__.py +0 -0
  25. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/ble_watcher.py +0 -0
  26. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/db_watcher.py +0 -0
  27. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/event_watcher.py +0 -0
  28. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/external_api_watcher.py +0 -0
  29. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/external_event_watcher.py +0 -0
  30. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/file_watcher.py +0 -0
  31. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/http_watcher.py +0 -0
  32. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/modbus_watcher.py +0 -0
  33. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/mqtt_external_event_watcher.py +0 -0
  34. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/mqtt_watcher.py +0 -0
  35. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/opc_watcher.py +0 -0
  36. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/polling_watcher.py +0 -0
  37. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/input_modules/simple_watcher.py +0 -0
  38. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/__init__.py +0 -0
  39. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/carbon_dioxide.py +0 -0
  40. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/dissolved_oxygen.py +0 -0
  41. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/fluorescence.py +0 -0
  42. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/measurement_module.py +0 -0
  43. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/optical_density.py +0 -0
  44. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/ph.py +0 -0
  45. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/measurement_modules/temperature.py +0 -0
  46. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/__init__.py +0 -0
  47. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/file.py +0 -0
  48. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/keydb.py +0 -0
  49. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/output_module.py +0 -0
  50. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/sql.py +0 -0
  51. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/output_modules/topic_store.py +0 -0
  52. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/__init__.py +0 -0
  53. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/control.py +0 -0
  54. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/error.py +0 -0
  55. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/external_event_phase.py +0 -0
  56. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/initialisation.py +0 -0
  57. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/measure.py +0 -0
  58. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/phase.py +0 -0
  59. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/start.py +0 -0
  60. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/phase_modules/stop.py +0 -0
  61. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/process_modules/__init__.py +0 -0
  62. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/process_modules/continous_module.py +0 -0
  63. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/process_modules/discrete_module.py +0 -0
  64. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/process_modules/external_event_process.py +0 -0
  65. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/process_modules/process_module.py +0 -0
  66. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/modules/process_modules/upload_module.py +0 -0
  67. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/__init__.py +0 -0
  68. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/abstract_leaf.py +0 -0
  69. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/equipment_actions.yaml +0 -0
  70. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/equipment_data.yaml +0 -0
  71. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/metadata.py +0 -0
  72. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/py.typed +0 -0
  73. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/register/topic_utilities.py +0 -0
  74. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/registry/discovery.py +0 -0
  75. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/registry/loader.py +0 -0
  76. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/registry/registry.py +0 -0
  77. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/registry/utils.py +0 -0
  78. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/start.py +0 -0
  79. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/__init__.py +0 -0
  80. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/adapter_ui_extension.py +0 -0
  81. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/components/__init__.py +0 -0
  82. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/components/header.py +0 -0
  83. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/constants.py +0 -0
  84. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/desktop_launcher.py +0 -0
  85. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/images/icon.icns +0 -0
  86. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/images/icon.ico +0 -0
  87. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/images/icon.svg +0 -0
  88. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/interface.py +0 -0
  89. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/markdown/configuration_help.md +0 -0
  90. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/markdown/documentation_main.md +0 -0
  91. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/markdown/documentation_protips.md +0 -0
  92. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/scripts.js +0 -0
  93. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/styles.css +0 -0
  94. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/tabs/__init__.py +0 -0
  95. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/tabs/adapters.py +0 -0
  96. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/tabs/configuration.py +0 -0
  97. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/tabs/documentation.py +0 -0
  98. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/tabs/logs.py +0 -0
  99. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/tabs/monitoring.py +0 -0
  100. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/ui/utils.py +0 -0
  101. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/utility/config_utils.py +0 -0
  102. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/utility/logger/__init__.py +0 -0
  103. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/utility/logger/logger_utils.py +0 -0
  104. {leaf_framework-0.1.10.48 → leaf_framework-0.3.0}/leaf/utility/running_utilities.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: leaf-framework
3
- Version: 0.1.10.48
3
+ Version: 0.3.0
4
4
  Summary: Lightweight Adapter Framework (LEAF)
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE
@@ -65,7 +65,7 @@ class MQTT(OutputModule):
65
65
  heartbeat_interval (float): Seconds between heartbeat publishes. Defaults to 30.
66
66
  Set to 0 to disable.
67
67
  heartbeat_payload (Optional[str | dict]): Payload for heartbeat messages. Defaults to
68
- ``{"status": "alive", "timestamp": <epoch>}`` with the timestamp filled in at publish time.
68
+ ``{"status": "alive", "timestamp": <epoch>, "datetime": <datetime>}`` with the timestamp filled in at publish time.
69
69
  """
70
70
 
71
71
  super().__init__(fallback=fallback, error_holder=error_holder, name=name)
@@ -486,7 +486,11 @@ class MQTT(OutputModule):
486
486
  if self._heartbeat_payload is not None:
487
487
  payload = self._heartbeat_payload
488
488
  else:
489
- payload = {"status": "alive", "timestamp": time.time()}
489
+ payload = {
490
+ "status": "alive",
491
+ "timestamp": time.time(),
492
+ "datetime": time.strftime("%Y-%m-%dT%H:%M:%S", time.localtime()),
493
+ }
490
494
  logger.info(f"Publishing heartbeat to '{self._heartbeat_topic}': {payload}")
491
495
  self.transmit(self._heartbeat_topic, payload)
492
496
  if self._heartbeat_stop.wait(self._heartbeat_interval):
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "leaf-framework"
3
- version = "0.1.10.48"
3
+ version = "0.3.0"
4
4
  description = "Lightweight Adapter Framework (LEAF)"
5
5
  authors = [
6
6
  "Matthew Crowther <nmc215@ncl.ac.uk>",