Repository navigation
Fixed
- Blocking call in the event loop: every start-up logged
Detected blocking call to listdir ... custom_components/timetree/api.py, line 94.
curl_cffiwas imported lazily insidecreate_transport(), which runs during
async_setup_entry()and therefore in the event loop; importing it scans
site-packagesviaimportlib.metadata. The transport libraries are now imported at
module level (Home Assistant loads integration modules in the import executor) and
create_transport()imports nothing. - Building the HTTP session (which loads a native TLS library) no longer happens in the
event loop: the client is created through the newTimeTreeApi.async_create(), which
constructs it in the executor. All three call sites (setup, config flow, options flow)
use it. uuidis no longer imported inside_login()andasynciono longer inside the
export.pyhelper.
Changed
- Four regression tests covering the module level imports, the transport fallback, the
executor based construction and the absence of inlineTimeTreeApi(...)call sites
(46 tests / 247 checks). - Version
2.0.3inmanifest.jsonand the README badge.
Full changelog: https://github.com/acdcnow/Timetree-Import-for-Home-Assistant/blob/2.0.3/CHANGELOG.md