XSF Discussion - 2020-03-30

  1. jonas’

    re unicode version fun: https://labs.spotify.com/2013/06/18/creative-usernames/

  2. Zash


  3. Zash

    Huh, what's that random draft they link to?

  4. Zash

    I thought nodeprep et all was some RFC somewhere

  5. Zash

    Oh, 2013

  6. MattJ

    Where did the RFCs go.....

  7. MattJ


  8. Zash


  9. jonas’

    where they belong, on ietf.org? ;)

  10. Zash

    https://xmpp.org/rfcs/rfc6120.html ‽

  11. Zash

    Were they in yet another container?

  12. MattJ

    No, looks like they were on the host filesystem

  13. Ge0rG

    NOOOO! The only good rendering of our RFCs is gone!

  14. MattJ

    Restoring now

  15. Ge0rG

    MattJ: do you have access to the host again?

  16. MattJ

    And they're back

  17. Zash

    !praise MattJ

  18. MattJ

    !praise backups

  19. jonas’

    nooo the worst rendering of an RFC ever is back ;-P

  20. pep.

    MattJ: Can you also pull the docker containers for xeps and xmpp.org plz

  21. MattJ

    Yes, I'll do that now :)

  22. pep.


  23. MattJ

    I assume this was previously just in cron or something

  24. jonas’

    very likely

  25. Zash

    Would Someone™️ like to review, merge, maybe even test, the wiki PRs I made?

  26. jonas’

    given the insane amount of pulls the xeps docker image has

  27. MattJ

    pep., done

  28. MattJ

    Any opinions on what an entity should return if someone includes an unrecognised form field in a form submission?

  29. jonas’

    > When receiving a search form, the Search Service MUST ignore fields with a var value it does not understand. XEP-0433

  30. Zash

    Either a) ignore it or b) an error

  31. jonas’

    if that’s not an option then I’d suggest feature-not-implemented with an application-specific error condition.

  32. MattJ

    Yes, I was going with (b) an error

  33. Zash


  34. MattJ

    Just wasn't sure what error

  35. Zash

    or what jonas’ said

  36. jonas’

    or bad-request

  37. MattJ

    XEP-0004 says not-acceptable if data validation fails

  38. Zash

    What about if you don't include an optional <field/>?

  39. MattJ

    feature-not-implemented, not-acceptable and bad-request were my shortlist

  40. Zash

    MattJ, roll a dice

  41. MattJ

    Do 22-sided dice exist?

  42. jonas’

    on every reply :)

  43. Zash

    6-sided and divide by 2?

  44. pep.

    jonas’, I was thinking about 433, could it use order-by 413

  45. jonas’

    pep., the wire format?

  46. pep.


  47. jonas’


  48. jonas’

    though that’s not in a data form

  49. jonas’

    so it doesn’t really play well with that

  50. pep.

    Maybe that's a point against data forms :x

  51. Zash

    (query (form, order-by))

  52. MattJ settles on feature-not-implemented

  53. jonas’

    Zash, so you can’t configure order-by in the form then

  54. Zash

    MattJ: But isn't that for when you know about the feature, but you don't implement it?

  55. jonas’

    pep., I’d be fine with ditching data forms altogether

  56. Zash

    ... whyever you would ever do that

  57. Zash

    jonas’, doing what MAM did backwards? :)

  58. Zash

    simple text nodes → FORMS!

  59. jonas’

    why did MAM do that?

  60. MattJ

    Zash, it's when you know about the namespace, but don't recognise the element (according to the RFC)

  61. Zash

    jonas’, summit consensus iirc

  62. jonas’


  63. MattJ

    XMPP needs ADRs

  64. jonas’

    we really really need Design Considerations sections in *all* the documents.

  65. Zash

    We really need to record the complete brain states of everyone involved

  66. Zash

    https://xmpp.org/extensions/xep-0313.xml#revision-history-v0.3 Oh no, I did this

  67. Zash


  68. MattJ


  69. Zash

    So, Summit 2014 minutes?

  70. Syndace


  71. Zash

    Why are some events by year but Summit is numbered?

  72. pep.

    who knows..

  73. pep.

    CCC is also numbered

  74. Zash

    Eh do we even have minutes from then?

  75. pep.

    Helps seeing how old it is :p

  76. Zash


  77. MattJ

    That was the year of binary sponsorship

  78. Zash


  79. Zash

    jonas’, if there's a "why" recorded, it'd be there ↑

  80. MattJ

    I suspect it was probably just to avoid reinventing the wheel

  81. MattJ

    A query is a bunch of data slots, the client needs to discover what slots the server supports

  82. MattJ

    Each slot has a type

  83. MattJ

    Sounds very much like forms to me

  84. Zash

    or schema

  85. Zash

    disco#info features

  86. Zash

    The XML bikeshed should be ${shuf -n colors.txt}

  87. Zash

    Forms are nice for ad-hoc stuff that might be shown to users

  88. pep.

    And you still had to put RSM outside of the forms

  89. Zash

    I don't know anything that lets users type things into MAM search yet

  90. pep.

    Because it doesn't play well

  91. pep.

    (whatever the reason)

  92. Zash

    RSM being a thing seems logical to me

  93. pep.

    https://xmpp.org/extensions/xep-0413.html#MAM heh, does this even work

  94. pep.

    implemented anywhere?

  95. pep.

    Ah it's with pubsub

  96. MattJ prepares a XEP-0313 PR

  97. pep.


  98. Ge0rG

    Now is the best time to do a radical cut.

  99. Zash

    Magic per-device offline messages when?

  100. MattJ

    I gave up on that tactic

  101. MattJ

    The magic is too magical without a way to identify devices, which means clients would have to update to bind2/ng to take advantage of it - at which point they should just implement MAM and gain control over what they receive

  102. Zash

    Apparently the resource is now the device ID and things break if the server uses its spec-given right to set it to whatever it wants. :(

  103. MattJ

    What things?

  104. Zash

    I ran into a bug where Dino doesn't deduplicate outgoing messages correctly because the messages from the archive has the server-issued resource but the local archive has the requested resource.

  105. jonas’

    obviously dinos fault

  106. MattJ

    +1, file a bug and toggle Prosody's default to rewrite resources

  107. jonas’


  108. MattJ

    I've threatened it before and I'm semi-serious

  109. Zash

    This one weird trick. Client devs hate it! :D

  110. MattJ

    Users are actually the main complainers in my experience (they want their resource to be Home, Work, or whatever)

  111. MattJ

    A simple device name spec would solve that

  112. MattJ

    Resources are session identifiers only

  113. Zash

    We have a device name spec

  114. Zash


  115. MattJ

    File bugs :)

  116. MattJ

    So PAM (Pubsub Archive Management) is taken...

  117. pep.

    I'd like to have resources use something like this by default: https://github.com/moby/moby/blob/master/pkg/namesgenerator/names-generator.go

  118. pep.

    human readable, easy to distinguish, not leaking more information than necessary

  119. MattJ

    Resources shouldn't be visible to users

  120. pep.

    yeah that's not for users

  121. jonas’

    MattJ, they are visible to admins reading logs though

  122. pep.

    for server admins to debug

  123. Zash

    Inb4 resource := userpart + serverpart

  124. Zash

    We're not doing that.

  125. MattJ

    Objections to adding an 'id' field in MAM to fetch a single message? or should that be a separate iq?

  126. MattJ

    Combining 'id' with any of the other options is likely useless

  127. Kev

    Seems reasonable to me.

  128. edhelas

    mam:3 incoming ? 😱

  129. MattJ

    Avoiding bumping the namespace, but yeah

  130. MattJ

    So get your requests in now before it's too late :)

  131. pep.

    Please do post on the list for feedback maybe before merging the PR :)

  132. jonas’

    why, it’s Experimental :>

  133. MattJ


  134. pep.

    To avoid having to publish yet another revision.. not that revisions are expensive, but the effort of doing the PR is expensive

  135. pep.

    Once you're in.. you're in

  136. pep.

    might as well group related efforts

  137. MattJ

    Much evidence shows that revisions are expensive

  138. pep.

    increasing a number?

  139. MattJ

    Doing the work

  140. pep.

    What I said, then :)

  141. Neustradamus

    Interesting: https://github.com/mar-v-in/libomemo-c larma

  142. larma is confused by this mentioning

  143. Zash

    jonas’, does openssl even support EXPORT ciphers anymore?

  144. jonas’

    if you build it correctly, I think so

  145. jonas’

    (is "correctly" the right term?)

  146. pep.

    I think so. appropriatly?

  147. jonas’

    (this was a allusion to the fact that a libssl with EXPORT ciphers is most certainly built incorrectly nowadays)

  148. jonas’

    Zash, you could use the libssl from here: https://testssl.sh/

  149. Zash