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.
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/CHANGELOG.md +8 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/PKG-INFO +1 -1
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/pyproject.toml +1 -1
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/states.py +2 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/builder.py +1 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/.gitignore +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/README.md +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/constants.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/device.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/manager.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/observers.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/persistence.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/state_restorer.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/state_serializer.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/default_config.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/factory.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/firmware_config.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/serial_generator.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/base.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/device_handlers.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/light_handlers.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/multizone_handlers.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/registry.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/tile_handlers.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/generator.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/registry.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/specs.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/specs.yml +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/base.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/const.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/generator.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/header.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/packets.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/protocol_types.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/serializer.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/device_repository.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/storage_backend.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/__init__.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/manager.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/models.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/persistence.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/server.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/conftest.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_async_storage.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_backwards_compatibility.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_edge_cases.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_handlers_extended.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_manager.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_handler_registry.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_integration.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_light_handlers_extended.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_multizone_handlers_extended.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_observers.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_partial_responses.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_products_generator.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_products_specs.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_protocol_generator.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_protocol_types_coverage.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_repositories.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_scenario_manager.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_scenario_persistence.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_serializer.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_server.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_state_restorer.py +0 -0
- {lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_switch_devices.py +0 -0
- {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
|
|
@@ -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",
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/builder.py
RENAMED
|
@@ -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,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/observers.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/persistence.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/state_restorer.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/devices/state_serializer.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/__init__.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/default_config.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/factory.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/factories/firmware_config.py
RENAMED
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/device_handlers.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/light_handlers.py
RENAMED
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/registry.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/handlers/tile_handlers.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/__init__.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/generator.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/products/registry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/generator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/protocol_types.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/protocol/serializer.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/repositories/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/__init__.py
RENAMED
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/manager.py
RENAMED
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/src/lifx_emulator/scenarios/persistence.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_device_handlers_extended.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lifx_emulator_core-3.3.0 → lifx_emulator_core-3.4.0}/tests/test_multizone_handlers_extended.py
RENAMED
|
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
|