Ziv
4dbbf93af9
Replace asyncio.wait with asyncio.gather since wait ignores exceptions ( #33380 )
...
* replace asyncio.wait with asyncio.gather since wait ignores exceptions
fix for test_entity_platform so it expects the exception
* changed to log on failed domains
* discovered that this fix actually removes other uncaught exceptions
* fix in the list of ignored exceptions
* replaced a few ignores on dyson tests that work locally but fail in the CI
* two more tests that are failing on the CI and not locally
* removed assertion on multiple entries with same unique_id - replaced with log and return
reverted test_entity_platform to its original since now there is no exception thrown
* entered all the dyson tests. they all pass locally and probabilistically fail in the CI
* removed unnecessary str() for exception
* added log message for duplicate entity_id / unique_id
* removed log in case of False return value
* added exc_info
* change the use of exc_info
2020-04-01 07:09:13 -07:00
Paulus Schoutsen
1ff245d9c2
Make sure entity platform services work for all platforms of d… ( #33176 )
...
* Make sure entity platform services work for all platforms of domain
* Register a bad service handler
* Fix cleaning up
* Tiny cleanup
2020-03-23 12:59:36 -07:00
Ville Skyttä
05abf37046
Type hint improvements ( #32905 )
...
* Complete helpers.entity_component type hints
* Add discovery info type
2020-03-18 19:27:25 +02:00
Paulus Schoutsen
e019280d94
Annotate more async functions correctly ( #31802 )
2020-02-14 10:00:22 -08:00
Paulus Schoutsen
0fba9e44ed
Migrate zone to use collection helpers ( #30774 )
2020-01-22 12:36:25 -08:00
Paulus Schoutsen
0c3ffbe282
Add foundation for integration services ( #30813 )
...
* Add foundation for integration services
* Fix tests
* Remove async_get_platform
* Migrate Sonos partially to EntityPlatform.async_register_entity_service
* Tweaks
* Move other Sonos services to media player domain
* Move other Sonos services to media player domain
* Address comments
* Remove lock
* Fix typos
* Use make_entity_service_schema
* Add area extraction to async_extract_entities
Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
2020-01-19 17:55:18 -08:00
Paulus Schoutsen
9aa02e35a7
Entity Component to no longer generate automatic groups ( #23789 )
2020-01-07 17:30:53 +01:00
Paulus Schoutsen
30076d1843
Add person reload service ( #30493 )
2020-01-05 11:16:37 +01:00
Ville Skyttä
6604680793
Helpers type hint improvements ( #30106 )
2019-12-21 09:23:48 +02:00
Bas Nijholt
67c56c860d
Sort imports according to PEP8 for 'homeassistant' folder ( #29789 )
...
Components are already done
2019-12-09 16:42:10 +01:00
Paulus Schoutsen
02d9ed5e36
Do not select all entities when omitting entity ID in service call ( #29178 )
...
* Do not select all entities when omitting entity ID
* Address comments Matthew
* Require either area_id or entity_id
* Fix tests
* Fix test
2019-12-02 16:23:12 -08:00
Paulus Schoutsen
0cffd61481
Allow passing dictionaries to async_register_entity_service ( #26370 )
2019-09-03 09:50:24 +02:00
Franck Nijhof
decf13b948
Use literal string interpolation in core (f-strings) ( #26166 )
2019-08-23 09:53:33 -07:00
Paulus Schoutsen
7a90808e52
Add service to reload scenes from configuration.yaml ( #25680 )
...
* Allow reloading scenes
* Update requirements
* address comments
* fix typing
* fix tests
* Update homeassistant/components/homeassistant/scene.py
Co-Authored-By: Martin Hjelmare <marhje52@kth.se>
* Address comments
2019-08-05 23:04:19 +02:00
Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Ville Skyttä
d64f1e767c
Type check all helpers ( #25373 )
...
* Type check all helpers, add inline exclusions for work in progress
* Remove unused Script._template_cache
* Add some missing type hints
* Remove unneeded type: ignore
* Type hint fixes
* Mypy assistance tweaks
* Don't look for None in deprecated config "at most once" check
* Avoid None name slugify attempt when generating entity id
* Avoid None state store attempt on entity remove
2019-07-21 09:59:02 -07:00
Paulus Schoutsen
f995ab9d54
Don't pass in loop ( #23984 )
...
* Don't pass in loop
* Revert some changes
* Lint + Axis revert
* reinstate loop
* Fix a test
* Set loop
* Update camera.py
* Lint
2019-05-22 21:09:59 -07:00
Paulus Schoutsen
6b0180f753
Fix demo ( #23087 )
...
* Fix demo
* Fix types
* Fix all the things
* Fix type
* Fix test
* Lint
2019-04-14 16:59:06 -07:00
Paulus Schoutsen
3368e30279
Migrate packages and check config ( #23082 )
...
* Migrate packages and check config
* Fix typing
* Fix check config script
2019-04-14 07:23:01 -07:00
Andrew Sayre
7624d0e79f
Check for supported features in media_player services ( #22878 )
...
* Add check for supported features
* Move logic to service helper
* Fix hacked in test for seek
* Test for service required features
2019-04-10 09:44:58 -07:00
Paulus Schoutsen
8213016eaf
Allow targeting areas in service calls ( #21472 )
...
* Allow targeting areas in service calls
* Lint + Type
* Address comments
2019-03-04 09:51:12 -08:00
Anders Melchiorsen
70c5807976
Improve deprecation warnings ( #20391 )
2019-01-24 13:37:30 -08:00
Anders Melchiorsen
1218127d83
Fix 'all' entity_id in service call extraction ( #20281 )
2019-01-20 16:33:11 -08:00
Paulus Schoutsen
8ea0a8d40b
RFC: Deprecate auto target all for services and introduce entity_id: * ( #19006 )
...
* Deprecate auto target all
* Match on word 'all'
2018-12-13 10:07:59 +01:00
Paulus Schoutsen
e903f7ffda
Manual updates ( #17278 )
2018-10-09 16:54:38 +02:00
cdce8p
f879ac0993
Remove service helper (6) ( #16920 )
...
* Update automation
* Update group
* Async_create_task
2018-09-27 23:14:09 +02:00
Ville Skyttä
dd9d53c83e
Update pydocstyle to 2.1.1 and flake8-docstrings to 1.3.0 ( #14557 )
...
* Update pydocstyle to 2.1.1 and flake8-docstrings to 1.3.0
* Pydocstyle D401 fixes
2018-08-24 10:28:43 +02:00
Ville Skyttä
dbd0763f83
Grammar and spelling fixes ( #16065 )
2018-08-19 22:29:08 +02:00
Paulus Schoutsen
b682e48e12
Entity service ( #15991 )
...
* Add entity service helper
* Use entity service helper
* Context
2018-08-16 09:50:11 +02:00
Ville Skyttä
2f7b79764a
More pylint 2 fixes ( #15565 )
...
## Description:
More fixes flagged by pylint 2 that don't hurt to have before the actual pylint 2 upgrade (which I'll submit soon).
## Checklist:
- [ ] The code change is tested and works locally.
- [x] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
2018-07-20 11:45:20 +03:00
Paulus Schoutsen
1128104281
Adhere to scan_interval in platforms when setup via config entry ( #14969 )
2018-06-15 16:59:13 +02:00
Paulus Schoutsen
f47572d3c0
Allow platform unloading ( #13784 )
...
* Allow platform unloading
* Add tests
* Add last test
2018-04-12 14:28:54 +02:00
Paulus Schoutsen
73de749411
Use config entry to setup platforms ( #13752 )
...
* Use config entry to setup platforms
* Rename to async_forward_entry
* Add tests
* Catch if platform not exists for entry
2018-04-09 10:09:08 -04:00
Paulus Schoutsen
40d7857f3b
Prepare entity component for config entries ( #13730 )
...
* Prepare entity component for config entries
* Return in time
2018-04-07 23:04:50 -04:00
Julius Mittenzwei
16cb7388ee
Removing asyncio.coroutine syntax from HASS core ( #12509 )
...
* changed asyncio.coroutine syntax to new async def/await
* removed py34 from tox environment
* reverted some changes within entity.py
* -
* reverted changes within bootstrap.py
* reverted changes within discovery.py
* switched decorators
* Reverted change within aiohttp_client.py
* reverted change within logging.py
* switched decorators
* Await lock properly
* removed asyncio.coroutine from test
2018-02-25 03:38:46 -08:00
Paulus Schoutsen
17e5740a0c
Allow overriding name via entity registry ( #12292 )
...
* Allow overriding name via entity registry
* Update requirements
2018-02-11 09:16:01 -08:00
Paulus Schoutsen
5601fbdc7a
Entity layer cleanup ( #12237 )
...
* Simplify entity update
* Split entity platform from entity component
* Decouple entity platform from entity component
* Always include unit of measurement again
* Lint
* Fix test
2018-02-08 12:16:51 +01:00
Paulus Schoutsen
e51427b284
Entity registry ( #11979 )
...
* Entity#unique_id defaults to None
* Initial commit entity registry
* Clean up unique_id property
* Lint
* Add tests to entity component
* Lint
* Restore some unique ids
* Spelling
* Remove use of IP address for unique ID
* Add tests
* Add tests
* Fix tests
* Add some docs
* Add one more test
* Fix new test…
2018-01-30 10:39:39 +01:00
Paulus Schoutsen
183e0543b4
Clean up entity component ( #11691 )
...
* Clean up entity component
* Lint
* List -> Tuple
* Add Entity.async_remove back
* Unflake setting up group test
2018-01-22 22:54:41 -08:00
Adam Mills
aa6b37912a
Fix async missing decorators ( #10628 )
2017-11-16 21:03:05 -08:00
Pascal Vizeli
b292a4af3f
EntityComponent: revert warning ( #10078 )
...
* Add warning back
* fix lint
2017-10-23 17:39:50 +02:00
Pascal Vizeli
4bf1972393
Remove warning
2017-10-23 08:58:02 +02:00
Pascal Vizeli
56cbfb5f2a
Fix device update / entity_id with names ( #10029 )
...
* Fix device update
* Add tests
* add test for disabled warning
2017-10-22 08:40:00 -07:00
Pascal Vizeli
c1b197419d
Fix async probs ( #9924 )
...
* Update entity.py
* Update entity_component.py
* Update entity_component.py
* Update __init__.py
* Update entity_component.py
* Update entity_component.py
* Update entity.py
* cleanup entity
* Update entity_component.py
* Update entity_component.py
* Fix names & comments / fix tests
* Revert deadlock protection
* Add tests for entity
* Add test fix name
* Update other code
* Fix lint
* Remove restore state from template entities
* Lint
2017-10-19 10:56:25 +02:00
Paulus Schoutsen
d73b695e73
EntityComponent to retry platforms that are not ready yet ( #8209 )
...
* Add PlatformNotReady Exception
* lint
* Remove cap, adjust algorithm
2017-06-26 09:41:48 -07:00
Paulus Schoutsen
18935440ed
Fix EntityComponent handle entities without a name ( #8065 )
...
* Fix EntityComponent handle entities without a name
* Implement solution by Anders
2017-06-17 10:50:59 -07:00
Pascal Vizeli
814834512a
Group service / dynamic handling ( #7971 )
...
* Add Service to group
* Finish service
* Add service functions
* fix lint
* Address paulus comments
* fix lint & cleanup
* fix lint
* fix lint
* fix lint p3
* add test for check group
* add more tests
* fix lint
* Update service.yaml
* Fix order for tests
* Fix comment
* Fix test
* Fix tests
* Fix name in tests
* Fix view
* Fix default value
* Fix lint
* Fix key error
* add name
* migrate component entity
* fix tests
* fix import
* migrate device tracker
* fix lint
* fix bug
* fix logic
* fix lint
* fix tests
* fix generator
* fix group
* fix other tests.
* Not need to load group on first stage anymore.
* fix service
* add more group depency
* fix tests
* Revert "fix tests"
This reverts commit 35a922b3a8
.
* Real fix
* fix test p2
* fix test p3
* fix test p4
* fix test p5
* fix test p6
* fix lint
* fix test p7
* Rename attribute
* fix group test
* fix bug
* fix flagy tests
* fix service.yaml
* fix lint
2017-06-16 00:52:28 +02:00
Paulus Schoutsen
640c692e1f
Fix platforms being able to block startup ( #7970 )
2017-06-09 12:11:58 +02:00
Paulus Schoutsen
f43db3c615
Replace executor with async_add_job ( #7658 )
...
* Remove executor
* Lint
* Lint
* Fix tests
2017-05-26 08:28:07 -07:00
Anton Sarukhanov
7055fddfb4
Don't block startup more than 60 seconds while waiting for components. ( #7739 )
2017-05-23 14:29:27 -07:00