From b44b3cbb41acdf0008cbf1fd0625d4a9ebc9faf2 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 2 Oct 2025 00:15:55 +0200 Subject: [PATCH 1/2] back compat --- esphome/components/lock/lock.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/esphome/components/lock/lock.h b/esphome/components/lock/lock.h index 68065cc6d9..6448f909f5 100644 --- a/esphome/components/lock/lock.h +++ b/esphome/components/lock/lock.h @@ -5,6 +5,7 @@ #include "esphome/core/helpers.h" #include "esphome/core/log.h" #include "esphome/core/preferences.h" +#include namespace esphome { namespace lock { @@ -44,6 +45,12 @@ class LockTraits { void set_assumed_state(bool assumed_state) { this->assumed_state_ = assumed_state; } bool supports_state(LockState state) const { return supported_states_mask_ & (1 << state); } + void set_supported_states(std::span states) { + supported_states_mask_ = 0; + for (auto state : states) { + supported_states_mask_ |= (1 << state); + } + } uint8_t get_supported_states_mask() const { return supported_states_mask_; } void set_supported_states_mask(uint8_t mask) { supported_states_mask_ = mask; } void add_supported_state(LockState state) { supported_states_mask_ |= (1 << state); } From ff55e03a5fcb126954b06b885957b6b173385077 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 2 Oct 2025 00:20:25 +0200 Subject: [PATCH 2/2] back compat --- esphome/components/lock/lock.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/esphome/components/lock/lock.h b/esphome/components/lock/lock.h index 6448f909f5..9737569921 100644 --- a/esphome/components/lock/lock.h +++ b/esphome/components/lock/lock.h @@ -5,7 +5,7 @@ #include "esphome/core/helpers.h" #include "esphome/core/log.h" #include "esphome/core/preferences.h" -#include +#include namespace esphome { namespace lock { @@ -45,7 +45,7 @@ class LockTraits { void set_assumed_state(bool assumed_state) { this->assumed_state_ = assumed_state; } bool supports_state(LockState state) const { return supported_states_mask_ & (1 << state); } - void set_supported_states(std::span states) { + void set_supported_states(std::initializer_list states) { supported_states_mask_ = 0; for (auto state : states) { supported_states_mask_ |= (1 << state);