On 10/03/2024 17.27, Jonas Schäfer wrote:
Dear community,
it's been a while I spoke up here.
I would like to discuss the removal of the following part-sentence from XEP-0030 (in Final status!):
every entity MUST support at least the 'http://jabber.org/protocol/disco#info' feature
I agree that this is a wart of the specification, but personally, I am not sure if the its worth fixing it. That said, I do not have a strong opinion on that. However, I want to point out that…
Announcing that feature is redundant: An entity which replies with a properly constructed `<query xmlns="http://jabber.org/protocol/disco#info"/>` element is bound to (and has always been bound to) have implemented XEP-0030 to the best of its knowledge.
As this is a Final(!) status XEP, here is my estimate of the impact this change has:
- Implementations which required the presence of this feature on the receiving side would now become non-compliant: They might assume that the remote entity did not really support XEP-0030 and fail with an error.
Such implementations would need to be adapted in order to be able to interoperate with implementations which follow a revised version of XEP-0030.
I don't see any other impact.
...there is another impact regarding the caps cache: the footprint of the caps cache would increase, at least during the period where old versions announce the feature, while the updated implementation may not. Furthermore, implementations that persist the caps cache would end up with more-or-less useless entries (which will eventually be pushed out of the cache). That itself is probably not a big deal, but it nicely demonstrates that it is often hard to understand the full impact of a change. Again, I do not favor removing it, nor do I want to keep it. But personally, I feel like there is not much to gained by fixing this. - Florian