Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/home-assistant/core.git. Pull mirroring updated .
  1. Feb 13, 2021
    • Álvaro Fernández Rojas's avatar
    • ollo69's avatar
      Add Asuswrt Config Flow and Scanner Entities (#46468) · f38b06ed
      ollo69 authored
      * Add Asuswrt config flow (#43948)
      
      * Add AsusWrt Scanner Entity (#44759)
      
      * Add Scanner Entity
      
      - device tracker entity changed from "DeviceScanner" to "ScannerEntity"
      - sensors recoded to use "router" class
      - config entry review to allow multiple entity (for future use)
      
      * Force checks
      
      * Removed new option and change sensors
      
      * Update test_sensor.py
      
      * Requested changes
      
      * Removed router unique-id
      
      * Update last_activity attr only when available
      
      * Add Options for AsusWRT Scanner Entity (#44808)
      
      * Add Asuswrt config flow (#43948)
      
      * Add AsusWrt Scanner Entity (#44759)
      
      * Add Scanner Entity
      
      - device tracker entity changed from "DeviceScanner" to "ScannerEntity"
      - sensors recoded to use "router" class
      - config entry review to allow multiple entity (for future use)
      
      * Force checks
      
      * Removed new option and change sensors
      
      * Update test_sensor.py
      
      * Requested changes
      
      * Removed router unique-id
      
      * Update last_activity attr only when available
      
      * Add Options for Scanner Entity
      
      * Fix isort
      
      * Removed "Track New" option
      
      * Add Options for Scanner Entity
      
      * Fix isort
      
      * Removed "Track New" option
      
      * Add test for all the options in the config flow
      f38b06ed
    • Shay Levy's avatar
      6f261a09
    • Shay Levy's avatar
      52c5bc0a
  2. Feb 12, 2021
  3. Feb 11, 2021
    • Joakim Plate's avatar
      Add config flow to philips_js (#45784) · 8dc06e61
      Joakim Plate authored
      
      * Add config flow to philips_js
      
      * Adjust name of entry to contain serial
      
      * Use device id in event rather than entity id
      
      * Adjust turn on text
      
      * Deprecate all fields
      
      * Be somewhat more explicit in typing
      
      * Switch to direct coordinator access
      
      * Refactor the pluggable action
      
      * Adjust tests a bit
      
      * Minor adjustment
      
      * More adjustments
      
      * Add missing await in update coordinator
      
      * Be more lenient to lack of system info
      
      * Use constant for trigger type and simplify
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarJ. Nick Koston <nick@koston.org>
      
      Co-authored-by: default avatarJ. Nick Koston <nick@koston.org>
      8dc06e61
  4. Feb 10, 2021
  5. Feb 06, 2021
  6. Feb 05, 2021
    • functionpointer's avatar
      MySensors config flow (#45421) · c01e01f7
      functionpointer authored
      
      * MySensors: Add type annotations
      
      Adds a bunch of type annotations that were created
      while understanding the code.
      
      * MySensors: Change GatewayId to string
      
      In preparation for config flow.
      The GatewayId used to be id(gateway).
      
      With config flows, every gateway will have its own
      ConfigEntry. Every ConfigEntry has a unique id.
      Thus we would have two separate but one-to-one related ID systems.
      
      This commit removes this unneeded duplication by using the id of the ConfigEntry
      as GatewayId.
      
      * MySensors: Add unique_id to all entities
      
      This allows entities to work well with the frontend.
      
      * MySensors: Add device_info to all entities
      
      Entities belonging to the same node_id will now by grouped as a device.
      
      * MySensors: clean up device.py a bit
      
      * MySensors: Add config flow support
      
      With this change the MySensors can be fully configured from the GUI.
      
      Legacy configuration.yaml configs will be migrated by reading them once.
      Note that custom node names are not migrated. Users will have to re-enter
      the names in the front-end.
      Since there is no straight-forward way to configure global settings,
      all previously global settings are now per-gateway. These settings include:
      - MQTT retain
      - optimistic
      - persistence enable
      - MySensors version
      
      When a MySensors integration is loaded, it works as follows:
      1. __init__.async_setup_entry is called
      2. for every platform, async_forward_entry_setup is called
      3. the platform's async_setup_entry is called
      4. __init__.setup_mysensors_platform is called
      5. the entity's constructor (e.g. MySensorsCover) is called
      6. the created entity is stored in a dict in the hass object
      
      * MySensors: Fix linter errors
      
      * MySensors: Remove unused import
      
      * MySensors: Feedback from @MartinHjelmare
      
      * MySensors: Multi-step config flow
      
      * MySensors: More feedback
      
      * MySensors: Move all storage in hass object under DOMAIN
      
      The integration now stores everything under hass.data["mysensors"]
      instead of using several top level keys.
      
      * MySensors: await shutdown of gateway instead of creating a task
      
      * MySensors: Rename Ethernet to TCP
      
      * MySensors: Absolute imports and cosmetic changes
      
      * MySensors: fix gw_stop
      
      * MySensors: Allow user to specify persistence file
      
      * MySensors: Nicer log message
      
      * MySensors: Add lots of unit tests
      
      * MySensors: Fix legacy import of persistence file name
      
      Turns out tests help to find bugs :D
      
      * MySensors: Improve test coverage
      
      * MySensors: Use json persistence files by default
      
      * MySensors: Code style improvements
      
      * MySensors: Stop adding attributes to existing objects
      
      This commit removes the extra attributes that were being
      added to the gateway objects from pymysensors.
      
      Most attributes were easy to remove, except for the gateway id.
      The MySensorsDevice class needs the gateway id as it is part of its DevId
      as well as the unique_id and device_info.
      Most MySensorsDevices actually end up being Entities.
      Entities have access to their ConfigEntry via self.platform.config_entry.
      
      However, the device_tracker platform does not become an Entity.
      For this reason, the gateway id is not fetched from self.plaform but
      given as an argument.
      
      Additionally, MySensorsDevices expose the address of the gateway
      (CONF_DEVICE). Entities can easily fetch this information via self.platform,
      but the device_tracker cannot. This commit chooses to remove the gateway
      address from device_tracker. While this could in theory break some automations,
      the simplicity of this solution was deemed worth it.
      The alternative of adding the entire ConfigEntry as an argument to MySensorsDevices
      is not viable, because device_tracker is initialized by the async_setup_scanner function
      that isn't supplied a ConfigEntry. It only gets discovery_info.
      Adding the entire ConfigEntry doesn't seem appropriate for this edge case.
      
      * MySensors: Fix gw_stop and the translations
      
      * MySensors: Fix incorrect function calls
      
      * MySensors: Fewer comments in const.py
      
      * MySensors: Remove union from _get_gateway and remove id from try_connect
      
      * MySensors: Deprecate nodes option in configuration.yaml
      
      * MySensors: Use version parser from packaging
      
      * MySensors: Remove prefix from unique_id and change some private property names
      
      * MySensors: Change _get_gateway function signature
      
      * MySensors: add packaging==20.8 for the version parser
      
      * MySensors: Rename some stuff
      
      * MySensors: use pytest.mark.parametrize
      
      * MySensors: Clean up test cases
      
      * MySensors: Remove unneeded parameter from devices
      
      * Revert "MySensors: add packaging==20.8 for the version parser"
      
      This reverts commit 6b200ee01a3c0eee98176380bdd0b73e5a25b2dd.
      
      * MySensors: Use core interface for testing configuration.yaml import
      
      * MySensors: Fix test_init
      
      * MySensors: Rename a few variables
      
      * MySensors: cosmetic changes
      
      * MySensors: Update strings.json
      
      * MySensors: Still more feedback from @MartinHjelmare
      
      * MySensors: Remove unused strings
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * MySensors: Fix typo and remove another unused string
      
      * MySensors: More strings.json
      
      * MySensors: Fix gateway ready handler
      
      * MySensors: Add duplicate detection to config flows
      
      * MySensors: Deal with non-existing topics and ports.
      
      Includes unit tests for these cases.
      
      * MySensors: Use awesomeversion instead of packaging
      
      * Add string already_configured
      
      * MySensors: Abort config flow when config is found to be invalid while importing
      
      * MySensors: Copy all error messages to also be abort messages
      
      All error strings may now also be used as an abort reason,
      so the strings should be defined
      
      * Use string references
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      c01e01f7
  7. Feb 02, 2021
  8. Feb 01, 2021
  9. Jan 31, 2021
  10. Jan 29, 2021
  11. Jan 28, 2021
    • Guido Schmitz's avatar
      Add first set of tests to devolo Home Control integration (#42527) · 8065ece0
      Guido Schmitz authored
      
      * Add first two testcases
      
      * Remove repetition
      
      * Add first two testcases
      
      * Remove repetition
      
      * Add connection error test case
      
      * add test_setup_entry_credentials_valid
      
      * First attempt to use fixtures
      
      * Use markers
      
      * Optimize patch
      
      * Optimize marker use
      
      * Always patch mydevolo
      
      * Add first two testcases
      
      * Remove repetition
      
      * Add first two testcases
      
      * Remove repetition
      
      * Add connection error test case
      
      * add test_setup_entry_credentials_valid
      
      * First attempt to use fixtures
      
      * Use markers
      
      * Optimize patch
      
      * Optimize marker use
      
      * Always patch mydevolo
      
      * Add unload entry test case
      
      * Catch up with reality
      
      * Use unittest patch
      
      * Use core interface to start tests
      
      * Use entry state
      
      * Consistently assert entry state
      
      * Patch class instead of init
      
      Co-authored-by: default avatarMarkus Bong <2Fake1987@gmail.com>
      8065ece0
  12. Jan 27, 2021
  13. Jan 26, 2021
  14. Jan 13, 2021
  15. Jan 11, 2021
  16. Jan 10, 2021
    • Charles Garwood's avatar
      Add zwave_js integration (#45020) · d68fdbc2
      Charles Garwood authored
      
      * Run zwave_js scaffold (#44891)
      
      * Add zwave_js basic connection to zwave server (#44904)
      
      * add the basic connection to zwave server
      
      * fix name
      
      * Fix requirements
      
      * Fix things
      
      * Version bump dep to 0.1.2
      
      * fix pylint
      
      Co-authored-by: default avatarPaulus Schoutsen <balloob@gmail.com>
      
      * Bump zwave-js-server-python to 0.2.0
      
      * Use zwave js server version check instead of fetching full state (#44943)
      
      * Use version check instead of fetching full state
      
      * Fix tests
      
      * Use 0.3.0
      
      * Also catch aiohttp client errors
      
      * Update docstring
      
      * Lint
      
      * Unignore zwave_js
      
      * Add zwave_js entity discovery basics and sensor platform (#44927)
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      Co-authored-by: default avatarPaulus Schoutsen <balloob@gmail.com>
      
      * Complete zwave_js typing (#44960)
      
      * Type discovery
      
      * Type init
      
      * Type entity
      
      * Type config flow
      
      * Type sensor
      
      * Require typing of zwave_js
      
      * Complete zwave_js config flow test coverage (#44955)
      
      * Correct zwave_js sensor device class (#44968)
      
      * Fix zwave_js KeyError on entry setup timeout (#44966)
      
      * Bump zwave-js-server-python to 0.5.0 (#44975)
      
      * Remove stale callback signal from zwave_js (#44994)
      
      * Add light platform to zwave_js integration (#44974)
      
      * add light platform
      
      * styling fix
      
      * fix type hint
      
      * Fix typing
      
      * Update homeassistant/components/zwave_js/const.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Update homeassistant/components/zwave_js/entity.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Update homeassistant/components/zwave_js/entity.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Update homeassistant/components/zwave_js/entity.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Update homeassistant/components/zwave_js/entity.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Update homeassistant/components/zwave_js/entity.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * color temp should be integer
      
      * guard Nonetype error
      
      * Update homeassistant/components/zwave_js/light.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Update homeassistant/components/zwave_js/light.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * some fixes after merging
      
      * add additional guards for None values
      
      * adjustments for rgb lights
      
      * Fix typing
      
      * Fix black
      
      * Bump zwave-js-server-python to 0.6.0
      
      * guard value updated log
      
      * remove value_id lookup as its no longer needed
      
      * fiz sending white value
      
      * Update homeassistant/components/zwave_js/light.py
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      
      * Add zwave_js test foundation (#44983)
      
      * Exclude text files from codespell
      
      * Add basic dump fixture
      
      * Add test foundation
      
      * Fix test after rebase
      
      * Exclude jsonl files from codespell
      
      * Rename fixture file type to jsonl
      
      * Update fixture path
      
      * Fix stale docstring
      
      * Add controller state json fixture
      
      * Add multisensor 6 state json fixture
      
      * Update fixtures
      
      * Remove basic dump fixture
      
      * Fix fixtures after library bump
      
      * Update codeowner
      
      * Minor cleanup Z-Wave JS (#45021)
      
      * Update zwave_js device_info (#45023)
      
      Co-authored-by: default avatarMartin Hjelmare <marhje52@gmail.com>
      Co-authored-by: default avatarMarcel van der Veldt <m.vanderveldt@outlook.com>
      Co-authored-by: default avatarPaulus Schoutsen <balloob@gmail.com>
      d68fdbc2
    • J. Nick Koston's avatar
      Add config flow for somfy_mylink (#44977) · 4b54694c
      J. Nick Koston authored
      * Add config flow for somfy_mylink
      
      * fix typo
      4b54694c
  17. Jan 07, 2021
  18. Jan 04, 2021
    • Mike Keesey's avatar
      Generate switches for harmony activities automatically (#42331) · 60a1948a
      Mike Keesey authored
      * Adding switch code for harmony activities
      
      * Working on-off
      
      * Removing poll code for now
      
      * Async updates for current activity
      
      * Update our state based on events
      
      * Notifications we got connected or disconnected
      
      * Remove unncessary constructor arg
      
      * Initial switch tests
      
      * Additional tests for switch transitions
      
      * Test transitions for availability
      
      * Testing switch state changes
      
      * Tests passing
      
      * Final tests
      
      * Updating manifest.
      
      * Correctly mock the return value from a call to the library
      
      * Adding new subscriber classes
      
      * Update class name and location
      
      * Got the refactor working locally.
      
      * Tests passing
      
      * Tracking state changes
      
      * Remove write_to_config_file - this appears to never be read.
      
      It was added far back in the past to account for a harmony library
      change, but nothing ever reads that path.
      
      Removing that side effect from tests is a pain - avoid the side effect
      completely.
      
      * Connection changes tested
      
      * Clean up temporary code
      
      * Update .coveragerc for harmony component
      
      Specifically exclude untested files instead of the whole module
      
      * Fix linting
      
      * test sending activity change commands by id
      
      * Improving coverage
      
      * Testing channel change commands
      
      * Splitting subscriber logic into it's own class
      
      * Improve coverage and tighten up .coveragerc
      
      * Test cleanups.
      
      * re-add config file writing for harmony remote
      
      * Create fixture for the mock harmonyclient
      
      * Reduce duplication in subscription callbacks
      
      * use async_run_job to call callbacks
      
      * Adding some tests for async behaviors with subscribers.
      
      * async_call_later for delay in marking remote unavailable
      
      * Test disconnection handling in harmony remote
      
      * Early exit if activity not specified
      
      * Use connection state mixin
      
      * Lint fix after rebase
      
      * Fix isort
      
      * super init for ConnectionStateMixin
      
      * Adding @mkeesey to harmony CODEOWNERS
      60a1948a
    • JeromeHXP's avatar
      Add Ondilo ico integration (#44728) · de780c6d
      JeromeHXP authored
      * First implementationof Ondilo component support
      
      * Update manifest toadd pypi pkg dependency
      
      * Update entities name and corrected refresh issue
      
      * Changed percentage unit name
      
      * Corrected merge issues
      
      * Updated coveragerc
      
      * cleaned up code and corrected config flow tests
      
      * Code cleanup and added test for exisitng entry
      
      * Changes following PR comments:
      - Inherit CoordinatorEntity instead of Entity
      - Merged pools blocking calls into one
      - Renamed devices vars to sensors
      - Check supported sensor types
      - Stop relying on array index position for pools
      - Stop relying on attribute position in dict for sensors
      
      * Corrected unit test
      
      * Reformat sensor type check
      de780c6d
  19. Jan 02, 2021
  20. Jan 01, 2021
  21. Dec 30, 2020
  22. Dec 29, 2020
    • rikroe's avatar
      Add Config Flow to bmw_connected_drive (#39585) · e5f31665
      rikroe authored
      
      * Add Config Flow to bmw_connected_drive
      
      * Fix checks for bmw_connected_drive
      
      * Adjust code as requested
      
      * Clean .coveragerc after merge
      
      * Use references for config flow
      
      * Fix execute_service check against allowed accounts
      
      * Adjust translation as username can be email or phone no
      
      * Add BMWConnectedDriveBaseEntity mixin, remove unnecessary type casts
      
      * Use BaseEntity correctly, fix pylint error
      
      * Bump bimmer_connected to 0.7.13
      
      * Adjustments for review
      
      * Fix pylint
      
      * Fix loading notify, move vin to entity attrs
      
      * Remove vin from device registry
      
      * Remove commented-out code
      
      * Show tracker warning only if vehicle (currently) doesn't support location
      
      * Remove unnecessary return values & other small adjustments
      
      * Move original hass_config to own domain in hass.data
      
      * Move entries to separate dict in hass.data
      
      * Remove invalid_auth exception handling & test as it cannot happen
      
      Co-authored-by: default avatarrikroe <rikroe@users.noreply.github.com>
      e5f31665
  23. Dec 28, 2020
  24. Dec 27, 2020
  25. Dec 22, 2020
  26. Dec 16, 2020
  27. Dec 12, 2020
  28. Dec 10, 2020
Loading