On 08/11/2025 16.59, Thilo Molitor wrote:
I'm volunteering to write a XEP adding an
<extensions/> element
alongside the
<group/> element to allow arbitrary extensions for roster items.
Extending roster items is tempting and seems like an ideal fit at first,
but there is a reason this isn't usually done (probably besides some
internal deployments):
It's fragile, inefficient, and there are better alternatives.
There is a good summary of the problems that come up in the "Bookmarks 2
extensibility" thread from Nov 2019. I'll try to come up with a link
(assuming this is still accessible somehow).
Basically, things you have to keep in mind include: you have to avoid
clients overriding unknown extensions when re-submitting things. You may
end-up with having to resubmit extensions even though you did not modify
them (which is ineffective). You may want to distinguish between
extensions that have been synthesized by the server.
A dedicated PubSub node is in every case the better approach.
- Florian