Skip to content

Blog

Light State Callbacks: Listener Pattern Migration

The light component’s callback system has been refactored to use a listener interface pattern with lazy allocation. This replaces the previous CallbackManager<void()> approach with explicit listener interfaces that only allocate memory when callbacks are actually registered.

This is a breaking change for external components that register light state callbacks in ESPHome 2025.12.0 and later.

Network get_use_address() Optimization

The network::get_use_address() function has been optimized to return const char* instead of const std::string& to reduce memory overhead. This eliminates unnecessary string object storage when accessing the device’s network address.

This is a breaking change for external components that call network::get_use_address() in ESPHome 2025.11.0 and later.