* merge upstream
* Update homeassistant/components/weatherflow/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* feat: Removing unused keys
* feat: Addressing PR to remove DEFAULT_HOST from init
* feat: Addressing PR abort case
* feat: Ensure there is a default host always
* feat: Addressing PR comments and fixing entity names via local testing
* feat: Tested units
* feat: updated variable names to hopefully add some clarity to the function
* feat: added more var names for clarity
* feat: Fixed abort
* Update homeassistant/components/weatherflow/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* feat: Removed an unnecessary line
* feat: Test updates
* feat: Removed unreachable code
* feat: Tons of improvements
* removed debug code
* feat: small tweaks
* feat: Fixed density into HA Compatibility
* feat: Handled the options incorrectly... now fixed
* feat: Handled the options incorrectly... now fixed
* Update homeassistant/components/weatherflow/manifest.json
Co-authored-by: J. Nick Koston <nick@koston.org>
* Cleaned up callback in __init__
Cleaning up config_flow as well
* feat: Cleaned up a stupid test
* feat: Simulating a timeout event
* feat: Triggering timeout in mocking
* feat: trying to pass tests
* refactor: Moved code around so easier to test
* Update homeassistant/components/weatherflow/__init__.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* feat: Incremental changes moving along well
* feat: Last fix before re-review
* feat: Hopefully the tests shall pass
* feat: Remove domian from unique id
* feat: Fixed entity name
* feat: Removed unneeded lambda - to make thread safe
* Working version...
* working
* working
* feat: Remove tuff
* feat: Removed dual call
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* feat: updates based on pr
* feat: removed some self refrences
* feat: Mod RSSI
* feat: Removed the custom Air Density (will add in a later PR)
* feat: Significant cleanup of config flow
* feat: Reworked the configflwo with the help of Joostlek
* feat: Updated test coverage
* feat: Removing bakcing lib attribute
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* feat: Updated translations
* feat: Renamed CUSTOM to VOC
* feat: Extreme simplification of config flow
* feat: Pushing incremental changes
* feat: Fixing test coverage
* feat: Added lambda expressions for attributes and removed the custom AirDensity sensor
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* feat: Removed default lambda expression from raw_data_conv_fn
* feat: Added back default variable for lambda
* feat: Updated tests accordingly
* feat: Updated tests
* made sure to patch correct import
* made sure to patch correct import
* feat: Fixed up tests ... added missing asserts
* feat: Dropped model
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Refactor: Updated code
* refactor: Removed commented code
* feat: close out all tests
* feat: Fixing the patch
* feat: Removed a bunch of stuff
* feat: Cleaning up tests even more
* fixed patch and paramaterized a test
* feat: Addressing most recent comments
* updates help of joostlek
* feat: Updated coverage for const
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/weatherflow/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* feat: Addressing more PR issues... probably still a few remain
* using const logger
* Update homeassistant/components/weatherflow/strings.json
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Bump zwave-js-server-python to 0.52.0
* Add WS command to enabled zwave_js server logging in lib
* enable and disable server logging automatically
* fix conditionals
* fix tests
* Add logging
* small tweaks
* Add logger as a dependency
* fix test
* Prepare for movement of event constant
* Add constant so tests pass
* feat(knxproject-explore): providing knxproject via websocket, also xknxproject version in info mesage
* feat(knxproject-explore): adding test case
* reverted back adding of xknxproject version
* fix(): Enriching get project test case to check against FIXTURE
* feat(knxproject-explore): providing knxproject via websocket, also xknxproject version in info mesage
* feat(knxproject-explore): adding test case
* reverted back adding of xknxproject version
* fix(): Enriching get project test case to check against FIXTURE
* Initial version of a calendar for the rainbird integration
* Improve calendar support
* Revert changes to test fixtures
* Address ruff error
* Fix background task scheduling
* Use pytest.mark.freezetime to move to test setup
* Address PR feedback
* Make refresh a member
* Merge rainbird and calendar changes
* Increase test coverage
* Readability improvements
* Simplify timezone handling
* Use webrtc-noise-gain instead of webrtcvad package
* Switching to ProcessedAudioChunk
* Refactor VAD and fix tests
* Add vad no chunking test
* Add test that runs audio enhancements
* First attempt async_report_state_all
* Move notificationSupportedByAgent to SYNC response
* Make notificationSupportedByAgent conditional
* Add generic sync_options method
* Report event
* Add event_type as ID
* User UUID, imlement query_notifications
* Refactor query_notifications
* Add test
* MyPy
* Unreachable code
* Tweak
* Correct notification message
* Timestamp was wrong unit, it should be in seconds
* Can only allow doorbell class, since it's the only type
* Fix test
* Remove unrelated changes - improve coverage
* Additional tests
---------
Co-authored-by: Joakim Plate <elupus@ecce.se>
* Move child related stuff to MySensorsChildEntity
* Dispatch signal for newly discovered MySensors node
* Create battery entity for each MySensors node
* Removed ATTR_BATTERY_LEVEL attribute from each node sensor
Attribute is redundant with newly introduced battery sensor entity
* Apply suggestions from code review
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Merge branch 'dev' into workday_without_country
* ruff
* remove province check
* Remove not needed test
* Mod config flow
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Add config flow to Hydrawise
* Raise an issue when a YAML config is detected
* Add a test for YAML import
* Add missing __init__.py
* Update CODEOWNERS
* Update requirements_test_all.txt
* Add config flow data to strings.json
* Hande scan_interval not being in YAML on import
* Fix requirements
* Update deprecation dates
* Update requirements_test_all.txt
* Changes from review
* Update homeassistant/components/hydrawise/__init__.py
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Add already_configured to strings.json
* Add back setup_platform functions
* Apply suggestions from code review
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Add back setup_platform
* Update requirements_test_all.txt
* Run black on hydrawise/*.py
* Add missing import of HOMEASSISTANT_DOMAIN
* Use more specific errors in config flow
* Add additional tests
* Update config flow to use pydrawise.legacy
* Re-work YAML deprecation issues
* Revert some changes to binary_sensor, as requested in review
* Changes requested during review
* Apply suggestions from code review
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Remove unused STE_USER_DATA_SCHEMA
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Update comment in setup_platform
* Re-work the config flow again
* Apply suggestions from code review
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Update tests
* Add back the _default_watering_timer attribute
* Bump deprecation dates
* Update requirements_test_all.txt
* Update CODEOWNERS
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Don't set a unique id for devices with no serial
* Add additional check for the same config entry host/port when there is no serial
* Update homeassistant/components/rainbird/config_flow.py
Co-authored-by: Robert Resch <robert@resch.dev>
* Update tests/components/rainbird/test_config_flow.py
Co-authored-by: Robert Resch <robert@resch.dev>
* Update tests/components/rainbird/test_config_flow.py
Co-authored-by: Robert Resch <robert@resch.dev>
---------
Co-authored-by: Robert Resch <robert@resch.dev>
* Add ecoforest integration
* fix file title
* remove host default from schema, hints will be given in the documentation
* moved input validation to async_step_user
* ensure we can receive device data while doing entry setup
* remove unecessary check before unique id is set
* added shorter syntax for async create entry
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* use variable to set unique id
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Use _attr_has_entity_name from base entity
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* remove unecessary comments in coordinator
* use shorthand for device information
* remove empty objects from manifest
* remove unecessary flag
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* use _async_abort_entries_match to ensure device is not duplicated
* remove unecessary host attr
* fixed coordinator host attr to be used by entities to identify device
* remove unecessary assert
* use default device class temperature trasnlation key
* reuse base entity description
* use device serial number as identifier
* remove unused code
* Improve logging message
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Remove unused errors
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Raise a generic update failed
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* use coordinator directly
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* No need to check for serial number
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* rename variable
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* use renamed variable
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* improve assertion
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* use serial number in entity unique id
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* raise config entry not ready on setup when error in connection
* improve test readability
* Improve python syntax
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* abort when device already configured with same serial number
* improve tests
* fix test name
* use coordinator data
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* improve asserts
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* fix ci
* improve error handling
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Only call `async_ha_write_state` on changes.
* Make helper class
* Use UndefinedType
* Remove del
* Integrate monitor into MqttEntity
* Track extra state attributes and availability
* Add `__slots__`
* Add monitor to MqttAttributes and MqttAvailability
* Write out loop
* Add test
* Make common test and parameterize
* Add test for last_reset attribute
* MqttMonitorEntity base class
* Rename attr and update docstr `track` method.
* correction doct
* Implement as a decorator
* Move tracking functions into decorator
* Rename decorator
* Follow up comment
```
$ python3 -q
>>> import datetime, time
>>> time.tzname
('EET', 'EEST')
>>> datetime.datetime.max.timestamp()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: year 10000 is out of range
```
* Add event platform for gen2 devices
* Add tests
* Add removal condition
* Simplify RpcEventDescription; fix availability
* Improve names and docstrings
* Improve the event entity name
* Use async_on_remove()
* Improve tests coverage
* Improve tests coverage
* Prefix the entity name with the device name in the old way
* Black
* Use DeviceInfo object
* Switches via API
* Using external library
* UT and checlist
* Updating file .coveragerc
* Update homeassistant/components/switchbot_via_api/switch.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/switchbot_via_api/switch.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/switchbot_via_api/switch.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Review fixes
* Apply suggestions from code review
Co-authored-by: J. Nick Koston <nick@koston.org>
* This base class shouldn't know about Remote
* Fixing suggestion
* Sometimes, the state from the API is not updated immediately
* Review changes
* Some review changes
* Review changes
* Review change: Adding type on commands
* Parameterizing some tests
* Review changes
* Updating .coveragerc
* Fixing error handling in coordinator
* Review changes
* Review changes
* Adding switchbot brand
* Apply suggestions from code review
Co-authored-by: J. Nick Koston <nick@koston.org>
* Review changes
* Adding strict typing
* Removing log in constructor
---------
Co-authored-by: J. Nick Koston <nick@koston.org>