XSF Discussion - 2019-10-14


  1. Ge0rG

    flow: do you have a suggested wording for the MIX reference(s)=

  2. Ge0rG

    flow: before you answered my mail, I made it look like this: https://op-co.de/tmp/xep-0423.html#future

  3. lskdjf

    Regarding the Compliance Suite: It lists "Private XML Storage", but what for, actually? I mean, private xml storage is no end in itself. bookmark storage previously used it, but the current version of the XEP doesn't, so what does XEP-0049 even do in there?

  4. Ge0rG

    lskdjf: it's still used for bookmarks by some clients, because transition and backward compatibility are hard

  5. jonas’

    also because pep bookmarks (except bookmarks2) don’t give a real benefit

  6. jonas’

    and there was massive lack of server support for private and persistent pep until a year ago or so

  7. Ge0rG

    and the compatibility transition requirements of Bookmarks2 are abysmal

  8. Ge0rG looks at prosody 0.10 with a sad face

  9. lskdjf

    it's actually used by pretty much all clients ^^ perhaps make it clear that this is really just about bookmarks backwards compatibility, then? Maybe by putting it into the same row as "Advanced Group Chat"?

  10. pep.

    Ge0rG, you might want to reference https://xmpp.org/extensions/attic/xep-0048-1.0.html then instead?

  11. Zash

    Private XML storage was widely used for client settings back in the day, but I don't know if anything still does that

  12. Ge0rG

    "I don't know if" is not a good rationale to move it, or is it?

  13. pep.

    Do you need stronger opinions?

  14. lskdjf

    Zash, you mean for storing it's own settings? that would have nothing to do with compliance, then.

  15. Zash

    lskdjf, storing settings on the server

  16. Ge0rG

    an advanced server needs to support it, no matter what a client does with it

  17. MattJ

    Ge0rG, maybe a nice parallel to "Future development" would be to document what stuff we are trying to deprecate also

  18. Ge0rG

    MattJ: indeed, but I'm not sure how to style that, also -ETIME

  19. lskdjf

    Ge0rG, also you didn't remove vcard-temp (at least from the core client) yet. A few days ago I got the impression you were on board with doing that. Did someting change?

  20. Ge0rG

    lskdjf: I have no clue on how relevant vcard-temp still is

  21. pep.

    vcard4 is Proposed, and has been for some months now :(

  22. pep.

    (At least it's better than most other XEPs in the CS)

  23. Kev

    I think vcard-temp is still very relevant.

  24. jonas’

    sadly

  25. MattJ

    vcard-temp is implemented by every server and just about every client

  26. Ge0rG

    Kev: is it core-relevant or advanced-relevant?

  27. Kev

    Core, I think.

  28. MattJ

    and vcard4 is implemented by one server, and possibly nothing else

  29. Ge0rG

    because avatars became advanced somehow. I hope nobody noticed.

  30. Kev

    You would struggle to implement an interoperable client/server without it.

  31. Kev

    And avatars need it, which are certainly core.

  32. pep.

    Does that mean it needs to be Client core/advanced?

  33. Kev

    Heh.

  34. Ge0rG

    Kev: as I said, User Avatars are advanced ;)

  35. lskdjf

    Conversations doesn't have vcard-temp and it's (one of) the most popular clients. So not having vcard-temp can't be too bad.

  36. lskdjf

    > And avatars need it, which are certainly core. Kev: well clients can implement vcard avatars without displaying/parsing other vcard-temp information.

  37. lskdjf

    And for the record I also think avatars should stay in Core Client.

  38. Kev

    Only read-only.

  39. Ge0rG

    I'm slowly losing track of all the things. Maybe this is due to the other things I need to work on in parallel, plus the timeline being tomorrow

  40. Ge0rG

    lskdjf: why are avatars more important than 0392?

  41. lskdjf

    "more important" is IMHO a wrong way to compare those two things. Mandating UI in the compliance suite is simply a very bad idea and not the task or competence of the council. It's not part of the protocol, it's UI/UX design. avatars on the other hand are part of the protocol and it doesn't matter how or where you display them.

  42. Ge0rG

    ...or if you display them at all

  43. MattJ

    I somewhat disagree with this analysis

  44. Ge0rG

    if I don't display avatars, do I need to support them at the protocol level?

  45. pep.

    I agree with lskdjf here fwiw

  46. Ge0rG

    luckily, I'm not wearing my Council hat here, but my XEP author hat ;)

  47. Kev

    I think Ge0rG's question is valid. Since 392 covers a fallback for avatars, it doesn't seem unreasonable to argue the case for it if you argue for avatars.

  48. pep.

    lskdjf, in any case, that should probably be expressed on the ML

  49. Kev

    I'm not sure I agree with it, but I think the argument is sane.

  50. Ge0rG

    Kev: it's not a fallback, because you often need to display both the name and the image, but other than that, yeah.

  51. Ge0rG

    lskdjf: yes, please write it to the ML.

  52. Kev

    Ge0rG: The bit about fallback avatars is a fallback for avatars :)

  53. Ge0rG

    Kev: a fallback for fallback avatar fallback?

  54. Ge0rG

    Can we agree on moving vcard-temp into "User Avatar Compatibility" or are there other use cases for it?

  55. Kev

    Ge0rG: I think there's one argument that, irrespective of the optimal thing, it might be least contentious, if you want things through smoothly on a short timescale, to put comments in the future direction section, and not change too much that's likely to bikeshed.

  56. Zash

    Clients tend to use vcard-temp + xep-0153 for avatars?

  57. Kev

    I think vcard-temp is core, because of the avatar requirement.

  58. lskdjf

    > if I don't display avatars, do I need to support them at the protocol level? Ge0rG orcourse not. but then you're not compliant. the difference is: "User Avatars" mandates that you should _have_ a feature. Somewhere, somehow. If I have to cascade through 3 menues to get there, that's client choice. But "User Name Coloring" tells the clients _how_ to do a UI feature. That's a difference.

  59. Kev

    I think vcard-temp is advanced for all other use. It's not obsolete because vcard4 "isn't used".

  60. Ge0rG

    Kev: as I said, Avatars got demoted to Advanced by a strange mishap.

  61. Kev

    Using this year as an opportunity to rectify that seems sane :)

  62. Ge0rG

    I have no idea why heated debates always happen in the last days before the new CS XEP is getting proposed.

  63. Ge0rG

    We literally had a year to figure all that out.

  64. moparisthebest

    that's the first time people look at them :)

  65. Kev

    Because everything happens last-minute when dealing with busy people.

  66. Ge0rG

    I'm also slowly starting to feel why previous editors of the CS vanished.

  67. jonas’

    indeed

  68. Ge0rG

    lskdjf: I'm not sure whether we read the same version of 0392.

  69. Ge0rG

    > Implementations may colorize the participants of a conversation with an individual color to make them easier to distinguish. > In such cases, the color SHOULD be generated as described in the Generating a color section.

  70. Ge0rG

    > Implementations SHOULD allow the user to turn off any colorization completely.

  71. Ge0rG

    lskdjf: also I'm curious what your actual problem with 0392 is, besides of it being out-of-scope of the XSF powers.

  72. Ge0rG

    lskdjf: that said, I really don't see the principal difference to avatars. I'd even argue that avatars are worse than 0392, because their transmission consumes additional network capacity

  73. larma

    GeOrG, I think the main issue is that quiet some XEPs on the list are on CS for the first time and many probably did not expect them to end up there given that they are still in their early days. I am currently writing a lengthy mail for the ML explaining why I think the color generation is flawed and imposes accessibility issues if used as suggested (which is rarely done, fortunately).

  74. Ge0rG

    larma: I think the main goal of CS is to provide a useful selection of what to implement, to authors. I've done a review of the existing XEPs and considered some more for addition.

  75. Ge0rG

    larma: jonas’ and I will be very interested to hear about the accessibility issues of 0392, and I hope we can improve that.

  76. larma

    As far as I know, there are actually very few existing clients implementing the 3.2 usecase of 0392, where lack of contrast is a significant issue (it doesn't really matter for avatars, because avatars don't matter)

  77. Daniel

    Fwiw I feel some general uneasiness about trying to put in a lot of new xeps last minute

  78. Ge0rG

    larma: lack of contrast between the colored nickname and the background / theme of the client, or between different names?

  79. larma

    first, second wouldn't be an accessibility issue

  80. jonas’

    larma, for background contrast, there is https://xmpp.org/extensions/xep-0392.html#impl-bgcolor

  81. jonas’

    larma, for background contrast, there is https://xmpp.org/extensions/xep-0392.html#impl-bgcolor

  82. jonas’

    we can adapt the factors in https://xmpp.org/extensions/xep-0392.html#algorithm-bg if they’re not good enough for accesibility

  83. jonas’

    also please note that all implementations must have an OFF switch for text colorisation for accessibility reason

  84. jonas’

    also please note that all implementations must have an OFF switch for text colorisation for accessibility reasons

  85. jonas’

    also please note that all implementations SHOULD have an OFF switch for text colorisation for accessibility reasons

  86. pep.

    Daniel, yeah.. lots of friction in a short period of time, not good.

  87. pep.

    We need to add some time to allow for dissipation

  88. Ge0rG

    if only we didn't have Council election in a month, followed by re-org, followed by Christmas.

  89. Ge0rG

    it will be impossible to finish this in 2019 if we don't vote on advancing before the reeleection.

  90. Ge0rG

    I'm not sure when I volunteered to do CS-2020, but I'm sure it was early this year.

  91. Ge0rG

    so everybody had enough time to propose changes.

  92. Daniel

    The fact that nobody suggested changes could be seen as being fine with the status quo

  93. Kev

    Or that no-one's particularly enthusiastic about the suites.

  94. pep.

    Also

  95. Ge0rG

    Or that no-one's particularly enthusiastic about XMPP.

  96. Kev

    I'm more enthusiastic about XMPP than I am about the suites.

  97. Daniel

    It seems to be causing some friction now. So apparently people do care about the CS

  98. Kev

    I didn't mention caring, I mentioned enthusiasm ;)

  99. Kev

    I think we'd be better off not publishing them (in their Compliance Suite form, at least), but if we have to publish them I don't think we should get them wrong.

  100. Ge0rG

    Kev: I think we tried very hard to have a phone conference type of thing happen to discuss alternative ways to do CS

  101. Daniel

    I think compliance suites are a good thing. But I'd be careful about them becoming a simple _include all_

  102. Ge0rG

    Sorry, I got to run now. I really hope I'm going to read your specific feedback on list, tomorrow.

  103. marc_

    Ge0rG: you're not attending at the Munich Meet up, right?

  104. larma

    jonas’, yes I have read the XEP and the background color correction algorithm presented there is pretty bad

  105. jonas’

    larma, suggestions welcome

  106. Zash

    How is it bad?

  107. Ge0rG

    And regarding the last minute changes, I'm very sorry. I didn't factor in the time for the Last Call, also was very busy the last weeks (and still am). I really hoped to have this ready sooner

  108. moparisthebest

    re 392, it's not perfect, but I haven't seen perfect yet, at least it's specified, it's better than whatever dino is using for instance

  109. moparisthebest

    I'm in an IRC chat using biboumi with about 40 people, dino has about 4 different colors total shared across everyone, conversations uses 392 and at least has about 10 different colors instead

  110. moparisthebest

    (I'm a little colorblind so that's how it looks for me, I haven't actually sampled RGB colors lately)

  111. moparisthebest

    it's pretty hard to get it right, when jonas’ was playing with the algorithm, if he applied it to one set of usernames it'd look perfect, but then applied to another set, really bad, no idea

  112. Ge0rG

    Daniel, pep. and me look almost identical in here. Well, that's life

  113. larma

    Ge0rG, can you remove XEP-0223 from the list? It is Informational, there is nothing clients or servers need to do to implement it, so you are always compliant...

  114. Ge0rG

    larma: isn't it useful to know for implementing bookmarks?

  115. pep.

    Isn't it required by bookmarks then?

  116. pep.

    > It is RECOMMENDED to use Publish-Subscribe (XEP-0060) [4] for data storage, specifically through the use of personal data nodes hosted at the user's virtual publish-subscribe service as described in Best Practices for Persistent Storage of Private Data via Publish-Subscribe (XEP-0223) [5] and illustrated in the following sections.

  117. Zash

    There's no XEP for "Full blown PubSub on your own JID", XEP-0163 specifies a minimum subset.

  118. pep.

    and it's again mentioned in the security considerations

  119. Zash

    XEP-0222 and 0223 talk about fancy things you can do with a slightly bigger subset

  120. Zash

    Does '163 actually specify a protocol? Should it too be Informational?

  121. Zash

    Or should 22[23] be Standards Track?

  122. Zash

    0060 is where everything is defined anyways, but you can't implement all of that

  123. pep.

    You can, no? But it's probably not required for most use-cases

  124. Zash

    All of '60? No that's impossible. First you have to implement half of it, which is a huge task. Then you have to implement half of the remaining part, also a huge task. Then half of the remaining, still a huge task.

  125. Zash

    ... etc

  126. larma

    Well I was thinking it makes more sense to require bookmarks 2 support if we require bookmarks 2 support. It doesn't add any value (at least for client developers) to know they should implement XEP-0223, because there is nothing in XEP-0223 that can be implemented.

  127. Zash

    larma: You could not do '222 or 223 with Prosody prior to version 0.10.

  128. Zash

    So there was *something* that was implemented.

  129. pep.

    because #persist_items ?

  130. Zash

    and access models

  131. larma

    Zash, Yeah, for servers it might make sense, for clients it doesn't

  132. larma

    on the other hand bookmarks 2 is nothing a server needs to handle if they do XEP-0223

  133. Zash

    larma: There is still a step between the absolute baseline defined by '163 up to what 222/223 describes

  134. Zash

    Like, dealing with publish-options

  135. larma

    I agree, but still it's servers implementing 223, clients implement bookmarks 2 which relies on servers implementing the 0060 subset outlined in 0223

  136. Zash

    So, my point is, pointing to '223 in the compliance suite is a short-hand for pointing to specific features in 0060

  137. larma

    what I mean is, we want servers to implement 163/223, but if a client only has a function to fetch bookmarks 2, that's fine, it doesn't need to be able to do anything generic for 163/223

  138. Zash

    I think you want publish-options with access model = whitelist

  139. Ge0rG

    larma: there is also this thing about Bookmarks 2 not requiring backward compatibility.

  140. pep.

    Ge0rG, yeah that should be added, and I think it is in the submitted PR

  141. pep.

    (that JC just reviewed btw)

  142. Ge0rG

    And even then, we can't demand bookmarks 2 right now, because inertia.

  143. Zash

    Under Futures maybe, but it seems way too early for a compliance suite spot

  144. Ge0rG

    It's been just a few hours since I was told not to add controversial specifications at the last minute.

  145. Ge0rG

    Zash: it's in Future already 😉

  146. Zash

    Ah

  147. Zash

    Can you re-post the link please?

  148. Ge0rG

    > https://op-co.de/tmp/xep-0423.html

  149. Zash

    Thanks

  150. flow

    Ge0rG, FWIW, I do really like your proposed compliance suites. Even though I don't see the point in mentioning all the single MIX XEPs, as it appears to create a lot of noise for no benefit. But besides that, it comes close to the "map of the xep jungle", which provides guidance about the current state and the probable future of XMPP, that I always asked for :)

  151. lovetox

    just for info, there are still open issues with bookmarks 2 - 0060 needs changes - bookmarks2 XEP needs many additions - servers dont implement the requirements needed to use the XEP correctly

  152. pep.

    https://github.com/xsf/xeps/pull/835 ^, as mentioned in the other channel

  153. pep.

    Also for 0060: https://github.com/xsf/xeps/pull/840

  154. lovetox

    and for server issue: https://github.com/processone/ejabberd/issues/3044

  155. lovetox

    and of course we need conversion mods :)

  156. lovetox

    so long road i would say

  157. Ge0rG

    flow: have you checked the updated MIX list?

  158. pep.

    Well 402 can be used standalone once this is pushed

  159. pep.

    So it would make sense in some setups already

  160. pep.

    Maybe not for the "open network" (whatever that would be called)

  161. moparisthebest

    "reality"

  162. flow

    Ge0rG, when did you update it? You understood that I am arguing that there shouldn't be a MIX list at all but just a single reference to xep369?

  163. Ge0rG

    flow: around the time you wrote your response. I just wondered whether this new approach is better. People need some way to discover the other MIX parts

  164. Zash

    Ge0rG, minor thing but why is the web section before the im section?

  165. Ge0rG

    Zash: it was that way before

  166. Zash

    And should MLS be mentioned among the E2EE things?

  167. Ge0rG

    Zash: is there a XEP?

  168. Zash

    Ge0rG, is XMPP-Core a XEP?

  169. Ge0rG

    Zash: is there an RFC?

  170. Zash

    Internet Drafts, https://datatracker.ietf.org/wg/mls/documents/

  171. Zash

    ~Experimenal or so

  172. Zash

    "Future things to keep an eye on" maybe. Not sure.

  173. Zash

    I also wish for more XEP-0288

  174. flow

    Ge0rG, last time I looked at xep369, it did a very good job at pointing out the other MIX parts, if this is not the case, then this should be fixed in xep369 and not in the compliance suites

  175. flow

    Zash, an XMPP+MLS I-D would be better

  176. Zash

    flow, I imagine that, or an equivalent XEP, might get written at some point

  177. flow

    I don't have issues with the compliance suites pointing to MLS, but it should be clearly spelled out that there is no XMPP+MLS thingy yet

  178. Zash

    "On the horizon" something sometihng header maybe?

  179. flow

    otherwise people may desperatly search for it because the compliance suites gave them the impression that such a thing exists

  180. Zash

    No idea what timeframe MLS might be ready in

  181. flow

    + when XMPP-flavored MLS appears on the market

  182. Ge0rG

    If it's a time frame of over a year, which it most likely is, there is no reason to put it into CS 2020

  183. Zash

    XEP-0286: Mobile Considerations, what does it mean to support that?

  184. Ge0rG

    Zash: nothing

  185. Zash

    Informational XEP in CS is kinda odd.

  186. Zash

    What's a server meant to do with Direct MUC Invites?