| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
There was a problem hiding this comment.
LGTM, but I'm wondering if this should rather target the modularize branch to avoid making the future merge easier?
Sorry, something went wrong.
How close is that ready to shipping? |
Sorry, something went wrong.
Codecov Report
@@ Coverage Diff @@
## master #293 +/- ##
==========================================
- Coverage 82.15% 82.04% -0.11%
==========================================
Files 12 13 +1
Lines 1317 1376 +59
Branches 195 202 +7
==========================================
+ Hits 1082 1129 +47
- Misses 196 205 +9
- Partials 39 42 +3
Continue to review full report at Codecov.
|
Sorry, something went wrong.
The API is backwards compatible, so I don't see why it couldn't be ready quite soon. I'll have to take a look at what should be cleaned prior releasing it come next month. Have you tried the branch already? As it will involve much more I/O (and multi-module requests), it would be great if you could give it a try to see if it works on the devices you have. |
Sorry, something went wrong.
I think I did a while back, but I can give it another spin later today. Where is the additional I/O coming from? |
Sorry, something went wrong.
Each update cycle requests information from all supported modules (https://github.com/python-kasa/python-kasa/blob/modularize/kasa/smartbulb.py#L114), so the response payloads are bigger than they used to be in many cases. edit: I just merged #278 - it would be interesting to hear if SmartDimmer still keeps working during the initial query for HS220, if you have it wired in. After #298 gets merged only the supported modules are requested in the follow-up update queries. |
Sorry, something went wrong.
I wired it up and it still works |
Sorry, something went wrong.
|
@rytilahti I tested the modularize branch with the power strips and everything seems to work fine. |
Sorry, something went wrong.
|
Everything looks good with modularize ✅ HS110 |
Sorry, something went wrong.
|
I'll rebase this once #299 merges |
Sorry, something went wrong.
|
Thanks for testing! Did you check if the emeter readings from HS300 were also working? That code path is something that may have issues as I feel it's implemented in a rather error-prone way.. I'll make it a mission to get the modularize merged back at latest by the end of the second week in February, but that will most likely happen already late next week. |
Sorry, something went wrong.
|
Good call to check that as well. The switches work, but seeing an error with the strip power sensors 2022-01-30 14:53:03 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up tplink platform for sensor
Traceback (most recent call last):
File "/Users/bdraco/home-assistant/homeassistant/helpers/entity_platform.py", line 249, in _async_setup_platform
await asyncio.shield(task)
File "/Users/bdraco/home-assistant/homeassistant/components/tplink/sensor.py", line 133, in async_setup_entry
entities.extend(_async_sensors_for_device(child))
File "/Users/bdraco/home-assistant/homeassistant/components/tplink/sensor.py", line 124, in _async_sensors_for_device
return [
File "/Users/bdraco/home-assistant/homeassistant/components/tplink/sensor.py", line 127, in <listcomp>
if async_emeter_from_device(device, description) is not None
File "/Users/bdraco/home-assistant/homeassistant/components/tplink/sensor.py", line 99, in async_emeter_from_device
if (val := getattr(device.emeter_realtime, attr)) is None:
File "/Users/bdraco/home-assistant/venv/lib/python3.9/site-packages/kasa/smartdevice.py", line 88, in wrapped
return f(*args, **kwargs)
File "/Users/bdraco/home-assistant/venv/lib/python3.9/site-packages/kasa/smartdevice.py", line 462, in emeter_realtime
return EmeterStatus(self.modules["emeter"].realtime)
KeyError: 'emeter'
|
Sorry, something went wrong.
There was a problem hiding this comment.
Good to go 👍
Sorry, something went wrong.
This is the last release prior restructuring the code to enable easier extendability by moving towards more modular architecture. The most prominent change in this release is the support for effects on light strips. [Full Changelog](python-kasa/python-kasa@0.4.1...0.4.2) **Implemented enhancements:** - Allow environment variables for discovery target, device type and debug [\python-kasa#313](python-kasa#313) (@rytilahti) - Add 'internal\_state' to return the results from the last update query [\python-kasa#306](python-kasa#306) (@rytilahti) - Drop microsecond precision for on\_since [\python-kasa#296](python-kasa#296) (@rytilahti) - Add effect support for light strips [\python-kasa#293](python-kasa#293) (@bdraco) **Fixed bugs:** - TypeError: \_\_init\_\_\(\) got an unexpected keyword argument 'package\_name' [\python-kasa#311](python-kasa#311) - RuntimeError: Event loop is closed on WSL [\python-kasa#294](python-kasa#294) - Don't crash on devices not reporting features [\python-kasa#317](python-kasa#317) (@rytilahti) **Closed issues:** - SmartDeviceException: Communication error on system:set\_relay\_state [\python-kasa#309](python-kasa#309) - Add Support: ES20M and KS200M motion/light switches [\python-kasa#308](python-kasa#308) - New problem with installing on Ubuntu 20.04.3 LTS [\python-kasa#305](python-kasa#305) - KeyError: 'emeter' when discovering [\python-kasa#302](python-kasa#302) - RuntimeError: Event loop is closed [\python-kasa#291](python-kasa#291) - provisioning format [\python-kasa#290](python-kasa#290) - Fix CI publishing on pypi [\python-kasa#222](python-kasa#222) - LED strips effects are not supported \(was LEDs is not turning on after switching on\) [\python-kasa#191](python-kasa#191) **Merged pull requests:** - Add pyupgrade to CI runs [\python-kasa#314](python-kasa#314) (@rytilahti) - Depend on asyncclick \>= 8 [\python-kasa#312](python-kasa#312) (@rytilahti) - Guard emeter accesses to avoid keyerrors [\python-kasa#304](python-kasa#304) (@rytilahti) - cli: cleanup discover, fetch update prior device access [\python-kasa#303](python-kasa#303) (@rytilahti) - Fix unsafe \_\_del\_\_ in TPLinkSmartHomeProtocol [\python-kasa#300](python-kasa#300) (@bdraco) - Improve typing for protocol class [\python-kasa#289](python-kasa#289) (@rytilahti) - Added a fixture file for KS220M [\python-kasa#273](python-kasa#273) (@mrbetta)
This is the last release prior restructuring the code to enable easier extendability by moving towards more modular architecture. The most prominent change in this release is the support for effects on light strips. [Full Changelog](0.4.1...0.4.2) **Implemented enhancements:** - Allow environment variables for discovery target, device type and debug [\#313](#313) (@rytilahti) - Add 'internal\_state' to return the results from the last update query [\#306](#306) (@rytilahti) - Drop microsecond precision for on\_since [\#296](#296) (@rytilahti) - Add effect support for light strips [\#293](#293) (@bdraco) **Fixed bugs:** - TypeError: \_\_init\_\_\(\) got an unexpected keyword argument 'package\_name' [\#311](#311) - RuntimeError: Event loop is closed on WSL [\#294](#294) - Don't crash on devices not reporting features [\#317](#317) (@rytilahti) **Closed issues:** - SmartDeviceException: Communication error on system:set\_relay\_state [\#309](#309) - Add Support: ES20M and KS200M motion/light switches [\#308](#308) - New problem with installing on Ubuntu 20.04.3 LTS [\#305](#305) - KeyError: 'emeter' when discovering [\#302](#302) - RuntimeError: Event loop is closed [\#291](#291) - provisioning format [\#290](#290) - Fix CI publishing on pypi [\#222](#222) - LED strips effects are not supported \(was LEDs is not turning on after switching on\) [\#191](#191) **Merged pull requests:** - Add pyupgrade to CI runs [\#314](#314) (@rytilahti) - Depend on asyncclick \>= 8 [\#312](#312) (@rytilahti) - Guard emeter accesses to avoid keyerrors [\#304](#304) (@rytilahti) - cli: cleanup discover, fetch update prior device access [\#303](#303) (@rytilahti) - Fix unsafe \_\_del\_\_ in TPLinkSmartHomeProtocol [\#300](#300) (@bdraco) - Improve typing for protocol class [\#289](#289) (@rytilahti) - Added a fixture file for KS220M [\#273](#273) (@mrbetta)
* Add effect support for KL430 * KL400 supports effects * Add KL400 fixture * Comments from review * actually commit the remove
This is the last release prior restructuring the code to enable easier extendability by moving towards more modular architecture. The most prominent change in this release is the support for effects on light strips. [Full Changelog](python-kasa/python-kasa@0.4.1...0.4.2) **Implemented enhancements:** - Allow environment variables for discovery target, device type and debug [\python-kasa#313](python-kasa#313) (@rytilahti) - Add 'internal\_state' to return the results from the last update query [\python-kasa#306](python-kasa#306) (@rytilahti) - Drop microsecond precision for on\_since [\python-kasa#296](python-kasa#296) (@rytilahti) - Add effect support for light strips [\python-kasa#293](python-kasa#293) (@bdraco) **Fixed bugs:** - TypeError: \_\_init\_\_\(\) got an unexpected keyword argument 'package\_name' [\python-kasa#311](python-kasa#311) - RuntimeError: Event loop is closed on WSL [\python-kasa#294](python-kasa#294) - Don't crash on devices not reporting features [\python-kasa#317](python-kasa#317) (@rytilahti) **Closed issues:** - SmartDeviceException: Communication error on system:set\_relay\_state [\python-kasa#309](python-kasa#309) - Add Support: ES20M and KS200M motion/light switches [\python-kasa#308](python-kasa#308) - New problem with installing on Ubuntu 20.04.3 LTS [\python-kasa#305](python-kasa#305) - KeyError: 'emeter' when discovering [\python-kasa#302](python-kasa#302) - RuntimeError: Event loop is closed [\python-kasa#291](python-kasa#291) - provisioning format [\python-kasa#290](python-kasa#290) - Fix CI publishing on pypi [\python-kasa#222](python-kasa#222) - LED strips effects are not supported \(was LEDs is not turning on after switching on\) [\python-kasa#191](python-kasa#191) **Merged pull requests:** - Add pyupgrade to CI runs [\python-kasa#314](python-kasa#314) (@rytilahti) - Depend on asyncclick \>= 8 [\python-kasa#312](python-kasa#312) (@rytilahti) - Guard emeter accesses to avoid keyerrors [\python-kasa#304](python-kasa#304) (@rytilahti) - cli: cleanup discover, fetch update prior device access [\python-kasa#303](python-kasa#303) (@rytilahti) - Fix unsafe \_\_del\_\_ in TPLinkSmartHomeProtocol [\python-kasa#300](python-kasa#300) (@bdraco) - Improve typing for protocol class [\python-kasa#289](python-kasa#289) (@rytilahti) - Added a fixture file for KS220M [\python-kasa#273](python-kasa#273) (@mrbetta)
| Back | FazBrowse Home | New Git URL |
Closes #191