Skip to content

Conversation

@bdraco
Copy link
Member

@bdraco bdraco commented Jan 29, 2022

Fixes

Exception ignored in: <function TPLinkSmartHomeProtocol.__del__ at 0x1096d0670>
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/venv/lib/python3.9/site-packages/kasa/protocol.py", line 159, in __del__
    self.writer.close()
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/streams.py", line 353, in close
    return self._transport.close()
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/selector_events.py", line 700, in close
    self._loop.call_soon(self._call_connection_lost, None)
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 748, in call_soon
    self._check_thread()
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 785, in _check_thread
    raise RuntimeError(
RuntimeError: Non-thread-safe operation invoked on an event loop other than the current one

Fixes
```
Exception ignored in: <function TPLinkSmartHomeProtocol.__del__ at 0x1096d0670>
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/venv/lib/python3.9/site-packages/kasa/protocol.py", line 159, in __del__
    self.writer.close()
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/streams.py", line 353, in close
    return self._transport.close()
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/selector_events.py", line 700, in close
    self._loop.call_soon(self._call_connection_lost, None)
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 748, in call_soon
    self._check_thread()
  File "/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 785, in _check_thread
    raise RuntimeError(
RuntimeError: Non-thread-safe operation invoked on an event loop other than the current one
```
@codecov-commenter
Copy link

codecov-commenter commented Jan 29, 2022

Codecov Report

Merging #300 (d804a19) into master (5bf6fda) will not change coverage.
The diff coverage is 100.00%.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #300   +/-   ##
=======================================
  Coverage   82.15%   82.15%           
=======================================
  Files          12       12           
  Lines        1317     1317           
  Branches      195      195           
=======================================
  Hits         1082     1082           
  Misses        196      196           
  Partials       39       39           
Impacted Files Coverage Δ
kasa/protocol.py 90.43% <100.00%> (ø)

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 5bf6fda...d804a19. Read the comment docs.

@rytilahti rytilahti merged commit c865d3f into python-kasa:master Jan 30, 2022
rytilahti added a commit to rytilahti/python-kasa that referenced this pull request Mar 21, 2022
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)
@rytilahti rytilahti mentioned this pull request Mar 21, 2022
rytilahti added a commit that referenced this pull request Mar 21, 2022
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)
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.

3 participants