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
Convert flic to synchronous platform. #5276
Conversation
pyflic is a synchronous library
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.
Looks good. In setup_platform it exists a run_in_executor
, please remove this also.
That call starts a loop in the library that doesn't exit until the connection is closed: https://github.com/soldag/pyflic/blob/master/pyflic/__init__.py#L597 I believe that one needs to run in it's own thread, otherwise |
In that case it should start it's own thread. It should not claim an executor thread for this. |
Makes sense. One of these days I'll grok asyncio. I think this should be good then. |
You need to close the thread on STOP event. Like this: https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/helpers/aiohttp_client.py#L80-L81 |
Should happen here, unless I'm not understanding correctly: https://github.com/home-assistant/home-assistant/pull/5276/files#diff-afed563a4ae6b8016c542f1a481cd4f0R70 |
Good work ⚡️ |
This reverts commit 4b43537. Revert "Version bump for kodi dependency (home-assistant#5307)" This reverts commit 6abad6b. Revert "Add HMWIOSwitch to sensor, binary (home-assistant#5304)" This reverts commit 2c3f55a. Revert "Remove GTFS default name & string change" This reverts commit 6000c59. Revert "Update pyhomematic 1.19 & small cleanups (home-assistant#5299)" This reverts commit a30711f. Revert "[sensor] Add Dublin bus RTPI sensor (home-assistant#5257)" This reverts commit 1219ca3. Revert "Bugfix group reload (home-assistant#5292)" This reverts commit baa8e53. Revert "Support for TrackR device trackers (home-assistant#5010)" This reverts commit f7a1d63. Revert "Bump pywemo version." This reverts commit dc937cc. Revert "Upgrade to voluptuous to 0.9.3 (home-assistant#5288)" This reverts commit d12decc. Revert "Upgrade distro to 1.0.2 (home-assistant#5291)" This reverts commit 64800fd. Revert "Don't build Adafruit_BBIO - doesn't work on all platforms. (home-assistant#5281)" This reverts commit 9a3c0c8. Revert "Convert flic to synchronous platform. (home-assistant#5276)" This reverts commit eb9b95c. Revert "Upgrade to aiohttp 1.2 (home-assistant#4964)" This reverts commit e68e29e. Revert "Fix TCP sensor to correctly use value_template (home-assistant#5211)" This reverts commit 1cf9ae5. Revert "Cleanup language support on TTS (home-assistant#5255)" This reverts commit 3f3a3bc. Revert "Add last triggered to script (home-assistant#5261)" This reverts commit 467cb18. Revert "Bump flux_led version and make use of PyPi package (home-assistant#5267)" This reverts commit 34a9fb0. Revert "Add support for NAD receivers (home-assistant#5191)" This reverts commit 3b59e16. Revert "Bugfix async device_tracker see callback (home-assistant#5259)" This reverts commit 71fddd2. Revert "Use SHA hash to make token harder to guess (home-assistant#5258)" This reverts commit 922308b.
* Added forecast support to DarkSky modified: homeassistant/components/sensor/darksky.py modified: tests/components/sensor/test_darksky.py * Fix async_volume_up / async_volume_down (#5249) async_volume_up / async_volume_down should be async versions of volume_up / volume_down, not a async version of the default variants of volume_up / volume_down. The previous code always called into the mediaplayers set_volume_level, and never into volume_up / volume_down. Signed-off-by: Anton Lundin <glance@acc.umu.se> * adding a default icon "blind" to a PowerView blinds scene. (#5210) * adding a default icon "blind" to a PowerView blinds scene. * Adding icon property to define blind icon. Removed it from the state attributes dict. * fixing lint error * Added forecast support to DarkSky modified: homeassistant/components/sensor/darksky.py modified: tests/components/sensor/test_darksky.py * Use SHA hash to make token harder to guess (#5258) * Use SHA hash to make token harder to guess Use hashlib SHA256 to encode object id instead of using it directly. * Cache access token Instead of generating a token on the fly cache it in the constructor. * Fix lint * Bugfix async device_tracker see callback (#5259) * Add support for NAD receivers (#5191) * Add support for NAD receivers * remove self.update() in various methods * remove setting attributes in various methods * Change import to hass style * Updated Config Validation, extended daily forecast to all supported types * Fix style errors from previous commit, fix test since adding daily for all supported types * Removed temperature from daily as it isn't supported * Added forecast support to DarkSky modified: homeassistant/components/sensor/darksky.py modified: tests/components/sensor/test_darksky.py * Updated Config Validation, extended daily forecast to all supported types * Fix style errors from previous commit, fix test since adding daily for all supported types * Removed temperature from daily as it isn't supported * Revert "Bugfix camera streams (#5306)" This reverts commit 4b43537. Revert "Version bump for kodi dependency (#5307)" This reverts commit 6abad6b. Revert "Add HMWIOSwitch to sensor, binary (#5304)" This reverts commit 2c3f55a. Revert "Remove GTFS default name & string change" This reverts commit 6000c59. Revert "Update pyhomematic 1.19 & small cleanups (#5299)" This reverts commit a30711f. Revert "[sensor] Add Dublin bus RTPI sensor (#5257)" This reverts commit 1219ca3. Revert "Bugfix group reload (#5292)" This reverts commit baa8e53. Revert "Support for TrackR device trackers (#5010)" This reverts commit f7a1d63. Revert "Bump pywemo version." This reverts commit dc937cc. Revert "Upgrade to voluptuous to 0.9.3 (#5288)" This reverts commit d12decc. Revert "Upgrade distro to 1.0.2 (#5291)" This reverts commit 64800fd. Revert "Don't build Adafruit_BBIO - doesn't work on all platforms. (#5281)" This reverts commit 9a3c0c8. Revert "Convert flic to synchronous platform. (#5276)" This reverts commit eb9b95c. Revert "Upgrade to aiohttp 1.2 (#4964)" This reverts commit e68e29e. Revert "Fix TCP sensor to correctly use value_template (#5211)" This reverts commit 1cf9ae5. Revert "Cleanup language support on TTS (#5255)" This reverts commit 3f3a3bc. Revert "Add last triggered to script (#5261)" This reverts commit 467cb18. Revert "Bump flux_led version and make use of PyPi package (#5267)" This reverts commit 34a9fb0. Revert "Add support for NAD receivers (#5191)" This reverts commit 3b59e16. Revert "Bugfix async device_tracker see callback (#5259)" This reverts commit 71fddd2. Revert "Use SHA hash to make token harder to guess (#5258)" This reverts commit 922308b. * Revert "Revert "Bugfix camera streams (#5306)"" This reverts commit 2ee8c44. * Update darksky.py
Description:
pyflic is a synchronous library and is blocking on platform_setup. This converts the flic platform to synchronous. See #5242 This can be converted back if pyflic is updated.