XSF Discussion - 2022-09-21


  1. Tobias

    What is the recommended way to update an experimental XEP? Like changing something REQUIRED to OPTIONAL and stuff like that? Can it just be updated? Should it be discussed on the mailing list?

  2. Daniel

    are you the author?

  3. Tobias

    yes

  4. Daniel

    most people would probably just update it

  5. Tobias

    alright :)

  6. MattJ

    If it's one of those widely implemented but still experimental ones, I definitely recommend at least notifying the list about the planned changes

  7. MattJ

    If it's just something that has sat idle with no implementations and you're trying to revive it, just go for it

  8. Tobias

    i don't know of any SIMS implementation

  9. MattJ

    Well, doesn't hurt to post to the list and find out :)

  10. Tobias

    ture

  11. Tobias

    true will do that

  12. Link Mauve

    Tobias, I wrote one for Dino once, but they left it bitrot for e2ee reasons IIRC.

  13. Link Mauve

    Tobias, are you aware of XEP-0447?

  14. Tobias

    yes

  15. Tobias

    Link Mauve, it's mostly about dropping the REQUIREMENT for description in the info and making it OPTIONAL, as UX wise it seems horrible to require a description for each attachment

  16. Link Mauve

    Tobias, what are your thought about SIMS vs. XEP-0447?

  17. flow

    fwiw, I don't like breaking changes of experimental xeps without namespace bumps. Tobias: do you plan to bump?

  18. Link Mauve

    flow, this sounds minor enough tbh, I doubt any existing implementation will break on the description not being filled.

  19. Link Mauve

    Tobias, OTOH, it’s quite useful to ask senders to provide basically an @alt text for accessibility reasons.

  20. Tobias

    i think the main differences are 1. ( using Out-of-Band Data (XEP-0066) instead of References for referring to URLs and passing the jingle ID via XML instead of URI) and 2. not using references and mixed content. The instruction make it appear there are more significant differences but I think it boils down to not using references (which I can understand). Having File Info in a dedicated XEP is certainly useful. But if that's only used by a single XEP there is little value to have it distinct.

  21. flow

    Link Mauve, well if something was previously required and now suddenly is not, then implementations could be expected that enforce the existing of the (previously) required data

  22. Tobias

    yeah..i was wondering whether to bump the namespace or not...if there were others implementing it i'd say sure...but if not and it's just experimental anysay

  23. Tobias

    yeah..i was wondering whether to bump the namespace or not...if there were others implementing it i'd say sure...but if not and it's just experimental anyway

  24. Link Mauve

    Tobias, a future version of XEP-0234 should certainly use 0446 as well.

  25. Tobias

    yup

  26. flow

    it's just experimental is rarely a good justification, it has been out there for a long time

  27. Daniel

    flow, while you are here. After having implemented XEP-0440: SASL Channel-Binding Type Capability I think the <sasl-channel-binding/> element should become a direct stream feature instead of a child of sasl2 mechanisms. sasl 2 and sasl 1 will co-exist for quite a while and this removes the overhead of having to announce it twice

  28. Link Mauve

    Tobias, I think Movim was another implementation.

  29. flow

    in any case, we should agree on some rules (even if those are rules I personally do not agree with) and explicitly spell them out

  30. Tobias

    probably makes sense to write to the ML to see if there are other implementations and ask if there are other things people feel that need updating in the XEP

  31. flow

    Daniel, ahh I remember MattJ contacting me with the same: personally I wouldn't design it that way, I wonder if we couldn't do something like: if both sasl1 and sasl2 are there, then the channel binding information may appear only in one element

  32. Daniel

    lol that's worse

  33. flow

    that way, if we ever reach a state of sasl2 only, it will be a part of sasl2 element

  34. flow

    Daniel, personally I think it is worse to not bundle an element which is absolutely related to sasl, not to sasl

  35. flow

    that is, you will never have a channel-binding element without a sasl element

  36. MattJ

    It's not *necessarily* strictly related to SASL

  37. MattJ

    and it's definitely shared between all SASL versions

  38. flow

    MattJ, could you elaborate how channel binding is not related to sasl?

  39. MattJ

    But if we (for some weird reason) came up with some non-SASL authentication protocol that could also take advantage of channel binding, it could easily apply to that too

  40. flow

    that appears to be a far fetched argument

  41. MattJ

    Supported channel binding methods are properties of something that is actually not the SASL implementation in reality

  42. MattJ

    At least today they are mostly properties of the TLS layer

  43. Daniel

    sasl1 going away is simply not very realistic. and I much prefer the bandwidth saving of any perceived syntactical cleanliness

  44. MattJ

    So it seems perfectly natural to me to say "this is what the server supports" outside of any specific SASL protocol

  45. Daniel

    sasl1 going away is simply not very realistic. and I much prefer the bandwidth saving over any perceived syntactical cleanliness

  46. MattJ

    SASL1 is definitely not going anywhere any time soon, but there will be SASL2-only servers (I plan this for Snikket, for example)

  47. MattJ

    It's unnecessarily complex for clients to have to check multiple places for the same info

  48. MattJ

    and it's an unnecessary waste of bytes to duplicate the exact same info for no reason

  49. flow

    that last one is easily agreeable :)

  50. flow

    I don't have a super strong opinion on that. it doesn't appear to be super complex to lookup sthe sasl-channel-binding information in two places, but if this is to much to ask from client developers then we can put it into the stream:features root

  51. flow

    I don't have a super strong opinion on that. it doesn't appear to be super complex to lookup the sasl-channel-binding information in two places, but if this is to much to ask from client developers then we can put it into the stream:features root

  52. MattJ

    This is how I implemented it in Prosody as soon as I added SASL2 support, and multiple client developers independently arrived at the same conclusion. I definitely think it's the best option, and doesn't have any downsides.

  53. Daniel

    > This is how I implemented it in Prosody as soon as I added SASL2 support, and multiple client developers independently arrived at the same conclusion. I definitely think it's the best option, and doesn't have any downsides. πŸ‘

  54. Daniel

    flow, do you want me to create a PR with those changes?

  55. flow

    sure, go ahead

  56. Daniel

    flow, your own xeps calls them stream-features https://xmpp.org/extensions/xep-0440.html

  57. Daniel

    :-)

  58. Daniel

    but I can change all of them if you want?

  59. flow

    Daniel, the existing ones are multipe-word adjectives that are hyphenated

  60. Daniel

    i don’t know the difference but I've applied your suggested changes

  61. flow

    Daniel, the existing ones are multiple-word adjectives that are hyphenated

  62. flow

    thanks

  63. Guus

    What is an appropriate way to provide feedback of a certain proprietary characteristic of a newly established stream in S2S? I was thinking of broadcasting a customer stream feature, but that's mostly aimed at negotiating things, which isn't really the case here. Service Discovery?

  64. MattJ

    Stream features can be used for things that aren't negotiation, for example servers can provide caps hashes there

  65. MattJ

    So if what you want to advertise is a feature of the stream, I think that's fine

  66. MattJ

    If it's a feature of the server or the account, disco#info is also fine

  67. Guus

    it specifically relates to a stream

  68. Guus

    Thanks

  69. MattJ

    Then it sounds like a stream feature is the way

  70. Link Mauve

    Re caps hashes, XEP-0390 has a way to advertise those directly on the stream, see example 4.

  71. MattJ

    Yeah, that's what I was referring to

  72. Zash

    Did it have a way to advertise caps hashes of e.g. components etc?

  73. ralphm waves

  74. ralphm

    jcbrand, MattJ, arc around?

  75. MattJ

    o/

  76. MattJ

    On a call atm

  77. ralphm

    MattJ: no matter. Are there any topic we need to discuss soonish?

  78. ralphm

    s

  79. MattJ

    ralphm, I don't think there is anything urgent on my radar. I did want to raise something: there is an IETF meeting coming up in London, and it is looking likely that there will be a BoF for the new messaging interoperability working group that folk are trying to get started. I was wondering if the XSF would be able to support my attendance expenses. I don't *think* this has been done traditionally, but I'm self-employed and don't work for $<big corp>, and yet I think my attendance would be valuable to the XSF.

  80. ralphm

    When is it?

  81. MattJ

    November

  82. ralphm

    Ok, so 1) yes, I think the XSF should support that, 2) I might also go

  83. MattJ

    Double yay :)

  84. emus

    I would support such expense refunds, even I cannot decide on this. I think it worth to show we are interested and present

  85. Zash

    IIRC the XSF covered me when I went to IETF in London

  86. emus

    πŸ‘πŸ‘πŸ‘

  87. emus

    I would also suggets to call for input/questions from the community

  88. ralphm

    I haven't really read up on this WG, yet, but that seems reasonable. That said, everyone can participate in IETF meetings remotely, too.

  89. MattJ

    The BoF request is still pending, here: https://datatracker.ietf.org/doc/bofreq-cooper-more-instant-messaging-interoperability/

  90. MattJ

    I participated in the IETF 114 session remotely. It was... terrible.

  91. MattJ

    That was mostly because it was in a room not set up for remote participation, and hopefully that won't be the case this time around if it gets approved

  92. jcbrand

    Hi

  93. jcbrand

    Sounds like a good idea πŸ‘

  94. ralphm

    I guess that settles it

  95. mjk

    > https://datatracker.ietf.org/doc/bofreq-cooper-more-instant-messaging-interoperability/ it's quite amusing, although probably not surprising, that the only occurance of the word 'matrix' on that page is not a proper noun, but refers to the same concept that gave Matrix its proper noun :)