Hey- I promise I’m still here :). i took a look at this, and I’m wondering if maybe there was a missing dependency on your 3.7 environment.
I say that because if you see the code here, the only way we should get to line 14 there is if the “ensure_future” failed to import. I just tested on python 3.7 and it appears to still be valid (although in 3.7 they did introduce a helper method that could replace this one).
You should be able to run that first import there without issue on python 3.7.
try:
from asyncio import ensure_future
except ImportError:
# Python 3.4.3 and earlier has this as async
# pylint: disable=unused-import
from asyncio import async
ensure_future = async
nevermind- i was able to reproduce. The issue is that i guess in python 3.7 it’s actually a syntax error to attempt to import that deprecated function- so even though the actual execution is never getting there, it’s still failing from the get-go.
That piece of code was to enable backward compatibility with python 3.4 and prior. Since HASS doesn’t support python 3.4 anymore, I just got rid of it, and updated my requirements to say i’m only supporting 3.5+. I have included a new pull request into HASS for this! Thanks for the heads up- at some point pretty much everyone would have been broken!!