-
Notifications
You must be signed in to change notification settings - Fork 163
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
Added option to skip objects the remote fails to provide #866
base: main
Are you sure you want to change the base?
Conversation
vdirsyncer/storage/dav.py
Outdated
@@ -367,7 +367,7 @@ def init_and_remaining_args(cls, **kwargs): | |||
|
|||
def __init__(self, url, username='', password='', verify=True, auth=None, | |||
useragent=USERAGENT, verify_fingerprint=None, | |||
auth_cert=None): | |||
auth_cert=None, ignore_missing_href=False): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't you need to somehow pass this data to this function?
I guess it should be a setting for the storage, is that what you had a mind?
If so, that would be an acceptable change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @WhyNotHugo, yes correct. I have this in my config:
[storage example]
...
ignore_missing_href = true
I'm not sure about the name of the option. It probably won't be obvious what it does for someone that hasn't read the code
Some CalDAV servers announce URLs with @ , but want %40 in the request (and vice-versa). You might want to percent-encode/decode the characters to find out what the server wants. |
I've encountered this problem with Google Calendar's CalDAV implementation too. I believe that the steps to reproduce it are as follows:
Debug log:
I don't know what ICS files are considered 'bad', but perhaps it has something to do with the The contents of this PR are a workaround. |
A "bad" ICS file would be very useful to reproduce this. |
@hvanderheide In your opinion, would this patch fix #1095 as well or is that a different issue? |
I don't really know how to test this patch, but it does make sense IMHO. Have you tested it reliably? |
Knowing how to reproduce the underlying issue would help test this. |
I have not tested this exact patch, but the modification outlined in #1095 which is similar in function, but not configurable. I've had this patch in place since Dec 10th and have had no issues related to this since.
I completely agree - but at least in my case, I have no idea how the Google backend got into the state I'm seeing. |
This PR is already quite old and for me personally obsolete as I moved to a different job. I'm happy to close it if it has little to no value. @vwegert I agree that it looks like a similar use-case. |
To deal with a broken CalDAV implementation (and all-around terrible product) SmarterMail, I needed to be able to skip remote objects that are listed but can't be queried. It even fails to render them in its own calendar webinterface. It seems to fail on certain special characters that can be introduced by external calendar invites. There is little chance it will be fixed upstream, so this seemed the best solution.
Does this feature make sense, as does its implementation?