Skip to content
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

Rolling up beta to production #1254

Merged
merged 21 commits into from
Mar 6, 2024
Merged

Rolling up beta to production #1254

merged 21 commits into from
Mar 6, 2024

Conversation

greens
Copy link
Contributor

@greens greens commented Mar 6, 2024

No description provided.

ctowns and others added 21 commits February 8, 2024 17:09
There is a race condition where sometimes the initial subscription
report will be handled before child devices are done being created.
In this case, the child devices will not recieve the initial value
of the attribute, and will appear as just "connected" or "waiting
for device to update" until they are  manually refreshed or the
state is physically toggled on the device.
* add WL4210 fingerprints

* add probe handling

* remove wl4210s

* standard

* remove unecessary import

* corrections

* zone_status handling

* corrections

* correction date

* use is_alarm1_set, add test for dry event

* fix preferences
* Eve Energy Outlet

- Add Eve Energy Outlet fingerprint

* Eve Energy Outlet

- Add Eve Energy Outlet fingerprint
- Only create the polls (create_poll_schedule and create_poll_report_schedule) if the device supports capabilities.powerConsumptionReport
- When the device is initialized, create child devices with the profile plug-binary for each additional outlet
- Update component_to_endpoint, endpoint_to_component and find_child to support multiple children
- Add a check in on_off_attr_handler to make sure the polling functions are only called for the parent device/endpoint 1, which supports powerConsumption

* Eve Energy Outlet

- Each time an oulet is turned on or off, store the value in a dictionary
- If one of the outlet is on, we should create the poll to monitor the power consumption
- If all the outlet are off, we should delete the poll

* Remove unused log to fix luacheck

* Don't change the profile, this breaks the unit tests

* Eve Energy Outlet

Only run the device_init function for the parent device.
* Cync-Matter-Bulbs-1.01.060

* Adding quotes around id:

* Adding fingerprintfor Cync Outdoor Plug

This fingerprint has passed WWST testing, along with other devices in this PR and is ready to merge. I commited this device in to prevent an additional PR.
…ld-on-add

Matter Switch: refresh child devices on added event
Most of these are just refining/augmenting gradual typing to quiet the
IDE warnings, but there were a few places that we were missing nil
checks or otherwise had other potential bugs that got addressed here.
This removes the API version guard on the auto add/delete scan during
event stream connection and instead skips to the next element in the
iterator if it detects that the current iteration target is a device
record that represents a bridge.

We do this because we *do* want the auto-add/auto-delete routine to
run on older firmware, as the delete function does feature detection
on the lua libs and uses `device:offline()` as a fallback. Plus, auto
add will work on all firmware versions, so this is the better UX all
around.
…g-hue-bridges-in-startup-auto-delete-checks
The first thing we do is we store the API keys in the datastore right
away instead of waiting for a device record to exist. This hardens us
against the situation where the driver restarts for any reason while
the Hue Bridge device's `added` handler is still executing and is early
enough in its execution that we haven't stored the key on the device
object yet.

We also address an issue where an invalid mDNS response (for example,
an ipv6 response) would `return` from the entire mDNS scan function
instead of moving on to the rest of the responses returned. In practice,
this is not likely to happen, as we don't typically get both an ipv4 and
and ipv6 from a Hue bridge, but I noticed it while doing this refactor
and felt it was worth addressing.

We also address a regression from the automatic add/delete changes,
which can lead to the creation of duplicate device records for bulbs in
some specific circumstances.
…able-comment

Matter Switch: add comment for COMPONENT_TO_ENDPOINT_MAP
Adding New Profile to handle Light Range.
* Feature to Add Fingerprint for Tuo Temp Sensor

* Moving tuo fingerprints together

* Removed duplicate fingerprint. 

I removed the fingerprint for the "TUO/ContactDoorAndWindow" device as this fingerprint has already been released to production.
[CHAD-12631] fix(zigbee-button): Adding exception case of manufacturer information for IKEA button
Copy link

github-actions bot commented Mar 6, 2024

Channel deleted.

Copy link

github-actions bot commented Mar 6, 2024

Test Results

   55 files    352 suites   0s ⏱️
1 646 tests 1 646 ✅ 0 💤 0 ❌
2 891 runs  2 891 ✅ 0 💤 0 ❌

Results for commit faf3824.

Copy link

github-actions bot commented Mar 6, 2024

matter-sensor_coverage.xml

File Coverage
All files 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%

matter-switch_coverage.xml

File Coverage
All files 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/eve-energy/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/init.lua 94%

zigbee-button_coverage.xml

File Coverage
All files 96%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-sensor/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/eve-energy/init.lua 91%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/matter-switch/src/init.lua 94%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/ikea/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/ikea/TRADFRI_remote_control.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/frient/init.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/somfy/somfy_situo_4.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/ecosmart/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/shinasystems/init.lua 97%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/adurosmart/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/init.lua 93%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/supported_values.lua 99%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/SLED/init.lua 66%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/heiman/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/wallhero/init.lua 87%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/iris/init.lua 90%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/init.lua 98%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/button_utils.lua 92%
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/robb/init.lua 99%

Minimum allowed coverage is 90%

Generated by 🐒 cobertura-action against faf3824

@greens greens merged commit 53f86e0 into production Mar 6, 2024
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants