-
-
Notifications
You must be signed in to change notification settings - Fork 100
Description
Hello CalDav Synchronizer Team,
I am experiencing a persistent 403 Forbidden error when trying to synchronize my Outlook calendar with WeChat Work CalDAV. The error message clearly indicates the root cause: "request on collections with depth in header of "Infinity" is not allow".
Here is the exact error message from the synchronization report:
XML
企业微信 584f8fab-1471-4479-8475-d341ad2d1215 2025-06-05T02:23:28.7868119Z CalDavSynchronizer.DataAccess.WebDavClientException: Response status code does not indicate success: '403' ('Forbidden'). Message: <?xml version="1.0" encoding="utf-8" ?> <D:multistatus xmlns:D="DAV:" > <D:response> <D:href>/calendar/F23bnQ8vkyEK5gfRmgIAAAo/</D:href> <D:status>HTTP/1.0 403 Forbidden</D:status> <D:error><CC:propfind-finite-depth xmlns:CC="DAV:"/></D:error> <D:responsedescription>request on collections with depth in header of "Infinity" is not allow</D:responsedescription> </D:response> </D:multistatus>在 CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<EnsureSuccessStatusCode>d__10.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<ExecuteWebDavRequest>d__9.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<ExecuteWebDavRequestAndReadResponse>d__7.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 CalDavSynchronizer.DataAccess.WebDavDataAccess.<CollectionSync>d__15.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 CalDavSynchronizer.Implementation.CalDavRepository1.<GetFullRepositoryState>d__21.MoveNext() --- 引发异常的上一位置中堆栈跟踪的末尾 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 GenSync.Synchronization.Synchronizer11.<Synchronize>d__27.MoveNext()
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 GenSync.Synchronization.ContextCreatingSynchronizerDecorator`7.<Synchronize>d__3.MoveNext()
--- 引发异常的上一位置中堆堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 CalDavSynchronizer.Scheduling.SynchronizationProfileRunner.<RunAndRescheduleNoThrow>d__22.MoveNext()
false
00:00:01.1378730
It appears that CalDav Synchronizer is sending a PROPFIND request with a Depth: Infinity header, which the WeChat Work CalDAV server explicitly disallows.
Steps I have already tried, but which did not resolve the issue:
Toggling "Use WebDAV Collection Sync" option: I tried both enabling and disabling this option in the profile settings, but the error persists.
Modifying CalDavSynchronizer.dll.config file: I edited the CalDavSynchronizer.dll.config file (located in C:\Program Files (x86)\CalDavSynchronizer) to include/modify the following system.net settings, hoping to influence underlying HTTP request behavior:
<system.net>
</system.net>
After modifying the file, I completely restarted Outlook each time. The error remained unchanged.
3. Checking UI and documentation: I have thoroughly reviewed the CalDav Synchronizer user interface and the official documentation (https://caldavsynchronizer.org/help/documentation/) for any direct options to control the PROPFIND Depth (e.g., setting it to Depth: 0 or Depth: 1), but could not find any such explicit setting.
My Request:
Since the WeChat Work CalDAV server strictly prohibits Depth: Infinity requests, and there appears to be no configurable option within the application to modify the PROPFIND depth, I kindly request the following:
Could you please advise if there is a hidden or undocumented setting in CalDav Synchronizer that allows controlling the PROPFIND depth (e.g., to send Depth: 1 instead of Depth: Infinity)?
If not, would it be possible to consider adding this functionality in a future release, perhaps as an advanced option, or to implement specific compatibility logic for servers like WeChat Work CalDAV that have this restriction?
Additional Information:
CalDav Synchronizer Version: (4.6.0.0)
Outlook Version: ( 适用于 Microsoft 365MSO (版本 2505 Build 16.0.18827.20102) 64 位)
Operating System: (Windows 11 专业版 Insider Preview Windows 功能体验包 1000.26100.121.0)
Thank you for your time and assistance!