hass-core/tests/components
Eugenio Panadero 8d2e72cdf6
Add pvpc electricity prices integration (#32092)
* Add new integration: pvpc_hourly_pricing

to add a sensor with the current hourly price of electricity in Spain.
Configuration is done by selecting one of the 3 reference tariffs, with
1, 2, or 3 billing periods.

* Features config flow, entity registry, RestoreEntity, options flow
  to change tariff, manual yaml config as integration or sensor platform
* Cloud polling sensor with minimal API calls (3/hour at random times)
  and smart retry; fully async
* Only 1 state change / hour (only when the price changes)
* At evening, try to download published tomorrow prices, to always store
  prices info for a window of [3, 27] hours in the future.
* Include useful state attributes to program automations to be run
  at best electric prices.
* Add spanish and english translations.

* Requires `xmltodict` to parse official xml file with hourly prices
for each day.

* Update requirements and add to codeowners

* Avoid passing in hass as a parameter to the entity

Instead, create time change listeners in async_added_to_hass and
call async_generate_entity_id before async_add_entities

* Fix lint issues

* Add tests for config & options flow

* Add tests for manual yaml config

with entity definition as integration and also as a sensor platform

* Fix placement of PLATFORM_SCHEMA and update generated config_flows

* Store prices internally linked to UTC timestamps

- to deal with days with DST changes
- and work with different local timezones

* Add availability to sensor

to 'expire' the sensor if there is no connection available
 and current hour is not in the stored prices.

Also, turn off logging and retrying if prices can't be downloaded
repeatedly, by flagging `data_source_available` as False, so there is no
log-flood mess.

* Add more tests

- to cover behavior in DST changes and complete coverage of sensor logic
- to cover abort config flow

* fix linter

* Better handling of sensor availability and minor enhancements

- Emmit 1 error if data source is marked as unavailable
  (after some retries), and be silent until cloud access is recovered,
  then emmit 1 warning.
- Follow standard of camel_case keys in attributes

* Mock aiosession to not access real API, store fixture data

- Store a set of daily xml files to test sensor logic for all situations
- Mock time and session to run tests with stored API responses
- Add availability test to simulate a lost + recovery of cloud access,
  checking that logging is reasonable: 1 error to flag the continued
  disconnection + 1 warning in recovery.

* Change API endpoint to retrieve JSON data

and remove xmltodict from reqs.

It seems that this endpoint is more reliable than the XML.

* Adapt tests to new API endpoint

* Translate tariff labels to plain English

and sync the default timeout value for all ways of configuration.

* Relax logging levels to meet silver requirements

- 1 warning when becoming unavailable, another warning when recovered.
- Warnings for unexpected TimeoutError or ClientError
- Move the rest to debug level, leaving info for HA internals

Also reduce number of API calls from 3 to 2 calls/hour.

* Fix requirements

* Mod tests to work with timezone Atlantic/Canary

and fix state attributes for timezones != reference, by using 3 price
prefixes: 'price_last_day_XXh', 'price_next_day_XXh' and 'price_XXh',
all generated with local time (backend timezone)

* Try to fix CI tests

* Externalize pvpc data and simplify sensor.py

* add new `aiopvpc` to requirements
* Remove data parsing and price logic from here
* Replace some constant properties with class variables

* Simplify tests for pvpc_hourly_pricing

* Fix updater for options flow

* Updater always reloads
* `tariff` value comes 1st from entry.options, 2nd from entry.data

* Fix lint

* Bump aiopvpc

* Remove options flow and platform setup

- Remove PLATFORM_SCHEMA and async_setup_platform
- Generate config_entry.unique_id with tariff instead of entity_id, in flow step.
- Remove TariffSelectorConfigFlow
- Adapt tests to maintain full coverage

* Fix docstring on test

and rename SENSOR_SCHEMA to SINGLE_SENSOR_SCHEMA to avoid confusion

* Remove timeout manual config, fix entry.options usage, simplify unique_id

* Simplify tests

- No need for a test_setup now, as platform setup is removed and integration
  setup is already used in `test_availability`
- Simplified `_process_time_step`: only one async_fire(EVENT_TIME_CHANGED)/hour

* Fix possible duplicated update

when source is not available.

* Do not access State last_changed for log messages

* Do not update until entity is added to hass

and call to async_update after 1st download or when recovering access, so
async_write_ha_state is not called twice on those.

* minor changes

* Rename method to select current price and make it a callback
2020-03-22 14:25:31 -05:00
..
abode Fix abode test (#32871) 2020-03-16 10:03:44 -07:00
adguard Use f-strings in integrations starting with "A" (#32110) 2020-02-23 13:38:05 -08:00
air_quality Black 2019-07-31 12:25:30 -07:00
airly Add unique ID to Airly config entries (#30681) 2020-01-13 13:28:07 +01:00
airvisual Add options flow for AirVisual (#32634) 2020-03-10 14:16:25 -06:00
alarm_control_panel Add device condition for alarm_control_panel (#29063) 2020-03-16 18:08:06 -05:00
alert Use f-strings in integrations starting with "A" (#32110) 2020-02-23 13:38:05 -08:00
alexa Alexa: Add support for starting and cancelling timers (#32616) 2020-03-09 21:59:06 -07:00
almond Mock setup_entry in oauth2 tests (#32102) 2020-02-23 12:23:21 +01:00
ambiclimate Sort imports according to PEP8 for ambiclimate (#29689) 2019-12-09 11:49:35 +01:00
ambient_station Modernize Ambient PWS config flow (#32164) 2020-02-24 21:37:38 -08:00
androidtv Allow filtering of sources for Android TV (#30994) 2020-01-29 14:13:09 -06:00
api Use f-strings in integrations starting with "A" (#32110) 2020-02-23 13:38:05 -08:00
api_streams Fixing the api_streams sensor (#22200) 2019-03-22 11:59:10 -07:00
apns Sort imports according to PEP8 for components starting with "A" (#29761) 2019-12-09 13:57:24 +01:00
apprise Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
aprs Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
arcam_fmj Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
arlo Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
asuswrt Add asuswrt interface and dnsmasq location configuration (#29834) 2020-02-21 17:01:57 +01:00
august Throw ConfigEntryNotReady when august servers are offline or u… (#32635) 2020-03-10 17:10:00 -07:00
aurora Fix aurora sensor not converting latitude and longitude correctly (#28643) 2020-01-09 08:40:10 +01:00
auth Use f-strings in integrations starting with "A" (#32110) 2020-02-23 13:38:05 -08:00
automatic Migrate automatic tests from coroutine to async/await (#30371) 2020-01-05 07:23:22 -06:00
automation Numeric state trigger: validate that above is not above below (#32421) 2020-03-03 17:26:44 -08:00
awair Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
aws Sort imports according to PEP8 for aws (#29704) 2019-12-09 11:23:21 +01:00
axis Freeze config entry data (#32615) 2020-03-09 14:07:50 -07:00
bayesian Add observed entities to bayesian sensor (#27721) 2020-02-24 21:27:59 -08:00
binary_sensor Fix typo: serivce --> service (#31217) 2020-01-27 19:56:26 +01:00
blackbird Sort imports according to PEP8 for components starting with "B" (#29762) 2019-12-09 13:52:18 +01:00
bluetooth_le_tracker Preserve new BLE tracker item name if seen before adding discovery (#30318) 2020-01-05 23:13:54 +02:00
bom Sort imports according to PEP8 for components starting with "B" (#29762) 2019-12-09 13:52:18 +01:00
broadlink use isort to sort imports according to PEP8 for broadlink (#29690) 2019-12-09 11:48:52 +01:00
brother Tests improvements to the Brother integration (#32982) 2020-03-20 10:21:43 +01:00
buienradar Add Buienradar camera for Belgium (#30399) 2020-01-24 12:38:35 +01:00
caldav Fix CalDAV recurring events (#31805) 2020-02-15 19:31:36 -08:00
calendar Black 2019-07-31 12:25:30 -07:00
camera Enable some more bandit checks (#30857) 2020-01-20 18:44:55 +02:00
canary Fix issue #23758 - Restore Canary sensors and ensure alarm con… (#32627) 2020-03-11 11:58:42 -07:00
cast Migrate cast tests from coroutine to async/await (#30374) 2020-01-01 17:21:42 -06:00
cert_expiry Refactor Certificate Expiry Sensor (#32066) 2020-03-02 07:44:24 -06:00
climate Fix typo: serivce --> service (#31217) 2020-01-27 19:56:26 +01:00
cloud Upgrade hass_nabucasa to 0.32.2 (#32522) 2020-03-09 17:42:26 -07:00
coinmarketcap Sort imports according to PEP8 for components starting with "C" (#29763) 2019-12-09 18:56:21 +01:00
command_line Enable some more bandit checks (#30857) 2020-01-20 18:44:55 +02:00
config Change get_entity to return a extended entry, add inputs to de… (#32083) 2020-02-22 15:18:10 -08:00
configurator Sort imports according to PEP8 for components starting with "C" (#29763) 2019-12-09 18:56:21 +01:00
conversation Clean up core services (#31509) 2020-02-08 13:10:59 +01:00
coolmaster Sort imports according to PEP8 for components starting with "C" (#29763) 2019-12-09 18:56:21 +01:00
coronavirus Mock all invocations of coronavirus.get_cases (#32487) 2020-03-04 21:42:07 -08:00
counter Use collection helpers for counter integration (#32295) 2020-02-28 14:06:39 -08:00
cover Add device actions to cover (#28064) 2020-02-27 21:05:43 -08:00
daikin Fix tests & lint 2019-12-04 22:47:40 -08:00
darksky Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
datadog Sort imports according to PEP8 for components starting with "D" (#29764) 2019-12-09 17:42:00 +01:00
deconz Update deconz/cover.py to adapt rest-api changes (#32351) 2020-03-16 15:44:59 +01:00
default_config Sort imports according to PEP8 for components starting with "D" (#29764) 2019-12-09 17:42:00 +01:00
demo Add support for simultaneous runs of Script helper (#31937) 2020-02-24 14:56:00 -08:00
denonavr Add generic command functionality to denonavr (#29295) 2020-01-02 22:30:20 +01:00
derivative Add and use time related constants (#32065) 2020-02-23 22:09:24 +02:00
device_automation Catch device not found in device automations (#31401) 2020-02-02 07:13:07 -08:00
device_sun_light_trigger Remove deprecated hide_if_away from device trackers (#32705) 2020-03-12 11:55:18 +01:00
device_tracker Remove deprecated hide_if_away from device trackers (#32705) 2020-03-12 11:55:18 +01:00
dialogflow Sort imports according to PEP8 for dialogflow (#29714) 2019-12-08 23:40:06 +01:00
directv Optimize directv client initialization (#32706) 2020-03-13 21:55:21 -07:00
discovery Migrate discovery tests from coroutine to async/await (#30376) 2020-01-01 17:22:32 -06:00
dsmr Fix DSMR 5 (#32233) 2020-02-26 17:02:42 -08:00
dte_energy_bridge Black 2019-07-31 12:25:30 -07:00
duckdns Sort imports according to PEP8 for components starting with "D" (#29764) 2019-12-09 17:42:00 +01:00
dynalite Add Dynalite switch platform (#32389) 2020-03-04 22:05:39 -08:00
dyson Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
ecobee use isort to sort imports according to PEP8 for ecobee (#29631) 2019-12-08 22:31:50 +05:30
ee_brightbox Move ee_brightbox imports at top-level (#29054) 2019-11-26 08:59:55 -08:00
efergy Sort imports according to PEP8 for components starting with "E" (#29765) 2019-12-09 14:10:04 +01:00
elgato Add unique ID to elgato config entries (#30486) 2020-01-04 22:45:11 +01:00
emulated_hue Optimize is_entity_exposed in emulated_hue by removing deprec… (#32718) 2020-03-13 21:47:47 -07:00
emulated_roku Sort imports according to PEP8 for emulated_roku (#29756) 2019-12-09 13:20:51 +01:00
esphome Move esphome imports at top-level (#29064) 2019-11-25 18:00:58 -08:00
everlights Black 2019-07-31 12:25:30 -07:00
facebook Send messages conforming new facebook policy (#32516) 2020-03-05 17:19:30 -08:00
facebox Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
fail2ban Enable some more bandit checks (#30857) 2020-01-20 18:44:55 +02:00
fan Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
feedreader Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
ffmpeg Migrate ffmpeg tests from coroutine to async/await (#30375) 2020-01-01 17:22:08 -06:00
fido Migrate fido tests from coroutine to async/await (#30391) 2020-01-02 14:22:13 -06:00
file Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
filesize Sort imports according to PEP8 for components starting with "F" (#29766) 2019-12-09 14:14:40 +01:00
filter Fix filter sensor processing states that aren't numbers (#32453) 2020-03-04 12:47:53 -08:00
flux Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
folder Sort imports according to PEP8 for components starting with "F" (#29766) 2019-12-09 14:14:40 +01:00
folder_watcher Be consistent with Home Assistant and Hass.io spelling (#30500) 2020-01-05 14:09:17 +02:00
foobot Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
freebox Refactor Freebox : add config flow + temperature sensor + signal dispatch (#30334) 2020-03-11 22:15:59 +01:00
freedns Migrate freedns tests from coroutine to async/await (#30390) 2020-01-02 14:22:30 -06:00
fritzbox Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
frontend Check if panel url used and delay dashboard reg till start (#32771) 2020-03-13 11:55:53 -07:00
garmin_connect Add Garmin Connect integration (#30792) 2020-01-27 09:12:18 -08:00
gdacs Add GDACS feed integration (#31235) 2020-02-06 11:32:30 +01:00
generic Migrate generic tests from coroutine to async/await (#30388) 2020-01-02 14:23:16 -06:00
generic_thermostat Handle generic_thermostat state unavailable (#32852) 2020-03-22 09:35:58 -05:00
geo_json_events Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
geo_location Fix demo (#23087) 2019-04-14 16:59:06 -07:00
geo_rss_events Sort imports according to PEP8 for components starting with "G" (#29767) 2019-12-09 14:17:36 +01:00
geofency Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
geonetnz_quakes GeoNet NZ Quakes code improvements (#32338) 2020-03-04 14:52:16 -08:00
geonetnz_volcano Sort imports according to PEP8 for geonetnz_volcano (#29716) 2019-12-08 23:33:42 +01:00
gios Add GIOS integration (#28719) 2019-12-31 13:05:31 +01:00
glances Add Glances sensors dynamically (#28639) 2020-02-10 15:02:14 -08:00
google Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
google_assistant Fix demos (#32086) 2020-03-11 08:16:22 -07:00
google_domains Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
google_pubsub Black 2019-07-31 12:25:30 -07:00
google_translate Log warning when entities referenced in service call not found (#31427) 2020-02-04 14:42:07 -08:00
google_wifi Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
gpslogger Use f-strings in integrations starting with "F"and"G" (#32150) 2020-02-24 17:54:20 -08:00
graphite Sort imports according to PEP8 for components starting with "G" (#29767) 2019-12-09 14:17:36 +01:00
griddy Add griddy integration (#32591) 2020-03-10 23:00:30 +01:00
group Fix demos (#32086) 2020-03-11 08:16:22 -07:00
hangouts Move hangouts imports at top-level (#29055) 2019-11-25 15:44:11 -08:00
harmony Harmony config flow improvements (#33018) 2020-03-19 20:43:44 -05:00
hassio Re-branding of Hass.io panel to Supervisor (#31480) 2020-02-05 11:04:17 +01:00
hddtemp Various string cleanups (#30435) 2020-01-03 14:47:06 +01:00
heos Make heos and transmission config flow tests more robust (#31783) 2020-02-27 12:19:54 +01:00
here_travel_time Add Here travel time arrival departure (#29909) 2020-03-16 21:16:49 -07:00
hisense_aehw4a1 Add support for Hisense AEH-W4A1 wifi module (AC remote control) (#28641) 2019-11-15 21:22:24 +01:00
history Add a commit interval setting to recorder (#32596) 2020-03-09 17:43:26 -07:00
history_stats Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
homeassistant Fix recursion bug (#32009) 2020-02-20 08:51:00 -08:00
homekit Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
homekit_controller Add support for homekit valve accessories to homekit_controller (#32937) 2020-03-18 21:20:40 +00:00
homematic Sort imports according to PEP8 for components starting with "H" (#29768) 2019-12-09 14:19:48 +01:00
homematicip_cloud Add SF transition to HmIP-BSL and remove obsolete code in HMIPC (#32833) 2020-03-15 19:01:50 +01:00
honeywell Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
html5 Sort imports according to PEP8 for components starting with "H" (#29768) 2019-12-09 14:19:48 +01:00
http Fix HTTP config serialization (#31319) 2020-01-30 09:47:16 -08:00
huawei_lte Fix Huawei LTE SMS recipient setting from options UI (#31117) 2020-01-25 13:09:43 +02:00
hue Fix hue test 2020-02-20 08:11:27 -08:00
iaqualink Sort imports according to PEP8 for iaqualink (#29681) 2019-12-09 11:56:51 +01:00
icloud Fetch iCloud family devices only when wanted (#32644) 2020-03-11 20:43:37 +01:00
ifttt Require IFTTT to send data as dictionary (#32317) 2020-02-29 20:37:06 -08:00
ign_sismologia Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
image_processing Add Safe Mode (#30723) 2020-01-14 13:03:02 -08:00
imap_email_content Sort imports according to PEP8 for components starting with "I" (#29769) 2019-12-09 14:21:24 +01:00
influxdb Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
input_boolean Allow input_* and timer component setup without config (#30772) 2020-01-14 22:15:59 -05:00
input_datetime input_datetime guard for unexpected state on restore (#32652) 2020-03-10 15:15:11 -07:00
input_number Add entity ID to input_number warning (#32012) 2020-02-20 08:30:24 -08:00
input_select Allow input_* and timer component setup without config (#30772) 2020-01-14 22:15:59 -05:00
input_text Allow input_* and timer component setup without config (#30772) 2020-01-14 22:15:59 -05:00
integration Add and use time related constants (#32065) 2020-02-23 22:09:24 +02:00
intent Clean up core services (#31509) 2020-02-08 13:10:59 +01:00
intent_script Migrate collection of component tests from coroutine to async/await (#30504) 2020-01-06 01:22:22 +01:00
ios Sort imports according to PEP8 for components starting with "I" (#29769) 2019-12-09 14:21:24 +01:00
ipma Allow hourly forecast in IPMA (#30979) 2020-02-14 12:04:41 -05:00
iqvia Black 2019-07-31 12:25:30 -07:00
islamic_prayer_times Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
izone Sort imports according to PEP8 for components starting with "I" (#29769) 2019-12-09 14:21:24 +01:00
jewish_calendar Add support for displaying Daf Yomi (#30628) 2020-02-16 00:00:17 +01:00
kira Sort imports according to PEP8 for components starting with "K" (#29770) 2019-12-09 14:25:18 +01:00
konnected Ignore the ignored konnected config entries (#32845) 2020-03-16 01:11:26 +01:00
light Fix brightness_pct in light device turn_on action (#32787) 2020-03-13 21:58:32 -07:00
linky Removes I/O from linky tests (#31299) 2020-01-29 21:59:24 -08:00
litejet Enable some more bandit checks (#30857) 2020-01-20 18:44:55 +02:00
local_file Migrate local_file tests from coroutine to async/await (#30392) 2020-01-02 14:21:54 -06:00
local_ip Add local_ip component (#29973) 2019-12-31 14:34:53 +01:00
locative Sort imports according to PEP8 for locative (#29698) 2019-12-09 11:43:46 +01:00
lock Fix typo: serivce --> service (#31217) 2020-01-27 19:56:26 +01:00
logbook Add a commit interval setting to recorder (#32596) 2020-03-09 17:43:26 -07:00
logentries Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
logger Sort imports according to PEP8 for components starting with "L" (#29771) 2019-12-09 14:22:30 +01:00
logi_circle Sort imports according to PEP8 for components starting with "L" (#29771) 2019-12-09 14:22:30 +01:00
london_air Sort imports according to PEP8 for components starting with "L" (#29771) 2019-12-09 14:22:30 +01:00
lovelace Lovelace: storage key based on id instead of url_path (#32873) 2020-03-16 20:08:00 +01:00
luftdaten Black 2019-07-31 12:25:30 -07:00
mailbox Be consistent with Home Assistant and Hass.io spelling (#30500) 2020-01-05 14:09:17 +02:00
mailgun Black 2019-07-31 12:25:30 -07:00
manual Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
manual_mqtt Add Safe Mode (#30723) 2020-01-14 13:03:02 -08:00
marytts Log warning when entities referenced in service call not found (#31427) 2020-02-04 14:42:07 -08:00
media_player Make it possible to fetch proxy media player album art (#32471) 2020-03-05 11:45:36 -08:00
melcloud Add MELCloud integration (#30712) 2020-02-10 22:09:12 +01:00
melissa Move imports in melissa component (#28021) 2019-10-22 23:19:00 -07:00
meraki Migrate collection of component tests from coroutine to async/await (#30504) 2020-01-06 01:22:22 +01:00
met Freeze config entry data (#32615) 2020-03-09 14:07:50 -07:00
meteo_france Fix Météo-France I/O while testing (#31695) 2020-02-10 17:00:22 +01:00
mfi use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
mhz19 Add and use more unit constants (#32122) 2020-02-24 17:52:14 -08:00
microsoft_face Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
microsoft_face_detect Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
microsoft_face_identify Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
mikrotik Freeze config entry data (#32615) 2020-03-09 14:07:50 -07:00
min_max Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
minecraft_server Add Minecraft Server Integration (#30992) 2020-02-08 09:28:35 +01:00
minio Enable some more bandit checks (#30857) 2020-01-20 18:44:55 +02:00
mobile_app Fix mobile app test 2020-03-18 22:13:37 -07:00
mochad use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
modbus Modbus remove unnecessary get calls (#31966) 2020-02-18 19:41:12 -08:00
mold_indicator Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
monoprice Monoprice PR followups (#33133) 2020-03-22 13:25:27 +01:00
moon use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
mqtt Remove deprecated features from MQTT platforms (#32909) 2020-03-18 22:39:15 -07:00
mqtt_eventstream use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
mqtt_json Use f-strings in integrations starting with "B"-"E" (#32121) 2020-02-24 08:47:52 -08:00
mqtt_room use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
mqtt_statestream use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
myq Add config flow for myq (#32890) 2020-03-20 15:28:14 -05:00
mythicbeastsdns use isort to sort imports for components starting with 'm' (#29772) 2019-12-09 18:50:40 +05:30
namecheapdns Migrate collection of component tests from coroutine to async/await (#30504) 2020-01-06 01:22:22 +01:00
neato Sort imports according to PEP8 for neato (#29724) 2019-12-09 11:05:22 +01:00
ness_alarm Move imports to top for ness_alarm (#29518) 2019-12-09 18:46:56 +01:00
nest Sort imports according to PEP8 for nest (#29670) 2019-12-09 12:08:51 +01:00
netatmo Fix netatmo webhook registration issue (#32994) 2020-03-20 15:22:27 +01:00
nexia Add support for nexia automations (#33049) 2020-03-20 18:49:42 -05:00
nextbus Nextbus: Sort results for upcoming times (#29811) 2019-12-10 09:22:13 +01:00
no_ip Migrate no_ip tests from coroutine to async/await (#30370) 2020-01-01 17:18:40 -06:00
notify Black 2019-07-31 12:25:30 -07:00
notion Modernize Notion config flow (#32167) 2020-02-24 21:36:58 -08:00
nsw_fuel_station Sort imports according to PEP8 for components starting with "N" (#29773) 2019-12-09 14:46:24 +01:00
nsw_rural_fire_service_feed Sort imports according to PEP8 for components starting with "N" (#29773) 2019-12-09 14:46:24 +01:00
nuheat Modernize nuheat for new climate platform (#32714) 2020-03-20 11:01:51 -07:00
nws Update pynws to v0.10.1 (#30662) 2020-01-15 12:01:47 -08:00
nx584 Sort imports according to PEP8 for components starting with "N" (#29773) 2019-12-09 14:46:24 +01:00
onboarding Extract Collection helper from Person integration (#30313) 2020-01-03 21:37:11 +01:00
openalpr_cloud Sort imports according to PEP8 for components starting with "O" (#29774) 2019-12-09 14:26:53 +01:00
openalpr_local Migrate collection of component tests from coroutine to async/await (#30504) 2020-01-06 01:22:22 +01:00
openhardwaremonitor Sort imports according to PEP8 for components starting with "O" (#29774) 2019-12-09 14:26:53 +01:00
opentherm_gw Rework FlowManager to use inheritance (#30133) 2020-01-03 11:52:01 +01:00
openuv Sort imports according to PEP8 for components starting with "O" (#29774) 2019-12-09 14:26:53 +01:00
opnsense Fix tests for opnsense (#31277) 2020-01-29 18:18:24 +01:00
owntracks Add OwnTracks Friends via person integration (#27303) 2020-03-05 12:55:48 -08:00
panel_custom Make sure panel_custom won't crash on invalid data (#32835) 2020-03-15 11:51:02 -07:00
panel_iframe Black 2019-07-31 12:25:30 -07:00
persistent_notification Sort imports according to PEP8 for components starting with "P" (#29775) 2019-12-09 14:29:39 +01:00
person Fix person device_trackers null (#31829) 2020-02-14 15:27:31 -08:00
pi_hole (Re)Add support for multiple Pi-Holes (#27569) 2019-12-12 19:43:49 +01:00
pilight Sort imports according to PEP8 for pilight (#29673) 2019-12-09 12:10:38 +01:00
plant Be consistent with Home Assistant and Hass.io spelling (#30500) 2020-01-05 14:09:17 +02:00
plex Rewrite and add Plex tests (#32633) 2020-03-11 09:37:02 -07:00
point Fix tests & lint 2019-12-04 22:47:40 -08:00
powerwall Make powerwall unique id stable (#33021) 2020-03-19 20:43:09 -07:00
prometheus Add and use more unit constants (#32122) 2020-02-24 17:52:14 -08:00
proximity Migrate zone to use collection helpers (#30774) 2020-01-22 12:36:25 -08:00
ps4 Fix ps4 errors if pin begins with a 0 (#31198) 2020-01-27 10:32:14 -05:00
ptvsd Sort imports according to PEP8 for components starting with "P" (#29775) 2019-12-09 14:29:39 +01:00
push Sort imports according to PEP8 for components starting with "P" (#29775) 2019-12-09 14:29:39 +01:00
pushbullet Sort imports according to PEP8 for pushbullet (#29748) 2019-12-09 13:06:25 +01:00
pvpc_hourly_pricing Add pvpc electricity prices integration (#32092) 2020-03-22 14:25:31 -05:00
python_script Migrate python_script tests from coroutine to async/await (#30335) 2019-12-31 22:48:43 +01:00
qld_bushfire Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
qwikswitch Sort imports according to PEP8 for components starting with "Q" (#29785) 2019-12-09 14:56:20 +01:00
rachio Add config flow for rachio (#32757) 2020-03-13 22:46:17 -07:00
radarr Add and use bunch of data size and rate related constants (#31781) 2020-02-13 08:52:57 -08:00
rainmachine Fix RainMachine not properly storing data in the config entry (#33002) 2020-03-19 20:54:41 -07:00
random Fix tests & lint 2019-12-04 22:47:40 -08:00
recorder Add a commit interval setting to recorder (#32596) 2020-03-09 17:43:26 -07:00
reddit Sort imports according to PEP8 for components starting with "R" (#29776) 2019-12-09 14:39:51 +01:00
remember_the_milk Be consistent with Home Assistant and Hass.io spelling (#30500) 2020-01-05 14:09:17 +02:00
remote Add state reproduction to remotes (#30990) 2020-01-19 23:08:32 -08:00
rest Use a requests Session for rest sensors (#32463) 2020-03-04 08:32:38 -08:00
rest_command Sort imports according to PEP8 for components starting with "R" (#29776) 2019-12-09 14:39:51 +01:00
rflink Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
rfxtrx Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
ring Remove YAML config from Ring integration (#32039) 2020-02-21 17:36:19 -08:00
rmvtransport Sort imports according to PEP8 for components starting with "R" (#29776) 2019-12-09 14:39:51 +01:00
roku Apply recommendations from roku code review (#32883) 2020-03-17 21:15:41 +01:00
rss_feed_template Migrate collection of component tests from coroutine to async/await (#30504) 2020-01-06 01:22:22 +01:00
safe_mode Add Safe Mode (#30723) 2020-01-14 13:03:02 -08:00
samsungtv Try all Samsung TV websocket ports (#33001) 2020-03-21 16:50:18 +01:00
scene Add unique IDs to automation/scenes (#31150) 2020-01-26 23:01:35 -08:00
script Add icons to scripts (#31899) 2020-02-17 08:44:36 -08:00
search Automation device/entity extraction to include triggers + conditions (#31474) 2020-02-05 16:52:21 +01:00
season Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
sense Add Config Flow for sense (#32160) 2020-02-25 16:37:41 -07:00
sensor Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
sentry Add Sentry component (#30422) 2020-01-03 21:34:20 +01:00
seventeentrack Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
shell_command Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
shopping_list Add config_flow to shopping_list (#32388) 2020-03-06 10:17:30 -08:00
sigfox Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
sighthound Add sighthound timestamped file (#32202) 2020-03-04 17:31:54 -08:00
signal_messenger Support multiple attachments in signal messenger integration (#31141) 2020-02-01 14:21:16 -08:00
simplisafe Add options flow for SimpliSafe (#32631) 2020-03-12 22:00:00 -07:00
simulated Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
sleepiq Sort imports according to PEP8 for sleepiq (#29759) 2019-12-09 13:21:45 +01:00
sma Remove deprecated SMA config (#26306) 2019-08-30 16:41:07 -07:00
smartthings Freeze config entry data (#32615) 2020-03-09 14:07:50 -07:00
smhi Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
smtp Be consistent with Home Assistant and Hass.io spelling (#30500) 2020-01-05 14:09:17 +02:00
snips Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
solaredge Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
solarlog Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
soma Fix Soma integration connection issue (#27692) 2019-12-11 13:27:28 +01:00
somfy Sort imports according to PEP8 for somfy (#29675) 2019-12-09 12:07:10 +01:00
sonarr Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
sonos Sonos services to work without admin access (#31506) 2020-02-05 15:50:20 -08:00
soundtouch Add soundtouch attributes exposing multiroom zone info (#28298) 2020-03-04 17:53:15 -08:00
spaceapi Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
spc Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
splunk Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
spotify Rewrite of Spotify integration (#30717) 2020-01-24 18:47:22 +01:00
sql Move imports in sql component (#27713) 2019-10-20 10:10:27 +02:00
ssdp Include all SSDP data in discovery info (#28197) 2019-12-19 19:28:03 +02:00
starline Sort imports according to PEP8 for starline (#29653) 2019-12-08 21:09:48 +01:00
startca Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
statistics Fix rate of change calculation of statistics sensor (#32597) 2020-03-11 09:33:00 -07:00
statsd move imports in statsd component (#27649) 2019-10-14 14:19:37 -07:00
stream Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
stt Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
sun Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
switch Fix typo: serivce --> service (#31217) 2020-01-27 19:56:26 +01:00
switcher_kis Sort imports according to PEP8 for components starting with "S" (#29777) 2019-12-09 14:38:01 +01:00
system_health Black 2019-07-31 12:25:30 -07:00
system_log Corrected minor misspellings (#32857) 2020-03-16 11:58:12 +01:00
tcp Black 2019-07-31 12:25:30 -07:00
teksavvy Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
tellduslive Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
template Add pending to template alarm (#31614) 2020-03-19 02:38:24 -05:00
tesla Change scan_interval defaults for Tesla (#31194) 2020-01-29 20:15:47 -05:00
threshold Sort imports according to PEP8 for components starting with "T" (#29778) 2019-12-09 14:41:48 +01:00
time_date New date_time_utc display option added to the time_date sensor platform (#30158) 2019-12-23 21:48:24 +01:00
timer Allow input_* and timer component setup without config (#30772) 2020-01-14 22:15:59 -05:00
tod Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
tomato Enable some more bandit checks (#30857) 2020-01-20 18:44:55 +02:00
toon Move imports to top for toon (#29553) 2019-12-06 10:40:38 +01:00
tplink Use PEP 526 syntax with NamedTuples (#33081) 2020-03-21 11:18:32 +02:00
traccar Webhook for Traccar (#24762) 2019-08-10 00:14:03 +02:00
tradfri Don't expose flows that aren't initialised. (#30432) 2020-01-03 17:28:05 +01:00
transmission Make heos and transmission config flow tests more robust (#31783) 2020-02-27 12:19:54 +01:00
transport_nsw Black 2019-07-31 12:25:30 -07:00
trend Sort imports according to PEP8 for components starting with "T" (#29778) 2019-12-09 14:41:48 +01:00
tts Log warning when entities referenced in service call not found (#31427) 2020-02-04 14:42:07 -08:00
twentemilieu Black 2019-07-31 12:25:30 -07:00
twilio Sort imports according to PEP8 for components starting with "T" (#29778) 2019-12-09 14:41:48 +01:00
twitch Add Twitch subscription and additional stats (#31122) 2020-02-18 11:51:37 -08:00
uk_transport Fix flaky coverage in UK transport test (#32053) 2020-02-24 21:27:07 -08:00
unifi Fix zone config (#32963) 2020-03-18 18:14:25 -07:00
unifi_direct Remove deprecated hide_if_away from device trackers (#32705) 2020-03-12 11:55:18 +01:00
universal Use f-strings in integrations starting with "H" - "L" (#32265) 2020-02-28 12:39:29 +01:00
updater Update error handling in update coordinator (#32452) 2020-03-04 08:05:46 -08:00
upnp Upgrade pydocstyle to 5.0.1 (#29830) 2019-12-10 23:25:06 +01:00
uptime Sort imports according to PEP8 for components starting with "U" (#29779) 2019-12-09 19:07:32 +01:00
usgs_earthquakes_feed Sort imports according to PEP8 for components starting with "U" (#29779) 2019-12-09 19:07:32 +01:00
utility_meter Add entity_service calibrate_meter to utility_meter (#32658) 2020-03-11 09:42:22 +01:00
uvc Add RTSP stream support for UVC (Unifi Video Client) integration (#30297) 2020-01-03 11:30:26 +01:00
vacuum Fix typo: serivce --> service (#31217) 2020-01-27 19:56:26 +01:00
velbus Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
vera Use PEP 526 syntax with NamedTuples (#33081) 2020-03-21 11:18:32 +02:00
verisure Entity Component to no longer generate automatic groups (#23789) 2020-01-07 17:30:53 +01:00
version Black 2019-07-31 12:25:30 -07:00
vesync Sort imports according to PEP8 for vesync (#29684) 2019-12-09 11:56:02 +01:00
vilfo Add initial version of Vilfo Router integration (#31177) 2020-02-12 19:11:15 +01:00
vizio Filter out duplicate app names from vizio's source list (#33051) 2020-03-22 17:34:00 +01:00
voicerss Log warning when entities referenced in service call not found (#31427) 2020-02-04 14:42:07 -08:00
vultr Add and use bunch of data size and rate related constants (#31781) 2020-02-13 08:52:57 -08:00
wake_on_lan Sort imports according to PEP8 for components starting with "W" (#29781) 2019-12-09 14:47:53 +01:00
water_heater Sort imports according to PEP8 for components starting with "W" (#29781) 2019-12-09 14:47:53 +01:00
weather Sort imports according to PEP8 for components starting with "W" (#29781) 2019-12-09 14:47:53 +01:00
webhook Various string cleanups (#30435) 2020-01-03 14:47:06 +01:00
webostv Improve state tracking for WebOsTV (#31042) 2020-01-22 19:06:08 +01:00
websocket_api Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
withings Fix Withings timezone test (#32602) 2020-03-09 13:45:39 +01:00
wled Add Wi-Fi sensors to WLED integration (#33055) 2020-03-21 15:14:41 -07:00
workday Add tests for workday sensor (#31832) 2020-03-10 08:53:06 +01:00
worldclock Sort imports according to PEP8 for components starting with "W" (#29781) 2019-12-09 14:47:53 +01:00
wsdot Sort imports according to PEP8 for components starting with "W" (#29781) 2019-12-09 14:47:53 +01:00
wunderground Remove unnecessary string literal concatenations (#30360) 2020-01-02 21:17:10 +02:00
wwlln Validate WWLLN window size in config schema (#32621) 2020-03-09 17:18:39 -06:00
xiaomi Sort imports according to PEP8 for components starting with "X" (#29782) 2019-12-09 14:58:51 +01:00
xiaomi_miio Change nomenclature for Roborock fan speeds (#30614) 2020-01-09 23:49:13 +01:00
yamaha Sort imports according to PEP8 for components starting with "Y" (#29783) 2019-12-09 14:57:42 +01:00
yandex_transport Fix Yandex transport after API change (#32500) 2020-03-07 18:26:35 +01:00
yandextts Log warning when entities referenced in service call not found (#31427) 2020-02-04 14:42:07 -08:00
yessssms Fix typos found by codespell (#31243) 2020-01-31 08:33:00 -08:00
yr Add and use percentage constant (#32094) 2020-02-28 11:46:48 -08:00
yweather Various string cleanups (#30435) 2020-01-03 14:47:06 +01:00
zeroconf Enhance info_from_service function in zeroconf integration (#31059) 2020-01-21 21:24:59 -08:00
zha Refactor ZHA EventChannels (#32709) 2020-03-21 19:59:32 -04:00
zone Fix zone config (#32963) 2020-03-18 18:14:25 -07:00
zwave Allow string values on zwave.set_node_value (#31061) 2020-03-04 17:40:58 -08:00
__init__.py Fix PEP257 issues 2016-03-09 10:25:50 +01:00
conftest.py Extract Collection helper from Person integration (#30313) 2020-01-03 21:37:11 +01:00