* Move entry options to entry.options en remove broker setup from mqtt option flow
* UPdate diagnostics to export both entry data and options
* Parameterize entry options directly not depending on migration
* Update tests to use v2 entry and add separate migration test
* use start_reconfigure_flow helper
* Update quality scale comment
* Do minor entry upgrade, and do not force to upgrade entry
* Ensure options are read from older entries
* Add comment
* Follow up on code review
* Assert config entry version checking the broker connection
* Update comment
* Force root import of references from other components
* Improve
* Adjust
* Tweak exceptions
* Another
* Another
* Another
* Another
* Another
* Another
* Another
* Another
* Another
* Another
* Another
* Another
* Adjust
* More
* Ignore violations in test
* Improve
* Refactor recorder data migration
* Fix stale docstrings
* Don't store a session object in BaseRunTimeMigration instances
* Simplify logic in EntityIDMigration.migration_done
* Fix tests
* Ensure states table rebuild still happens if the event_id index was removed
If ix_states_event_id was removed by the foreign key still
exists, the states table would not get rebuilt. This should
not happen under normal circumstances and seems to only be
possible if the index was removed manually or Home
Assistant was restarted forcefully in the middle
of a previous migration from years ago.
* cover
* fix tests
* mysql wont allow at that point but thats ok as long as its gone at the end
* Ensure asyncio blocking checks are undone after tests run
* no reason to ever enable twice
* we are patching objects, make it more generic
* make sure bootstrap unblocks as well
* move disable to tests only
* re-protect
* Update tests/test_block_async_io.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Revert "Update tests/test_block_async_io.py"
This reverts commit 2d46028e21.
* tweak name
* fixture only
* Update tests/conftest.py
* Update tests/conftest.py
* Apply suggestions from code review
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>