Open Bug 1668791 Opened 5 years ago Updated 1 month ago

Carddav enhancement - syncronisation of address lists

Categories

(Thunderbird :: Address Book, enhancement)

Thunderbird 115
enhancement

Tracking

(Not tracked)

UNCONFIRMED

People

(Reporter: Lukas.Wringer, Unassigned)

References

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.0; rv:73.0) Gecko/20100101 Firefox/73.0

Steps to reproduce:

At the moment the address list feature is not available to carddav adress books (but the button is shown ;-).

The Groupware-Solution SOGo in combination with their plugin allowed this up until now as they are removing their own provider in favour of the offical implementation

Actual results:

No creation and syncronisation of lists to a carddav adress book is possible

Expected results:

Address Lists should be creatable and be 'syncable'. I am not sure if the VLIST-Format (vcard style format for list) is SOGo specific or if it is a offial draft / part of the vcard standard but is there a way to at least make the API (or whatever) as open to allow a plugin the creation of this kind?

Another way to implement this feature would be the use of categories to mimic lists like TBSync and Cardbook did

We would also like to see this feature.

OS: Unspecified → All
Hardware: Unspecified → All
Version: 78 → Thunderbird 91

Heads up - the category based solution failed for nested lists (against GMAIL) - a list one of whose members is another list. GMAIL "converted" the list to a new contact, and then when the list was updated in Thunderbird from GMAIL, it was broken.

We would also like to see this feature. Using lists is preferable to full address books for a couple of reasons.

The main reason for us to use lists is that a contact be in one address book and used in multiple lists. If their information changes they only need to be updated in a single place - not in multiple address books.

It is also just easier for people to, for example, type 'supervisors' in the 'TO' field and e-mail all supervisors at once.

+1 for support of lists in CardDAV address books. I would like to replace all my local address books (currently synced to an HTTP server using the Addressbooks Synchronizer plugin) with CardDAV address books and and support of lists appears to be the one thing preventing me from completing that transition.

I'd love to see this, even if nested lists are not yet working - or never will. I would be fine with a warning message for nested lists and flat, unnested lists working.

We would also like to see this feature.

Like to see this feature added to CardDav address books.

After looking into CardBook a bit I found out that there is actually a "RFC-way" of managing "lists": https://www.rfc-editor.org/rfc/rfc6350.html#section-6.6.5 -> The 'Member' attribute is probably the right way of implementing Lists. These attributes can either link to existing contacts (uuid) or by adding 'external' links to add addresses that do not exist in the address book already...

BEGIN:VCARD
VERSION:4.0
PRODID:-//Thunderbird.net/NONSGML Thunderbird CardBook V76.3//DE
UID:662cc48c-06a4-11ed-8eb1-2f93935d8740
FN:TestList
KIND:group
MEMBER:mailto:test@example.org
MEMBER:urn:uuid:c68649c0-06a4-11ed-afe5-37118a0050d8
MEMBER:urn:uuid:cc0847d6-06a4-11ed-b209-2b855f973b0f
REV:20220718T133958Z
END:VCARD

There is a simmilar Bug #1777474 for local address books that also mentioned this feature.

Version: Thunderbird 91 → Thunderbird 102

It also works in CardDAV v3 with X-ADDRESSBOOKSERVER- prefixed fields:
BEGIN:VCARD
VERSION:3.0
PRODID:-//Thunderbird.net/NONSGML Thunderbird CardBook V73.0//FR
UID:662cc48c-06a4-11ed-8eb1-2f93935d8740
FN:TestList
REV:2022-08-18T23:02:43Z
X-ADDRESSBOOKSERVER-KIND:group
X-ADDRESSBOOKSERVER-MEMBER:mailto:test@example.org
X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:c68649c0-06a4-11ed-afe5-37118a0050d8
X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:cc0847d6-06a4-11ed-b209-2b855f973b0f
END:VCARD

(In reply to Bruno Pagani from comment #9)

It also works in CardDAV v3 with X-ADDRESSBOOKSERVER- prefixed fields:
BEGIN:VCARD
VERSION:3.0
PRODID:-//Thunderbird.net/NONSGML Thunderbird CardBook V73.0//FR
UID:662cc48c-06a4-11ed-8eb1-2f93935d8740
FN:TestList
REV:2022-08-18T23:02:43Z
X-ADDRESSBOOKSERVER-KIND:group
X-ADDRESSBOOKSERVER-MEMBER:mailto:test@example.org
X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:c68649c0-06a4-11ed-afe5-37118a0050d8
X-ADDRESSBOOKSERVER-MEMBER:urn:uuid:cc0847d6-06a4-11ed-b209-2b855f973b0f
END:VCARD

Not really, the "X-" prefix is an indication of a non-standard product/environment specific extension to a format.

In this case I would asume it is an compatibility extension of your CardDAV service or TB Plugin to connect to vCard 3 Clients without endangering the list entries to be damaged...

You’re right. This is under the CardBook extension for Thunderbird (using Radicale as the CardDAV server, so v3), I did not realize it wasn’t working on my other clients (other than TB native I mean, since I came here looking why it did not show properly there). Should I open another ticket to ask whether Thunderbird could also support this on v3 too?

This needs to be implemented, otherwise remote address books are pretty useless.

See Also: → 1650733

Is there any solution already ? I am on thunderbird 102.6.1 and still no lists on cardav (gmail) accounts. Card book did not do it either.

Version: Thunderbird 102 → Thunderbird 115

+1 for supporting lists in CardDav address books. In our opinion it is a "must have" for small businesses.
Regards

(In reply to Lukas.Wringer from comment #8)

After looking into CardBook a bit I found out that there is actually a "RFC-way" of managing "lists": https://www.rfc-editor.org/rfc/rfc6350.html#section-6.6.5 -> The 'Member' attribute is probably the right way of implementing Lists. These attributes can either link to existing contacts (uuid) or by adding 'external' links to add addresses that do not exist in the address book already...

Do you know if servers support this?

Duplicate of this bug: 1960550

I think this is a bit of a chicken and egg problem - also it is not really easy to pull out that information which server does what exactly for example Nextcloud conatcts does ues vCard 4.0 - but store lists/groups still as categories - and Apple does use the group/member style but with its own "X-" extension. Radicale is waiting on a library they use to support vCard 4.0.

Client wise DAVx5 (and Android Contacts) do support the vCard 4 style - They actually have a list with tested services and they mention which way lists/groups are supported: https://www.davx5.com/tested-with and if I'm reading it correctly "groups are separate VCards" does mean vCard 4.0 (like described here: https://www.davx5.com/faq/cant-manage-groups-on-device) - So DAVical, Fastmail, fruux, Synology for example

SOGo has a tracking bug (https://bugs.sogo.nu/view.php?id=1205) because they use their own format 'vlist' but they dropped their own CardDAV implementation (thunderbird plugin) in favour of native Thunderbird a while ago and thus lost the ability to sync lists to carddav clients completely. They are in the middle of a complete rewrite of their code base as the move entirely to python - so I very much hope when they write a completely new system from the ground up that the start with vCard 4.0 and not with old stuff but that is only a look into the 'crystal ball' as a german saying goes ;-)

An earlier comment mentions categories as a possible substitute for lists.
I am more interested in categories than in lists.
Could lists be used as a substitute for categories?

Why not simply substitute CardBook, which is a long-lived, well-respected TB add-on, for the current built-in CardDAV support?
This idea has been supported by TB users for many years.
CardBook supports CardDAV 4 and includes labels / groups as implemented by Google. This works in lieu of mailing lists for me.

Looking from an enterprise perspective relying on a third party plugin for core functionality is very risky. CardBook may have been proven reliably and quick to adapt to newer versions of Thunderbird in the past - but there is still at least some latency involved (which can cause missing security updates to Thunderbird) and we already had this issue once before where we were locked down to TB68 for literal years because we were relying on a plugin / its functionality that was unable to be adapted beyond TB68.

Which is why we did invest much manpower to transition back to Thunderbirds native functionality to no longer bind us to volatile plugins and be able to continually update Thunderbird.

Well said, thanks Lukas!
This exactly hits the point!

(In reply to Lukas.Wringer from comment #21)

Looking from an enterprise perspective relying on a third party plugin for core functionality is very risky. CardBook may have been proven reliably and quick to adapt to newer versions of Thunderbird in the past - but there is still at least some latency involved (which can cause missing security updates to Thunderbird) and we already had this issue once before where we were locked down to TB68 for literal years because we were relying on a plugin / its functionality that was unable to be adapted beyond TB68.

Which is why we did invest much manpower to transition back to Thunderbirds native functionality to no longer bind us to volatile plugins and be able to continually update Thunderbird.

Perhaps you misunderstood the thrust of my suggestion. I much prefer native functionality to add-ons. I am therefore proposing that CardBook code (which is open source) be incorporated into Thunderbird in place of the existing native CardDAV support, which is inferior. This suggestion was made already nearly 10 years ago and has been endorsed by the author(s) of CardBook, who could presumably be invited to join Thunderbird's maintenance team.

That indeed would be nice but looking at the work that has already been made for thunderbirds own carddav support that is rather unlikely...

Indeed, sad that it wasn't considered when first proposed, before so much effort was invested in the existing native CardDAV support.
Nonetheless, it might still be worth considering.
See https://en.wikipedia.org/wiki/Sunk_cost

+1 for supporting carddav lists in TB addressbook.
I use Zimbra as a server, which supports lists.
These lists appear in TB but they are just empty.

You need to log in before you can comment on or make changes to this bug.