diff --git a/_config.yml b/_config.yml index 6fbceb62596..bfabc39b356 100644 --- a/_config.yml +++ b/_config.yml @@ -138,9 +138,9 @@ social: # Home Assistant release details current_major_version: 0 -current_minor_version: 89 -current_patch_version: 2 -date_released: 2019-03-12 +current_minor_version: 90 +current_patch_version: 0 +date_released: 2019-03-20 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_posts/2019-03-20-release-90.markdown b/source/_posts/2019-03-20-release-90.markdown new file mode 100644 index 00000000000..7ce76490ba6 --- /dev/null +++ b/source/_posts/2019-03-20-release-90.markdown @@ -0,0 +1,616 @@ +--- +layout: post +title: "0.90: TBD - Update date" +description: "TBD" +date: 2019-03-13 00:11:03 +date_formatted: "March 20, 2019" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Release-Notes +og_image: /images/blog/2019-03-release-90/components.png +--- + + + + - Remote connection available for Home Assistant Cloud! Check out the cloud page in config + - New stream component to stream cameras smoothly to frontend and other devices like Chromecast. Initial version only supports h264 codec. Each camera integration will need to be updated for it. + - User groups! Restrict admin access to users ([at least UI wise](https://developers.home-assistant.io/blog/2019/03/11/user-permissions.html)) + + +## {% linkable_title New Platforms %} + +- Add support for homekit controller sensors ([@cpopp] - [#21535]) ([homekit_controller docs]) (new-platform) +- Add separate on/off ids on manual configured IHC lights ([@msvinth] - [#20253]) ([ihc docs]) ([light.ihc docs]) (new-platform) +- Add storage helper to ZHA and use it for the device node descriptor ([@dmulcahey] - [#21500]) ([zha docs]) (new-platform) +- Add support for DHT and DS18B20 sensors via Konnected firmware ([@heythisisnate] - [#21189]) ([konnected docs]) ([sensor.konnected docs]) (new-platform) +- Add SmartThingsAccelCluster to ZHA binary_sensor ([@roblandry] - [#21609]) ([zha docs]) (new-platform) +- Xfinity Gateway device_tracker platform ([@cisasteelersfan] - [#21026]) ([device_tracker docs]) (new-platform) +- Add Time of Flight Sensor using VL53L1X ([@josemotta] - [#21230]) ([sensor.tof docs]) (new-platform) +- Adding enigma2 media player ([@fbradyirl] - [#21271]) ([media_player.enigma2 docs]) (new-platform) +- Add support for Cisco Mobility Express ([@fbradyirl] - [#21531]) ([cisco_mobility_express docs]) (new-platform) +- Add ClearPass Policy Manger device tracker ([@zemerick1] - [#21673]) ([device_tracker docs]) (new-platform) +- Live Streams Component ([@hunterjm] - [#21473]) ([camera docs]) ([stream docs]) ([camera.ffmpeg docs]) (new-platform) +- Add Weather Sensors to Homematic IP ([@SukramJ] - [#21887]) ([homematicip_cloud docs]) (new-platform) + +## {% linkable_title New Features %} + +- SmartThings remove SmartApp/Automation on integration removal ([@andrewsayre] - [#21594]) ([smartthings docs]) (new-feature) +- Add SmartThings climate support for Air Conditioners ([@andrewsayre] - [#21840]) ([smartthings docs]) (new-feature) +- Add SmartThings sensor support for Three Axis ([@andrewsayre] - [#21841]) ([smartthings docs]) (new-feature) + +## {% linkable_title If you need help... %} + +...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. + +## {% linkable_title Reporting Issues %} + +Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template. + + + +## {% linkable_title Breaking Changes %} + +- Added support for multiple Netatmo thermostats/valves ([@shanbs] - [#19407]) ([netatmo docs]) ([climate.netatmo docs]) (breaking change) +- Return Netatmo climate operation_mode instead of boiler status ([@shanbs] - [#21633]) ([netatmo docs]) (breaking change) +- Utility Meter offset defined by a time_period ([@dgomes] - [#20926]) ([utility_meter docs]) (breaking change) +- Introduce target_temperature_state_address for climate device ([@marvin-w] - [#21541]) ([knx docs]) (breaking change) +- Deprecate http.api_password ([@awarecan] - [#21884]) ([api docs]) ([frontend docs]) ([hassio docs]) ([http docs]) ([mqtt docs]) ([websocket_api docs]) ([zeroconf docs]) ([camera.proxy docs]) (breaking change) +- Changed from nanoleaf_aurora to nanoleaf ([@Oro] - [#21913]) ([light.nanoleaf docs]) (breaking change) +- Rename 'firetv' to 'androidtv' and add Android TV functionality ([@JeffLIrion] - [#21944]) (breaking change) +- Tellstick sensor configuration cleanup ([@endor-force] - [#21402]) ([tellstick docs]) (breaking change) +- Pass Message object to MQTT message callbacks ([@emontnemery] - [#21959]) ([mqtt docs]) (breaking change) + +## {% linkable_title All changes %} + +- Upgrade pyopenuv to 1.0.9 ([@bachya] - [#21513]) ([openuv docs]) +- Upgrade pypollencom to 2.2.3 ([@bachya] - [#21517]) ([sensor.pollen docs]) +- Upgrade pytile to 2.0.6 ([@bachya] - [#21516]) ([device_tracker docs]) +- Upgraded py17track to 2.2.2 ([@bachya] - [#21515]) ([sensor.seventeentrack docs]) +- Upgrade pyflunearyou to 1.0.2 ([@bachya] - [#21514]) ([sensor.flunearyou docs]) +- Bump starlingbank version to 3.1 ([@Dullage] - [#21501]) ([sensor.starlingbank docs]) +- Upgrade opensensemap-api to 0.1.5 ([@fabaff] - [#21524]) ([air_quality docs]) +- Register 'firetv.adb_command' service ([@JeffLIrion] - [#21419]) ([media_player.firetv docs]) +- Add arm night for alarm decoder ([@koolsb] - [#21488]) ([alarmdecoder docs]) +- Upgrade numpy to 1.16.2 ([@fabaff] - [#21525]) ([binary_sensor.trend docs]) ([image_processing.opencv docs]) ([image_processing.tensorflow docs]) ([sensor.pollen docs]) +- Upgrade python-mystrom to 0.5.0 ([@fabaff] - [#21523]) ([light.mystrom docs]) ([switch.mystrom docs]) +- Mqtt alarm added value_template and code_arm_required ([@ToRvaLDz] - [#19558]) ([alarm_control_panel.mqtt docs]) +- Add direct binding for remotes and lights for ZHA ([@dmulcahey] - [#21498]) ([zha docs]) +- Add support for homekit controller sensors ([@cpopp] - [#21535]) ([homekit_controller docs]) (new-platform) +- Update CODEOWNERS ([@dgomes] - [#21545]) +- Clean up gpslogger tests ([@MartinHjelmare] - [#21543]) +- new websocket api way ([@dmulcahey] - [#21533]) ([zha docs]) +- Add pause/unpause services to RainMachine ([@bachya] - [#21548]) ([rainmachine docs]) +- prevent duplicate event channel registration ([@dmulcahey] - [#21534]) ([zha docs]) +- Allow config entry reloading ([@balloob] - [#21502]) +- Add separate on/off ids on manual configured IHC lights ([@msvinth] - [#20253]) ([ihc docs]) ([light.ihc docs]) (new-platform) +- add friendly name to devices in the device registry ([@dmulcahey] - [#21499]) ([zha docs]) +- Allow chaining contexts ([@balloob] - [#21028]) ([automation docs]) +- bump pyxeoma to 1.4.1 to fix and close #19306 ([@trunet] - [#21568]) ([camera.xeoma docs]) +- fix exception ([@dmulcahey] - [#21571]) ([zha docs]) +- Add config entry remove callback ([@andrewsayre] - [#21576]) +- Memory optimization for logbook ([@amelchio] - [#21549]) ([logbook docs]) +- Get room hints from areas ([@Swamp-Ig] - [#21519]) ([google_assistant docs]) +- Centrally define Watt ([@dgomes] - [#21570]) +- Add network throughput statistics to systemmonitor sensor ([@dgomes] - [#21575]) ([sensor.systemmonitor docs]) +- Update for new pyvesyncv_v2 library and vesync switch support ([@webdjoe] - [#21449]) ([switch.vesync docs]) +- ZHA fixes ([@dmulcahey] - [#21592]) ([zha docs]) +- Update pyhomematic ([@danielperna84] - [#21600]) ([homematic docs]) +- Add parameter hold_secs for Harmony remote send command ([@ehendrix23] - [#19650]) ([remote docs]) ([remote.harmony docs]) +- Upgrade motorparts to 1.1.0 ([@rohankapoorcom] - [#21602]) ([sensor.mopar docs]) +- Further Yale ZWave lock device mapping cleanup ([@mw-white] - [#21128]) ([zwave docs]) +- Added support for multiple Netatmo thermostats/valves ([@shanbs] - [#19407]) ([netatmo docs]) ([climate.netatmo docs]) (breaking change) +- Add the velbus sync clock service ([@Cereal2nd] - [#21308]) ([velbus docs]) +- SmartThings remove SmartApp/Automation on integration removal ([@andrewsayre] - [#21594]) ([smartthings docs]) (new-feature) +- Bumping aioasuswrt ([@kennedyshead] - [#21627]) ([asuswrt docs]) +- Add device HMIP-eTRV-C to HomematicIP ([@SukramJ] - [#21612]) +- Add 'app_name' property and 'apps' config entry to Fire TV ([@JeffLIrion] - [#21601]) ([firetv docs]) +- Add optional sender name for SendGrid ([@srirams] - [#21610]) ([notify.sendgrid docs]) +- fix derived rate, fixes #20097 ([@wburgers] - [#21620]) ([sensor.dsmr docs]) +- Bump pyflunearyou to 1.0.3 ([@bachya] - [#21634]) ([sensor.flunearyou docs]) +- Return Netatmo climate operation_mode instead of boiler status ([@shanbs] - [#21633]) ([netatmo docs]) (breaking change) +- Expose create/delete cloudhook ([@balloob] - [#21606]) ([cloud docs]) +- Add storage helper to ZHA and use it for the device node descriptor ([@dmulcahey] - [#21500]) ([zha docs]) (new-platform) +- Allow configuration of update interval for ness_alarm ([@nickw444] - [#21415]) ([ness_alarm docs]) +- Replace travis ([@pvizeli] - [#21641]) +- Fix actions with tox ([@pvizeli] - [#21642]) +- GitHub Workflow ([@pvizeli] - [#21643]) +- Upgrade youtube_dl to 2019.03.01 ([@fabaff] - [#21647]) ([media_extractor docs]) +- Add support for DHT and DS18B20 sensors via Konnected firmware ([@heythisisnate] - [#21189]) ([konnected docs]) ([sensor.konnected docs]) (new-platform) +- Allow targeting areas in service calls ([@balloob] - [#21472]) ([alert docs]) ([automation docs]) ([group docs]) ([image_processing docs]) ([light docs]) ([scene docs]) ([script docs]) +- Add camera name to logs ([@arsaboo] - [#21653]) ([camera.generic docs]) +- Netatmo, handle missing thermostat devices ([@Danielhiversen] - [#21651]) ([netatmo docs]) +- Add SmartThingsAccelCluster to ZHA binary_sensor ([@roblandry] - [#21609]) ([zha docs]) (new-platform) +- Add support for multiple devices for PS4 component ([@ktnrg45] - [#21302]) ([ps4 docs]) +- Xfinity Gateway device_tracker platform ([@cisasteelersfan] - [#21026]) ([device_tracker docs]) (new-platform) +- Adds option in UPnP component to override callback url ([@StevenLooman] - [#21583]) ([media_player.dlna_dmr docs]) +- Serialize amcrest snapshot commands and bump PyPI package to 1.2.4 ([@pnbruckner] - [#21664]) ([amcrest docs]) +- Bump nessclient version to 0.9.14 ([@nickw444] - [#21679]) ([ness_alarm docs]) +- Allow 202 status code as a successful REST notify response ([@u1f35c] - [#21678]) ([notify docs]) +- Bump teslajsonpy to 0.0.24 ([@alandtse] - [#21675]) ([tesla docs]) +- Fix Z-Wave relative imports ([@balloob] - [#21693]) ([zwave docs]) +- Use new style for built-in ws commmands ([@balloob] - [#21694]) ([websocket_api docs]) +- Google Assistant: Create and pass context to service calls ([@Swamp-Ig] - [#21551]) ([google_assistant docs]) +- Update to teslajsonpy v0.0.25 ([@alandtse] - [#21702]) ([tesla docs]) +- Utility Meter offset defined by a time_period ([@dgomes] - [#20926]) ([utility_meter docs]) (breaking change) +- Change amcrest camera_image to async ([@pnbruckner] - [#21720]) ([amcrest docs]) +- Start preparing for homekit_controller config entries ([@Jc2k] - [#21564]) ([homekit_controller docs]) +- Support multiple keys in ifttt triggers ([@zeehio] - [#21454]) ([ifttt docs]) +- Fix initialization and add "pending" status of Satel integra ([@c-soft] - [#21194]) ([satel_integra docs]) +- Fix pylint warning on python 3.7 ([@awarecan] - [#21714]) ([climate.eq3btsmart docs]) +- Make pytest in tox quite ([@awarecan] - [#21727]) +- tplink - catch SmartDeviceException on is_dimmable call ([@ljmerza] - [#21726]) ([tplink docs]) +- Remove pytest warning message ([@awarecan] - [#21713]) +- Update .travis.yml ([@pvizeli] - [#21736]) +- Revert Travis until github actions work better for PR ([@pvizeli] - [#21746]) +- Allow light toggle service to accept all turn on params ([@zewelor] - [#20912]) ([light docs]) +- Introduce target_temperature_state_address for climate device ([@marvin-w] - [#21541]) ([knx docs]) (breaking change) +- Upgrade pylint to 2.3.1 ([@scop] - [#21789]) +- Add Time of Flight Sensor using VL53L1X ([@josemotta] - [#21230]) ([sensor.tof docs]) (new-platform) +- Upgrade huawei-lte-api to 1.1.5 ([@scop] - [#21791]) ([huawei_lte docs]) +- Adding enigma2 media player ([@fbradyirl] - [#21271]) ([media_player.enigma2 docs]) (new-platform) +- Bump loopenergy to 0.1.0. Loop updated their socket.io server from 0.9 to 2.0 - which required a library update. ([@pavoni] - [#21809]) ([sensor.loopenergy docs]) +- remove occupancy, as it is not available at this level in the iRail api ([@nudded] - [#21810]) ([sensor.nmbs docs]) +- Onboarding to generate auth code ([@balloob] - [#21777]) ([auth docs]) ([onboarding docs]) +- Remove stub from config component ([@balloob] - [#21822]) ([config docs]) +- change paths to be relative ([@uchagani] - [#21827]) ([zwave docs]) +- Change how we import config modules ([@balloob] - [#21824]) ([config docs]) +- Load logger and system_log components as soon as possible ([@awarecan] - [#21799]) +- Resolve auth_store loading race condition ([@awarecan] - [#21794]) +- Log if aiohttp hits error during IndieAuth ([@robbiet480] - [#21780]) ([auth docs]) +- Add support for Cisco Mobility Express ([@fbradyirl] - [#21531]) ([cisco_mobility_express docs]) (new-platform) +- Synology sensor quick return if attr is null ([@cmsimike] - [#21709]) ([sensor.synologydsm docs]) +- fix empty TOPIC_BASE issue ([@engrbm87] - [#21740]) ([mqtt docs]) +- Updated to pyeconet 0.0.10 ([@w1ll1am23] - [#21837]) ([water_heater docs]) +- Fix config entry exception in Ambient PWS ([@bachya] - [#21836]) ([ambient_station docs]) +- Fixed a misspelling in a docstring ([@bachya] - [#21846]) ([ambient_station docs]) +- mobile_app improvements ([@robbiet480] - [#21607]) ([mobile_app docs]) +- Update honeywell.py to read current humidity for US Thermostats ([@Hackashaq666] - [#21728]) ([climate.honeywell docs]) +- Fix TypeError ([@wburgers] - [#21734]) ([sensor.dsmr docs]) +- Introduce Entity.async_write_ha_state() to not miss state transition ([@emontnemery] - [#21590]) +- Fix authorization header in cors ([@piitaya] - [#21662]) ([http docs]) +- Only commit if need. ([@awarecan] - [#21848]) +- Bump quirks for ZHA and handle resulting battery % change ([@dmulcahey] - [#21869]) ([zha docs]) +- Better cloud check ([@balloob] - [#21875]) ([cloud docs]) ([mobile_app docs]) +- Add ClearPass Policy Manger device tracker ([@zemerick1] - [#21673]) ([device_tracker docs]) (new-platform) +- Add SmartThings climate support for Air Conditioners ([@andrewsayre] - [#21840]) ([smartthings docs]) (new-feature) +- Add SmartThings sensor support for Three Axis ([@andrewsayre] - [#21841]) ([smartthings docs]) (new-feature) +- Add user group ([@balloob] - [#21832]) +- Update ZHA state handling ([@dmulcahey] - [#21866]) ([zha docs]) +- Change lib for whois sensor ([@ludeeus] - [#21878]) ([sensor.whois docs]) +- Don't wait until final position of Velux cover is reached ([@Julius2342] - [#21558]) ([velux docs]) +- Fix missing code_required check in async_alarm_arm_night ([@ToRvaLDz] - [#21858]) ([mqtt docs]) +- Fix icon for sensor.discogs_random_record ([@thibmaek] - [#21891]) ([sensor.discogs docs]) +- Add myself to CODEOWNERS for NMBS code ([@thibmaek] - [#21892]) +- Modbus write_register accept single value and array ([@gertdb] - [#21621]) ([modbus docs]) +- Add custom holidays to workday sensor ([@epleypa] - [#21718]) ([binary_sensor.workday docs]) +- Return time based attributes as datetime in Unifi module ([@ndonegan] - [#21146]) ([device_tracker docs]) +- Allow emulated hue to set climate component temperature ([@chilicheech] - [#19034]) ([emulated_hue docs]) +- bump netdisco to 2.4.0 ([@fbradyirl] - [#21914]) +- Deprecate http.api_password ([@awarecan] - [#21884]) ([api docs]) ([frontend docs]) ([hassio docs]) ([http docs]) ([mqtt docs]) ([websocket_api docs]) ([zeroconf docs]) ([camera.proxy docs]) (breaking change) +- Don't hang forever if manually added cast is down ([@emontnemery] - [#21565]) ([cast docs]) +- Add WS subscription command for MQTT ([@balloob] - [#21696]) ([mqtt docs]) ([websocket_api docs]) +- Add 'ssl' parameter for FiOS Quantum Gateway and upgrade Pypi ([@cisasteelersfan] - [#21669]) ([device_tracker docs]) +- Add as_timestamp() to Jinja filters. ([@rbdixon] - [#21910]) +- HomeKit controller config flow fixes ([@Jc2k] - [#21898]) ([homekit_controller docs]) +- Update enigma2 based on review comments ([@fbradyirl] - [#21890]) ([enigma2 docs]) +- Remove confusing warning for TTS without entity_id ([@amelchio] - [#21927]) ([tts docs]) +- Fixes Modbus service.yaml validity ([@gertdb] - [#21923]) +- Add cloudhook support to SmartThings component ([@andrewsayre] - [#21905]) ([smartthings docs]) +- If registration supports encryption then return encrypted payloads ([@robbiet480] - [#21853]) ([mobile_app docs]) +- Allow inverting netdata sensor values ([@michaelarnauts] - [#21711]) ([sensor.netdata docs]) +- Changed from nanoleaf_aurora to nanoleaf ([@Oro] - [#21913]) ([light.nanoleaf docs]) (breaking change) +- Minor version bump for anthemav package ([@nugget] - [#21932]) ([media_player.anthemav docs]) +- Add area permission check ([@balloob] - [#21835]) +- Add an asyncio Lock around pairing, which cant be used concurrently ([@Jc2k] - [#21933]) ([homekit_controller docs]) +- Add update user command ([@balloob] - [#21922]) ([config docs]) +- Offload Cloud component ([@pvizeli] - [#21937]) ([cloud docs]) +- Upgrade schiene to 0.23 ([@fabaff] - [#21940]) ([sensor.deutsche_bahn docs]) +- Live Streams Component ([@hunterjm] - [#21473]) ([camera docs]) ([stream docs]) ([camera.ffmpeg docs]) (new-platform) +- Update lametric icon to be HA logo ([@robbiet480] - [#21957]) ([lametric docs]) +- Avoid playing queue pollution when restoring Sonos snapshots ([@amelchio] - [#21963]) ([sonos docs]) +- Update to sense component to fully be async ([@kbickar] - [#21698]) ([sense docs]) +- fix ephember doing http call from property ([@ttroy50] - [#21855]) ([climate.ephember docs]) +- Add Weather Sensors to Homematic IP ([@SukramJ] - [#21887]) ([homematicip_cloud docs]) (new-platform) +- Add cloud status ([@balloob] - [#21960]) ([cloud docs]) +- Fix MagicHome LEDs with flux_led component ([@autinerd] - [#20733]) ([light.flux_led docs]) +- Stream: Only add base url when needed ([@balloob] - [#21979]) ([camera docs]) ([stream docs]) +- Allow changing password without being admin ([@balloob] - [#21978]) ([config docs]) +- Fix some cloud things ([@balloob] - [#21977]) +- homekit_controller: Bump homekit to 0.13.0 ([@Jc2k] - [#21965]) ([homekit_controller docs]) +- skip flaky test ([@balloob] - [#21981]) +- Write state directly in all MQTT platforms ([@emontnemery] - [#21971]) ([mqtt docs]) +- Use .get to ensure we dont get KeyError ([@robbiet480] - [#21993]) ([mobile_app docs]) +- Fix error introduced by #21933 ([@Jc2k] - [#21988]) ([homekit_controller docs]) +- Add stream source for amcrest component ([@dshokouhi] - [#21983]) ([amcrest docs]) +- Set homekit controller entity as unavailable if new connections fail ([@Jc2k] - [#21901]) ([homekit_controller docs]) +- Centrally define Energy Units (kWh and Wh) ([@dgomes] - [#21719]) +- Mobile App: Registration schema improvements ([@robbiet480] - [#21850]) ([mobile_app docs]) +- Add a service require_admin wrapper ([@balloob] - [#21953]) +- Update pyhomematic to 0.1.58 ([@danielperna84] - [#21989]) ([homematic docs]) +- Use asyncio lock ([@amelchio] - [#21985]) ([sonos docs]) +- Add breaking change section to PR template ([@awarecan] - [#21994]) +- Rename 'firetv' to 'androidtv' and add Android TV functionality ([@JeffLIrion] - [#21944]) (breaking change) +- Tellstick sensor configuration cleanup ([@endor-force] - [#21402]) ([tellstick docs]) (breaking change) +- Add availability and next run datetime to RainMachine switches ([@bachya] - [#21786]) ([rainmachine docs]) +- Add program/zone enable/disable services to RainMachine ([@bachya] - [#21785]) ([rainmachine docs]) +- Bump NabuCasa library to 0.5 ([@pvizeli] - [#22010]) ([cloud docs]) +- Avoid playing queue pollution with Sonos unjoin ([@amelchio] - [#22004]) ([sonos docs]) +- Wait for Sonos regrouping in service calls ([@amelchio] - [#22006]) ([sonos docs]) +- fix error in LutronButton init if Button doesn't have a type ([@beavis9k] - [#21921]) ([lutron docs]) +- HomeKit controller light - remove code that can never execute ([@Jc2k] - [#21951]) ([homekit_controller docs]) +- Nanoleaf availability check ([@Oro] - [#21945]) ([light.nanoleaf docs]) +- Pass Message object to MQTT message callbacks ([@emontnemery] - [#21959]) ([mqtt docs]) (breaking change) +- Remove default temp unit ([@andrewsayre] - [#22012]) ([smartthings docs]) +- Allow all success status codes in REST notify response ([@isabellaalstrom] - [#22011]) ([notify docs]) +- Check updated_date for list and pick first ([@GGeezes] - [#22008]) + +[#19034]: https://github.com/home-assistant/home-assistant/pull/19034 +[#19407]: https://github.com/home-assistant/home-assistant/pull/19407 +[#19558]: https://github.com/home-assistant/home-assistant/pull/19558 +[#19650]: https://github.com/home-assistant/home-assistant/pull/19650 +[#20253]: https://github.com/home-assistant/home-assistant/pull/20253 +[#20733]: https://github.com/home-assistant/home-assistant/pull/20733 +[#20912]: https://github.com/home-assistant/home-assistant/pull/20912 +[#20926]: https://github.com/home-assistant/home-assistant/pull/20926 +[#21026]: https://github.com/home-assistant/home-assistant/pull/21026 +[#21028]: https://github.com/home-assistant/home-assistant/pull/21028 +[#21128]: https://github.com/home-assistant/home-assistant/pull/21128 +[#21146]: https://github.com/home-assistant/home-assistant/pull/21146 +[#21189]: https://github.com/home-assistant/home-assistant/pull/21189 +[#21194]: https://github.com/home-assistant/home-assistant/pull/21194 +[#21230]: https://github.com/home-assistant/home-assistant/pull/21230 +[#21271]: https://github.com/home-assistant/home-assistant/pull/21271 +[#21302]: https://github.com/home-assistant/home-assistant/pull/21302 +[#21308]: https://github.com/home-assistant/home-assistant/pull/21308 +[#21402]: https://github.com/home-assistant/home-assistant/pull/21402 +[#21415]: https://github.com/home-assistant/home-assistant/pull/21415 +[#21419]: https://github.com/home-assistant/home-assistant/pull/21419 +[#21449]: https://github.com/home-assistant/home-assistant/pull/21449 +[#21454]: https://github.com/home-assistant/home-assistant/pull/21454 +[#21472]: https://github.com/home-assistant/home-assistant/pull/21472 +[#21473]: https://github.com/home-assistant/home-assistant/pull/21473 +[#21488]: https://github.com/home-assistant/home-assistant/pull/21488 +[#21498]: https://github.com/home-assistant/home-assistant/pull/21498 +[#21499]: https://github.com/home-assistant/home-assistant/pull/21499 +[#21500]: https://github.com/home-assistant/home-assistant/pull/21500 +[#21501]: https://github.com/home-assistant/home-assistant/pull/21501 +[#21502]: https://github.com/home-assistant/home-assistant/pull/21502 +[#21513]: https://github.com/home-assistant/home-assistant/pull/21513 +[#21514]: https://github.com/home-assistant/home-assistant/pull/21514 +[#21515]: https://github.com/home-assistant/home-assistant/pull/21515 +[#21516]: https://github.com/home-assistant/home-assistant/pull/21516 +[#21517]: https://github.com/home-assistant/home-assistant/pull/21517 +[#21519]: https://github.com/home-assistant/home-assistant/pull/21519 +[#21523]: https://github.com/home-assistant/home-assistant/pull/21523 +[#21524]: https://github.com/home-assistant/home-assistant/pull/21524 +[#21525]: https://github.com/home-assistant/home-assistant/pull/21525 +[#21531]: https://github.com/home-assistant/home-assistant/pull/21531 +[#21533]: https://github.com/home-assistant/home-assistant/pull/21533 +[#21534]: https://github.com/home-assistant/home-assistant/pull/21534 +[#21535]: https://github.com/home-assistant/home-assistant/pull/21535 +[#21541]: https://github.com/home-assistant/home-assistant/pull/21541 +[#21543]: https://github.com/home-assistant/home-assistant/pull/21543 +[#21545]: https://github.com/home-assistant/home-assistant/pull/21545 +[#21548]: https://github.com/home-assistant/home-assistant/pull/21548 +[#21549]: https://github.com/home-assistant/home-assistant/pull/21549 +[#21551]: https://github.com/home-assistant/home-assistant/pull/21551 +[#21558]: https://github.com/home-assistant/home-assistant/pull/21558 +[#21564]: https://github.com/home-assistant/home-assistant/pull/21564 +[#21565]: https://github.com/home-assistant/home-assistant/pull/21565 +[#21568]: https://github.com/home-assistant/home-assistant/pull/21568 +[#21570]: https://github.com/home-assistant/home-assistant/pull/21570 +[#21571]: https://github.com/home-assistant/home-assistant/pull/21571 +[#21575]: https://github.com/home-assistant/home-assistant/pull/21575 +[#21576]: https://github.com/home-assistant/home-assistant/pull/21576 +[#21583]: https://github.com/home-assistant/home-assistant/pull/21583 +[#21590]: https://github.com/home-assistant/home-assistant/pull/21590 +[#21592]: https://github.com/home-assistant/home-assistant/pull/21592 +[#21594]: https://github.com/home-assistant/home-assistant/pull/21594 +[#21600]: https://github.com/home-assistant/home-assistant/pull/21600 +[#21601]: https://github.com/home-assistant/home-assistant/pull/21601 +[#21602]: https://github.com/home-assistant/home-assistant/pull/21602 +[#21606]: https://github.com/home-assistant/home-assistant/pull/21606 +[#21607]: https://github.com/home-assistant/home-assistant/pull/21607 +[#21609]: https://github.com/home-assistant/home-assistant/pull/21609 +[#21610]: https://github.com/home-assistant/home-assistant/pull/21610 +[#21612]: https://github.com/home-assistant/home-assistant/pull/21612 +[#21620]: https://github.com/home-assistant/home-assistant/pull/21620 +[#21621]: https://github.com/home-assistant/home-assistant/pull/21621 +[#21627]: https://github.com/home-assistant/home-assistant/pull/21627 +[#21633]: https://github.com/home-assistant/home-assistant/pull/21633 +[#21634]: https://github.com/home-assistant/home-assistant/pull/21634 +[#21641]: https://github.com/home-assistant/home-assistant/pull/21641 +[#21642]: https://github.com/home-assistant/home-assistant/pull/21642 +[#21643]: https://github.com/home-assistant/home-assistant/pull/21643 +[#21647]: https://github.com/home-assistant/home-assistant/pull/21647 +[#21651]: https://github.com/home-assistant/home-assistant/pull/21651 +[#21653]: https://github.com/home-assistant/home-assistant/pull/21653 +[#21662]: https://github.com/home-assistant/home-assistant/pull/21662 +[#21664]: https://github.com/home-assistant/home-assistant/pull/21664 +[#21669]: https://github.com/home-assistant/home-assistant/pull/21669 +[#21673]: https://github.com/home-assistant/home-assistant/pull/21673 +[#21675]: https://github.com/home-assistant/home-assistant/pull/21675 +[#21678]: https://github.com/home-assistant/home-assistant/pull/21678 +[#21679]: https://github.com/home-assistant/home-assistant/pull/21679 +[#21693]: https://github.com/home-assistant/home-assistant/pull/21693 +[#21694]: https://github.com/home-assistant/home-assistant/pull/21694 +[#21696]: https://github.com/home-assistant/home-assistant/pull/21696 +[#21698]: https://github.com/home-assistant/home-assistant/pull/21698 +[#21702]: https://github.com/home-assistant/home-assistant/pull/21702 +[#21709]: https://github.com/home-assistant/home-assistant/pull/21709 +[#21711]: https://github.com/home-assistant/home-assistant/pull/21711 +[#21713]: https://github.com/home-assistant/home-assistant/pull/21713 +[#21714]: https://github.com/home-assistant/home-assistant/pull/21714 +[#21718]: https://github.com/home-assistant/home-assistant/pull/21718 +[#21719]: https://github.com/home-assistant/home-assistant/pull/21719 +[#21720]: https://github.com/home-assistant/home-assistant/pull/21720 +[#21726]: https://github.com/home-assistant/home-assistant/pull/21726 +[#21727]: https://github.com/home-assistant/home-assistant/pull/21727 +[#21728]: https://github.com/home-assistant/home-assistant/pull/21728 +[#21734]: https://github.com/home-assistant/home-assistant/pull/21734 +[#21736]: https://github.com/home-assistant/home-assistant/pull/21736 +[#21740]: https://github.com/home-assistant/home-assistant/pull/21740 +[#21746]: https://github.com/home-assistant/home-assistant/pull/21746 +[#21777]: https://github.com/home-assistant/home-assistant/pull/21777 +[#21780]: https://github.com/home-assistant/home-assistant/pull/21780 +[#21785]: https://github.com/home-assistant/home-assistant/pull/21785 +[#21786]: https://github.com/home-assistant/home-assistant/pull/21786 +[#21789]: https://github.com/home-assistant/home-assistant/pull/21789 +[#21791]: https://github.com/home-assistant/home-assistant/pull/21791 +[#21794]: https://github.com/home-assistant/home-assistant/pull/21794 +[#21799]: https://github.com/home-assistant/home-assistant/pull/21799 +[#21809]: https://github.com/home-assistant/home-assistant/pull/21809 +[#21810]: https://github.com/home-assistant/home-assistant/pull/21810 +[#21822]: https://github.com/home-assistant/home-assistant/pull/21822 +[#21824]: https://github.com/home-assistant/home-assistant/pull/21824 +[#21827]: https://github.com/home-assistant/home-assistant/pull/21827 +[#21832]: https://github.com/home-assistant/home-assistant/pull/21832 +[#21835]: https://github.com/home-assistant/home-assistant/pull/21835 +[#21836]: https://github.com/home-assistant/home-assistant/pull/21836 +[#21837]: https://github.com/home-assistant/home-assistant/pull/21837 +[#21840]: https://github.com/home-assistant/home-assistant/pull/21840 +[#21841]: https://github.com/home-assistant/home-assistant/pull/21841 +[#21846]: https://github.com/home-assistant/home-assistant/pull/21846 +[#21848]: https://github.com/home-assistant/home-assistant/pull/21848 +[#21850]: https://github.com/home-assistant/home-assistant/pull/21850 +[#21853]: https://github.com/home-assistant/home-assistant/pull/21853 +[#21855]: https://github.com/home-assistant/home-assistant/pull/21855 +[#21858]: https://github.com/home-assistant/home-assistant/pull/21858 +[#21866]: https://github.com/home-assistant/home-assistant/pull/21866 +[#21869]: https://github.com/home-assistant/home-assistant/pull/21869 +[#21875]: https://github.com/home-assistant/home-assistant/pull/21875 +[#21878]: https://github.com/home-assistant/home-assistant/pull/21878 +[#21884]: https://github.com/home-assistant/home-assistant/pull/21884 +[#21887]: https://github.com/home-assistant/home-assistant/pull/21887 +[#21890]: https://github.com/home-assistant/home-assistant/pull/21890 +[#21891]: https://github.com/home-assistant/home-assistant/pull/21891 +[#21892]: https://github.com/home-assistant/home-assistant/pull/21892 +[#21898]: https://github.com/home-assistant/home-assistant/pull/21898 +[#21901]: https://github.com/home-assistant/home-assistant/pull/21901 +[#21905]: https://github.com/home-assistant/home-assistant/pull/21905 +[#21910]: https://github.com/home-assistant/home-assistant/pull/21910 +[#21913]: https://github.com/home-assistant/home-assistant/pull/21913 +[#21914]: https://github.com/home-assistant/home-assistant/pull/21914 +[#21921]: https://github.com/home-assistant/home-assistant/pull/21921 +[#21922]: https://github.com/home-assistant/home-assistant/pull/21922 +[#21923]: https://github.com/home-assistant/home-assistant/pull/21923 +[#21927]: https://github.com/home-assistant/home-assistant/pull/21927 +[#21932]: https://github.com/home-assistant/home-assistant/pull/21932 +[#21933]: https://github.com/home-assistant/home-assistant/pull/21933 +[#21937]: https://github.com/home-assistant/home-assistant/pull/21937 +[#21940]: https://github.com/home-assistant/home-assistant/pull/21940 +[#21944]: https://github.com/home-assistant/home-assistant/pull/21944 +[#21945]: https://github.com/home-assistant/home-assistant/pull/21945 +[#21951]: https://github.com/home-assistant/home-assistant/pull/21951 +[#21953]: https://github.com/home-assistant/home-assistant/pull/21953 +[#21957]: https://github.com/home-assistant/home-assistant/pull/21957 +[#21959]: https://github.com/home-assistant/home-assistant/pull/21959 +[#21960]: https://github.com/home-assistant/home-assistant/pull/21960 +[#21963]: https://github.com/home-assistant/home-assistant/pull/21963 +[#21965]: https://github.com/home-assistant/home-assistant/pull/21965 +[#21971]: https://github.com/home-assistant/home-assistant/pull/21971 +[#21977]: https://github.com/home-assistant/home-assistant/pull/21977 +[#21978]: https://github.com/home-assistant/home-assistant/pull/21978 +[#21979]: https://github.com/home-assistant/home-assistant/pull/21979 +[#21981]: https://github.com/home-assistant/home-assistant/pull/21981 +[#21983]: https://github.com/home-assistant/home-assistant/pull/21983 +[#21985]: https://github.com/home-assistant/home-assistant/pull/21985 +[#21988]: https://github.com/home-assistant/home-assistant/pull/21988 +[#21989]: https://github.com/home-assistant/home-assistant/pull/21989 +[#21993]: https://github.com/home-assistant/home-assistant/pull/21993 +[#21994]: https://github.com/home-assistant/home-assistant/pull/21994 +[#22004]: https://github.com/home-assistant/home-assistant/pull/22004 +[#22006]: https://github.com/home-assistant/home-assistant/pull/22006 +[#22008]: https://github.com/home-assistant/home-assistant/pull/22008 +[#22010]: https://github.com/home-assistant/home-assistant/pull/22010 +[#22011]: https://github.com/home-assistant/home-assistant/pull/22011 +[#22012]: https://github.com/home-assistant/home-assistant/pull/22012 +[@Cereal2nd]: https://github.com/Cereal2nd +[@Danielhiversen]: https://github.com/Danielhiversen +[@Dullage]: https://github.com/Dullage +[@GGeezes]: https://github.com/GGeezes +[@Hackashaq666]: https://github.com/Hackashaq666 +[@Jc2k]: https://github.com/Jc2k +[@JeffLIrion]: https://github.com/JeffLIrion +[@Julius2342]: https://github.com/Julius2342 +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@Oro]: https://github.com/Oro +[@StevenLooman]: https://github.com/StevenLooman +[@SukramJ]: https://github.com/SukramJ +[@Swamp-Ig]: https://github.com/Swamp-Ig +[@ToRvaLDz]: https://github.com/ToRvaLDz +[@alandtse]: https://github.com/alandtse +[@amelchio]: https://github.com/amelchio +[@andrewsayre]: https://github.com/andrewsayre +[@arsaboo]: https://github.com/arsaboo +[@autinerd]: https://github.com/autinerd +[@awarecan]: https://github.com/awarecan +[@bachya]: https://github.com/bachya +[@balloob]: https://github.com/balloob +[@beavis9k]: https://github.com/beavis9k +[@c-soft]: https://github.com/c-soft +[@chilicheech]: https://github.com/chilicheech +[@cisasteelersfan]: https://github.com/cisasteelersfan +[@cmsimike]: https://github.com/cmsimike +[@cpopp]: https://github.com/cpopp +[@danielperna84]: https://github.com/danielperna84 +[@dgomes]: https://github.com/dgomes +[@dmulcahey]: https://github.com/dmulcahey +[@dshokouhi]: https://github.com/dshokouhi +[@ehendrix23]: https://github.com/ehendrix23 +[@emontnemery]: https://github.com/emontnemery +[@endor-force]: https://github.com/endor-force +[@engrbm87]: https://github.com/engrbm87 +[@epleypa]: https://github.com/epleypa +[@fabaff]: https://github.com/fabaff +[@fbradyirl]: https://github.com/fbradyirl +[@gertdb]: https://github.com/gertdb +[@heythisisnate]: https://github.com/heythisisnate +[@hunterjm]: https://github.com/hunterjm +[@isabellaalstrom]: https://github.com/isabellaalstrom +[@josemotta]: https://github.com/josemotta +[@kbickar]: https://github.com/kbickar +[@kennedyshead]: https://github.com/kennedyshead +[@koolsb]: https://github.com/koolsb +[@ktnrg45]: https://github.com/ktnrg45 +[@ljmerza]: https://github.com/ljmerza +[@ludeeus]: https://github.com/ludeeus +[@marvin-w]: https://github.com/marvin-w +[@michaelarnauts]: https://github.com/michaelarnauts +[@msvinth]: https://github.com/msvinth +[@mw-white]: https://github.com/mw-white +[@ndonegan]: https://github.com/ndonegan +[@nickw444]: https://github.com/nickw444 +[@nudded]: https://github.com/nudded +[@nugget]: https://github.com/nugget +[@pavoni]: https://github.com/pavoni +[@piitaya]: https://github.com/piitaya +[@pnbruckner]: https://github.com/pnbruckner +[@pvizeli]: https://github.com/pvizeli +[@rbdixon]: https://github.com/rbdixon +[@robbiet480]: https://github.com/robbiet480 +[@roblandry]: https://github.com/roblandry +[@rohankapoorcom]: https://github.com/rohankapoorcom +[@scop]: https://github.com/scop +[@shanbs]: https://github.com/shanbs +[@srirams]: https://github.com/srirams +[@thibmaek]: https://github.com/thibmaek +[@trunet]: https://github.com/trunet +[@ttroy50]: https://github.com/ttroy50 +[@u1f35c]: https://github.com/u1f35c +[@uchagani]: https://github.com/uchagani +[@w1ll1am23]: https://github.com/w1ll1am23 +[@wburgers]: https://github.com/wburgers +[@webdjoe]: https://github.com/webdjoe +[@zeehio]: https://github.com/zeehio +[@zemerick1]: https://github.com/zemerick1 +[@zewelor]: https://github.com/zewelor +[air_quality docs]: /components/air_quality/ +[alarm_control_panel.mqtt docs]: /components/alarm_control_panel.mqtt/ +[alarmdecoder docs]: /components/alarmdecoder/ +[alert docs]: /components/alert/ +[ambient_station docs]: /components/ambient_station/ +[amcrest docs]: /components/amcrest/ +[api docs]: /components/api/ +[asuswrt docs]: /components/asuswrt/ +[auth docs]: /components/auth/ +[automation docs]: /components/automation/ +[binary_sensor.trend docs]: /components/binary_sensor.trend/ +[binary_sensor.workday docs]: /components/binary_sensor.workday/ +[camera docs]: /components/camera/ +[camera.ffmpeg docs]: /components/camera.ffmpeg/ +[camera.generic docs]: /components/camera.generic/ +[camera.proxy docs]: /components/camera.proxy/ +[camera.xeoma docs]: /components/camera.xeoma/ +[cast docs]: /components/cast/ +[cisco_mobility_express docs]: /components/cisco_mobility_express/ +[climate.ephember docs]: /components/climate.ephember/ +[climate.eq3btsmart docs]: /components/climate.eq3btsmart/ +[climate.honeywell docs]: /components/climate.honeywell/ +[climate.netatmo docs]: /components/climate.netatmo/ +[cloud docs]: /components/cloud/ +[config docs]: /components/config/ +[device_tracker docs]: /components/device_tracker/ +[emulated_hue docs]: /components/emulated_hue/ +[enigma2 docs]: /components/enigma2/ +[firetv docs]: /components/firetv/ +[frontend docs]: /components/frontend/ +[google_assistant docs]: /components/google_assistant/ +[group docs]: /components/group/ +[hassio docs]: /components/hassio/ +[homekit_controller docs]: /components/homekit_controller/ +[homematic docs]: /components/homematic/ +[homematicip_cloud docs]: /components/homematicip_cloud/ +[http docs]: /components/http/ +[huawei_lte docs]: /components/huawei_lte/ +[ifttt docs]: /components/ifttt/ +[ihc docs]: /components/ihc/ +[image_processing docs]: /components/image_processing/ +[image_processing.opencv docs]: /components/image_processing.opencv/ +[image_processing.tensorflow docs]: /components/image_processing.tensorflow/ +[knx docs]: /components/knx/ +[konnected docs]: /components/konnected/ +[lametric docs]: /components/lametric/ +[light docs]: /components/light/ +[light.flux_led docs]: /components/light.flux_led/ +[light.ihc docs]: /components/light.ihc/ +[light.mystrom docs]: /components/light.mystrom/ +[light.nanoleaf docs]: /components/light.nanoleaf/ +[logbook docs]: /components/logbook/ +[lutron docs]: /components/lutron/ +[media_extractor docs]: /components/media_extractor/ +[media_player.anthemav docs]: /components/media_player.anthemav/ +[media_player.dlna_dmr docs]: /components/media_player.dlna_dmr/ +[media_player.enigma2 docs]: /components/media_player.enigma2/ +[media_player.firetv docs]: /components/media_player.firetv/ +[mobile_app docs]: /components/mobile_app/ +[modbus docs]: /components/modbus/ +[mqtt docs]: /components/mqtt/ +[ness_alarm docs]: /components/ness_alarm/ +[netatmo docs]: /components/netatmo/ +[notify docs]: /components/notify/ +[notify.sendgrid docs]: /components/notify.sendgrid/ +[onboarding docs]: /components/onboarding/ +[openuv docs]: /components/openuv/ +[ps4 docs]: /components/ps4/ +[rainmachine docs]: /components/rainmachine/ +[remote docs]: /components/remote/ +[remote.harmony docs]: /components/remote.harmony/ +[satel_integra docs]: /components/satel_integra/ +[scene docs]: /components/scene/ +[script docs]: /components/script/ +[sense docs]: /components/sense/ +[sensor.deutsche_bahn docs]: /components/sensor.deutsche_bahn/ +[sensor.discogs docs]: /components/sensor.discogs/ +[sensor.dsmr docs]: /components/sensor.dsmr/ +[sensor.flunearyou docs]: /components/sensor.flunearyou/ +[sensor.konnected docs]: /components/sensor.konnected/ +[sensor.loopenergy docs]: /components/sensor.loopenergy/ +[sensor.mopar docs]: /components/sensor.mopar/ +[sensor.netdata docs]: /components/sensor.netdata/ +[sensor.nmbs docs]: /components/sensor.nmbs/ +[sensor.pollen docs]: /components/sensor.pollen/ +[sensor.seventeentrack docs]: /components/sensor.seventeentrack/ +[sensor.starlingbank docs]: /components/sensor.starlingbank/ +[sensor.synologydsm docs]: /components/sensor.synologydsm/ +[sensor.systemmonitor docs]: /components/sensor.systemmonitor/ +[sensor.tof docs]: /components/sensor.tof/ +[sensor.whois docs]: /components/sensor.whois/ +[smartthings docs]: /components/smartthings/ +[sonos docs]: /components/sonos/ +[stream docs]: /components/stream/ +[switch.mystrom docs]: /components/switch.mystrom/ +[switch.vesync docs]: /components/switch.vesync/ +[tellstick docs]: /components/tellstick/ +[tesla docs]: /components/tesla/ +[tplink docs]: /components/tplink/ +[tts docs]: /components/tts/ +[utility_meter docs]: /components/utility_meter/ +[velbus docs]: /components/velbus/ +[velux docs]: /components/velux/ +[water_heater docs]: /components/water_heater/ +[websocket_api docs]: /components/websocket_api/ +[zeroconf docs]: /components/zeroconf/ +[zha docs]: /components/zha/ +[zwave docs]: /components/zwave/