-
Notifications
You must be signed in to change notification settings - Fork 466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/matter remove cluster element list usage #370
base: main
Are you sure you want to change the base?
Conversation
Invitation URL: |
I added the do not merge label since this will break unit tests (due to the second bug mentioned) until 0.46.x release occurs. There is not an easy hack around that bug in the unit test framework, also waiting will allow the removal of the other unit test framework hack required to make the matter-thermostat tests pass. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would push to switch over to using the latest dev artifact, but I worry that would lead to us accidentally pushing changes to prod that will break on production hubs. Maybe I could implement a system that uses tags to determine which artifact to run the tests with?
I would worry this too, and think that we cannot do this. We could do a beta artifact release that comes before users actually have the artifact on their hubs, and we could run tests against the beta artifact and the most recent production release. We could even do it without doing any extra release of artifacts, but would need to clearly define what test failures are a blocker for release. |
3a04636
to
ba9dd5f
Compare
985ba27
to
3df0388
Compare
3df0388
to
4039ffa
Compare
Minimum allowed coverage is Generated by 🐒 cobertura-action against 8180329 |
4039ffa
to
7c876f1
Compare
@tpmanley @greens @ctowns This is ready for a review. It is essentially adding the support for thermostats that have ThermostatOperatingState capability, which is based off the optional attribute ThermostatRunningState. I believe all hubs have FW 0.46 or greater, so various workarounds have been removed and it seems to work with the more recent profile changes for nobattery. |
@@ -415,6 +428,7 @@ local matter_driver_template = { | |||
[clusters.Thermostat.attributes.AbsMinCoolSetpointLimit.ID] = setpoint_limit_handler(setpoint_limit_device_field.MIN_COOL), | |||
[clusters.Thermostat.attributes.AbsMaxCoolSetpointLimit.ID] = setpoint_limit_handler(setpoint_limit_device_field.MAX_COOL), | |||
[clusters.Thermostat.attributes.MinSetpointDeadBand.ID] = min_deadband_limit_handler, | |||
[clusters.Thermostat.attributes.AttributeList.ID] = attr_list_handler |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what triggers a read here? the subscription?
This is needed since the next library release (0.46.x) will completely deprecate and remove some of the opts functionality of the
MatterDevice:get_endpoints(cluster_id, opts)
.These changes also discovered a unit test bug that will be fixed in 0.46.x where
require "version"
would fail when run with the unit test framework.These changes also discovered a bug to be fixed in 0.46.x where InteractionRequest:pretty_print generates a nil index error when used with a manufacturer extended cluster element that has been added to an existing cluster library cluster object via
Attribute:set_parent_cluster()