Skip to content

Conversation

@rytilahti
Copy link
Member

Full Changelog

This is the first release of 0.5 series which includes converting the code base towards more modular approach where device-exposed modules (e.g., emeter, antitheft, or schedule) are implemented in their separate python modules to decouple them from the device-specific classes.

There should be no API breaking changes, but some previous issues hint that there may be as information from all supported modules are now requested during each update cycle (depending on the device type):

  • Basic system info
  • Emeter
  • Time - properties (like on_since) use now time from the device for calculation to avoid jitter caused by different time between the host and the device
  • Usage statistics - similar interface to emeter, but reports on-time statistics instead of energy consumption (new)
  • Countdown (new)
  • Antitheft (new)
  • Schedule (new)
  • Motion - for configuring motion settings on some dimmers (new)
  • Ambientlight - for configuring brightness limits when motion sensor actuates on some dimmers (new)
  • Cloud - information about cloud connectivity (new)

For developers, the new functionalities are currently only exposed through the implementation modules accessible through modules property.
Pull requests improving the functionality of modules as well as adding better interfaces to device classes are welcome!

Breaking changes:

Implemented enhancements:

  • Improve HS220 support #44

Fixed bugs:

  • Skip running discovery on --help on subcommands #122
  • Avoid retrying open_connection on unrecoverable errors #340 (@bdraco)
  • Avoid discovery on --help #335 (@rytilahti)

Documentation updates:

  • Trying to poll device every 5 seconds but getting asyncio errors #316
  • Docs: Smart Strip - Emeter feature Note #257
  • Documentation addition: Smartplug access to internet ntp server pool. #129
  • Export modules & make sphinx happy #334 (@rytilahti)
  • Various documentation updates #333 (@rytilahti)

Closed issues:

  • "on since" changes #295
  • How to access KP115 runtime data? #244
  • How to resolve "Detected protocol reuse between different event loop" warning? #238
  • Handle discovery where multiple LAN interfaces exist #104
  • Hyper-V (and probably virtualbox) break UDP discovery #101
  • Trying to get extended lightstrip functionality #100
  • Can the HS105 be controlled without internet? #72

Merged pull requests:

@codecov-commenter
Copy link

codecov-commenter commented Apr 24, 2022

Codecov Report

Merging #342 (cec79b9) into master (d908a5a) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #342   +/-   ##
=======================================
  Coverage   80.69%   80.69%           
=======================================
  Files          25       25           
  Lines        1725     1725           
  Branches      240      240           
=======================================
  Hits         1392     1392           
  Misses        299      299           
  Partials       34       34           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d908a5a...cec79b9. Read the comment docs.

@rytilahti rytilahti merged commit 51fb908 into python-kasa:master Apr 24, 2022
@sdb9696 sdb9696 added the release-prep Label for PR bumping release and updating changelog. label Jun 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-prep Label for PR bumping release and updating changelog.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants