gecko-iot-client-community 0.4.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 (59) hide show
  1. gecko_iot_client_community-0.4.0/CHANGELOG.md +67 -0
  2. gecko_iot_client_community-0.4.0/LICENSE +674 -0
  3. gecko_iot_client_community-0.4.0/MANIFEST.in +8 -0
  4. gecko_iot_client_community-0.4.0/PKG-INFO +295 -0
  5. gecko_iot_client_community-0.4.0/README.md +250 -0
  6. gecko_iot_client_community-0.4.0/RELEASE.md +149 -0
  7. gecko_iot_client_community-0.4.0/pyproject.toml +73 -0
  8. gecko_iot_client_community-0.4.0/setup.cfg +4 -0
  9. gecko_iot_client_community-0.4.0/src/gecko_iot_client/__init__.py +501 -0
  10. gecko_iot_client_community-0.4.0/src/gecko_iot_client/api.py +156 -0
  11. gecko_iot_client_community-0.4.0/src/gecko_iot_client/changelog.py +50 -0
  12. gecko_iot_client_community-0.4.0/src/gecko_iot_client/const.py +5 -0
  13. gecko_iot_client_community-0.4.0/src/gecko_iot_client/extension_metrics.py +370 -0
  14. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/__init__.py +38 -0
  15. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/abstract_zone.py +292 -0
  16. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/connectivity.py +125 -0
  17. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/events.py +91 -0
  18. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/flow_zone.py +307 -0
  19. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/lighting_zone.py +210 -0
  20. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/operation_mode.py +171 -0
  21. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/operation_mode_controller.py +208 -0
  22. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/temperature_control_zone.py +299 -0
  23. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/zone_parser.py +264 -0
  24. gecko_iot_client_community-0.4.0/src/gecko_iot_client/models/zone_types.py +27 -0
  25. gecko_iot_client_community-0.4.0/src/gecko_iot_client/py.typed +0 -0
  26. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/__init__.py +160 -0
  27. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/connection_state.py +305 -0
  28. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/exceptions.py +45 -0
  29. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/logging_config.py +227 -0
  30. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/__init__.py +15 -0
  31. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/callback_registry.py +41 -0
  32. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/client.py +365 -0
  33. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/constants.py +17 -0
  34. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/reconnection_handler.py +40 -0
  35. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/token_manager.py +96 -0
  36. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/transporter.py +908 -0
  37. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/mqtt/utils.py +60 -0
  38. gecko_iot_client_community-0.4.0/src/gecko_iot_client/transporters/token_manager.py +173 -0
  39. gecko_iot_client_community-0.4.0/src/gecko_iot_client_community.egg-info/PKG-INFO +295 -0
  40. gecko_iot_client_community-0.4.0/src/gecko_iot_client_community.egg-info/SOURCES.txt +57 -0
  41. gecko_iot_client_community-0.4.0/src/gecko_iot_client_community.egg-info/dependency_links.txt +1 -0
  42. gecko_iot_client_community-0.4.0/src/gecko_iot_client_community.egg-info/entry_points.txt +3 -0
  43. gecko_iot_client_community-0.4.0/src/gecko_iot_client_community.egg-info/requires.txt +23 -0
  44. gecko_iot_client_community-0.4.0/src/gecko_iot_client_community.egg-info/top_level.txt +1 -0
  45. gecko_iot_client_community-0.4.0/tests/test_api.py +269 -0
  46. gecko_iot_client_community-0.4.0/tests/test_callback_registry.py +193 -0
  47. gecko_iot_client_community-0.4.0/tests/test_connectivity.py +260 -0
  48. gecko_iot_client_community-0.4.0/tests/test_events.py +218 -0
  49. gecko_iot_client_community-0.4.0/tests/test_exceptions.py +132 -0
  50. gecko_iot_client_community-0.4.0/tests/test_extension_metrics.py +158 -0
  51. gecko_iot_client_community-0.4.0/tests/test_mqtt_utils.py +199 -0
  52. gecko_iot_client_community-0.4.0/tests/test_operation_mode.py +262 -0
  53. gecko_iot_client_community-0.4.0/tests/test_operation_mode_controller.py +282 -0
  54. gecko_iot_client_community-0.4.0/tests/test_publish_confirmation.py +215 -0
  55. gecko_iot_client_community-0.4.0/tests/test_reconnection_flows.py +886 -0
  56. gecko_iot_client_community-0.4.0/tests/test_reconnection_handler.py +182 -0
  57. gecko_iot_client_community-0.4.0/tests/test_token_manager.py +245 -0
  58. gecko_iot_client_community-0.4.0/tests/test_zone_parser.py +336 -0
  59. gecko_iot_client_community-0.4.0/tests/test_zone_states.py +307 -0
@@ -0,0 +1,67 @@
1
+ # Changelog
2
+
3
+ ## Unreleased (2026-06-02)
4
+
5
+ #### New Features
6
+
7
+ * (extension_metrics): add pure-python shadow walker for extension metrics
8
+ * (publish): add delivery confirmation for MQTT publish operations
9
+ * Add precommit for formatting
10
+ * Add API and initiator basic support. Misc improvements
11
+ * Dynamic versions
12
+ * CI/CD to generate changelog
13
+ * Add pypi publishing
14
+ * Add sonarcloud configuration
15
+ #### Fixes
16
+
17
+ * (zone_parser): merge desired over reported per zone id in apply_state_to_zones
18
+ * (mqtt): cap consecutive token refresh failures and guard against concurrent operations
19
+ * (mqtt): improve token refresh and reconnection handling ([#4](https://github.com/dansbaker/gecko-iot-client/issues/4))
20
+ * black recommendations
21
+ * Use the right dependency
22
+ * Documentation badge
23
+ * Coverage report
24
+ * Refresh tokens was disabling subscriptions
25
+ * Remove subscription delay
26
+ * Version tag recognition
27
+ * Support Waterfall and blowers correctly
28
+ * Bypass transporter callback on refresh
29
+ * Token management (WIP)
30
+ * improve token management
31
+ * Use a uuid as the client ID to prevent duplicate error
32
+ * Ensure CI builds correct version by handling conflicting git tags
33
+ * Subscribe to Document to avoid 'blinking' state
34
+ * update setuptools-scm configuration for proper version handling
35
+ * delete duplicate license
36
+ * change target branch to develop
37
+ * tests
38
+ #### Refactorings
39
+
40
+ * Mqtt connection
41
+ * Misc temporary refactors and fixes
42
+ #### Others
43
+
44
+ * (publish): switch PyPI publish to Trusted Publishing, drop setuptools-scm logic
45
+ * rename package to gecko-iot-client-community, bump to 0.3.0
46
+ * Update readme
47
+ * Improve testing
48
+ * test improvements
49
+ * Improve documentation
50
+ * Increase test coverage
51
+ * lint
52
+ * Code cleanup and improvements ([#2](https://github.com/dansbaker/gecko-iot-client/issues/2))
53
+ * Remove warnings
54
+ * logging
55
+ * Clean logging
56
+ * Use prod URLs
57
+ * fix isort
58
+ * Flake8
59
+ * black
60
+ * Add versioning convention
61
+ * linting
62
+ * fix license
63
+ * Add doc warning
64
+ * Update badge links
65
+ * update readme
66
+ * deploy docs on eveything branches/pushes (test)
67
+ * (publish_confirmation): remove unused Mock import