1
mirror of https://github.com/home-assistant/core synced 2024-09-15 17:29:45 +02:00
Commit Graph

92 Commits

Author SHA1 Message Date
Allen Porter
abb1328a67
Fix for Google Calendar API returning invalid RRULE:DATE rules (#103870) 2023-11-12 13:44:26 -05:00
Jan-Philipp Benecke
04a497343d
Update f-g* tests to use entity & device registry fixtures (#103841) 2023-11-12 13:07:38 +01:00
Allen Porter
3f70437888
Add support to Google Calendar for Web auth credentials (#103570)
* Add support to Google Calendar for webauth credentials

* Fix broken import

* Fix credential name used on import in test

* Remove unnecessary creds domain parameters

* Remove unnecessary guard to improve code coverage

* Clarify comments about credential preferences

* Fix typo

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-11-10 22:49:10 -08:00
Allen Porter
6f5a72edf2
Bump gcal_sync to 5.0.0 (#102010)
* Bump gcal_sync to 5.0.0

* Update snapshots
2023-10-15 11:24:41 -07:00
Allen Porter
bd38fd9516
Add google calendar required feature for create event service (#101741)
* Add google calendar required feature for create event service

* Update docstring
2023-10-10 20:48:46 -07:00
Allen Porter
1635cbb8a6
Add a google calendar diagnostics platform (#101175) 2023-10-06 17:08:50 +02:00
Ville Skyttä
902f997ee0
Fix google invalid token expiry test init for UTC offsets > 0 (#100533)
```
$ python3 -q
>>> import datetime, time
>>> time.tzname
('EET', 'EEST')
>>> datetime.datetime.max.timestamp()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: year 10000 is out of range
```
2023-09-18 12:39:43 +03:00
Ville Skyttä
9da192c752
Avoid use of datetime.utc* methods deprecated in Python 3.12 (#93684)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-08-24 16:38:22 +02:00
Allen Porter
93eac97983
Relax the constraint that events must have a consistent timezone for start/end (#91788) 2023-04-21 10:25:52 -04:00
Allen Porter
14b95ffe3a
Relax calendar event validation to allow existing zero duration events (#91129)
Relax event valudation to allow existing zero duration events
2023-04-10 10:04:42 -04:00
Allen Porter
23af02b941
Make location optional in google calendar create service (#91061) 2023-04-08 22:40:39 -04:00
Luca Angemi
6d8eaa0bee
Add location field to calendar create_event service supported by Google Calendar and Local Calendar (#90098)
* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update calendar.py

* Update calendar.py

* Update services.yaml

* Update services.yaml

* Update calendar.py

* Update calendar.py

* Update __init__.py

* Update services.yaml

* Update services.yaml

* Update test_calendar.py

* Update test_init.py

* Update test_init.py

* Update test_init.py

* Update test_init.py

* Update __init__.py

* Update const.py

* Address changes to service.yaml

* Address changes to service.yaml

* Update test_calendar.py

* Update test_calendar.py

* Update test_calendar.py

* Update conftest.py

* Update conftest.py

* Update calendar.py

* Update __init__.py
2023-03-25 09:43:49 -07:00
Allen Porter
4ddcb14053
Add additional CalendarEvent validation (#89533)
Add additional event validation
2023-03-14 20:27:38 -04:00
epenet
71dc98a39c
Improve hass_ws_client type hint in tests (#89703) 2023-03-14 16:31:40 +01:00
Franck Nijhof
ed79265843
Enable Ruff PT006 (#88165)
* Enable Ruff PT006

* Adjust existing cases

* Fix tests

* Remove unneeded parentheses
2023-02-15 14:09:50 +01:00
epenet
b68f502769
Add type hints to integration tests (part 7) (#87980) 2023-02-13 09:53:09 +01:00
Allen Porter
4d186366bd
Improve Google Calendar config flow error message when API disabled (#87889) 2023-02-12 18:28:44 +01:00
Allen Porter
7ff1265b10
Add service to create calendar events (#85805) 2023-01-25 12:43:50 +01:00
Allen Porter
6b6f115d7e
Fix handling of empty google_calendars.yaml file (#84909)
fixes undefined
2022-12-31 11:50:56 +01:00
Allen Porter
2049993941
Check google calendar API scope to determine if write access is enabled (#84749)
* Check google calendar API scope to determine if write access is enabled

* Add API scope for calendar service for creating events
2022-12-29 11:00:31 +01:00
Allen Porter
f9779d3e97
Bump gcal-sync to 4.1.0 (#84474)
* Bump gcal-sync to 4.1.0

* Update test with UNTIL improvements
2022-12-22 23:28:12 -05:00
Allen Porter
d41fe01736
Don't allow google calendar create/delete for yaml/search calendars (#83604)
* Update tests/components/google/test_calendar.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Don't allow google calendar create/delete for yaml/search calendars

* Revert incorrect docstring update

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-21 07:36:37 -08:00
Allen Porter
4e1b399efd
Fix google calendar recurrence rule create and view (#84330)
* Fix bug in google calendar recurrence rule handling

* Convert multiline ternary operator expressions to if block
2022-12-21 07:36:20 -08:00
Allen Porter
1ac7f5f013
Make google calendar fail louder on invalid google_calendars.yaml (#83668)
* Make google calendar fail louder on invalid google_calendars.yaml

* Update homeassistant/components/google/__init__.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/google/__init__.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-12-10 09:26:28 -08:00
Allen Porter
5d1ca73a34
Add create and delete for Google Calendar events (#83034)
* Add Google Calendar create/delete support

Includes editing for recurring events

* Fix default calendar access role

* Formatting improvements

* Address other details that have changed due to local sync

* Update tests/components/google/test_calendar.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update tests/components/google/test_calendar.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update tests/components/google/test_calendar.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Increase test coverage

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-01 21:39:58 +01:00
Allen Porter
e6d1a4a422
Revert google calendar back to old API for free/busy readers (#81894)
* Revert google calendar back to old API for free/busy readers

* Update homeassistant/components/google/calendar.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-11-10 08:31:28 -08:00
Allen Porter
f34de5072a
Bump gcal_sync to 4.0.1 to fix Google Calendar config flow (#81873)
Bump gcal_sync to 4.0.1

This reverts test chagnes from PR #81562 that were actually incorrect given
the calendar "get" API returns less information that the "CalendarList" api.
2022-11-09 19:34:31 -08:00
Allen Porter
0941ed076c
Cleanup unnecessary google calendar test fixtures (#81876) 2022-11-09 20:59:00 +01:00
Allen Porter
2ad1d31119
Bump gcal_sync to 4.0.0 (#81562)
* Bump gcal_sync to 2.2.4

* Bump gcal sync to 4.0.0

* Add Calendar accessRole fields which are now required
2022-11-05 17:06:34 -07:00
Allen Porter
ba8fd6b01e
Google calendar test cleanup, avoiding dupe config entry setup (#81256) 2022-10-30 23:07:10 +01:00
Allen Porter
0e2bea038d
Update Google Calendar to synchronize calendar events efficiently (#80925)
* Sync google calendar and serve from local storage

Update to use new gcal_sync APIs
Update google calendar filter logic
Remove storage on config entry removal
Make timeline queries timezone aware
Do not block startup while syncing

* Minor readability tweaks

* Remove unnecessary args to async_add_entities

* Change how task is created on startup

* Update homeassistant/components/google/calendar.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Revert min time between updates

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-26 07:57:49 -07:00
Allen Porter
e71bd2c20b
Fix google calendar test to match API behavior (#80436) 2022-10-16 14:45:57 -04:00
Allen Porter
a7f33535c7
Fix google calendar event transparency filter (#80438) 2022-10-16 14:45:27 -04:00
Allen Porter
8280b8422c
Remove google calendar configuration.yaml deprecated in 2022.6 (#77814) 2022-09-05 21:12:38 +02:00
Allen Porter
ca5065a627
Improve google calendar config flow timeout error messages (#75364) 2022-07-18 11:44:51 +02:00
Franck Nijhof
af2feb3d40
Update pyupgrade to v2.37.1 (#74989) 2022-07-11 16:54:01 +02:00
Allen Porter
f4e61eff18
Add update coordinator for google calendar (#74690)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-07-10 21:24:52 -07:00
Allen Porter
6f9fcdff99
Improve calendar error handling to match best practices (#74891) 2022-07-10 10:04:57 -07:00
Allen Porter
08d8304a52
Migrate google calendar to new entity naming (#74727)
* Migrate google calendar to new entity naming

* Update homeassistant/components/google/calendar.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-07-08 07:59:50 -07:00
Allen Porter
561c9a77d8
Add google calendar service proper exception handling (#74686) 2022-07-07 20:50:19 -07:00
Allen Porter
a4c6cd2fbe
Cleanup Google Calendar unused test fixtures (#74353) 2022-07-03 17:05:38 +02:00
Allen Porter
02d1676301
Fix unexpected exception in Google Calendar OAuth exchange (#73963) 2022-06-28 13:29:11 -07:00
Allen Porter
d399815bea
Allow multiple google calendar config entries (#73715)
* Support multiple config entries at once

* Add test coverage for multiple config entries

* Add support for multiple config entries to google config flow

* Clear hass.data when unloading config entry

* Make google config flow defensive against reuse of the same account

* Assign existing google config entries a unique id

* Migrate entities to new unique id format

* Support muliple accounts per oauth client id

* Fix mypy typing errors

* Hard fail to keep state consistent, removing graceful degredation

* Remove invalid entity regsitry entries
2022-06-21 06:42:41 -07:00
Allen Porter
ea21a36e52
Remove default use of google calendars yaml file in tests (#73621)
Remove default use of
 google_calendars.yaml in tests
2022-06-17 09:04:41 +02:00
Allen Porter
91cd61804e
Deprecate google calendar add_event service, replaced with entity service (#72473)
* Deprecate google calendar add_event service, replaced with entity service

* Fix inconsistencies and bugs in input validation

* Update validation rules and exceptions

* Resolve merge conflicts
2022-06-09 16:08:08 +02:00
Allen Porter
9d933e732b
Remove google scan_for_calendars service and simplify platform setup (#73010)
* Remove google scan_for_calendars service and simplify platform setup

* Update invalid calendar yaml test
2022-06-03 21:56:53 -07:00
Allen Porter
bdc41bf22a
Fix google calendar bug where expired tokens are not refreshed (#72994) 2022-06-03 16:33:12 -07:00
Allen Porter
e7e48cd9f6
Defer google calendar integration reload to a task to avoid races of reload during setup (#72608) 2022-05-28 20:28:22 -07:00
Allen Porter
a598cdfeb3
Don't import google calendar user pref for disabling new entities (#72652) 2022-05-28 12:51:40 -07:00
Allen Porter
71bc650ac7
Stop updating google_calendars.yaml if it does not already exist (#72340)
* Stop updating google_calendars.yaml if it does not already exist

* Add additional test coverage to make CI pass

* Add test for no updates to google_calendar.yaml

* Add parameter to test for expecting write calls

* Missing call argument

* Remove conditional and replace with inline assert
2022-05-25 08:59:27 +02:00