* Add query type validation independent of declaration position
* Restore close sess
* Separates invalid query and non-read-only query tests
* Add more tests
* Use the SQLParseError exception for queries that are not read-only
* Add handling for multiple SQL queries.
* Fix test
* Clean ';' at the beginning of the SQL query
* Clean ';' at the beginning of the SQL query - init
* Query cleaning before storing
* Query cleaning before setup sesensor plataform - YAML
* Exception when the SQL query type is not detected
* Cleaning
* Cleaning
* Fix typing in tests
* Fix typing in tests
* Add test for query = ';;'
* Update homeassistant/components/sql/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Update homeassistant/components/sql/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Update __init__.py
* Update config_flow.py
* Clean query before storing
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Add device_class and state_class in config flow for SQL
* Update when selected NONE_SENTINEL
* Add tests
* Use SensorDeviceClass and SensorStateClass in tests
* Add volatile_organic_compounds_parts in strings selector
* Add test_attributes_from_entry_config
* Remove test_attributes_from_entry_config and complement test_device_state_class
* Add test_attributes_from_entry_config in test_sensor.py
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* Fix package names to match pypi index metadata
* uses _
* uses -
* fix metadata
* Use local timezone for recorder connection
The fix in #90335 had an unexpected side effect of
using UTC for the timezone since all recorder operations
use UTC. Since only sqlite much use the database executor
we can use a seperate connection pool which uses local time
This also ensures that the engines are disposed of
when Home Assistant is shutdown as previously we
did not cleanly disconnect
* coverage
* fix unclean shutdown in config flow
* tweaks
* Raise an issue for SQL queries that will cause full table scans
* Raise an issue for SQL queries that will cause full table scans
* Raise an issue for SQL queries that will cause full table scans
* Raise an issue for SQL queries that will cause full table scans
* Update homeassistant/components/sql/sensor.py
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* coverage
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>