pimutils / pimutils/vdirsyncer
InvalidXMLResponce when syncing with Baikal
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.9k
- Forks
- 185
- Avg merge
- 11h 49m
- Merged PRs (30d)
- 1
Description
When starting vdirsyncer discover with all the entries in the config-file and using for url = "https://baikal.xxx.de" I'm getting the following error:
Discovering collections for pair my_contacts
my_contacts_local:
warning: Failed to discover collections for my_contacts_remote, use `-vdebug` to see the full traceback.
error: The server returned something vdirsyncer doesn't understand. Error message: InvalidXMLResponse("Couldn't find home-set.",)
error: While this is most likely a serverside problem, the vdirsyncer devs are generally interested in such bugs. Please report it in the issue tracker at https://github.com/pimutils/vdirsyncer/issues
Discovering collections for pair my_calendar
my_calendar_local:
warning: Failed to discover collections for my_calendar_remote, use `-vdebug` to see the full traceback.
error: The server returned something vdirsyncer doesn't understand. Error message: InvalidXMLResponse("Couldn't find home-set.",)
error: While this is most likely a serverside problem, the vdirsyncer devs are generally interested in such bugs. Please report it in the issue tracker at https://github.com/pimutils/vdirsyncer/issues
error: 2 out of 2 tasks failed.
With -vdebug the lines before the first warning are:
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/cli/discover.py", line 204, in _print_collections
debug: discovered = get_discovered()
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/cli/discover.py", line 133, in get_self
debug: return self._discovered
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/utils.py", line 170, in __get__
debug: obj.__dict__[self.__name__] = result = self.fget(obj)
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/cli/discover.py", line 142, in _discovered
debug: return handle_storage_init_error(self._cls, self._config)
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/cli/discover.py", line 138, in _discovered
debug: discovered = list(self._cls.discover(**self._config))
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/storage/dav.py", line 251, in discover
debug: for c in self.find_collections():
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/storage/dav.py", line 211, in find_collections
debug: return self._find_collections_impl(self.find_home())
debug: File "/usr/lib/python3/dist-packages/vdirsyncer/storage/dav.py", line 198, in find_home
debug: raise InvalidXMLResponse('Couldn\'t find home-set.')
warning: Failed to discover collections for my_contacts_remote, use `-vdebug` to see the full traceback.
vdirsyncer 0.16.2
Baikal 0.5.0
Python 2.7.15rc1 and 3.6.7
Ubuntu 18.04
Thank you for your help. I would be very happy if it'll work!
Update: it doesn't work with url = "https://baikal.xxx.de//card.php/principals/xxx", with just one / after the domain or with only card.php.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in vdirsyncer/storage/dav.py at find_home(), _find_collections_impl(), and discover(), then reproduce the failure with the Baikal configuration and -vdebug. Compare the response handling around the reported “Couldn't find home-set” error; done when the Baikal discovery behavior is understood and the issue has a verified resolution or a clearly documented incompatibility.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100