CHANGELOG¶
v4.11.0 (2026-10-18)¶
Features¶
v4.10.0 (2026-10-18)¶
Features¶
-
Shared location and group identifiers derived from labels (#264,
36c92b1) -
Wildcard bind with interface filtering for LAN discovery (#263,
9265f74)
v4.9.0 (2026-10-18)¶
Features¶
v4.8.0 (2026-10-18)¶
Features¶
v4.7.2 (2026-10-05)¶
Bug Fixes¶
- core-scenarios: Reject firmware versions that do not fit uint16
(
3d77c7c)
Documentation¶
-
Rewrite examples for the current API and move clients to lifx-async (#234,
ba6c346) -
cli: Call the device identifier the serial (
c0a2a2c)
v4.7.1 (2026-10-01)¶
Bug Fixes¶
- cli: Deprecate tile_width and tile_height options
(
401ec2b)
v4.7.0 (2026-10-01)¶
Bug Fixes¶
-
cli: Coerce an exported product ID with pydantic's int rules (
d5586e3) -
cli: Export a saved tile size only for chain products (
101d3bb) -
cli: Export only tile counts the product can have (
e8ccb7d) -
cli: Fail startup when a configured device cannot be built (
7fca501) -
cli: Read a saved product ID as config loading does on export (
e8e8408) -
core-devices: Treat a non-integer tile count as invalid, not a crash (
4475788) -
core-factories: Give non-chain matrix devices exactly one tile (
9426b27) -
frontend: Keep Mirror ring labels legible on bright zones (
9825d7d)
Features¶
-
api: Expose the zone map and uplight zone count in DeviceInfo (
71a5f6b) -
frontend: Draw the LIFX Mirror as its front and back rings (
feb1624)
v4.6.1 (2026-09-24)¶
Bug Fixes¶
- api: Release event bridge listeners after lifespan
(
d8cfac2)
v4.6.0 (2026-09-10)¶
Features¶
- Add IPv6 transport and Thread isolation
(
86e8499)
v4.5.2 (2026-08-11)¶
Bug Fixes¶
- frontend: Pin cookie override to ^0.7.0 to restore build
(
e0ff918)
v4.5.1 (2026-08-11)¶
Bug Fixes¶
- security: Resolve code scanning alerts
(
4096a23)
v4.5.0 (2026-06-13)¶
Features¶
- Emit multi-service StateService discovery replies
(
91e58a9)
v4.4.0 (2026-03-18)¶
Bug Fixes¶
-
frontend: Add aria-expanded and aria-label to collapse buttons (
8ffc547) -
frontend: Add fallback for tile width/height in card calculations (
69499ea) -
frontend: Add full ARIA tab semantics to ScenarioPanel scope tabs (
514f333) -
frontend: Add keyboard navigation to tablist (
e0b1a2b) -
frontend: Derive auto-compact collapsed state from current devices (
9029c55) -
frontend: Display products error state in DeviceToolbar (
2cf142a) -
frontend: Explicitly type edge arrays as HsbkColor[] (
e21e837) -
frontend: Expose isLoading from products store (
2365e6d) -
frontend: Fix expandAllViz in auto-compact mode (
1a8bd31) -
frontend: Guard glow edge extraction against invalid tile dimensions (
bd0a0df) -
frontend: Handle errors in products store load() (
cda2b4b) -
frontend: Make loaded/loading reactive with $state in products store (
ea671a1) -
frontend: Use flex-start instead of start for cross-browser compat (
45377db) -
frontend: Use stable tabpanel ID for aria-controls (
3ea070e) -
frontend: Use void for fire-and-forget products.load() call (
efa6214)
Features¶
-
frontend: Content-based card widths, auto-compact layout, and responsive fixes (
cacd2a4) -
frontend: Overhaul visualizer with Oklch color, ambilight glow, and compact layout (
fcc7534)
Performance Improvements¶
-
frontend: Memoize hsbkToCss() for render loop performance (
d10f39b) -
frontend: Memoize hsbkToLinearRgb for glow calculation performance (
d4e3151) -
frontend: Use half-eviction instead of full cache clear (
8ebc522)
v4.3.1 (2026-03-18)¶
Bug Fixes¶
- dashboard: Broadcast metadata changes via WebSocket for live updates
(
6b933ae)
Documentation¶
- event-bridge: Add metadata to _get_change_category return values
(
15e2dd1)
v4.3.0 (2026-02-04)¶
Bug Fixes¶
-
Address CodeRabbit review feedback (
0bc07f5) -
frontend: Clear pending updates on device removal and store clear (
933d22e) -
security: Update cookie to 0.7.0 to address CVE (
dcb7460)
Features¶
-
dashboard: Add live device visualizer with real-time state updates (
51fbcc0) -
visualizer: Add dynamic grid layout with span-based sizing for matrix devices (
9a7bb7e)
Performance Improvements¶
- frontend: Improve dashboard performance for high-frequency updates
(
7433077)
v4.2.0 (2026-02-03)¶
Bug Fixes¶
-
Address CodeRabbit PR review feedback (
e302407) -
Correct $derived usage in ActivityLog.svelte for reactive filtering (
a5e8280)
Features¶
-
api: Add WebSocket endpoint for real-time updates (
b1e9889) -
api: Complete WebSocket real-time event infrastructure (
81cfa6f) -
app: Add PyApp binary distribution support (Phase 5) (
3c893a8) -
dashboard: Add activity filtering and device toolbar (Phase 3) (
249964a) -
dashboard: Add scenario panel, pagination, and tabbed interface (Phase 4) (
a50951d) -
dashboard: Replace vanilla JS with SvelteKit frontend (
a143c2c)
v4.1.0 (2026-02-03)¶
Features¶
- api: Add device state update, bulk create, and pagination
(
1f7bb46)
v4.0.1 (2026-02-01)¶
Bug Fixes¶
- app: Add products API, populate dashboard dropdown, remove stale TODOs
(
c49502a)
v4.0.0 (2026-02-01)¶
Bug Fixes¶
-
app: Pad zone_colors to zone_count with default color (
46aed0a) -
app: Preserve explicit empty devices/scenarios and truncate zone_colors (
b5c420c)
Features¶
- app: Add YAML config file support for CLI
(
fceb9af)
Breaking Changes¶
- app: No devices are created by default anymore.
v3.1.0 (2026-01-11)¶
Features¶
- Add Python 3.10 support
(
c19eee5)
v3.0.2 (2025-12-24)¶
Bug Fixes¶
- api: Eliminate XSS vulnerabilities and extract dashboard JavaScript
(
8302a09)
v3.0.1 (2025-11-26)¶
Bug Fixes¶
- Adjust uv build for new monorepo layout
(
a0d5b7c)
v3.0.0 (2025-11-26)¶
Refactoring¶
- Split into monorepo with separate library and CLI packages
(
402fe6e)
Breaking Changes¶
- The project is now split into two packages:
v2.4.0 (2025-11-26)¶
- Initial Release