Thunderbird CardDAV address book synchronization fails when VCARD contains custom property
I have a SOGo server that holds my address book. The SOGo web interface allows setting of custom properties, something I have used for a long time without problems. I have accessed the address book with Thunderbird both on Windows and Linux (today Windows 11 and Debian 12).
Lately I have problems with synchronization and now I have tried to understand why. I believe that the problem is connected with the transition to vCard Storage in Thunderbird. (See https://developer.thunderbird.net/thunderbird-development/codebase-overview/address-book)
In the Thunderbird error console (on Debian 12 using Thunderbird 115.11.0(64-bit)) I get for a simple VCARD with one custom property (which I created in SOGo):
09:24:18,136 carddav.sync: Error parsing: BEGIN:VCARD UID:56377-6667FA00-1F-59090880.vcf VERSION:3.0 CLASS:PUBLIC PROFILE:VCARD N:With Custom 1;AAAAAAA FN:AAAAAAA CUSTOM1:My custom value END:VCARD CardDAVDirectory.jsm:595:15
09:24:18,136 NS_ERROR_UNEXPECTED: Unable to set Custom1 as a property, use vCardProperties
setProperty resource:///modules/AddrBookCard.jsm:394 vCardToAbCard chrome://sogo-connector/content/messenger/startup-overlay.js:551 fetchAllFromServer resource:///modules/CardDAVDirectory.jsm:590
CardDAVDirectory.jsm:596:19
It does not matter if the SOGo Connector plugin is activated or not.
Best regards Jan
Krejt Përgjigjet (1)
I got some further. Now I believe that the problem is in SOGo. The custom property in the VCARD should rather be: X-CUSTOM1;VALUE=TEXT:My custom value
That is the format Thunderbird uses. That should hopefully be in line with the CardDAV spec (https://www.rfc-editor.org/rfc/rfc6352#page-17 6.3.2.2. Non-Standard vCard Properties and Parameters).
Jan