* Warn if the previous push wait task it taking longer than the update interval
* refactor
* Call _async_fetch_number_of_messages first
* Add cleanup in case fetching fails
* mypy
* Set sensor to unknown if an error occured.
* Handling invalid auth an reraise when needed
* Handle invalid folder as setup error
* Close IMAP stream before logout at cleanup
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Consolidate
* Fix tests
* Update imports
* Fix import
* Use importlib because integration and package share name
* Fix more tests
* Update .coveragerc and CODEOWNERS