View Issue Details

IDProjectCategoryView StatusLast Update
0005980SOGoWeb Address Bookpublic2024-06-19 07:15
Reporterjanne Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status newResolutionopen 
PlatformClientOSDebianOS Version12
Product Version5.10.0 
Summary0005980: Custom properties are not in line with CardDAV specification causing synchronization with Thunderbird to fail
Description

When adding a "New Custom Value" using the SOGo web interface and then using "View Raw Source" reveals something like this:
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

The line "CUSTOM1:My custom value" is badly formatted and rejected by Thunderbird with the following output in its error console:
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

If I instead create the custom property in Thunderbird I get:

BEGIN:VCARD
VERSION:3.0
N:;AAAAAAAAAAA created in Thunderbird
FN:AAAAAAAAAAA created in Thunderbird
X-CUSTOM1;VALUE=TEXT:My custom value
UID:2c37315d-60ca-4afd-9f1b-d0ad3e183248
END:VCARD

That should sync well with Thunderbird. However, when editing that card with SOGo web interface the custom value is (of course) not seen.

Furthermore, if I try to remove the custom value I created using the web interface (i.e. the CUSTOM1:My custom value) by clicking on the "-"-sign in front of the value, it disappears but the save button is not enabled. Entering some text in the Note field enables the save button, but the raw result shows:
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
NOTE:Some added text.
END:VCARD

The line "CUSTOM1:My custom value" is still there (and it should not) but it is not visible any more in the web interface, which is odd.

So there are two problems:

1) SOGo should likely format custom properties in the way Thunderbird does which 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).

2) A method to replace the badly formatted custom values with the correct ones needs to be worked out. In my address book there are multiple cards that either has a single CUSTOM line, a single X-CUSTOM line or has both a CUSTOM line and a X-CUSTOM line with the same value. I do not know how the latter happened - having both. (As it is now I can not even delete the problematic CUSTOM lines.)

Additional Information

I run the SOGo web interface on my Debian 12 client machine. The SOGo server runs on my Debian 12 server machine.

I have been using SOGo and custom properties for a long time. This synchronization problem started to occur lately. 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)

TagsNo tags attached.

Activities

Christian Mack

Christian Mack

2024-06-19 07:01

developer   ~0017752

Which Thunderbird Version are you using?
Do you use Add-Ons for synchronisation of address books in Thunderbird?

janne

janne

2024-06-19 07:15

reporter   ~0017753

I am using Thunderbird 115.11.0 (64-bit) on my Debian 12 client machine.
I have SOGo Connector 78.0.1 installed. I have tested to disable it. That did not help.

Issue History

Date Modified Username Field Change
2024-06-11 12:47 janne New Issue
2024-06-19 07:01 Christian Mack Note Added: 0017752
2024-06-19 07:15 janne Note Added: 0017753