* create derivation component
based on integration component
remove left and right
* Update test
(was'n saved)
* add some functionnal point test
* Change derivation to derivative
* Continue migration from derivation to derivative
* Add codeowners info
* fix tests typo and values
* Improve code from reviewer
add test case
fix test values
still a prefix issue that should not
* create derivation component
based on integration component
remove left and right
* Update test
(was'n saved)
* add some functionnal point test
* Change derivation to derivative
* Continue migration from derivation to derivative
* Add codeowners info
* fix tests typo and values
* Improve code from reviewer
add test case
fix test values
still a prefix issue that should not
* Update homeassistant/components/derivative/sensor.py
Fix test issue with unit of measurement
Co-Authored-By: Santobert <tobhaase@gmail.com>
* Fix review
Move ValueError to SyntaxError
* precise state test
* un comment original tests and remove error tests
* Fix isort issue
* Fix review
- update doc link
- migrate to general const import
* Rollback import conf_unit, just defined localy
Co-authored-by: Santobert <tobhaase@gmail.com>
* Store last working HTTP settings
* Add safe mode
* Fix tests
* Add cloud to safe mode
* Update logging text
* Fix camera tests leaving files behind
* Make emulated_hue tests not leave files behind
* Make logbook tests not leave files behind
* Make tts tests not leave files behind
* Make image_processing tests not leave files behind
* Make manual_mqtt tests not leave files behind
* Updated NSAPI to version 3.0.0
* Fixed code style error
* Restructured API access
* Improved construction of attributes
* Fixed handling of API output
* Added @YarmoM as code owner
* Updated CODEOWNERS
* Reverted changes for full backwards compatibility
* Fixed bad conditional
* Simplify conditional
* Refactor to use ids in data class
* Use station_id
* Refactor Netatmo to use oauth
* Remove old code
* Clean up
* Clean up
* Clean up
* Refactor binary sensor
* Add initial light implementation
* Add discovery
* Add set schedule service back in
* Add discovery via homekit
* More work on the light
* Fix set schedule service
* Clean up
* Remove unnecessary code
* Add support for multiple entities/accounts
* Fix MANUFACTURER typo
* Remove multiline inline if statement
* Only add tags when camera type is welcome
* Remove on/off as it's currently broken
* Fix camera turn_on/off
* Fix debug message
* Refactor some camera code
* Refactor camera methods
* Remove old code
* Rename method
* Update persons regularly
* Remove unused code
* Refactor method
* Fix isort
* Add english strings
* Catch NoDevice exception
* Fix unique id and only add sensors for tags if present
* Address comments
* Remove ToDo comment
* Add set_light_auto back in
* Add debug info
* Fix multiple camera issue
* Move camera light service to camera
* Only allow camera entities
* Make test pass
* Upgrade pyatmo module to 3.2.0
* Update requirements
* Remove list comprehension
* Remove guideline violating code
* Remove stale code
* Rename devices to entities
* Remove light platform
* Remove commented code
* Exclude files from coverage
* Remove unused code
* Fix unique id
* Address comments
* Fix comments
* Exclude sensor as well
* Add another test
* Use core interfaces
* Split async_update
* Use pytest parameters to avoid duplicate code
* Fix UnboundLocalError
* Test error rendering for template state
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Add pilight dimmer as light component
* fix CI errors
* fix missing new lines
* improve formatting and addresses comments of @springstan
* rename config parameter and remove super() call to match pylint
* import only used constants of the pilight component
* Add myself to the code owners
* fix CODEOWNERS
* add surepetcare
* cleanup
* remove unused imports and comments
* remove comment
* fix bug which prevented updating the sensors
* improve config validation
* fix voluptuous usage
* fix format & credential storage
* various fixes to hass-conform
* small format fixes
* change False to None
* still trying to be hass-conform
* remove unused class
* fix imports
* fix f-string
* add guard clause?!
* central data fetch
* do not pass in hass, will be provided automatically
* make the linters happy
* disable constant-test warning and add commas
* worksforme
* fix link in manifest
* remove icon
* bump surepy to 0.1.5
* worksforme
* small doc fixes
* add discovery_info guard
* result of another awesome review
* and again :)
* exclude surepetcare in .coveragerc
* add KEF speakers platform for the integration
This will work with the KEF LS50 Wireless and KEF LSX speakers.
The development of this code happened on https://github.com/basnijholt/media_player.kef
* rename DATA_KEF -> DOMAIN
* use aiokef v0.2.0 and support LSX and new features
* sort imports
* fix @MartinHjelmare's suggestions
* remove _CONFIGURING
* change STATE_UNKNOWN to None
* use lat and long for unique_id
* bump aiokef to v0.2.2
* use config[ATTR] instead of config.get(ATTR)
* use getmac
* fix case when MAC is None
* use host as instance lifetime id
* fix requirements
* Added localip component
* Split config and core logic, and migrate to sensor platform (requested by @MartinHjelmare)
Also allow overriding the sensor name via the config
* Tweak docstring
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* Initial support for config entries
* Rename localip to local_ip (1/2)
* Rename localip to local_ip (2/2)
* Add test for config_flow
* Split and rename tests
* Remove unneeded code from config_flow
* Implement configuration as config entry import. Other misc requested changes from code review.
* Fix tests
* minor code review fixes
* remove unneeded code
Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
* Add support for HobbyBoards sensors: Hub, Humidity, Moisture, PulseCounter
Add support for an owserver running on a remote host
* Cleanup and fixes for style/etc
* Forgot to convert to f-strings.
* Update with changes requested by @MartinHjelmare
* Pylint
* Fix to None
* Reverse logic for hobbyboard test to eliminate pylint complaint
* Modified manifest to list myself as codeowner
* Move some functions down into OneWireProxy instead of the top OneWire
* Oops, missed some decode()'s
* And another!
* iCloud: setup ConfigFlow and prepare for more platforms
- add config flow + tests
- fix existing services
- add play_sound & display_message services
- document services
- can use devices with the same name
- prepare to add sensor platform
* Review : not copy account conf
* Review: Safer test patch
* Review: remove reset_account
* Review: Use executor_job while IO
* Review: Use executor_job while IO 2
* Review: use hass.helpers.storage.Store()
* Review: no IO in tests
* Remove reset from services.yaml
* Review: remove authenticate.return_value = Mock()
* Review: do not initialize the api with the mocked service
* isort
* Review: @MartinHjelmare Test config flow with all steps
* Review: Fix failed tests names
* Codevov: Add one missing test
* added signalmessenger integration
* allows to send a message (with an attachment) to one or more
recipients
* added signalmessenger documentation to manifest file
* remove debug logging from signalmessenger integration
* add signalmessenger to .coveragerc
* fixed typo in signalmessenger manifes
* moved service specific code to own pypi library
* updated pysignalclirestapi dependeny in manifest.json
* added pysignalclirestapi requirement for signalmessenger component
* fixed typo in codeowners
* reworked signalmessenger integration based on code review input
* updated requirements for signalmessenger
* small code improvements in signalmessenger integration
* no need to use the get() method to access dict parameters that are
required
* small changes in signalmessenger integration
* re-ordered import statements
* removed empty "requirements" list (not needed)
* changed import order in signalmessenger integration according to PEP 8
* used isort to order includes in signalmessenger integration
* renamed signalmessenger to signal_messenger
* renamed signalmessenger to signal_messenger in CODEOWNERS file
* changed documentation url in signal_messenger integration to new name
* changed signal messenger naming in .coveragerc
* Add Elgato Key Light integration
* Remove passing in of hass loop
* Tweaks a comment
* Tweaks a function name
* Ensure domain namespace in data exists in entry setup
* Updated heatmiserV3 initial commit
* Fixing heatmiser component
* Updated codeowners and heatmiserV3 version
* Updating files as part of PR process
* Removed extra _LOGGER statements.
* Added in HVAC_MODE_OFF to allowed states to track whether heating on/off
* Handling PR comments
* Removed legacy tests
* fixing pylint errors
* Update homeassistant/components/heatmiser/climate.py
Removed .get from config
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/heatmiser/climate.py
Removed .get from config
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/heatmiser/climate.py
Removed .get from config
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
* Updated climate based on latest feedback
* Removed cast to int and update requirements
* Update requirements
* Updated heatmiser deps
* Add broadlink remote control platform
* Fix order of the imports
* Add remote.py to .coveragerc
* Optimize MAC address validation
* Use storage helper class and improve code readability
* Add me to the manifest as a code owner
* Fix dosctring
* Add me to the code owners
* Remove storage schemas, rename storage keys and improve readability
* Add ATEN PE component for ATEN eco PDUs
* aten_pe: Require host configuration
* aten_pe: Do not import from other integrations
* aten_pe: Include unnamed outlets
* aten_pe: Avoid get() for config entries having default values
* aten_pe: Fix documentation URI
* aten_pe: Remove unused return value
* aten_pe: Update atenpdu lib to 0.2.0 for asyncio
* aten_pe: Raise exception if initialization fails
* aten_pe: Update atenpdu lib to 0.3.0 for improved exception handling
* Added DSMR Reader platform
- Added DSMR Reader platform
- Updated codeowners for other components I added earlier
* Move sensor definitions to new file
* Sensor definitions in new file
* Add energy prices from MQTT
* lint fixes
* Black formatted some files
* Update .coveragerc
* Support transform methods on definitions
* Manifest mangled by Black, fixed
* Visual studio code reformatting dictionary error
* Fix issues with code, remove unrelated manifest changes
* Update CODEOWNERS
Although I originally contributed this component, I no longer use it myself and haven't been following the internal development of HA, so I'm no longer a good person to review any further changes to this component. I would therefore like to relinquish my CODEOWNER status over this component.
* Add Flume Sensor
Add support for Flume API and sensor
* Add support for choosing timezone
Timezone is now a required option in configuration.yaml
* Add Flume to coveragerc and CODEOWNERS
Add flume to be ommited from testing. Add @ChrisMandich as Flume Code owner
* Revert "Add Flume to coveragerc and CODEOWNERS"
This reverts commit 0b27437a3b.
* Update manifest.json
Added Documentation URL for Flume to HASS.IO
* Update manifest.json
Added missing Newline at EOF.
* Update sensor.py
Update sensor to not required Device ID for configuration. Now loops through all available Type 2 devices and adds them as an entity.
* Update Manifest, CODEOWNERS, and manifest.json
Resolved errors related to code owners and requirements. Using hassfest and gen_requirements_all
* Update sensor.py
Implemented recommendations from @Quentame. Including time zone from Home Assistant, Updated variable names, and Consolidated duplicate functions.
* Implemented suggested changes from @Quentame
This includes: components name, using f-strings instead of concat, snake_case for variables, constants for the addition of future device types, clearer errors, and removed variables no longer in use.
* Update sensor.py
Restored unit_of_measurement. Updated return to "gal".
* Address pylint errors
* Update sensor.py
Include protected attributes in setup_platform.
* Address Pylint errors
homeassistant/components/flume/sensor.py:63:11: W0703: Catching too general exception Exception (broad-except)
homeassistant/components/flume/sensor.py:133:8: R1720: Unnecessary "else" after "raise" (no-else-raise)
homeassistant/components/flume/sensor.py:162:8: R1705: Unnecessary "else" after "return" (no-else-return)
homeassistant/components/flume/sensor.py:236:8: R1720: Unnecessary "else" after "raise" (no-else-raise)
* Update sensor.py
I'm okay with the broad exception clause.
homeassistant/components/flume/sensor.py:65:11: W0703: Catching too general exception Exception (broad-except)
* Update sensor.py
Add more specific exceptions for Try/Except.
* Update Flume Sensory.py
add requirements, exclude from tests, us pyflume pypi package.
* Update sensor.py to support latest pyflume package
* Update manifest
provide better flow of manifest and easier readibility.
* Update manifest.json
Reccomended by @balloob as it is already a core requirement
* Update sensor.py
Add proposed changes from @balloob
* Update requirements_all.txt
pytz is a core dependency, removing flume's requirement for it.
* Update sensor.py
Added @MartinHjelmare recommended changes.
* Update sensor.py
Resolving PyLint error
* Update sensor.py
Remove `KeyError`. Add length check for flume entity list before adding.
* Update sensor.py
* Update pyflume version
* Update imports with isort
* Add line break between standard library and thirdparty imports.
* Remove throttle from sensor.py
* Added the Proxmox VE integration
* Fixed code as described in PR #27315
* Fixed small linting error
* Fix code as described in PR #27315 code review
* Improve code as described in PR #27315
* Add component VersaSense
* Updates based on review
* Changes based on review
* Fixed whitespace
* Fixed lines too long
* Fixed lines too long
* Formatted using black
* Added available property
* Set unavailable property appropriately
* Conversion to f-strings
* Load platform only once per platform
* Fixed duplicate identifiers across multiple devices
* Single call to async_add_entities during setup
* Removed unnecessary async/await syntax
* Added constants for key-value pairs
* Removed async/await syntax
* Added breaks in measurement check
* Added guard clause for discovery_info
* first version of new integration
* moved icon to shared consts
* added unit tests
* transformed from geolocation to sensor integration
* alert level is now the state of the sensor
* adopted unit tests
* fixed comment
* keep all sensors registered even if the feed update fails intermittently
* bumped version of upstream library
* bumped version of integration library
* regenerated requirements
* bumped version of integration library
* bumped version of integration library
* fixed generated file
* removed commented out code
* regenerated config flow file
* update to latest integration library version
* simplified code
* removed debug log statement
* simplified code structure
* defined constant
* use core interfaces
* moved test and fixture
* sorted imports
* simplified patching
* moved fixture to central config file
* First commit
* First working release, but there's a lot to do
* Added support for preset_modes
* Refined logic
* Added translations for config_flow
* Updated translations
* modified: homeassistant/components/hisense_aehw4a1/climate.py
* modified: climate.py
* Updated library to latest version
* Small changes
* Null states when AC off
* Minor fixes
* Latest updates for TOX
* First commit
* First working release, but there's a lot to do
* new file: requirements_test_all.txt
* Added support for preset_modes
* Refined logic
* Added translations for config_flow
* Updated translations
* modified: homeassistant/components/hisense_aehw4a1/climate.py
* modified: climate.py
* Updated library to latest version
* Small changes
* Null states when AC off
* Minor fixes
* Latest updates for TOX
* new file: requirements_test_all.txt
* Fighting with tox
* vs Tox round 2
* Isort and updated requirements_test_all.txt
* Fighting with lint
* Implemented available state
* Changed exception type after Travis-ci pylint fails
* Support entry in configuration.yaml
* Removed commented code
* Switched to async
* Minor changes
* Updated library and fixed pylint errors
* Code optimization
* Implemented static ip addresses in configuration.yaml
* Reverted to existing constant
* Corrected pylint wrong-import-order
* Recovery from nuke event (messing all while rebase)
* Resolved Ci error
* Changes for PR
* Corrected temp scale for frontend
* Added test for config entry from configuration.yaml
* Updated dependency
* Check on manual config
* Imported custom exceptions and modified import config
* Optimized
* Change based on PR revision
* Added logging for failure event on manual config
* Tests added but to be corrected
* Edited tests
* Tests updated to ensure no I/O
* Working on tests
* Cheanges based on revision for PR
* Setting librey exception as direct side_effect in test
* Final changes for PR
* Redundand on command solved
* Improved AC logic
* Add azure servicebus notify service
* files added to .coveragerc
* fix: import content type from const
* Moved imports to top level
* Code review fixes
+ added code owner
+ fixed config validation with has at least one
+ seperate attributes for dto to asb
* fixed doc link
* async setup instead of sync
* rename all the things
- removed too many ifs
* changed setup back to sync
+ comment about sync IO in lib
* More informative logging
* logging exception -> error
* Add WLED integration
* Use f-string for uniq id in sensor platform
* Typing improvements
* Removes sensor & light platform
* Remove PARALLEL_UPDATES from integration level
* Correct type in code comment 'themselves'
* Use async_track_time_interval in async context
* Remove stale code
* Remove decorator from Flow handler
* Remove unused __init__ from config flow
* Move show form methods to sync
* Only wrap lines that can raise in try except block
* Remove domain and platform from uniq id
* Wrap light state in bool object in is_on method
* Use async_schedule_update_ha_state in async context
* Return empty dict in device state attributes instead of None
* Remove unneeded setdefault call in setup entry
* Cancel update timer on entry unload
* Restructure config flow code
* Adjust tests for new uniq id
* Correct typo AdGuard Home -> WLED in config flow file comment
* Convert internal package imports to be relative
* Reformat JSON files with Prettier
* Improve tests based on review comments
* Add test for zeroconf when no data is provided
* Cleanup and extended tests
* convert keyboard_remote to async and add possibility to trigger on multiple event types, as well as emulate key hold events
* update requirements
* cleanup shutdown handling and config handling as well as address other minor comments
* cleanup unused return values and debug message formatting
* move start and stop event listen to separate coroutine plus minor cleanup
* make setup coroutine a function
* fix import order and attribute defined outside of init
* add to codeowners
* update codeowners
* added automatic protocol detection
* fix logger tests
* fix async tests
* add missin const.py
* fix log formatting
* wait for first update call
* migrate first tests
* migrated all test functions
* started to use state machine
* updated all tests to use async_setup_component
* slove hints
* update tests
* get state at correct position
* remove impossible tests
* fix autodetect tests
* use caplog fixture
* add test for duplicate
* catch concrete exceptions
* don't mock samsungctl exceptions
* add test for discovery
* get state when possible
* add test for autodetect without connection
* Added Unifi Led
* fixed manifest
* fixed style issue
* removed unused setting
* added sugested changes.
* fixed order
* fixed settings that are required
* Fix review issues
* fix variable name that was too short
* Testing something
* Reverted to a previous version for testing
* Reverted testing changes.
* Added sinch integration (notify component)
* Updated requirements
* Fixes according to lint
* Update homeassistant/components/sinch/notify.py
Co-Authored-By: Andrew Sayre <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/sinch/notify.py
Co-Authored-By: Andrew Sayre <6730289+andrewsayre@users.noreply.github.com>
* Update homeassistant/components/sinch/notify.py
Co-Authored-By: Andrew Sayre <6730289+andrewsayre@users.noreply.github.com>
* Adds @bendikrb as codeowner
* Imports to the top. Catching specific exceptions. Logic fixes
* Updated CODEOWNERS
* Reformatting (black)
* Added sinch component to .coveragerc
* Conform to pylintrc
* Okay, Mr. Black
* Fixed: Catching too general exception Exception
* New sensor platform integration for Orange and Rockland Utility smart energy meter
* New sensor platform integration for Orange and Rockland Utility smart energy meter
* bumped the oru py version to 0.1.9
* Added PLATFORM_SCHEMA
Adde unique_id property
Changed logger level from info to debug when printing the updated sensor value
Set the SCAN_INTERVAL to 15 mins
Added exception handling durin init when creating the oru meter instance
* Various fixes base on the PR review
+ Added SCAN_INTERVAL for 15 mins
* fixed path to documentation
* Added apprise notification component
* flake-8 fixes; black formatting + import merged to 1 line
* pylint issues resolved
* added github name to manifest.json
* import moved to top as per code review request
* manifest formatting to avoid failing ci
* .coveragerc updated to include apprise
* removed block for written tests
* more test coverage
* formatting as per code review
* tests converted to async style as per code review
* increased coverage
* bumped version of apprise to 0.8.1
* test that mocked entries are called
* added tests for hass.service loading
* support tags for those who identify the TARGET option
* renamed variable as per code review
* 'assert not' used instead of 'is False'
* added period (in case linter isn't happy)
* Adds support for config entries and device registry
* Fixing string formatting for logger
* Add unit test for abode config flow
* Fix for lights, only allow one config, add ability to unload entry
* Fix for subscribing to hass_events on adding abode component
* Several fixes from code review
* Several fixes from second code review
* Several fixes from third code review
* Update documentation url to fix branch conflict
* Fixes config flow and removes unused constants
* Fix for switches, polling entry option, improved tests
* Update .coveragerc, disable pylint W0611, remove polling from UI
* Multiple fixes and edits to adhere to style guidelines
* Removed unique_id
* Minor correction for formatting error in rebase
* Resolves issue causing CI to fail
* Bump abodepy version
* Add remove device callback and minor clean up
* Fix incorrect method name
* Docstring edits
* Fix duplicate import issues from rebase
* Add logout_listener attribute to AbodeSystem
* Add additional test for complete coverage
* Add PTZ support to Foscam camera component
* Address review comments:
- Move service to foscam domain
- Use `dict[key]` for required schema keys or with defaults
- Fix sync operations in async context
- Remove excessive logging
* Fix import order
* Move all the initialization to setup_platform and fix motion detection status logic
* Move function dictionary out of the function.
* Change user input to lowercase snake case
* Change user input to lowercase snake case
* Fix service example value
* Omit foscam const module from code coverage tests
* Add myself to foscam codeowners
* initial commit
* Minor changes
* add async setup entry
* Add translations and some other stuff
* add and remove entry
* use async_setup_entry
* Update config_flows.py
* dshokouhi's changes
* Improve workflow
* Add valid_vendors
* Add entity registry
* Add device registry
* Update entry from configuration.yaml
* Revert unneccesary changes
* Update .coveragerc
* Prepared tests
* Add dshokouhi and Santobert as codeowners
* Fix unload entry and abort when already_configured
* First tests
* Add test for abort cases
* Add test for invalid credentials on import
* Add one last test
* Add test_init.py with some tests
* Address reviews, part 1
* Update outdated entry
* await instead of add_job
* run IO inside an executor
* remove faulty test
* Fix pylint issues
* Move IO out of constructur
* Edit error translations
* Edit imports
* Minor changes
* Remove test for invalid vendor
* Async setup platform
* Edit login function
* Moved IO out if init
* Update switches after added to hass
* Revert update outdated entry
* try and update new entrys from config.yaml
* Add test invalid vendor
* Default to neato
* Add saj component
* Performed requested changes after review
* Performed requested changes after review 2
* Performed requested changes after review 3
* Black
* Bump pysaj library version
* Changes after review
* Fix flake8
* Review changes + isort
* Add Soma integration
* Fixed cover position get/set
* Try to list devices before creating config entries to see if Soma Connect can be polled
* Style fixes
* Updated requirements
* Updated .coveragerc to ignore Soma component
* Fixed linter errors
* Implemented stop command
* Test coverage fixes according to feedback
* Fixes to code according to feedback
* Added error logging and tested config from yaml
* Indentation fix
* Removed unnecessary method
* Wrong indentation
* Added some tests
* Added test for import step leading to entry creation
* Added feedback to user form in case of connection error
* Minor fixes according to feedback
* Changed exception type in error handling for connection to Connect
* To keep API consistent for Google Home and Alexa we swapped the open/closed position values back and I reversed them in this integration as well
* regenerated requirements, ran black, addde __init__.py to ignore file
* Added pysoma library to gen_requirements_all.py
* Added missing test case
* removed useless return value
* Add xbox_live custom update schedule
* Set a default update interval that is within the free limit. Consider
number of users per api key when setting interval.
* Add codeowner
* Add callback decorator
* Update pyrainbird to version 0.2.0 to fix zone number issue:
- home-assistant/home-assistant/issues/24519
- jbarrancos/pyrainbird/issues/5
- https://community.home-assistant.io/t/rainbird-zone-switches-5-8-dont-correspond/104705
* requirements_all.txt regenerated
* code formatting
* pyrainbird version 0.3.0
* zone id
* rainsensor return state
* updating rainsensor
* new version of pyrainbird
* binary sensor state
* quiet in check format
* is_on instead of state for binary_sensor
* no unit of measurement for binary sensor
* no monitored conditions config
* get keys of dict directly
* removed redundant update of state
* simplified switch
* right states for switch
* raindelay sensor
* raindelay sensor
* binary sensor state
* binary sensor state
* reorganized imports
* doc on public method
* reformatted
* add irrigation service to rain bird, which allows you to set the duration
* rebased on konikvranik and solved some feedback
* add irrigation service to rain bird
* sensor types to constants
* synchronized register service
* patform discovery
* binary sensor as wrapper to sensor
* version 0.4.0
* new config approach
* sensors cleanup
* bypass if no zones found
* platform schema removed
* Change config schema to list of controllers
some small code improvements as suggested in CR:
- dictionary acces by []
- just return instead of return False
- import order
- no optional parameter name
* some small code improvements as suggested in CR:
- supported platforms in constant
- just return instead of return False
- removed unused constant
* No single controller configuration
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* pyrainbird 0.4.1
* individual switch configuration
* imports order
* generate default name out of entity
* trigger time required for controller
* incorporated CR remarks:
- constant fo rzones
- removed SCAN_INTERVAL
- detection of success on initialization
- removed underscore
- refactored if/else
- empty line on end of file
- hass as first parameter
* import of library on top
* refactored
* Update homeassistant/components/rainbird/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* validate time and set defaults
* set defaults on right place
* pylint bypass
* iterate over values
* codeowner
* reverted changes:
* irrigation time just as positive integer. Making it complex does make
sense
* zone edfaults fullfiled at runtime. There is no information about
available zones in configuration time.
* codeowners updated
* accept timedelta in irrigation time
* simplified time calculation
* call total_seconds
* irrigation time as seconds.
* simplified schema
* Add basic config flow
* Fix json files
* Update __init__.py
* Fix json errors
* Move constants to const.py
* Add ecobee to generated config flows
* Update config_flow for updated API
* Update manifest to include new dependencies
Bump pyecobee, add aiofiles.
* Update constants for ecobee
* Modify ecobee setup to use config flow
* Bump dependency
* Update binary_sensor to use config_entry
* Update sensor to use config_entry
* Update __init__.py
* Update weather to use config_entry
* Update notify.py
* Update ecobee constants
* Update climate to use config_entry
* Avoid a breaking change on ecobee services
* Store api key from old config entry
* Allow unloading of config entry
* Show user a form before import
* Refine import flow
* Update strings.json to remove import step
Not needed.
* Move third party imports to top of module
* Remove periods from end of log messages
* Make configuration.yaml config optional
* Remove unused strings
* Reorganize config flow
* Remove unneeded requirement
* No need to store API key
* Update async_unload_entry
* Clean up if/else statements
* Update requirements_all.txt
* Fix config schema
* Update __init__.py
* Remove check for DATA_ECOBEE_CONFIG
* Remove redundant check
* Add check for DATA_ECOBEE_CONFIG
* Change setup_platform to async
* Fix state unknown and imports
* Change init step to user
* Have import step raise specific exceptions
* Rearrange try/except block in import flow
* Convert update() and refresh() to coroutines
...and update platforms to use async_update coroutine.
* Finish converting init to async
* Preliminary tests
* Test full implementation
* Update test_config_flow.py
* Update test_config_flow.py
* Add self to codeowners
* Update test_config_flow.py
* Use MockConfigEntry
* Update test_config_flow.py
* Update CODEOWNERS
* pylint fixes
* Register services under ecobee domain
Breaking change!
* Pylint fixes
* Pylint fixes
* Pylint fixes
* Move service strings to ecobee domain
* Fix log message capitalization
* Fix import formatting
* Update .coveragerc
* Add __init__ to coveragerc
* Add option flow test
* Update .coveragerc
* Act on updated options
* Revert "Act on updated options"
This reverts commit 56b0a859f2e3e80b6f4c77a8f784a2b29ee2cce9.
* Remove hold_temp from climate
* Remove hold_temp and options from init
* Remove options handler from config flow
* Remove options strings
* Remove options flow test
* Remove hold_temp constants
* Fix climate tests
* Pass api key to user step in import flow
* Update test_config_flow.py
Ensure that the import step calls the user step with the user's api key as user input if importing from ecobee.conf/validating imported keys fails.
* Add here_travel_time
* Bump herepy version to 0.6.2
* Update requirements_all.txt
* Disable pylint and catch errors
* Add herepy to requirements_test_all
* Correctly place test req for herepy
* use homeassistant.const.LENGTH_METERS
* Implemented Requested Changes
* Better error message for cryptic error code
* add requested changes
* add_entities instead of async
* Add route attr and distance in km instead of m
* fix linting errors
* attribute duration in minutes instead of seconds
* Correct pattern for longitude
* dont split attribute but rather local var
* move strings to const and use travelTime
* Add tests
* Add route for pedestrian and public
* fix public transport route generation
* remove print statement
* Standalone pytest
* Use hass fixture and increase test cov
_resolve_zone is redundant
* Clean up redundant code
* Add type annotations
* Readd _resolve_zone and add a test for it
* Full test cov
* use caplog
* Add origin/destination attributes
According to https://github.com/home-assistant/home-assistant/pull/24956
* Add mode: bicycle
* black
* Add mode: publicTransportTimeTable
* Fix error for publicTransportTimeTable
Switch route_mode and travel_mode in api request.
* split up config options
* More type hints
* implement *_entity_id
* align attributes with google_travel_time
* route in lib
apply requested changes
* Update requirements_all.txt
* remove DATA_KEY
* Use ATTR_MODE
* add attribution
* Only add attribution if not none
* Add debug log for raw response
* Add _build_hass_attribution
* clearer var names in credentials check
* async _are_valid_client_credentials
* Add Ombi integration
* Black
* Remove trailing comma
* Change dict.get to dict[key] for known keys
* Remove monitored conditions from config
* Define SCAN_INTERVAL for default scan interval
* Adjust requests syntax and add music_requests
* Remove Ombi object initialization
* Move constants to const.py
* Fix imports
* Set pyombi requirement to version 0.1.3
* Add services.yaml
* Add config schema and setup for integration
* Set pyombi requirement to version 0.1.3
* Fix syntax for scan interval
* Fix datetime import
* Add all files from ombi component
* Move imports around
* Move imports around
* Move pyombi import to top of module
* Move scan_interval to sensor module
* Add custom validator for urlbase
* Add guard clause for discovery_info
* Add service validation schemas and constants
* Bump pyombi version
* Adjust urlbase validation
* Add exception warnings for irretrievable media
* Bump pyombi
* Change from .get to dict[key]
* Change schema and conf variable names
* Set return to return false
* Remove unneeded return
* making SENSOR_TYPES universal
* bump solaredge-local version 0.2.0
* add maintenance data
* add calculations for optimizer data
* add new sensors
* add statistics lib
* update sensor data setting
* making api requests universal
* fix Cl
* Update requirements_all.txt
* fix temperature
* fix f-strings
* Style guidelines
* shortening line length
* PEP8 test
* flake8
* Black test
* revert line length to 80
* Repair line 12
* black
* style change
* Black
* black using pip
* fix for pylint
* added proper variable name
* for loop cleanup
* fix capitals
* Update units
* black
* add check for good connection to inverter
* Roundig large numbers
* Add myself to codeowners
* Fix layout manifest
* Fix layout manifest
* Update manifest.json
* repair manifest layout
* remove newline in manifest
* add myself to CODEOWNERS
* adding feature obtaining Moscow transport data from maps.yandex.ru api
* extracting the YandexMapsRequester to pypi
* fix code review comments
* fix stop_name, state in datetime, logger formating
* fix comments
* add docstring to init
* rename, because it works not only Moscow, but many another big cities in Russia
* fix comments
* Try to solve relative view in sensor timestamp
* back to isoformat
* add tests, update external library version
* flake8 and black tests for sensor.py
* fix manifest.json
* update tests, migrate to pytest, async, Using MockDependency
* move json to tests/fixtures
* script/lint fixes
* fix comments
* removing check_filter function
* fix typo
* up version on manifest.json
* up version to 0.3.7 in requirements_all.txt
* adding feature obtaining Moscow transport data from maps.yandex.ru api
* extracting the YandexMapsRequester to pypi
* fix code review comments
* fix stop_name, state in datetime, logger formating
* fix comments
* add docstring to init
* rename, because it works not only Moscow, but many another big cities in Russia
* fix comments
* Try to solve relative view in sensor timestamp
* back to isoformat
* add tests, update external library version
* flake8 and black tests for sensor.py
* fix manifest.json
* update tests, migrate to pytest, async, Using MockDependency
* move json to tests/fixtures
* script/lint fixes
* fix comments
* removing check_filter function
* fix typo
* iZone component
* Rename constants to const.
* Changes as per code review.
* Stop listening if discovery times out.
* Unload properly
* Changes as per code review
* Climate 1.0
* Use dispatcher instead of listener
* Free air settings
* Test case for config flow.
* Changes as per code review
* Fix error on shutdown
* Changes as per code review
* Lint fix
* Black formatting
* Black on test
* Fix test
* Lint fix
* Formatting
* Updated requirements
* Remaining patches
* Per code r/v
* Added growatt server integration
* Ran black formatter
* Processed feedback.
* Made attributes more readable.
* Create a sensor for each property.
* Added unique_ids
* Accidentally flipped functions
* Added dynamic device classes.
* Fixed stale session.
* Import new iaqualink component with climate platform.
* Style and unittest changes, fix async_step_import.
* Reorder imports.
* Fix stale doctstrings and add unittest.
* Atome sensor platform - provides live data from Linky energy meters with Atome device from Total/Direct energie
* Proper requirements, added code ownership
* Do not cover atome component
* Proper PEP8 import, proper use of const, added missing docstring etc
* Proper PEP8 import, proper use of const, added missing docstring etc
* Integrate recommendations from MartinHjelmare
* Init shall remain as clean as possible, we don't want side effect
* Add daily,weekly,monthly,yearly sensors. Now depends on pyatome 0.1
* Requirements regenerated for atome component
* Refactored the way we update sensors
* Removed some un-necessary returns and unused variable
* Add support GoSlide cover
* Fixed Parameters differ from overridden
Fixed Removed other pylint warnings
* Renamed GoSlide to Slide, because of Innovation in Motion rebranding
* Fixed codeowners file
* Fixed requirements file
* Removed pylint: disable=unused-argument
Removed DOMAIN not exist check
Changed if to min/max
Changed 3rd party import to top of the module
Removed timeout/retry parameters
Removed unused constants
Added check for discovery_info is none
Changed pass slide object instead of full hass object
Changed pass api object instead of full hass object
Added unique_id functionality
Removed entity_id/name properties
Removed supported_features/state functions
* Fixed unused variables
* Changed Slide API uses snake names
Changed Improved exception handling
Changed Updated Slide API to 0.50.0
* Changed moved exceptions into goslide-api
Changed retry setup into coroutine
* Changed str(err) to err
Changed invert if result to if not result
* Enable cert_expiry config entries
* add black
* lint fixes
* Rerun black
* Black on json files is a bad idea
* Work on comments
* Forgot the lint
* More comment work
* Correctly set defaults
* More comments
* Add codeowner
* Fix black
* More comments implemented
* Removed the catch
* Add helper.py from cert_expiry to .coveragerc
* Add nws weather.
* Hassfest
* Address multiple comments
* Add NWS icon weather code link
* Add metar fallback.
Use metar code from nws observation if normal api is missing data.
* only get 1 observation - we dont use more than 1
* add mocked metar for tests
* lint
* mock metar package for all tests
* add check for metar attributes
* catch errors in setup
* add timeout error
* handle request exceptions
* check and test for missing observations
* refactor to new pynws
* change to simpler api
* Make py3.5 compatible
Remove f string
* bump pynws version
* gen_requirements
* fix wind bearing observation
* Revert "Make py3.5 compatible"
This reverts commit 4946d91779.
* Precommit black missed a file?
* black test
* add exceptional weather condition
* bump pynws version
* update requirements_all
* address comments
* move observation and forecast outside try-except-else
* Revert "move observation and forecast outside try-except-else"
This reverts commit 53b78b3283.
* remove else from update forecast block
* remove unneeded ConfigEntryNotReady import
* add scan_interval, reduce min_time_between_updates
* pytest tests
* lint test docstring
* use async await
* lat and lon inclusive in config
* Add Keba charging station wallbox component
* Added start/stop commands (ena 0 and ena 1)
* added refresh_interval parameter and fixed authorization
* fixed max line length
* deactivate failsafe mode if not set in configuration
* extracted I/O code to pypi library
* updated services.yaml
* pinned version of requirements
* fixed typos, indent and comments
* simplified sensor generation, fixed unique_id and name of sensors
* cleaned up data extraction
* flake8 fixes
* added fast polling, fixed unique_id, code cleanup
* updated requirements
* fixed pylint
* integrated code styling suggestions
* fixed pylint
* code style changes according to suggestions and pylint fixes
* formatted with black
* clarefied variables
* Update homeassistant/components/keba/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* Update homeassistant/components/keba/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* Update homeassistant/components/keba/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* Update homeassistant/components/keba/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* fixed behaviour if no charging station was found
* fix pylint
* Update homeassistant/components/keba/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* initial working version
* support configured unit system and convert distance automatically
* properly unloading integration when removed and stopping refreshes
* ran isort
* fixed pylint
* introduced time filter of seven days into past
* adding unit tests
* fixed lint
* removed unused code
* added test case
* added test case for config flow
* fixed lint
* fixed comment
* removed unused test code
* increased test coverage
* fixed filtering by time
* changed wording in config flow
* reformatted with black
* removed unused logger
* fixed black
* changed default mmi
* reduced the options in the config flow form; fixed a few schema options and processing of data
* moved unsubscribing signals
* fixed minimum magnitude and modified tests
* fixed radius in imperial unit system
* increased test coverage
* simplified code
* fixed lint
* changed string formatting; simplified code
* removed unused strings
* added translation
* Added Plugwise component
* pylint fixes
* Additional pylints (local tox not noticing these)
* Changes according to review
* CI flake8 correction
* Applying Black
* Review changes, without exception and schema
* Review changes, exception improvement
* Review changes, exception correctio and schema cleanup
* Further cleaning as per review
* Removed blank line
* Add debugging to API init
* Add debugging to API init without dot
* remove myself from CODEOWNDERS
Sorry, I do not have time right now to work on HomeAssistant, so I'm removing myself from the CODEOWNERS.
* Update manifest.json
* Initial work on config_flow
* Finish config flow
* Pylint checks, make sure the import only happens once
* Added support for unloading, small fixes
* Check in the hassfest output files
* Flake8 fixes
* pylint mistake after flake8 fixes
* Work on comments
* Abort the import if it is already imported
* More comments resolved
* Added testcases for velbus config flow
* Fix pylint and flake8
* Added connection test to the config flow
* More sugestions
* renamed the abort reason
* excluded all but the config_flow.py from the velbus component in coveragerc
* Rewrote testcases with a patched version of _test_connection
* Docstyle fixes
* Updated the velbus testcases
* just yield
* flake8 fixes
* Initial commit of De Lijn (Flemish Public Transport) component
* Code corrections as per HA dev's requests
* changes to variable naming, setting attribution and states, plus some smaller optimizations
* Overlooked some linting issues, these are now fixed
* Updated pydelijn version requirement to 0.5.1 so UTC timestamps can be used instead of relative/local times.
Removed unused definition
* Updated pydelijn version requirement to 0.5.1 in requirements_all.txt
* Update the self._attributes dict directly instead of replacing it
Assign ATTRIBUTION while creating the _attributes dict
Remove the ATTRIBUTION assignment in device_state_attributes as it's updated in the async_update now.
* Linting issue (lenght of 2 lines) solved
* Removed a relative time attribute
Updated a linting issue in the LOGGER (used % instead of the format)
* Add suez water sensor
* flake8 test
* pylint test
* edition to fix flake8 and pylint issues
* edition to be okay with the musts
* Added a blank line to __init.py__ for flake8
* added blank line for flake8
* changer scan interval from 10 to 720 minutes
* use of pysuez
* bug fix and isort
* use of pysuez
* fixed flake8 and pylint errors
* update requirements_all.txt
* added a method to test login/password befire adding device
* flake8 edition
* update requirements_all.txt
* add of .coveragerc file with untested files
* update of .coveragerc
* Update homeassistant/components/suez_water/__init__.py
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* Update homeassistant/components/suez_water/sensor.py
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* Update homeassistant/components/suez_water/sensor.py
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* Update homeassistant/components/suez_water/sensor.py
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* Update homeassistant/components/suez_water/sensor.py
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* Update homeassistant/components/suez_water/sensor.py
Co-Authored-By: Fabian Affolter <mail@fabian-affolter.ch>
* bug fix in check credentials
* flake8 and pylint fixes
* fix codeowner
* update requirements_all.txt
* Sorted suez_water line
* edition to answer comments from @MartinHjelmare on #23844
* Attribute keys formatting to lowercase snakecase, name and icon constants returned directly, and remove of attribute. Update of .
* pylint edition
* correction wrong keys in client attributes
* remove of unnedeed return and move add_entities
* Add support for Rainforest Eagle-200
* Removed direct access selector to monitored conditions
* Refactored code to use throttle on the update function
* Fixed issue in new code to use only one EagleReader instance
* Resolve comments
* Resolved comments
* Resolved comments and added Debug statement
* Added return statements
* Fixed typo
* Resolved comments and added debug statements
* Moved get_status method into Data object and decorated it with @staticmethod
* Resolved comments
* Add Fortigate integration
* added feedback changes
* removed the only case
* fixed a description
* removed the CONFIG_PLATFORM
* deleted README
* added return from setup
* added return from setup
* fixed reviews
* Link updated
* Rename var and a couple of other minor changes
* Typos
* Add support for World Wide Lightning Location Network
* Updated .coveragerc
* Added test
* Updated requirements
* Fixed tests
* Use local time for nearest strike
* Base geo location in place
* Finished geolocation work
* Fixed tests
* Cleanup
* Removed no-longer-needed method
* Updated requirements
* Add support for window and attrs
* Add strike ID to entity name
* Member comments
* Add arcam_fmj support
* Just use use state in player avoid direct client access
* Avoid leaking exceptions on invalid data
* Fix return value for volume in case of 0
* Mark component as having no coverage
* Add new requirement
* Add myself as maintainer
* Correct linting errors
* Use async_create_task instead of async_add_job
* Use new style string format instead of concat
* Don't call init of base class without init
* Annotate callbacks with @callback
Otherwise they won't be called in loop
* Reduce log level to debug
* Use async_timeout instead of wait_for
* Bump to version of arcam_fmj supporting 3.5
* Fix extra spaces
* Drop somewhat flaky unique_id
* Un-blackify ident to satisy pylint
* Un-blackify ident to satisy pylint
* Move default name calculation to config validation
* Add test folder
* Drop unused code
* Add tests for config flow import
* Add support for aurora ABB Powerone solar photovoltaic inverter
* Add support for aurora ABB Powerone solar photovoltaic inverter
* Update stale docstring
* Fixed whitespace lint errors
* Remove test code
* Delete README.md
Website documentation contains setup instructions. README not needed here.
* Only close the serial line once.
* Correct newlines between imports
* Change add_devices to add_entites and remove unnecessary logging.
* Use new style string formatting instead of concatenation
* Directly access variables rather than via config.get
* Update sensor.py
* Added Trafikverket train component
* Updated manifest with proper name and codeowner
* Updated requirements and manifest
* Updated CODEOWNERS
* Corrected requirements
* Added trafikverket_train/sensor.py to .coveragerc
* Added error handling and log if API call fails
* Corrected styles, removed dev log, improved validation
* Method calls to async_update(), improved error handling
* Minor cleanup/reorg for effeciency
* Added station cache and corrected to fit standards
* Simplified trainstop id and cleaned up dict.get
* Corrected mistake after change from dict to array
* Change device class to timestamp
* Vlc telnet first commit
First functional version, remains to add more functionality.
* New functions added and bugfixes
* Compliance with dev checklist
* Compliance with dev checklist
* Compliance with pydocstyle
* Removed unused import
* Fixed wrong reference for exception
* Module renamed
* Fixed module rename in other
* Fixed wrong reference for exception
Module renamed
Fixed module rename in other
* Update homeassistant/components/vlc_telnet/media_player.py
Accepted suggestion by @OttoWinter
Co-Authored-By: Otto Winter <otto@otto-winter.com>
* Update homeassistant/components/vlc_telnet/media_player.py
Accepted suggestion by @OttoWinter
Co-Authored-By: Otto Winter <otto@otto-winter.com>
* Update homeassistant/components/vlc_telnet/media_player.py
Accepted suggestion by @OttoWinter
Co-Authored-By: Otto Winter <otto@otto-winter.com>
* Update homeassistant/components/vlc_telnet/media_player.py
Accepted suggestion by @OttoWinter
Co-Authored-By: Otto Winter <otto@otto-winter.com>
* Suggestions by @OttoWinter
+Manage error when the VLC dissapears to show status unavailable.
* Removed error log, instead set unavailable state
* Changes suggested by @pvizeli
-Import location
-Use of constants
* Implemented available method
* Improved available method
* Breaking change: Rewrite opentherm_gw to add support for more than one OpenTherm Gateway.
Breaks config layout and child entity ids and adds a required parameter to all service calls (gateway_id).
* Add schema and parameter description for service opentherm_gw.reset_gateway.
* Add optional name attribute in config to be used for friendly names.
Fix bugs in binary_sensor and climate platforms.
* pylint fixes
* Remove unused variables.
* Update manifest.json, remove REQUIREMENTS from .py file
* Update CODEOWNERS
* Address issues that were brought up (requested changes):
- Move imports to module level
- Change certain functions from async to sync
- Move constants to const.py (new file)
- Call gateway setup from outside of __init__()
- Move validation of monitored_variables to config schema
* Address requested changes:
- Make module imports relative
- Move more functions from async to sync, decorate with @callback where necessary
- Remove monitored_variables option, add all sensors by default
* Quick & Dirty weather alert integration
* Add attributes in weather alert sensor.
* MeteoFranceUpdate returns dept to init the alert watcher
* add rain forecast to weather attribute
* Add checks when no weather alert data are available
* Improve date and state when online source is unreachable
* update to take into account new API of vigilancemeteo 3.0.0
* Clean local patchs and put requirements in manfiest.json
* Use only one proxy for weather alerts to avoid too much HTTP requests
* linting and comments style corrections
* Add error catching and debug logging
* Correction following PR checklist
* Add code owners
* Update requirements_all.txt
* Comment style
* Update CODEOWNERS after rebaseline with dev branch
* update requirements_all.txt
* initial version of qfes bushfire geolocation platform
* removed all occurrences of legally protected names; using new georss library
* regenerated codeowners
* fixed pylint
* added one more valid category
* moved library import to top and ran isort
* change us-based default temps to Fahrenheit
* update CODEOWNERS
* update CODEOWNERS
* tweak docstring
* tweak docstring
* Coerce Fahrenheit Temps to int
* Adds integration for Plaato Airlock
* Updates codeowners and coveragerc
* Fixes lint errors
* Fixers lint check error
* Removed sv translation file
* Adds en translation file
* Sets config flow to true in manifest
* Moves config flow and domain to seperate files
* Fixes lint errors
* Runs hassfest to regenerate config_flows.py
* Adds should poll property and fixes for loop
* Only log a warning when webhook data was broken
* Fixes static test failure
* Moves state update from async_update to state prop
* Unsubscribes the dispatch signal listener
* Update sensor.py
* Add camera for buienradar radar
* Use asyncio.Conditions instead of asyncio.Lock
* Add test and fix python 3.5 compatibility
* rename interval to delta for consistency with BOM integration
* fix linting error introduced during rebase
* Improved buienradar.camera documentation and tests
* Incorporated one comment on a redundant/cargo cult function
* Improved documentation
* Increase test coverage by fixing one test by making it a coroutine
(to make it actually run), adding another test case, and changing
the flow in the implementation.
* style changes after review, additional test case
* Use python 3.5 style mypy type annotations in __init__
* Remove explicit passing of event loop
* Adopt buienradar camera as codeowner
* Update manifest.json
* Update CODEOWNERS through hassfest
Updated CODEOWNERS through hassfest (instead of manually), thanks to
@balloob for the hint.
* Add Linky sensors : yesterday + months + years
- SCAN_INTERVAL to 4 hours
- Always close_session after getting the data
- Add username attr
- Fix not updating Linky sensor when Enedis API fails
* Fix @balloob review: remove monitored_conditions
* Add APRS device tracker component
This component keeps open a connection to the APRS-IS infrastructure so
messages generated by filtered callsigns can be immediately acted upon.
Any messages with certain values for the 'format' key are position
reports and are parsed into device tracker entities.
* Log errors and return if startup failure
* Fix unit tests
* CREATE Somfy component
* CREATE cover Somfy platform
* USE somfy id as unique id
* UPDATE all the devices in one call to limit the number of call
* FIX Don't load devices if not yet configured
* IMP Replace configurator by a simple notification
* ADD log in case state does not match
* IMP wording
* REMOVE debug stuf
* ADD support for tilt position
* UPDATE requirements
* FIX Use code instead of authorization response
- Will allow to setup Somfy without https
* HANDLE stateless devices (Somfy RTS)
* FIX import locally 3rd party library
* UPDATE pymfy to 0.4.3
* ADD missing docstring
* FIX For Somfy 100 means closed and 0 opened
* FIX position can be None
* ENHANCE error management when error 500 occurs at setup
* FIX indent
* ROLLBACK tilt modification
- See https://community.home-assistant.io/t/somfy-tahoma-official-api/61448/90?u=tetienne
* FIX Look for capability instead of state
* DON'T use exception to test if a feature is available
* UPDATE dependency
* ADD device_info property
* AVOID object creation in each method
* REMOVE unused constants
* ADD missing doc
* IMP Only make one call to add_entities
* USE dict[key] instead of get method
* IMP Don't pass hass object to the entities
* FIX Don't end logging messages with period
* USE config entries instead of a cache file
* IMPLEMENT async_unload_entry
* CONSOLIDATE package
- see home-assistant/architecture#124
* UPDATE to pymfy 0.5.1
* SIMPLIFY config flow
* ADD French translation
* FIX 80 vs 79 max length
* ABORT flow asap
* FIX A tupple was returned
* MIGRATE to manifest.json
* ADD a placeholder async_setup_platform coroutine
- It's currently required and expected by the platform helper.
* FIX codeowner
* ADD missing translations file
* USE new external step
* UPGRADE pymfy version
* Close Somfy tab automatically
* ADD manufacturer
- Somfy only for the moment.
* HANDLE missing code or state in Somfy request
* REMOVE unused strings
* DECLARE somfy component to use config_flow
* APPLY static check remarks
* FIX async method cannot be called from sync context
* FIX only unload what has been loaded during entry setup
* DON't catch them all
* DON'T log full stacktrace
* ABORT conflig flow if configuration missing
* OMIT Somfy files for coverage
* ADD tests about Somfy config flow
* ADD pymfy to the test dependencies
* Added Google Cloud TTS service component feature
* Added Neutral voice gender
* Added line break at the end of files
* Updated CODEOWNERS, reqirements_all.txt and .coveragerc
* Fixed some ci/circleci: static-check errors
* Fixed some ci/circleci: static-check error
* Fixed some ci/circleci: pylint errors
* Fixed some ci/circleci: pylint errors
* * made supported_options const
* fixed direct env variable access
* Fixed import order
* * Component renamed
* Added encoding parameter
* Other fixes
* Changed folder name in .coveragerc
* * Removed whitespaces in blank lines
* Split long line
* Removed whitespaces in blank lines
* ci/circleci: static-check
* Fixed requirements_all.txt
* Added speed, pitch and gain parameters
* Added speed, pitch and gain as supported options
* Split too long line
* * Added profiles parameter
* Changed supported languages and encodings values
* Added parameters validations
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* Changed options validation
* Added ToggleEntity save and restore state mechanism
* Revert "Added ToggleEntity save and restore state mechanism"
This reverts commit 0e275014
* Basic local SolarEdge monitoring for energy / power
* Basic local SolarEdge monitoring for energy / power
* generated CODEOWNERS, requirements, excluded tests
* generated CODEOWNERS, requirements, excluded tests
* lint fixes, etc
* lint fixes, etc
* Fix docstyle for init
Of course thats the file I forgot to run tests on
* Load all sensors by default
They use the same API endpoint. This changes was made per https://github.com/home-assistant/architecture/pull/244
* remve unneded date/time
* ran hassfest again
* add throttle when updating
* readd solax, mistakenly removed
* Update sensor.py
* Adds AdGuard Home integration
* 👕 Addresses linting warnings
* 🚑 Fixes typehint in async_setup_entry
* 👕 Take advantage of Python's coalescing operators
* 👕 Use adguard instance from outer scope directly in service calls
* 👕 Use more sensible scan_interval default for sensors
* 👕 Adds specific files to .coveragerc
* ☔ Added tests and small changes to improve coverage
* 🔨 Import adguardhome dependencies at the top
* 🚑 Converted service handlers to be async
* 🔥 Removed init step from config flow
* Bumped to version 2.0
* Updated requirements
* Updated requirements and coveragerc
* Removed long lines, changes to coveragerc and requirements
* Fixed under-indented lines
* Fixed invalid syntax
* Updated .coveragerc to include repetier/__init__.py and sensor.py
* Module update
* Rebased to latest dev
* Blank lines fix
* Add missing manifest.json
* Update requirements
* Bumped component to new API module style
* Removed whitespaces and line feeds
* Added missing newline
* Added missing heated chamber sensor
* Fixed wrong indentation
* Various fixes
* Various build fixes
* Clean up
* Load platform only once
* Sort imports
* Add printer api
* Clean up
* Build out sensor classes
* Clarify temperature sensor variable names
* Move constants
* Clean up name
* Run script/gen_requirements_all.py
* Working code, missing auto add of new sensors
* Updated code to return proper device_class and timestamp
* Removed unnessecary code
* Renamed elapsed and remaining sensors
* Dynamically adding sensors as they become available
* Rebased .coveragerc due to conflicts
* Code changes and cleanup
* Removed whitespace and code simplification
* v1 of Azure Event Hub History component
* updates to EH
* small fix
* small updates and changed requirements_all
* new version of Event Hub component
* redid config to just ask names
* small edit
* latest version of EH component
* updated codeowners
* codeowner fix
* typo in domain
* updates based on reviews.
* using built-in jsonencoder for DT
* delete unused import
* Solax inverter direct API
* Linter compliance
* lint++
* move api communication to external lib
* lint++
* requirements
* Revert "requirements"
This reverts commit 82a6c0c095.
* potentially?
* Addressing review comments
* Also update CODEOWNERS
* Only update sensor state if data has changed
* Moved helper functions to const.py
* Removed pypck attribute from LcnDevice
* Bump to pypck==0.6.0
* Added myself as a codeowner
* Moved helper functions to helpers.py
* Added support for MCP23017 I2C GPIO extender.
* Updated .coveragerc to exclude mcp23017 component from tests.
* Generated CODEOWNERS for mcp23017 usign script.
* Removed .svn folder that had been accidentally uploaded.
* Added link to www.home-assistant.io docs in manifest.json
* Fixed logic error in switch platform.
* Cleaned up code and removed unnecessary should_poll() function.
* Limited the options for pull mode to UP and DOWN
* Fixed line too long in binary sensor.
* Fixed line too long on switch.py
* Changed to setup_platform.
* Reorder constants
* Added new component meteoalarm
* Update sensor.py
* Update manifest.json
* Update manifest.json
* Update manifest.json
* Added file CODEOWNERS
* Modified some code, thanks @amelchio
* removed Throttle because is not being used anymore
* Update _attributes ad _state
* some cleanup
* Update sensor.py
Change sensor to binarysensor
* Rename sensor.py to binary_sensor.py
rename the file
* Update binary_sensor.py
Removed BinarySensorDevice from class
* Update binary_sensor.py
Made a mistake with BinarySensorDevice
* Update binary_sensor.py
clean up white spaces
* Update binary_sensor.py
Fix BinarySensorDevice
* Update binary_sensor.py
cleanup the import libs
* modified __init__
* fix
* final fix, thanks @amelchio
* forgot to change the sensor.py
* correct some typo in text
* fix typos
* fix another typo
* fix typo
* Updated to the current version of dev
* Added the component to .coveragerc
* Added __init__.py and manifest.json
* Changed the manifest to comply the json format
* Changes in for complete the PEP8 Code
* Fixed the api call to use PyPI package
* Fixed API correrct call
* Fixes for complete the requirements
* Added dependencies in manifest.json
* Changed the __init__.py to complete PEP8
* Simplified the __init__.py
* Runned codeowner script
* executed gen_requirements_all.py
* Direct call for dicts and unit changed to minutes
* Fixed the optional dict call, sorry, my bad, I did not that
* Deleted unused vars
* Changed optional parameter to required
* Remove blank first line
* refactor - add const.py, change order of propertys, methods
* import client at top of file
* remove debug line
* de-lint
* delint
* add me as CODEOWNER
* remove lint hint
* delint
* ptvsd debugger component.
* Add test case
* ptvsd as test dependency
* Fix for 3.5
* Fixed bootstrap test
* Use dict direct lookup.
* Don't need to load dependencies.
* Get the test working.
* 3.5 fix
* Set mock return value
* Put tests back, but skip them
* Change log level
* Don't send volume on volume set
This needs updated lib
* Bump version and avoid getting channels explicitly
* Add myself as codeowner
* Use version 0.0.8 instead which doesn't reuse session
Some TV's doesn't play nice with HTTP/1.1 connection
re-use.
* Add new requirement to requirements_all.txt
* Implement EnOcean temperature and humidity sensors.
* Bump EnOcean version to 0.50
* Refactor components for more generic device handling
* Move radio packet data interpretation to specific devices
* Update CODEOWNERS
* Implement code review changes
* Fix non syncthru-syncthru supporting printers
* Formatting
* Update requirements_all
* Update syncthru.py
* Fix component to be async (as is the used SyncThru implementation)
* Add async syntax
* Omit loop passing
* Don't await async_add_platform
* Generate new all requirements
* Explain, why exception is caught in setuExplain, why exception is caught in setupp
* Handle failing initial setup correctly
* Formatting
* Formatting
* Fix requested changes
* Update requirements and add nielstron as codeowner
* Run codeowners script
* Make notification about missing syncthru support a warning
* Revert pure formatting
* Fix logging
* Added component named switcher_kis switcher water heater integration.
* Fixed conflicts.
* Updated requirements.
* Added manifest.json file and updated CODEOWNERS.
* Fixed requirements_all.txt.
* Better component tests.
* Removed unnecessary parameter from fixture function.
* Removed tests section from mypy.ini.
* Remove unused ENTITY_ID_FORMAT.
* Stop udp bridge when failed to setup the component.
* Replace DISCOVERY_ constants prefix with DATA_.
* Various change requests.
* Fixed constant name change remifications.
* Added explicit name to fixture.
* Various change requests.
* More various change requests.
* Added EventType for homeassistant.core.Event.
* Switched from event driven data distribution to dispatcher type plus clean-ups.
* Removed name and icon keys from the component configuration.
* Various change requests.
* Various change reqeusts and clean-ups.
* Removed unnecessary DEPENDENCIES constant from swith platform.
* Replaced configuration data guard with assert.
* Removed unused constants.
* Removed confusing type casting for mypy sake.
* Refactor property device_name to name.
* Removed None guard effecting mypy only.
* Removed unnecessary function from switch entity.
* Removed None guard in use by mypy only.
* Removed unused constant.
* Removed unnecessary context manager.
* Stopped messing around with mypy.ini.
* Referring to typing.TYPE_CHECKING for non-runtime imports.
* Added test requierment correctyly.
* Replaced queue.get() with queue.get_nowait() to avoid backing up intervals requests.
* Revert changes in mypy.ini.
* Changed attributes content to device properties instead of entity properties.
* Fixed typo in constant name.
* Remove unnecessary async keyword from callable.
* Waiting for tasks on event loop to end.
* Added callback decorator to callable.
* update vizio component to support latest pyvizio with soundbar support
* Resolved Hound issues
* Additional Hound issue
* Updated based on feedback
* Style updates
* Additional code styling changes
* Added check for auth token not being set for tv device_class
* Limited lines to 80 characters
* moved MAX_VOLUME into base package
* fixed supported commands
* styling changes
* fix styling yet again
* remove unnecessary elif
* removed play/pause since I can't get current state
* changed value access method from config dict
* fixed flake failures
* try to fix docstring
* try to fix docstring
* fixed auth token validation
* rebase and regenerate requirements_all.txt
* updated log text
* line length fix
* added config validation to handle conditionally optional parameter
* updated validate setup log message and string formatting based on review
* fix pylint error
* less ugly
* Added basic Supla (https://www.supla.org) support (covers)
* PySupla upgrade, minor spelling corrections and .coveragerc update
* Linter errors cleanup
* More linter cleanups.
* Documentation link removal and import sorting
* Docstring formatting
* PR suggestions
* Styling and linting
* PySupla version update
* Removal of ALLOW_EXTRA in SERVER_CONFIG
* Return False on failed connection validation, function order cleanup
* Component manifest
* Missing return None and different way of setting unique_id
* CODEOWNERS update
* CircleCI nudge
* Start with Stiebel Eltron heatpump
* STE HP
* Add read of operating mode
* Add read-write operation mode
* Further extract ModBus access
* Separation of platform and API
* Last changes
* Use modbus hub
* Update module doc with config
* Clean up platform code
* Cleanup and update to dev2 of pystiebeleltron
* Remove slave configuration
* Add translation of states
* Make name parameter optional
* Consolidate platform
* Correct .coveragerc after conflict
* Prepare component for sensor platform
* Fix issues found in review
* Remove custom states and map to existing HA states
* Force update, when values are modified
* Update CODEOWNERS and requirements_all.txt
* Fix .coveragerc file
* Exclude stiebel_eltron components in .coveragerc
* Break out to module level constant
* Rename constant
* Removed REQ and DEP constant.
* Logi Circle now uses OAuth2 for authentication, added config flow.
* Service calls now dispatched to camera entities via signalled events
* Update from PR review
* Add unit tests for config flow
* Updated CODEOWNERS
* Reverted change to .coveragerc
* Improved test coverage of config flow
## Description:
Add support for AC-models that follows the Tfiac protocol. Built together with @mellado.
**Pull request in [home-assistant.io](https://github.com/home-assistant/home-assistant.io) with documentation (if applicable):** home-assistant/home-assistant.io#8910
## Example entry for `configuration.yaml` (if applicable):
```yaml
climate:
platform: tfiac
host: 192.168.10.26
```
## Checklist:
- [x] The code change is tested and works locally.
- [x] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
- [x] There is no commented out code in this PR.
If user exposed functionality or configuration variables are added/changed:
- [x] Documentation added/updated in [home-assistant.io](https://github.com/home-assistant/home-assistant.io)
If the code communicates with devices, web services, or third-party tools:
- [x] New dependencies have been added to the `REQUIREMENTS` variable ([example][ex-requir]).
- [x] New dependencies are only imported inside functions that use them ([example][ex-import]).
- [x] New or updated dependencies have been added to `requirements_all.txt` by running `script/gen_requirements_all.py`.
- [x] New files were added to `.coveragerc`.
[ex-requir]: https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/keyboard/__init__.py#L14
[ex-import]: https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/keyboard/__init__.py#L23
Co-authored-by: Robbie Trencheny <me@robbiet.us>
## Description:
Sort the code oweners list alphabetically.
**Related issue (if applicable):** fixes #<home-assistant issue number goes here>
**Pull request in [home-assistant.io](https://github.com/home-assistant/home-assistant.io) with documentation (if applicable):** home-assistant/home-assistant.io#<home-assistant.io PR number goes here>
## Example entry for `configuration.yaml` (if applicable):
```yaml
```
## Checklist:
- [ ] The code change is tested and works locally.
- [ ] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
- [ ] There is no commented out code in this PR.
If user exposed functionality or configuration variables are added/changed:
- [ ] Documentation added/updated in [home-assistant.io](https://github.com/home-assistant/home-assistant.io)
If the code communicates with devices, web services, or third-party tools:
- [ ] New dependencies have been added to the `REQUIREMENTS` variable ([example][ex-requir]).
- [ ] New dependencies are only imported inside functions that use them ([example][ex-import]).
- [ ] New or updated dependencies have been added to `requirements_all.txt` by running `script/gen_requirements_all.py`.
- [ ] New files were added to `.coveragerc`.
If the code does not interact with devices:
- [ ] Tests have been added to verify that the new code works.
[ex-requir]: https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/keyboard/__init__.py#L14
[ex-import]: https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/components/keyboard/__init__.py#L23
* Moved climate components with tests into platform dirs.
* Updated tests from climate component.
* Moved binary_sensor components with tests into platform dirs.
* Updated tests from binary_sensor component.
* Moved calendar components with tests into platform dirs.
* Updated tests from calendar component.
* Moved camera components with tests into platform dirs.
* Updated tests from camera component.
* Moved cover components with tests into platform dirs.
* Updated tests from cover component.
* Moved device_tracker components with tests into platform dirs.
* Updated tests from device_tracker component.
* Moved fan components with tests into platform dirs.
* Updated tests from fan component.
* Moved geo_location components with tests into platform dirs.
* Updated tests from geo_location component.
* Moved image_processing components with tests into platform dirs.
* Updated tests from image_processing component.
* Moved light components with tests into platform dirs.
* Updated tests from light component.
* Moved lock components with tests into platform dirs.
* Moved media_player components with tests into platform dirs.
* Updated tests from media_player component.
* Moved scene components with tests into platform dirs.
* Moved sensor components with tests into platform dirs.
* Updated tests from sensor component.
* Moved switch components with tests into platform dirs.
* Updated tests from sensor component.
* Moved vacuum components with tests into platform dirs.
* Updated tests from vacuum component.
* Moved weather components with tests into platform dirs.
* Fixed __init__.py files
* Fixes for stuff moved as part of this branch.
* Fix stuff needed to merge with balloob's branch.
* Formatting issues.
* Missing __init__.py files.
* Fix-ups
* Fixup
* Regenerated requirements.
* Linting errors fixed.
* Fixed more broken tests.
* Missing init files.
* Fix broken tests.
* More broken tests
* There seems to be a thread race condition.
I suspect the logger stuff is running in another thread, which means waiting until the aio loop is done is missing the log messages.
Used sleep instead because that allows the logger thread to run. I think the api_streams sensor might not be thread safe.
* Disabled tests, will remove sensor in #22147
* Updated coverage and codeowners.
* Consolidate
* Fix tests
* Update imports
* Fix import
* Use importlib because integration and package share name
* Fix more tests
* Update .coveragerc and CODEOWNERS
* 🚜 Rewrite of Toon component
* 🔥 Removed manual state from list
* 👕 Addresses code review comments
* 🔥 Removes a log line that should not have been left behind
* 👕 Addresses linting warnings
* 👕 Addresses Hound CI warning
* 👕 Fixes small code styling issues
* ✨ Sets an appropriate SCAN_INTERVAL
* ✨ Sets min/max temperature for climate platform
* 👕 Makes imports more consistent with codebase
* 🚑 Fixes incorrect SCAN_INTERVAL value in climate platform
* 🚑 Uses OrderedDict for config_flow schema
* 👕 Adds return types for min/max temp
* 🚜 Refactors entities into their actual devices
* ⬆️ Updates toonapilib to 3.0.7
* 🚜 Refactors binary sensor state inversion
* 🚑 Fixes states of OpenTherm connection and Hot Tap Water
* ✨ Adds Boiler Preheat binary sensor
* ✨ Adds Toon Thermostat Program binary sensor
* ✨ Adds Boiler Modulation Level sensor
* ✨ Adds Daily Power Cost sensor
* 🔥 Cleanup of Toon Thermostat climate attributes
* 🚜 Adjusts config_flow with Tenant selection
* 🙋 Adds myself to codeowners file as maintainer
* ⬆️ Gen requirements
* ⬆️ Updates toonapilib to 3.0.9
* ☔ Adds config_flow tests
* Added work so far.
* Change interval so nobody drains their battery when I put this online
* Added the warning notice.
* Async setup
* Still broken, but we're getting there.
* Back to synchronous, moved refresh stuff into DataStore
* Functional sensors!
* Added working switches, tweaked intervals a bit
* Fixed turn off result
* Moved plug status to binary_sensor, added smart intervals
* Documentation and car nickname stuff
* Syntax fixes and coveragerc additions
* Style fixes
* Fixing the final line length
* Fixed an issue with newer models and bad climate data
* Forgot to check my line endings.
* New icons for most of the components
* Hotfix for handling Nissan's awful servers
* Merge in fixes made by Phil Cole
Remove invalid FIXMEs and update TODOs
Fixes for pylint and test for CarwingsError exception rather than Exception
Flake8 fixes
Add pycarwings2 to requirements_all.txt
Add extra configuration documentation.
Use pycarwings2 from pip. Check server dates between requests.
Add sensor device class for battery.
Async conversion fixes
flake8 fixes and docstrings
Non-async charging is OK
Handle multiple cars in the configuration
Convert to async. Better imports for platforms
Fix scanning interval & prevent extra refreshes. async switchover
Check discovery_info to prevent load of platforms
Ensure update frequency is always above a minimum interval (1 min).
Platforms don't have return values
Use values() instead of items() when not using key
Use snake_case (LeafCore becomes leaf_core)
commit 418b6bbcc49cf2909aac85869440435410abf3fd
* Add pycarwings2 to requirements_all.txt
* Make stopping charge error an 'info'. Remove TODO.
* Request update from car after sending start charging command.
* Delay initial (slow) update for 15 seconds and make async
* Flake8 line length fixes
* Try to fix D401 'imperative mood' git diff tox errors
* Try to fix more D401 'imperative mood' tox errors
* Default interval of an hour in code, to match comments.
* Update to pycarwings2 2.3
* Update to pycarwings2 2.3 in requirements_all.txt
* Remove documentation, instead refering to home-assistant.io
* Remove unneeded dispatcher_send()
* Remove unneeded requirements comments
* Combine excess debugging.
* Remove single line method signal_components()
* Bump to version 2.4 of pycarwings2
* Remove unused dispatcher_send
* Simplify logging of LeafEntity registration
* Update requirements_all.txt
* Multiple changes
Increase timeout to 30 seconds
Only consider battery_status
Fix plugged in status
Better attempts at try/exception handling
* Fix line length
* Use pycarwings 2.5
* Remove pointless 'is True'
* Remove unnecessary 'is True/False'
* Remove unnecessary 'is True/False'
* Use LENGTH_MILES and LENGTH_KILOMETERS
* Remove excess logging in setup_platform()
* Remove unnecessary 'is True'
* Use pycarwings2 version 2.6
* Require pycarwings2 version 2.7.
* Increase sleep delay for climate and location reponses.
* Remove unnecessary 'is True'
* Increase frequent polling warning to _LOGGER.warning()
* Use DEVICE_CLASS_BATTERY
* Remove extraneous 'is True'.
* Move icon strings to constants.
* Remove unneeded key.
* LeafRangeSensor ac_on property is internal.
* Flake8 missing line
* Remove homebridge attributes.
* Remove round battery % and range to whole numbers
* Use pycarwings2 2.8
* Move to embedded component model
* Reduce maximum attempts to 10 (5 mins)
* Include attempt count in 'waiting' log message
* Use await instead of yield. Remove @asyncio.coroutine decorators.
* Add @filcole as nissan_leaf codeowner
* Fix checking for if not data returned from vehicle. Don't double send signal on location update.
* Exposed updated_on, update_in_progress and next_update attributes.
* Add nissan_leaf.update service that triggers an update.
* Flake8 line fixes
* Remove excess and double logging.
* Add updated_on attribute for device tracker.
* Fix crash if pycarwings2 doesn't provide cruising ranges.
* Minor changes
* Minor changes
* Minor changes
* Minor changes
* Minor changes
* Add component for googlehome
* Add missing name in CODEOWNERS
* Linting issues
* googledevices version bump
* Use NAME from component instead of DOMAIN
* Cleaner handling of accepted devices in for loop
* Fixes one linting issue
* Validate device_types
* Fixes one linting issue
* Fixes linting issue
* Revert 0abb642 and import DOMAIN as GOOGLEHOME_DOMAIN
* Return false if discovery_info is None
* Combine if's in for loop
* Use async_load_platfrom
* Fix line length
* Add error message to user
* Shorter log message
* error -> warning, remove period
* Update .coveragerc
* Move to correct place
* Added SmartThings component and switch platform
* Corrected comment typos.
* Embedded switch platform.
* Replaced custom view usage with webhook component.
* Replaced urls with tokens in strings.
* Fixed line length.
* Use generated webhook id instead of static one.
* Reuse core constant instead of defining again.
* Optimizations in anticipation of future platforms.
* Use async_generate_path instead of hard-coded path.
* Fixed line length.
* Updates per review feedback.
* Updates per latest review feedback.
* Moving existing sensor file
* Initial functionality in place
* Added test for config flow
* Updated coverage and CODEOWNERS
* Linting
* Linting
* Member comments
* Hound
* Moving socket disconnect on HASS stop
* Member comments
* Removed unnecessary dispatcher call
* Config entry fix
* Added support in config flow for good accounts with no devices
* Hound
* Updated comment
* Member comments
* Stale docstrings
* Stale docstring
* Add ness alarm control panel using nessclient
* indenting
* .
* Remove availability functionality, will improve and add back in another PR
* Use call_count
* lint
* lint
* Review changes
* Lint
* Bump nessclient to 0.9.8
* Bump nessclient to 0.9.9
* Remove from .coveragerc
* move component to a package
* move TelldusLiveEntry to separate file
* refactor
* move entities from a shared container
* using the dispatch helper instead for communication between component and platforms
* updated covereagerc and codeowners
* suggestions from MartinHjelmare
* don't make update async
* "Strip is good!"
* Fix Vera climate component to use correct states
Changed the Vera climate component so it uses the STATE_* states from the base climate component. This will allow it to work with Google Assistant.
* Wemo Humidifier - Initial Commit
* WeMo Humidifier - First draft of component
* WeMo Humidifier - Removed direct IO from property
* WeMo Humidifier - Trivial comment change
* Added myself as codeowner for WeMo
* WeMo Humidifier - Fixed various syntax & lint issue
* WeMo Humidifier - Small comment addition
* WeMo Humidifier - Fix TypeError: 'WemoHumidifier' object is not iterable
* WeMo Humidifier - Rename set humidity service
* WeMo Humidifier - Add to .coveragerc
* WeMo Humidifier - Fixed lint/pylint issues
* WeMo Humidifier - First round of requested changes
* WeMo Humidifier - Round two of requested changes
* WeMo Humidifier - Third round of requested changes
* WeMo Humidifier - Fixed whitespace issue on dict comprehension
* WeMo Humidifier - Fourth round of requested changes
* WeMo Humidifier - Corrected typo in async_add_executor_job call
* WeMo Humidifier - Fixed spacing before inline comments
* First commit
* Feature complete?
* Add dependency
* Move setting poe mode logic to library
* Use guard clauses
* Bump requirement to 2
* Simplify saving switches with poe off
* Store and use poe mode
* Fix indentation
* Fix flake8
* Configuration future proofing
* Bump dependency to v3
* Add first test
* Proper use of defaults with config flow (thanks helto)
* Appease hound
* Make sure there can't be duplicate entries of combination host+site
* More tests
* More tests
* 98% coverage of controller
* Fix hound comments
* Config flow step init not necessary
* Use async_current_entries to check if host and site for controller is used
* Remove storing/restoring poe off devices to slim PR
* First batch of switch tests
* More switch tests.
* Small improvements and clean up
* Make tests pass
Don't name device in device registry
* Dont process clients that belong to non-UniFi POE switches
* Allow selection of site from a list in config flow
* Fix double blank lines in method
* Update codeowners
* Initial commit for jewish calendar sensor
* Make check for logging errors into it's own function
* Can't use f-strings as we need to support python3.5
* Implement basic functionality: printing of date
* Update requirements_all.txt
* Allow user to specify date for sensor
* Add hdate to test requirements
* Update to match pull request
* Support date output in hebrew
* Limit languages to english and hebrew
* Add name back to sensor
* Change icon to be calendar-today
* Add multiple sensors
* Fix tests
* Make Hound happy, remove unused imported class
* hdate expects datetime.date not datetime.datetime
* Return sensor name
* Times should be returned as time object, not datetime
* Add myself to codeowners for jewish calendar component
* Return actual reading, not index
* Add more tests. Currently failing.
Will need to update hdate API and version before continuing.
* Fix weekly portion test
* Make all tests pass
* Make travis happy and add a test so it doesnt happen again
* Remove defaults in __init__ method
* Change sensor state variable to local variable in update() method
* Minor changes
* Ecovacs Deebot vacuums
* All core features implemented
Getting fan speed and locating the vac are still unsupported until sucks adds support
* Move init queries to the added_to_hass method
* Adding support for subscribing to events from the sucks library
This support does not exist in sucks yet; this commit serves as a sort of TDD approach of what such support COULD look like.
* Add OverloadUT as ecovacs code owner
* Full support for Ecovacs vacuums (Deebot)
* Add requirements
* Linting fixes
* Make API Device ID random on each boot
* Fix unique ID
Never worked before, as it should have been looking for a key, not an attribute
* Fix random string generation to work in Python 3.5 (thanks, Travis!)
* Add new files to .coveragerc
* Code review changes
(Will require a sucks version bump in a coming commit; waiting for it to release)
* Bump sucks to 0.9.1 now that it has released
* Update requirements_all.txt as well
* Bump sucks version to fix lifespan value errors
* Revert to sucks 0.9.1 and include a fix for a bug in that release
Sucks is being slow to release currently, so doing this so we can get a version out the door.
* Switch state_attributes to device_state_attributes
* Starting to add attributes
* All attributes added to programs
* Basic zone attributes in place
* Added advanced properties for zones
* We shouldn't calculate the MAC with every entity
* Small fixes
* Basic framework for push in play
* I THINK IT'S WORKING
* Some state cleanup
* Restart
* Restart part 2
* Added stub for service schema
* Update
* Added services
* Small service description update
* Lint
* Updated CODEOWNERS
* Moving to async methods
* Fixed coverage test
* Lint
* Removed unnecessary hass reference
* Lint
* Lint
* Round 1 of Owner-requested changes
* Round 2 of Owner-requested changes
* Round 3 of Owner-requested changes
* Round 4 (final for now) of Owner-requested changes
* Hound
* Updated package requirements
* Lint
* Collaborator-requested changes
* Collaborator-requested changes
* More small tweaks
* One more small tweak
* Bumping Travis and Coveralls
* Add first version of the Matrix bot
* It's a stupid but necessary change…
* Dont list it twice
* All hail the linter!
* More linter-pleasing
* Use the correct user ID
* Add expression commands
* Add tests for new validators
* Fix room alias handling
* Wording
* Defer setup
* Simplify commands
* Handle exceptions
* Update requirements
* Review
* Move login back to constructor
* Fix review comments
* Add @colinodell to CODEOWNERS for qnap sensor
* Bump qnapstats library to 0.2.5
This release adds better error handling for sharenames with no folder
* first working version of BMW connected drive sensor
* extended coveragerc
* fixed blank line
* fixed pylint
* major refactoring after major refactoring in bimmer_connected
* Update are now triggered from BMWConnectedDriveVehicle.
* removed polling from sensor and device_tracker
* backend URL is not detected automatically based on current country
* vehicles are discovered automatically
* updates are async now
resolves:
* https://github.com/ChristianKuehnel/bimmer_connected/issues/3
* https://github.com/ChristianKuehnel/bimmer_connected/issues/5
* improved exception handing
* fixed static analysis findings
* fixed review comments from @MartinHjelmare
* improved startup, data is updated right after sensors were created.
* fixed pylint issue
* updated to latest release of the bimmer_connected library
* updated requirements-all.txt
* fixed comments from @MartinHjelmare
* calling self.update from async_add_job
* removed unused attribute "account"
* Basic Homekit support
* Added Temperatur Sensor
* Added Window Cover
* Code refactored
* Added class HomeAccessory(Accessory)
* Added class HomeBridge(Bridge)
* Changed homekit imports to relative, to enable use in custom_components
* Updated requirements
* Added docs
* Other smaller changes
* Changed Homekit from entity to class
* Changes based on feedback
* Updated config schema
* Add only covers that support set_cover_position
* Addressed comments, updated to pyhap==1.1.5
* For lint: added files to gen_requirements_all
* Added codeowner
* Small change to Wrapper classes
* Moved imports to import_types, small changes
* Small changes, added tests
* Homekit class: removed add_accessory since it's already covered by pyhap
* Added test requirement: HAP-python
* Added test suit for homekit setup and interaction between HA and pyhap
* Added test suit for get_accessories function
* Test bugfix
* Added validate pincode, tests for cover and sensor types
* Rework Sonos media player platform for push
* Ignore play_mode from events where it is missing
* Remove unused preload helper
* Freeze SoCo version
* Updates for entity registry
* Add codeowner
* Use real soco release
* Added the Xiaomi TV platform.
* Implemented a more efficient default name.
* Fixed a few style errors that slipped past the eye.
* Indicate that state is assumed.
* Base platform in place
* Logic in place
* Requirements and coverage
* Fixed some linting issues
* Small attribute reorganization
* Collaborator-requested changes round 1
* Updated documentation
* Base implementation of component, no sensors yet
* Added senor files
* First fully working chain of sensors and binary sensors going from hardware in to hass
* Clean up
* Clean up
* Added light platform
* Turning lights on and off and set brightness now works
* Pydeconz is now a proper pypi package
Stop sessions when Home Assistant is shutting down
Use a simpler websocket client
* Updated pydocstrings
Followed recommendations from pylint and flake8
* Clean up
* Updated requirements_all.txt
* Updated Codeowners to include deconz.py
Also re-added the Axis component since it had gotten removed
* Bump requirement
* Bumped to v2
Reran script/gen_requirements
* Removed global DECONZ since it wasn't relevant any more
* Username and password is only relevant in the context of getting a API key
* Add support for additional sensors
* Added support for groups
* Moved import of component library to inside of methods
* Moved the need for device id to library
* Bump pydeconz to v5
* Add support for colored lights
* Pylint and flake8 import improvements
* DATA_DECONZ TO DECONZ_DATA
* Add support for transition time
* Add support for flash
* Bump to v7
* ZHASwitch devices will now only generate events by default, instead of being a sensor entity
* Clean up
* Add battery sensor when device signals through an event
* Third-party library communicates with service
* Add support for effect colorloop
* Bump to pydeconz v8
* Same domain everywhere
* Clean up
* Updated requirements_all
* Generated API key will now be stored in a config file
* Change battery sensor to register to callback since library now supports multiple callbacks
Move DeconzEvent to hub
Bump to v9
* Improve entity attributes
* Change end of battery name to battery level
No need for static icon variable when using battery level helper
* Bump requirement to v10
* Improve pydocstring for DeconzEvent
Rename TYPE_AS_EVENT to CONF_TYPE_AS_EVENT
* Allow separate brightness to override RGB brightness
* Expose device.reachable in entity available property
* Bump requirement to 11 (it goes up to 11!)
* Pylint comment
* Binary sensors don't have unit of measurement
* Removed service to generate API key in favor of just generating it as a last resort of no API key is specified in configuration.yaml or deconz.conf
* Replace clear text to attribute definitions
* Use more constants
* Bump requirements to v12
* Color temp requires xy color support
* Only ZHASwitch should be an event
* Bump requirements to v13
* Added effect_list property
* Add attribute to battery sensor to easy find event id
* Bump requirements to v14
* Fix hound comment
* Bumped requirements_all information to v14
* Add service to configure devices on deCONZ
* Add initial support for scenes
* Bump requirements to v15
* Fix review comments
* Python doc string improvement
* Improve setup and error handling during setup
* Changed how to evaluate light features
* Remove 'ghost' events by not triggering updates if the signal originates from a config event
Bump requirement to v17
* Fix pylint issue by moving scene ownership in to groups in requirement pydeconz
Bump requirement to v18
* Added configurator option to register to deCONZ when unlocking gateway through settings
Bump requirement to v20
* Improve async configurator
* No user interaction for deconz.conf
* No file management in event loop
* Improve readability of load platform
* Fewer entity attributes
* Use values() instead of items() for dicts where applicable
* Do one add devices per platform
* Clean up of unused attributes
* Make sure that discovery info is not None
* Only register configure service and shutdown service when deconz has been setup properly
* Move description
* Fix lines longer than 80
* Moved deconz services to a separate file and moved hub to deconz/__init__.py
* Remove option to configure switch as entity
* Moved DeconzEvent to sensor since it is only Switch buttonpress that will be sent as event
* Added support for automatic discovery of deconz
Thanks to Kroimon for adding support to netdisco
* Use markup for configuration description
* Fix coveragerc
* Remove deCONZ support from Hue component
* Improved docstrings and readability
* Remove unnecessary extra name for storing in hass.data, using domain instead
* Improve readability by renaming all async methods
Bump to v21 - improved async naming on methods
* Fix first line not being in imperative mood
* Added logo to configurator
Let deconz.conf be visible since it will be the main config for the component after initial setup
* Removed bridge_type from new unit tests as part of removing deconz support from hue component
* Capitalize first letters of Battery Level
* Properly update state of sensor as well as reachable and battery
Bump dependency to v22
* Fix flake8 Multi-line docstring closing quotes should be on a separate line
* Fix martinhjelmares comments
Bump dependency to v23
Use only HASS aiohttp session
Change when to use 'deconz' or domain or deconz data
Clean up unused logger defines
Remove unnecessary return values
Fix faulty references to component documentation
Move callback registration to after entity has been initialized by HASS
Less inception style on pydocs ;)
Simplify loading platforms by using a for loop
Added voluptous schema for service
Yaml file is for deconz only, no need to have the domain present
Remove domain constraint when creating event title
* Add support for local api connection found in TellStick Znet Lite/Pro.
Added auto discovery support for all TelldusLive devices,
changed authentication method. Breaking change!
Upgraded tellduslive dependency
Update CODEOWNERS.
* Close any open configurator when configuration done
* Add support for Telldus Local API via config (#2)
* Updated dependency (addresses issue raised by @rasmusbe in https://github.com/home-assistant/home-assistant/pull/10435#issuecomment-344719714)
* Fix requested changes
* First draft of a remove device service. Fixes https://github.com/home-assistant/home-assistant/issues/9571.
* Add device service introduced. Enables the join permission of the gateway to pair a new sub device within the next 30 seconds.
* Schema validation added and some refactoring.
* A more precise validation of the gw_mac (ffffffffffff vs. ff:ff:ff:ff:ff:ff).
* Persistent notification added to provide some feedback.
* Pylint warning disabled. The methods are used indirectly.
* CODEOWNERS reference updated.
* Xiaomi Air Purifier 2 integration
* Flake8 errors fixed.
Changes based on review.
* Service domain ("fan") updated and services properly prefixed by xiaomi_miio.
* The underlying library is called python-miio now. Imports and requirements updated.
* Version bumped. The underlying library is called python-miio now.
* add eph ember controls
* updates based on review
* remove unused import
* update to new version of pyephember
* added myself to codeowners as requested
* make codeowners alphabetical
* run fixed gen_requirements_all
* Update ephember.py
* added implementation for monoprice 6-zone amplifier. This implementation is based on and very similar to russoun_rnet implementaion
* updated comments and cleaned up code
* updated comments and cleaned up code
* added unit tests
* removed 'name' attribute from platform schema.
* added monoprice.py to .coveragerc
* fixed lint
* fixed lint errors
* fixed lint errors
* added monoprice to requirements_all.txt
* fixed lint errors again
* implemented change requests
* fixed lint error
* added exception handling to setup_platform()
* replaced catchall with SerialException only
* added myself to CODEOWNERS
* fixed weird merge to CODEOWNERS