lifx-emulator-core 3.3.0__tar.gz → 3.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 (74) hide show
  1. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/CHANGELOG.md +8 -0
  2. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/PKG-INFO +1 -1
  3. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/pyproject.toml +1 -1
  4. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/states.py +2 -0
  5. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/builder.py +1 -0
  6. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/.gitignore +0 -0
  7. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/README.md +0 -0
  8. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/__init__.py +0 -0
  9. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/constants.py +0 -0
  10. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/__init__.py +0 -0
  11. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/device.py +0 -0
  12. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/manager.py +0 -0
  13. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/observers.py +0 -0
  14. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/persistence.py +0 -0
  15. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/state_restorer.py +0 -0
  16. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/state_serializer.py +0 -0
  17. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/__init__.py +0 -0
  18. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/default_config.py +0 -0
  19. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/factory.py +0 -0
  20. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/firmware_config.py +0 -0
  21. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/serial_generator.py +0 -0
  22. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/__init__.py +0 -0
  23. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/base.py +0 -0
  24. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/device_handlers.py +0 -0
  25. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/light_handlers.py +0 -0
  26. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/multizone_handlers.py +0 -0
  27. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/registry.py +0 -0
  28. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/tile_handlers.py +0 -0
  29. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/__init__.py +0 -0
  30. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/generator.py +0 -0
  31. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/registry.py +0 -0
  32. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/specs.py +0 -0
  33. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/specs.yml +0 -0
  34. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/__init__.py +0 -0
  35. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/base.py +0 -0
  36. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/const.py +0 -0
  37. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/generator.py +0 -0
  38. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/header.py +0 -0
  39. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/packets.py +0 -0
  40. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/protocol_types.py +0 -0
  41. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/serializer.py +0 -0
  42. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/__init__.py +0 -0
  43. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/device_repository.py +0 -0
  44. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/storage_backend.py +0 -0
  45. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/__init__.py +0 -0
  46. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/manager.py +0 -0
  47. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/models.py +0 -0
  48. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/persistence.py +0 -0
  49. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/server.py +0 -0
  50. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/conftest.py +0 -0
  51. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_async_storage.py +0 -0
  52. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_backwards_compatibility.py +0 -0
  53. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device.py +0 -0
  54. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_edge_cases.py +0 -0
  55. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_handlers_extended.py +0 -0
  56. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_manager.py +0 -0
  57. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_handler_registry.py +0 -0
  58. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_integration.py +0 -0
  59. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_light_handlers_extended.py +0 -0
  60. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_multizone_handlers_extended.py +0 -0
  61. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_observers.py +0 -0
  62. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_partial_responses.py +0 -0
  63. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_products_generator.py +0 -0
  64. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_products_specs.py +0 -0
  65. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_protocol_generator.py +0 -0
  66. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_protocol_types_coverage.py +0 -0
  67. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_repositories.py +0 -0
  68. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_scenario_manager.py +0 -0
  69. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_scenario_persistence.py +0 -0
  70. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_serializer.py +0 -0
  71. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_server.py +0 -0
  72. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_state_restorer.py +0 -0
  73. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_switch_devices.py +0 -0
  74. {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_tile_handlers_extended.py +0 -0
@@ -2,6 +2,14 @@
2
2
 
3
3
  <!-- version list -->
4
4
 
5
+ ## v3.4.0 (2026-02-03)
6
+
7
+ ### Features
8
+
9
+ - **core**: Add has_chain capability flag to DeviceState
10
+ ([`66c639c`](https://github.com/Djelibeybi/lifx-emulator/commit/66c639c3b76cfc14892119e26f854927bb0155bf))
11
+
12
+
5
13
  ## v3.3.0 (2026-02-03)
6
14
 
7
15
  ### Bug Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lifx-emulator-core
3
- Version: 3.3.0
3
+ Version: 3.4.0
4
4
  Summary: Core LIFX Emulator library for testing LIFX LAN protocol libraries
5
5
  Author-email: Avi Miller <me@dje.li>
6
6
  Maintainer-email: Avi Miller <me@dje.li>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "lifx-emulator-core"
3
- version = "3.3.0"
3
+ version = "3.4.0"
4
4
  description = "Core LIFX Emulator library for testing LIFX LAN protocol libraries"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -182,6 +182,7 @@ class DeviceState:
182
182
  has_multizone: bool = False
183
183
  has_extended_multizone: bool = False
184
184
  has_matrix: bool = False
185
+ has_chain: bool = False
185
186
  has_hev: bool = False
186
187
  has_relays: bool = False
187
188
  has_buttons: bool = False
@@ -348,6 +349,7 @@ class DeviceState:
348
349
  "has_multizone",
349
350
  "has_extended_multizone",
350
351
  "has_matrix",
352
+ "has_chain",
351
353
  "has_hev",
352
354
  "has_relays",
353
355
  "has_buttons",
@@ -256,6 +256,7 @@ class DeviceBuilder:
256
256
  has_multizone=self._product_info.has_multizone,
257
257
  has_extended_multizone=has_extended_multizone,
258
258
  has_matrix=self._product_info.has_matrix,
259
+ has_chain=self._product_info.has_chain,
259
260
  has_hev=self._product_info.has_hev,
260
261
  has_relays=self._product_info.has_relays,
261
262
  has_buttons=self._product_info.has_buttons,