-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better support for broken caldav servers: do client-side parsing of rrules on expanded date searches #157
Comments
There is some python code contributed in #86 that may be useful for client-side expansion. |
…ansion failures - also added reference to the github issue. Updates #157
Are you sure about that? I tried your example for this library with fastmail and had some odd results. I have a recurring event starting on the first of June, and I found the number of events returned were the same regardless of whether expand was enabled.
Is that supposed to happen, or does that mean FastMail is faking expansion of recurring events? |
I created a dedicated fastmail account for testing the caldav library and signed up for a "free trial period". As far as I can remember, the test code was passing, which means there should be support for recurring events. I sent a request to the Fastmail support team to keep the account open for free after the trial period had expired, but all they could offer was a 25% discount ... so I can't test more with Fastmail.
If I remember correct, the actual data there is one vCalendar containing multiple vEvents. |
Please could you expand (haha...) on that answer a bit? If I do events_data = calendar.date_search(start=from_date, end=to_date, expand=True) Which property should I be looking at to get the recurring tasks? I tried I tried I tried looking at Not sure how to proceed after that. |
This will be easier in the near future, as soon as the pull request #222 is merged (or check out the branch feature_split_expanded). Then, if you use This got stalled a bit, but I'll try to get it merged and released as v.0.10.1 real soon now. |
By the way, |
Ah that's it, thanks! I see, so icalendar_instance is a good way to do this. I'll use this for now and I'll switch over to the new way in the future, many thanks for your work with this very tricky 'protocol' |
Hi All, Suddenly I get those errors. Never seen them now many in log file:
Home Assistant 2023.1.7 |
Perhaps you have some recurring events in the calendar now, that you didn't have earlier. There is a fix in the pipeline ... home-assistant/core#85536 |
For couple of weeks no new events added in calendar. Some just for 1 hour or so.... So I was surprised with this error |
Well, something must have changed. If I'm not mistaken, the caldav library version was last updated in HomeAssistant in 202203, so unless you recently did a major upgrade of home-assistant it shouldn't be the caldav library. Then it must either be the content from the caldav server or the caldav server itself. I'm not sure how the calendar integration in HomeAssistant works, but I know it's doing a date search - perhaps it's only fetching events in a window around the current date, perhaps there is a recurring event in the calendar that until now has been outside this window. In any case, the error is mostly harmless, except that recurring events most likely won't come up in the calendar ... and a fix is on the way. |
HA version is 2023.1.7 so latest one. That can be the issue. But I see all my appointments in the calendar. So it work. |
Ref #147, #86 and probably many others ...
This caldav client library is expecting the caldav server to handle recurring events.
Unfortunately quite many servers does not support it fully. The list goes like this:
This issue is for making workarounds on the client side if needed, allowing consistent return values to the library user regardless of what the server supports.
davclient
object.Other incompatibility workarounds should be made as separate issues and should refer to this one.
The text was updated successfully, but these errors were encountered: