Commit Graph

44 Commits (307ae5306682efc3439d55ed6ef7f8fab51e5744)

Author SHA1 Message Date
Marc Mueller 921430d497
Import Generator from collections.abc (3) (#120916) 2024-07-01 12:09:11 +02:00
epenet fbaba3753b
Fix root-import pylint warning in components (#119294)
* Fix root-import pylint warning in components

* Adjust

* Adjust
2024-06-10 15:14:49 +02:00
Marc Mueller 33ed4fd862
Import Generator from typing_extensions (3) (#118990) 2024-06-06 17:28:59 +02:00
Rami Mosleh cab58fa9b2
Check if imap message text has a value instead of checking if its not None (#118901)
* Check if message_text has a value instead of checking if its not None

* Strip message_text to ensure that its actually empty or not

* Add test with multipart payload having empty plain text
2024-06-06 14:10:03 +02:00
J. Nick Koston 481de8cdc9
Ensure config entry operations are always holding the lock (#117214)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-05-12 08:20:08 +09:00
Luca Angemi fc1ebdaaa3
Add config message items selector to imap option flow (#115108)
* Update const.py

* Update config_flow.py

* Update coordinator.py

* Update coordinator.py

* Update strings.json

* Update config_flow.py

* Update const.py

* Update coordinator.py

* Update config_flow.py

* Update config_flow.py

* Update test_diagnostics.py

* Update const.py

* Update test_init.py

* Update test_diagnostics.py

* Update test_diagnostics.py

* Update test_diagnostics.py

* Update test_init.py

* Update test_diagnostics.py

* Update test_init.py

* Update test_diagnostics.py

* Update test_diagnostics.py

* Update test_diagnostics.py

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update test_init.py

* Update const.py

* Only make text and headers optional

* Add message data tests

* Add message data test

* Update test_config_flow.py

* Update test message data

* Fix ruff

* Fix ruff

* Update test_init.py

* Update strings.json

---------

Co-authored-by: jbouwh <jan@jbsoft.nl>
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2024-04-08 19:34:50 +02:00
Jan Bouwhuis 8b5177e989
Add IMAP fetch service (#115127)
* Add IMAP fetch service

* Fix docstr
2024-04-08 09:50:28 +02:00
Jan Bouwhuis 83b56ab005
Add IMAP seen, move and delete service (#114501)
* Add seen, move and delete IMAP services

* Add entry_id to the imap_content event data

* Use config validation library

* Add tests

* Add logging

* Typo in docstr

* Add guard
2024-04-02 23:05:05 +02:00
Joost Lekkerkerker 906d3198e3
Use is in enum comparison in config flow tests F-J (#114670)
* Use right enum expression F-J

* Fix
2024-04-02 23:01:37 +02:00
Luca Angemi 54c5f18aac
Add `uid` attribute to `imap_content` event data (#114432)
* Add uid to imap event

* Add ´uid´ to tests

* Update test_init.py
2024-03-29 15:04:24 +01:00
Joost Lekkerkerker 7ae852e5ed
Enable ISC ruff rule (#113270) 2024-03-14 10:43:03 +01:00
Marc Mueller aa16a9d707
Add empty line after module docstring (3) (#112750) 2024-03-08 20:38:34 +01:00
Marc Mueller 32f3f46542
Add empty line after module docstring (2) [tests.components] (#112737) 2024-03-08 19:16:21 +01:00
Marc Mueller c88b337600
Add empty line after module docstring [tests f-k] (#112709) 2024-03-08 14:50:04 +01:00
Jan Bouwhuis 8aa4157290
Add entry diagnostics to imap integration (#109460) 2024-02-09 11:30:27 +01:00
Marc Mueller 7a89e58873
Use builtin TimeoutError [e-i] (#109679) 2024-02-05 12:00:37 +01:00
Jan Bouwhuis 7cc0b8a2fe
Fix imap message part decoding (#109523) 2024-02-04 21:25:14 +01:00
Robert Resch 6fdad44941
Improve invalid error messages in the config flows (#108075) 2024-01-30 12:24:19 +01:00
J. Nick Koston 5177d022e8
Switch imap to use async_update_reload_and_abort helper (#108935) 2024-01-26 22:55:26 -05:00
Jan Bouwhuis 9a38e23f28
Fix imap does not decode text body correctly (#104217) 2023-11-19 20:15:02 +01:00
Jan Bouwhuis 78f827697e
Remove imap_email_content integration (#101233) 2023-10-02 08:57:16 +02:00
Jan Bouwhuis e84a4661b0
Add intial property to imap_content event data (#100171)
* Add initial property to imap event data

* Simplify loop

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* MyPy

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-12 18:54:32 +02:00
Jan Bouwhuis b815ea1332
Revert "Remove imap_email_content integration" (#99713) 2023-09-06 11:54:18 +02:00
Jan Bouwhuis c64d173fcb
Remove imap_email_content integration (#99484) 2023-09-05 21:50:51 +02:00
Marc Mueller 5ae366957f
Fix imap test RuntimeWarning (#98865) 2023-08-23 10:52:19 +02:00
Jan Bouwhuis 65ebb6a74f
Improve imap error handling for config entry (#96724)
* Improve error handling config entry

* Removed CancelledError

* Add cleanup

* Do not call protected async_set_state()
2023-07-17 09:44:47 +02:00
Jan Bouwhuis 72458b6672
Add feature to turn off using IMAP-Push on an IMAP server (#96436)
* Add feature to enforce polling an IMAP server

* Add test

* Remove not needed string tweak

* Rename enforce_polling to enable_push

* Push enabled by default
2023-07-14 21:26:35 +02:00
Franck Nijhof 3e85a29b86
Move overlapping pylint rules to ruff, disable mypy overlap (#94359) 2023-06-27 17:42:46 +02:00
Jan Bouwhuis 5e55f83cbc
Correct imap sensor measurement class and add suggested precision (#94060)
* Fix imap sensor measurement class and precision

* Test measurement class is set correctly

* Remove unrelated changes

* Move EntityDescription to module level
2023-06-16 00:44:58 +02:00
Jan Bouwhuis 7a195b5291
Fix imap crash on email without subject (#94230) 2023-06-08 11:11:12 +02:00
Jan Bouwhuis 1e0770ff8a
Add ssl_verify option to imap integration (#93811)
* Add ssl_verify option to imap integration

* Add test
2023-05-30 19:48:47 +02:00
Jan Bouwhuis 4c0d169cfc
Fix imap parsing non rfc compliant date crash (#93630)
* Fix imap parsing non rfc compliant date crash

* Use parsedate_to_datetime from mail.utils
2023-05-28 13:28:11 +02:00
Jan Bouwhuis 1b5d207984
Add imap custom event data template (#93423)
* Add imap custom event template

* Add template validation
2023-05-25 11:05:25 +02:00
Jan Bouwhuis 5bc825a8ab
Add advanced imap option to set custom event max message size (#93163) 2023-05-22 12:14:06 +02:00
Jan Bouwhuis c97e0f11a5
Fix last imap message is not reset on empty search (#93119) 2023-05-15 21:15:10 +02:00
Jan Bouwhuis 3f6541a6db
Add cipher list option to IMAP config flow (#91896)
* Add cipher list option to IMAP config flow

* Use client_context to get the ssl_context

* Formatting

* Add ssl error no make error handling more specific

* Make ssl_ciper_list an advanced option
2023-04-24 15:37:21 +02:00
Jan Bouwhuis 94817f61e5
Suppress imap logging on reconnect and presume state (#90826) 2023-04-05 12:18:16 +02:00
Jan Bouwhuis 580b20b0a8
Deprecate imap_content_sensor (#90429)
* Deprecate imap_content_sensor

* Rename unique_id to issue_id

* Migrate config to imap entry

* Improve dialogs

* Improve dialog texts

* Add repairs.py to .coveragerc

* Test the integration component setup

* Text tweak

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

* Use flow for creating entries

* Rename schema add tests

* Patch client instead

* Add tests repairs - refactor async_step_confirm

* Comments test, correct calling next step

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-03 07:27:41 +02:00
Jan Bouwhuis 93e1cd8dd8
Add header with parsed date to imap event data (#90422) 2023-03-28 22:50:25 +02:00
Jan Bouwhuis 24d0d15f38
Implement imap_content event for imap integration (#90242) 2023-03-28 21:02:43 +02:00
Jan Bouwhuis 5b3c57ff1e
Add option flow for imap integration (#89914)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-27 11:47:22 +02:00
Jan Bouwhuis 51b12cbf96
Add user_input as suggested value in imap config flow (#89982)
Add user_input as suggested value to config_schema
2023-03-20 15:52:54 +01:00
Jan Bouwhuis e4275a053c
Remove yaml import from imap integration (#89981)
* Remove yaml import from imap integration

* Cleanup sensor code and strings.json
2023-03-20 15:52:07 +01:00
Rami Mosleh a0e18051c7
Add config flow to imap (#74623)
* Add config flow to imap

fix coverage

fix config_flows.py

* move coordinator to seperate file, remove name key

* update intrgations.json

* update requirements_all.txt

* fix importing issue_registry

* Address comments

* Improve handling exceptions on intial connection

* exit loop tasks properly

* fix timeout

* revert async_timeout

* Improve entity update handling

* ensure we wait for idle to finish

* fix typing

* Update deprecation period

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-09 11:41:47 +01:00