XSF Discussion - 2019-09-12

  1. derdaniel

    Good morning

  2. jonas’

    good morning

  3. jonas’

    are you *the* daniel?

  4. jcbrand

    No, he's Derda Niel

  5. jonas’

    would the XSF want to host blog posts showcasing e.g. how to configure a specific XMPP setup on xmpp.org?

  6. jonas’

    from non-XSF members

  7. Daniel

    jonas’, maybe not 'blog post' but actually good tutorials i think are welcome

  8. Daniel

    re the discussion on the developers foundation at the last summit

  9. Ge0rG

    maybe we can just retweet them from @xmpp

  10. Daniel

    when ever i finally have a few days down time i'll actually submit such a tutorial myself

  11. Daniel

    here is how Conversations is going to deal with the multiple translation issue from now on: https://github.com/siacs/Conversations/commit/9bf5fb98acce52d49326f2f613a99f5b957f95c7

  12. Ge0rG

    Daniel: got a screenshot of the language tag?

  13. pep.

    Daniel, is there such a thing as "no language tag"? xml:lang is usually (often? always?) set on the stream

  14. Daniel


  15. Daniel

    pep., no tag means stream

  16. Daniel

    and then Conversations will show that

  17. ralphm

    I type in Dutch and English depending on which contact I'm talking to. I am Dutch, but have my phone set to English. How do you plan to handle this?

  18. pep.

    I also do type Japanese on my xml:lang="en" stream fwiw

  19. Daniel

    ralphm, it's just displaying the tag if there are multiple bodies

  20. Daniel

    so you will never see that anyway

  21. ralphm

    I mean, how do I tell my client what I am doing?

  22. pep.

    Most clients don't or badly support multiple languages anyway

  23. Daniel

    right. but Conversations will not send multiple. if you have a client that sends multiple it is the responsibilty of that client to set something sane

  24. Daniel

    i mean if you type a dutch message with Conversations it will only have one body and thus not show any tag on the receiving side

  25. ralphm

    But even if you have a single body, would you then just not have a language tag, and just have it inherit from the stream?

  26. Ge0rG

    ralphm: change the PC / mobile phone language setting before talking, reconnect to update the stream language

  27. pep.


  28. ralphm

    Ge0rG: of course

  29. jonas’

    08:50:07 Daniel> pep., no tag means stream

  30. jonas’

    Daniel, no tag means the tag on the stanza

  31. pep.

    well no tag means parent tag

  32. pep.

    and so on

  33. ralphm

    Well xml:lang is inherited as defined by the XML spec, so that part was clear to me.

  34. Daniel

    no single body will not show a tag

  35. Daniel

    that would be extremly annoying

  36. jonas’

    Daniel, overall, that sounds like a very reasonable solution

  37. Ge0rG

    It's not inherited in most xml parser implementations...

  38. ralphm

    Ge0rG: yep, it is not easy, and then there's the part where you take a stanza from a stream and send it onwards on another stream. You'd have to take the inherited xml:lang along (just as with namespaces/prefixes).

  39. Daniel

    (i'll make a note for looking into the inheritence)

  40. Ge0rG had issues with that hairy part as well... https://discourse.igniterealtime.org/t/message-getbody-returns-null-if-all-bodies-have-an-xml-lang/83923

  41. ralphm

    I'm still not sure if having multiple language bodies is useful at all.

  42. flow

    Daniel, inheritance applies to other things besides xml:lang too. If you are going to fix it for xml:lang, you may want to make sure that it is also done (or at least possible) for those other things. At least that is what I did in Smack

  43. flow

    ralphm, what about e.g. pubsub notifications to a wide audience?

  44. jonas’

    flow, what are the other things?

  45. jonas’

    I only know of xml:lang

  46. pep.

    wasn't xml:space a thing?

  47. jonas’

    if that isn’t handled by the XML parser you’re screwed anyways (and I don’t think it’s inherited?)

  48. Daniel

    > I'm still not sure if having multiple language bodies is useful at all. As I argue in the commit message just showing the default without any warning doesn't help because you never know what legacy does out there

  49. Daniel

    So whether or not sending this in practice is a good idea is only a secondary question. Your client will have to deal with it either way

  50. flow

    jonas’, namespaces and prefixes

  51. jonas’

    flow, right, I assume that everyone uses an XML Namespaces compliant parser

  52. jonas’

    if you don’t, you’re screwed anyways

  53. jonas’

    if you don’t, you’re in a world of pain anyways

  54. flow

    jonas’, I would't agree with your assumption and conclusion, but yes, makes things easier

  55. ralphm

    flow: for pubsub, yes, that might be a good idea. But I thought we were mostly discussing regular messages with the standard body element.

  56. ralphm

    For regular conversations, denothing the language is impractical, at most.

  57. ralphm

    And at the same time language is hard. Especially if you look at far-east languages. Chinese, Japanese, and Korean, can all be expressed in Unicode. However, due to the so-called han-unification, it means that they all use the same code points with (wildly) different glyphs. So there, denoting which language it is, is crucial for proper display. I am unsure how this actually achieved in platforms.

  58. jonas’

    probably from contetx?

  59. jonas’

    probably from context?

  60. Ge0rG

    right-click, select encoding. Like in the browser in the good old days of koi-8r

  61. ralphm

    Ge0rG: it has nothing to do with encoding

  62. ralphm

    You may want to read about Han Unification.

  63. Ge0rG

    ralphm: so it would be: right-click, select *de*coding

  64. pep.

    that's not related to xml:lang anymore is it. Sure language is hard

  65. Ge0rG

    ralphm: is it something to be covered by xml:lang regional selectors, or by unicode variant selectors?

  66. ralphm

    pep.: well, it is related in that you arguably could use xml:lang for selecting which variant glyphs to use.

  67. pep.

    ralphm, you mean automatically?

  68. ralphm

    Ge0rG: and yes, variant selectors might help, too

  69. ralphm

    pep.: maybe there are heuristics, but I don't know

  70. Ge0rG

    is there an xml:lang that will render all gender-neutral emojis as female?

  71. pep.


  72. pep.

    Ge0rG, no, there has to be a male modifier alongside!

  73. pep.

    (that's what I see most often anyway..)

  74. Ge0rG


  75. ralphm

    Those are ZWJs, not variation selectors, I think?

  76. Ge0rG

    ralphm: ZWJs are used to append variation selectors, aren't they?

  77. Ge0rG

    The number of "characters" in a single Emoji is a highly debatable thing.

  78. Ge0rG


  79. ralphm

    Ge0rG: I am a bit out of my depth here, but I think that using presentation selectors with emoji (with ZWJ) is different from what unicode calls variation selectors.

  80. ralphm

    I think variation selectors (regarding emoji) is for making a distinction between a monochrome glyph and a colorful one.

  81. Ge0rG

    ralphm: right; I've totally lost track of the different selectors and how to glue them to the actual Emoji

  82. ralphm

    I think this page explains it nicely https://blog.emojipedia.org/emoji-zwj-sequences-three-letters-many-possibilities/

  83. ralphm

    It also mentions VS-16, and I was correct, it seems.

  84. Ge0rG

    Apparently, you just append the fitzpatrick modifier, but use a ZWJ for the gender.

  85. ralphm

    (under the heading Twitter, with a footnoot 3)

  86. Ge0rG

    Now I wonder what happens if you strip out VS-16 from the woman-heart-woman or the facepalm-man emoji.

  87. ralphm

    I am still hoping that some day, having WAFFLE + ZWJ + REGIONAL INDICATOR N + NATIONAL INDICATOR L will yield a Stroopwafel.

  88. ralphm

    You probably get a monochrome heart

  89. ralphm


  90. Ge0rG

    Inside the colored Emoji?

  91. ralphm

    this makes it explicit

  92. ralphm

    I don't know man

  93. Ge0rG

    Can I use a 💔 in that sequence?

  94. Ge0rG

    So many questions.

  95. ralphm


  96. ralphm

    I installed a font that supports Unicode 12, now, so I see a waffle at least.

  97. ralphm

    (I didn't at the time)

  98. Ge0rG

    ralphm: does it have the epileptic parrot Emoji?

  99. Ge0rG

    (The Epileptic Parrots would make a great metal band name)

  100. ralphm

    It is called party parrot

  101. ralphm


  102. Seve


  103. Ge0rG

    There used to be a parrot.exe bundled with certain SoundBlaster cards. It had a cult as well. https://m.youtube.com/watch?v=DCMJ0Ufiilg

  104. Seve


  105. ralphm

    That is awesome!

  106. Ge0rG

    ralphm: there is a bunch of covers and even some live performance videos!

  107. Daniel

    am i reading 313 correctly that it doesn’t warn you not to make the dino mistake?

  108. Daniel

    or am I missing something?

  109. Daniel

    (matching up query-id and service jid)

  110. MattJ

    I don't recall any text along those lines, no

  111. MattJ

    I agree that evidently it needs to be documented

  112. MattJ

    But I would have assumed it was obvious that results would come from the JID you queried

  113. MattJ

    and not from a different JID

  114. Daniel


  115. MattJ

    To be clear, I'm 200% in favour of documenting anything that will help people write more secure software by default

  116. MattJ

    Just explaining why it probably wasn't added in the first place

  117. Daniel

    sure. to be clear i found it 100% obvious to match the jid and the query-id

  118. Ge0rG

    I found it obvious as well, but my underlying library was playing games with me.

  119. MattJ

    I think it's obvious to everyone if they read it properly, but it's easy for anyone to forget things, so it's good to make important things explicit

  120. Ge0rG

    Smack is calling the processMessage() callback on each message, including on messages that contain a MAM payload, and it is actually the straightforward way to just extract and use it there.

  121. Ge0rG

    But processMessage() will also get called on all malicious MAM injections.

  122. Ge0rG

    So even when you are aware of the pitfalls, it's not always obvious

  123. flow

    Ge0rG, which call site of (assuming the MessageListener's) processMessage() are you referring to, from MucManager?

  124. Ge0rG

    flow: for historical reasons, I'm going through connection.addSyncStanzaListener(..., new StanzaTypeFilter(Message.class))

  125. Ge0rG

    flow: there was a time when smack was silently removing your listeners on network events, like a disconnect

  126. Ge0rG

    so I had to work around all those

  127. flow

    Ge0rG, so you tell smack to invoke a listener for every message and then appear to be complaining about it doing so?

  128. Ge0rG

    flow: looks like that, yes.

  129. Ge0rG

    flow: what's the official way? A ChatManager?

  130. Ge0rG

    What do I do to track message delivery errors? A ChatMessageDeliveryErrorManager?

  131. ralphm bangs gavel

  132. ralphm

    0. Welcome + Agenda

  133. ralphm

    Who do we have today?

  134. ralphm

    Seve sent regrets.

  135. Seve

    I still have network, I can follow for now 👍

  136. dwd

    You might need to incant their names.

  137. MattJ


  138. MattJ

    It worked

  139. ralphm

    I didn't even incant, yet?

  140. nyco


  141. dwd

    ralphm, Negative latency.

  142. ralphm

    dwd: figures

  143. ralphm


  144. MattJ

    I assumed you did it out loud

  145. Seve

    Guus cannot attend

  146. ralphm

    Trello as agenda. Any additional items?

  147. MattJ

    None here

  148. ralphm

    Seve: I missed that, ok.

  149. nyco


  150. ralphm

    nyco: works?

  151. pep.

    There are awaiting PRs in the repo. I was wondering if that should go through board, but I guess I'll poke jonas’ first

  152. nyco_

    shaky connection

  153. nyco_

    I'm here, but maybe not

  154. ralphm

    pep.: PRs for what?

  155. ralphm

    1. Minute taker

  156. ralphm


  157. Daniel

    i can do that

  158. ralphm

    Thanks Daniel

  159. ralphm

    2. POSS

  160. ralphm

    nyco put this on the agenda

  161. nyco_

    oh yes

  162. nyco_

    actually maybe rather SCAM

  163. pep.

    ralphm, DOAP for example. but ignore it for now, I'll try to get that in the agenda for next week

  164. ralphm

    nyco_ that'd be my first guess, yes

  165. nyco_


  166. ralphm

    3. ralphm's items

  167. ralphm

    I have been occupied with other stuff, sorry.

  168. ralphm

    Will try for next week.,

  169. ralphm

    4. GSOC

  170. ralphm

    I saw this was discussed last week?

  171. nyco_


  172. nyco_

    mentors & flow have no time to write stuff...

  173. ralphm

    With an apparent action item for commteam to write a blog post

  174. nyco_

    commTeam may aggregate students blog posts...

  175. ralphm

    Can you take it up with commteam?

  176. nyco_

    sir, yes sir

  177. ralphm

    Much appreciated sir.

  178. ralphm

    And shine your shoes next time.

  179. Seve


  180. nyco_

    sir, sorry sir

  181. ralphm

    5. Adopt a character

  182. Seve

    Flow suggested this one

  183. ralphm

    Besides the confusing terminology – I assume they mean codepoint – why should we do this?

  184. nyco_

    because it's funny and only 100€

  185. nyco_

    we could attract some sympathy

  186. nyco_

    apart from that it is useless, that is why it is absolutely necessary

  187. ralphm

    Surely funny.

  188. ralphm

    I also should ask: should the XSF put money (from its sponsors) in this?

  189. nyco_

    good point, but that's only 100€

  190. nyco_

    Silver sponsors pay 1k€

  191. Seve

    I don't really know how much this is known though, but I share the same opinion as Guus and Nyco. We can poll the membership as well, or gather more information on the popuarity of it, etc. Ideally we could promote ourselves a bit as well.

  192. nyco_

    we have some money in the bank, right?

  193. flow

    It's even less, because USD, and tex deducable. And it's for a non-profit org.

  194. nyco_

    ok, less than 100€

  195. nyco_

    I think the popularity of this thing has nothing to do with what we can do with it

  196. flow

    I'd also hoped that one of your sponsors would help us for the silver sponsoring, but even 100$ would be ok and increase the visiblity of the XSF a bit.

  197. nyco_

    I have mixed feeling about it, I defend the idea now, but I'm not so sure, just feelings

  198. flow

    My general feeling is that it could be justified to spend 100$ for this. But I have no detail knowledge about our bank account

  199. Seve

    We could have the badge on our website which is cool

  200. nyco_


  201. nyco_


  202. Seve

    No, they generate a badge, Nyco

  203. flow

    We could also ask members to help with the funding, if it's a problem

  204. ralphm

    I also should point out that Bronze level is not unique, that's only for Silver and Gold.

  205. nyco_

    the badges for compliance are coming which will improve our visuals

  206. flow

    ralphm, IIRC only gold is unique

  207. flow

    but silver limited to 5 or so

  208. ralphm

    oh, ok

  209. flow

    while bronze is unlimited

  210. nyco_

    https://xmpp.org/community/sponsorship.html no bronze

  211. pep.

    not this bronze

  212. nyco_

    oh waut

  213. flow

    ralphm, re the terminology, "adopt a character" is how unicode.org calls it

  214. Seve

    flow: do you know by any chance other communities that did this?

  215. flow

    but anyhow, appeared like a cheap way to get some visibility and it's for a non-profit that we benefit from, soo

  216. flow

    Seve, just look at the current sponsors

  217. flow


  218. Seve

    Yeah, we are not Adobe :D

  219. ralphm

    I know of one company that went crazy with this, by the way: https://www.elastic.co/blog/elastic-love-for-the-adopt-a-character-program-and-the-unicode-consortium

  220. nyco_

    instead of sponsors money, indeed we can even make a small crowdfunding campaign, which brings visibility as well, allows us to measure somehow our attractiveness

  221. ralphm

    flow: my 😜 wasn't obvious?

  222. Daniel

    not sure how visible you really are among 600 other bronze sponsers. that feels like a go big or go home situation (where you really want gold). and gold feels too expensive for us

  223. dwd

    ralphm, Is that the emoji we're adopting?

  224. Seve

    > not sure how visible you really are among 600 other bronze sponsers. that feels like a go big or go home situation (where you really want gold). and gold feels too expensive for us That's my "issue"

  225. pep.

    I agree with Daniel

  226. ralphm

    dwd: this is not my suggestion, no

  227. nyco_

    it is not about visibility among sponsors, it is about us generating original content and gettings relayed and engage the communities

  228. ralphm

    But if you'd want to do it in a big way, you'd adopt < and >

  229. ralphm

    At Gold level

  230. flow


  231. nyco_

    the chat bubble at bronze level will do

  232. dwd

    My view, BTW, is that adopting is worth a punt at the $100 mark, and we can make some noise about it ourselves. It's just an interesting talking point at that level, but a talking point is always useful.

  233. flow

    My biggest fear is that one of your competitors shows off by adopting more and expensive characters

  234. nyco_

    we communicate on our channels, our competitors don't come on our channels

  235. Seve

    I like the idea and would love if somebody among us was motivates enough for this, to write a blog post about how much we like making a donation and adopting a character. For me is really a +1, just that I don't find myself inspired enough about the whole unicode world to promote it properly

  236. nyco_

    also, let's focus on ourselves, our future, how we serve our people

  237. Daniel

    if you want something to tweet pay for drinks and/or dinner at the next developer sprint and we get you pictures of happy developers developing xmpp

  238. nyco_

    looking at competition is a waste of time, makes you feel bad/good

  239. nyco_

    that can be done anyway

  240. nyco_

    dudes drinking beer is not funny nor attractive btw

  241. Seve

    > My biggest fear is that one of your competitors shows off by adopting more and expensive characters Surely they can afford it, so yeah, but we would be first as well

  242. pep.

    > to write a blog post about how much we like making a donation and adopting a character. Tbh I see this easily criticized.. "XMPP don't have anything better to do? They could fix their protocol instead"

  243. pep.

    (Not by Matrix obviously)

  244. nyco_

    there, you named it! :)

  245. nyco_

    the same could be said to any char sponsor

  246. pep.

    nyco_, yes

  247. nyco_

    what do people actually say on Elastic for example?

  248. nyco_

    quite sure we don't care about _potential_ negativity

  249. dwd

    pep., You realise people say that stuff *anyway*, right?

  250. Seve


  251. ralphm


  252. pep.

    dwd, yeah

  253. ralphm

    I see enough support for asking the community what character they'd like to see adopted

  254. nyco_

    let's make short blog post, a call for funding, we offer the bubble bronze, that's 100€ we see how the community responds to this we move on, or not if we do, a second blog post to announce the bubble is ours in a funny way

  255. Kev


  256. ralphm

    Kev: that's you suggestion?

  257. nyco_

    how does it work to collect donations from the community?

  258. Kev

    ralphm: Well, ask a Welshman :)

  259. ralphm

    Dude we have Texel

  260. Ge0rG

    I'm still in favor of the light bulb

  261. Seve

    I'm not

  262. dwd

    Guys, I'd humbly suggest you just pick something (chat bubble sounds good) and do it. No real need to ask the community.

  263. Ge0rG

    is there a bike shedding emoji?

  264. nyco_

    not lighbulb, it's Jabber, it dates from the XXth century

  265. Seve


  266. ralphm

    The rules are here: https://home.unicode.org/adopt-a-character/sponsorship/

  267. MattJ

    The irony: https://matthewwild.co.uk/uploads/screenshot-20190912-1568296922-7917.png

  268. nyco_

    symbolises presence, which has become overtime a secundary feature

  269. Ge0rG

    I like presents

  270. Seve

    dwd: thank you

  271. ralphm

    MattJ: https://twitter.com/ralphm/status/1172092470311739392 should help you

  272. dwd

    MattJ, Could we sponsor U+FFFD then?

  273. Zash


  274. nyco_


  275. ralphm

    +1 on selecting the chat bubble, but noting it is also sponsored at Gold level by Discourse

  276. nyco_

    +1 chat bubble

  277. Ge0rG

    dwd: why not ALM?

  278. nyco_

    Discourse, we don't care, these are friends, not competitors even competitors, we don't care, see above

  279. Seve

    Are there any other chat bubble characters? I'm guessing there is no "real time" emoji

  280. Zash

    U+1F4AC 💬 U+1F5E8 🗨 U+1F5E9 🗩 U+1F5EA 🗪 U+1F5EB 🗫

  281. dwd


  282. nyco_

    we could list candidates, but the chat bubble is pretty obvious and expecetd

  283. Zash

    dwd: :D

  284. ralphm


  285. ralphm

    I suggested < and > above

  286. nyco_

    given the popularity of XML...

  287. Kev

    I suggest (as Dave) that if Board want to do this, just come up with something and do it :)

  288. Zash

    Make XML great again!

  289. ralphm

    I like 🗪 U+1F5EA

  290. ralphm

    Zash: thanks for the swag idea there

  291. Ge0rG

    I still think we would have to make it a bikeshed emoji, but there are no bikeshed emojis, and the closest term would be yak shaving, but there are no yak emoji, only water buffalos.

  292. Kev

    Ge0rG: Can we propose a new modifier for the water buffalo?

  293. Ge0rG

    ralphm: it's nice, except that it's not yet widely supported

  294. Kev

    But FWIW, I think ralphm's suggestion of U+1F5EA is cute.

  295. ralphm

    Ge0rG: well, we are progressive

  296. Kev

    And it's nice to have something that if we include it in JIDs will break the network ;p

  297. Ge0rG

    > Copy 🚩 This Unicode character has no emoji version, meaning this is intended to display only as a black and white glyph on most platforms.

  298. nyco_

    ok, it's 16:09, the meeting has been sabotaged by the floor! :)

  299. ralphm

    nyco_: ehem, somebody asked for input by the community

  300. ralphm

    But I agree we are done for today.

  301. nyco_


  302. nyco_

    I don't know who

  303. ralphm

    Board: let's all think about our preference and hammer it next week.

  304. dwd

    For those without a decent font, like me: Unicode Character 'TWO SPEECH BUBBLES' (U+1F5EA) https://www.fileformat.info/info/unicode/char/1F5EA/index.htm

  305. ralphm

    dwd: see my tweet for help

  306. Ge0rG

    ralphm: your help is not universally applicabl

  307. Ge0rG

    ralphm: your help is not universally applicable

  308. ralphm

    6. AOB

  309. nyco_


  310. Seve

    None here

  311. ralphm

    Ge0rG: you could at least look at it in more detail, and see that the second link actually is for the most part.

  312. ralphm

    7. Date of Next

  313. ralphm


  314. nyco_


  315. ralphm

    8. Close

  316. ralphm

    Thanks Daniel for the minutes.

  317. ralphm

    And thanks everyone else, too.

  318. ralphm bangs gavel

  319. MattJ


  320. Seve

    Thank you for the meeting, got a bit off topic though :D

  321. nyco_

    thanks, merci !

  322. Daniel

    what's 'POSS' by the way?

  323. dwd

    Daniel, Paris Open Source Summit

  324. pep.

    Paris Open-Source Summit

  325. Daniel

    i see. thanks

  326. Daniel

    isn’t that scam then?

  327. Daniel

    shouldn’t we at some point merge scam and comm?

  328. Daniel

    and make it 'outreach' or something?

  329. pep.

    Yeah I'm of this opinion as well

  330. dwd

    Daniel, There's certainly a lot of crossover.

  331. Ge0rG

    shouldn't that be decided by the respective teams?

  332. ralphm

    Well, I generally just do SCAM, and I prefer that

  333. ralphm

    There is no reason why work teams can't work together

  334. MattJ

    I'd also prefer it to be able to just set these teams a budget, and let them discuss unicode character options for hours

  335. pep.


  336. Kev

    That seems rather sensible.

  337. pep.

    I think it's somewhat wasted time for board

  338. ralphm

    SCAM already has a budget

  339. MattJ

    It feels like a lot of trivial stuff trickles up to Board these days

  340. Daniel

    we have a budget?

  341. pep.


  342. Kev

    Ooh, XSF trivia Kev didn't know.

  343. MattJ

    Yes, we set one for SCAM

  344. Daniel

    oh we do

  345. pep.


  346. peter

    FYI last night we got paid for GSoC, so we now have an extra $4800.00 in the bank account. Don't spend it all on Unicode characters! ;-)

  347. ralphm

    It is $1000/yr

  348. ralphm

    peter: hehe

  349. Zash

    ralphm: for gold?

  350. Daniel

    now we have to spend it all so we can get it raised for next year (that's how budgets work, right?)

  351. pep.


  352. pep.

    "See, we need moar"

  353. Zash

    "You have money left? Better reduce next years budget by that then"

  354. Ge0rG

    that should be enough for Gold on <🗪>

  355. Ge0rG

    i.e. all three of them

  356. Ge0rG

    no wait, just for silver :(

  357. Kev

    See, *do* need more.

  358. dwd

    I would actually be very happy to see more money spent on outreach in general.

  359. ralphm

    Zash: for SCAM. https://mail.jabber.org/pipermail/members/2017-September/008648.html

  360. Daniel

    pep. and I actually wanted to spend money on scam a couple of times. but we didn’t know we had a budget

  361. Zash


  362. Ge0rG

    dwd: I offer to loudly proclaim "XMPP" in the shopping mall in my home city for just 250$/hr

  363. pep.

    I'm not sure I would do that even at this price

  364. ralphm

    Daniel: well, every time people have asked about money (like for stickers) I said: yes, send the bill to peter

  365. MattJ

    pep., words true of real XMPP developer :)

  366. pep.


  367. Ge0rG

    pep.: I was trying to think of the lowest-effort thing that qualifies as "outreach for money" that doesn't immediately qualify as a SCAM

  368. Daniel

    ralphm, sure. i just wasn’t really aware that those came out of the scam budget

  369. dwd

    Ge0rG, Unicode characters?

  370. Zash

    Let's start a "sponsor an xmlns" campain! /notentirelyserious

  371. Ge0rG

    dwd: this results in being placed on some well-hidden web-page. We can have that already for free.

  372. ralphm

    Daniel: well, we haven't really been strict and make a financial overview

  373. ralphm

    most of the money is spent on the Summit / FOSDEM and that $1000 is a nice target

  374. jonas’

    14:03:38 dwd> MattJ, Could we sponsor U+FFFD then?

  375. ralphm

    stpeter: if you are kinda here, have you seen my mail over at xmpp@ietf.org regarding Unicode versions?

  376. jonas’

    I literally laughed out loudly, in a fiendish laugh. Thanks for that one.

  377. dwd

    ralphm, I don't see it. When?

  378. Ge0rG

    dwd: https://mailarchive.ietf.org/arch/msg/xmpp/a-WhzOTyOq168GujQHgzQ1-DURI

  379. dwd

    I've found it now.

  380. ralphm

    dwd: wow, if you missed it then I guess nobody's read it

  381. dwd

    ralphm, I have a eyeball-meltingly large inbox, mind.

  382. ralphm

    Select All, Mark as Read.

  383. Zash

    Select all, Archive.

  384. Ge0rG

    Read Mail Really Fast.

  385. Zash

    Inbox Zero Archivement

  386. Ge0rG

    > =inbox [Msgs:163039 New:99724 Flag:1477 Post:11 Inc:20 7281M]

  387. peter

    ralphm: I did see your note among the other ~10k unread messages. ;-) I'll need focused time to spool up all that i18n context again, hopefully tomorrow.

  388. peter


  389. ralphm

    peter: 👍

  390. Ge0rG

    flow: so, what's the official way to process messages? A ChatManager?

  391. dwd

    What's the response to a MAM request which matches no messages?

  392. Zash

    `<iq type='result'><{urn:xmpp:mam:2}fin complete='true'/></iq>` ?

  393. Zash

    {rsm}set/count=0 maybe

  394. Zash

    Don't think it's explicitly stated anywhere

  395. pep.

    https://github.com/xsf/xmpp.org/pull/409 should this be to board? Is seems there is no place on the website where CC or Creative Commons is mentioned apart in specific places like IPR changelog, or a blog post I can't find the url for

  396. pep.

    *sent to board

  397. pep.

    Also as mentioned earlier in the board meeting, https://github.com/xsf/xmpp.org/pull/594 DOAP. Maybe Link Mauve can chime in next board meeting if we put it on the agenda

  398. pep.

    (Is all that handled by board, or anybody else?)

  399. dwd

    pep., Licensing is Board, DOAP... Might be? Probably is, but they may bump it straight to whoever is looking after the website.

  400. pep.

    Who is looking after the website?

  401. pep.

    (Editors surely have commit rights, does that make them "looking after the website"?)

  402. jonas’

    I don’t think that editors have commit rights per-se?

  403. Zash

    I suspect it's Board

  404. nyco_

    pep. add PR 409 to the board Trello board

  405. nyco_


  406. pep.

    I don't have a trello account, can you put it there in the meantime(?)

  407. nyco_

    you put it there

  408. nyco_


  409. nyco_

    my mistake

  410. jonas’

    will do

  411. nyco_

    > pep. add PR 409 to the board Trello board pep. added PR 409 to the board Trello board

  412. nyco_

    forgot the past tense

  413. pep.


  414. nyco_

    jonas’ it's added

  415. jonas’


  416. nyco_


  417. pep.

    I didn't, probably somebody did for me

  418. nyco_

    I did

  419. pep.

    cool thanks

  420. nyco_

    thx to you for raising it

  421. pep.

    I'm also interested about DOAP

  422. pep.

    If you can add that one as well :)

  423. pep.

    At least know who's responsability that is

  424. nyco_

    well... not sure

  425. pep.

    Can we put this on the agenda so it gets decided who's responsible to say yes or no?

  426. pep.

    Also I got myself an account, pep@bouah.net

  427. dwd

    Ultimately, everything outside a XEP is Board.

  428. nyco_

    pep. I have add_ED_ the item to the board's board

  429. pep.

    Ah ok thank you :)

  430. nyco_

    dwd : and the board does not know/want, it's for the iteam

  431. Kev

    dwd: Well, mostly. Technical is still the domain of Council, even when non-XEP. E.g. technical direction. But mostly.

  432. pep.

    Do I need to be invited to the trello board? Should I be able to write stuff already?

  433. pep.

    Trello is fighting me so that I create my first board atm, I don't think I need that

  434. dwd

    ralphm, I have read, and carefully considered, your email to xmpp@ietf.

  435. dwd

    ralphm, It raises many interesting challenges.

  436. dwd

    ralphm, My response is as follows:

  437. dwd

    ralphm, That's a bit shit isn't it?

  438. Zash

    Everything is terrible. News at 11.

  439. ralphm

    dwd: quite

  440. dwd

    ralphm, Didn't we discuss having a domain fully responsible for its own canonicalization at one point?

  441. Zash

    Like email?

  442. dwd

    ralphm, I've a vague recollection that Kurt Zeilenga suggested it could be used to canonicalize "Western Names" for Chinese people into the proper form, etc.

  443. dwd

    Zash, Like email but more so. We'd need a canonicalization service, I imagine.

  444. Ge0rG

    dwd [20:35]: > ralphm, Didn't we discuss having a domain fully responsible for its own canonicalization at one point? What if that domain is malicious and sends major violations to us? Not looking at conference.jabber.org at all

  445. jonas’

    Ge0rG, hand it to the SPAM WG?

  446. ralphm

    dwd: maybe there's a sane strategy, but I'm unaware of one and it surely isn't documented clearly anywhere.

  447. Ge0rG

    jonas’: no, what I mean is: what if it crashes clients or causes nasal demons?

  448. jonas’

    that’s client bugs

  449. Ge0rG

    Right, it's presumptuous to assume that the server won't give us JIDs with quotes in them

  450. jonas’


  451. jubalh

    guys, does https://github.com/dino/dino/commit/e84f2c49567e86d2a261ea264d65c4adc549c930 mean that 'from' always needs to be there?

  452. jonas’

    jubalh, it depends on your stream layer

  453. jonas’

    on the wire, the @from may also be omitted

  454. jubalh

    because we have: https://github.com/profanity-im/profanity/blob/master/src/xmpp/roster.c#L215 right now

  455. jubalh

    where we only test if equals barejid if from is there

  456. jonas’

    that’s correct

  457. jonas’

    if @from is absent, it’s to be treated as equivalent to your account bare JID

  458. jonas’

    RFC 6120 something

  459. jonas’

    (on inbound stanzas, obviously)

  460. jubalh

    alright, thanks!

  461. jonas’

    3. When the server generates a stanza from the server for delivery to the client on behalf of the account of the connected client (e.g., in the context of data storage services provided by the server on behalf of the client), the stanza MUST either (a) not include a 'from' attribute or (b) include a 'from' attribute whose value is the account's bare JID (<localpart@domainpart>).

  462. jonas’

    some client libraries will alias absent @from to the bare JID for easier handling in client code

  463. Zash

    I tried removing redundant @to/@from at the server. IIRC some clients didn't appreciate it.

  464. Ge0rG

    jubalh: some servers will do crazy things on messages inside of Carbons, at least for messages to your own JID

  465. Daniel

    Yes that check in Dino has the potential to go boom. Because null is valid

  466. Daniel

    But most servers do set it

  467. Ge0rG

    I wish that'd be something the underlying xmpp would take care of

  468. Daniel

    So it's fine ™

  469. ralphm

    jonas’: the thing I was talking about with dwd is a bit more involved though, as per that email

  470. Ge0rG

    Daniel: send a message to self on prosody 0.10 IIRC

  471. ralphm

    Even if server do saner things, you still have issues with differing Unicode versions.

  472. ralphm


  473. Zash

    Myeah, prosody internally removes @to on stanzas to the account.

  474. Daniel

    Ge0rG: yes I'm just saying that this particular check in Dino (around carbons) will be fine most of the time

  475. Daniel

    But yeah if you do it properly you also want to accept null

  476. larma

    Daniel, you missed the part where dino will automatically inject the correct value of from if it's messing

  477. Daniel


  478. jubalh

    jonas’, can I somehow convince you to implement XEP-0392 in Profanity? ;) I heard you did it in poezio

  479. Ge0rG

    So I have a JID getter wrapper that gets passed the appropriate default value for where it is called on.

  480. larma


  481. larma

    It even has a comment with reference to the RFC \o/

  482. jonas’

    ralphm, "that email"?

  483. Zash

    https://mailarchive.ietf.org/arch/msg/xmpp/a-WhzOTyOq168GujQHgzQ1-DURI ?

  484. jonas’

    right, I thought there was another email I was missing about solutions to the mess

  485. Zash

    jonas’, the one I'm going to write about potato farming? 😉

  486. jonas’

    Zash, that sounds like a plan

  487. ralphm

    No 🥔 no 🍟. Yay!

  488. ralphm

    Moar 🥔

  489. Zash

    Thread relevant for retractions: https://www.openwall.com/lists/oss-security/2019/09/09/2

  490. Zash

    Brilliant. ß is mapped to ss by stringprep. Which is fine with IDNA 2003 because it does the same. However, in IDNA 2008 those are distinct.

  491. Daniel

    what about ẞ?

  492. Zash


  493. Zash

    nameprep (configured to allow unassigned) just passes it trough

  494. Zash

    IDNA 2003 doesn't like it IDNA 2008 maps it to 'ss'

  495. Zash

    $ lua -e 'print(require"util.encodings".idna.to_ascii("ẞß"))' xn--ss-hia

  496. Ge0rG


  497. Daniel

    well mapping ẞ to what ever ß maps to makes sense. mapping it to ſs would also be an option I guess

  498. Zash


  499. Zash

    ß maps to ß

  500. Daniel

    someone should probably have a talk with them

  501. Daniel

    about our beloved s'es

  502. moparisthebest

    I vaguely recall reading about the same issue with domain names right?

  503. Daniel

    idna2008 has a compat mode because of that

  504. Zash

    It does

  505. Daniel

    more or less specifically because of the ß->ss issue

  506. Zash

    Yeah, but the non-compat mode seems to be moot due to stringprep already doing ß→ss

  507. Daniel

    allowing anything but ascii was a mistake

  508. Zash

    Incidentally, I haven't spotted any non-ascii domains as active peers

  509. Zash

    So at least for domains maybe we don't have to worry too much.

  510. Daniel

    someone on the Conversations had plä.net (or something) once

  511. Daniel

    which triggered multiple things in Conversations

  512. Daniel

    including cert validation and stuff

  513. Zash

    There's nödåtgärd.se which was around when Prosody originally gained IDNA code, and maybe even the reason for it.

  514. pep.

    Zash, maybe that's because they can't initiate anything with you that you haven't noticed them :P

  515. moparisthebest

    > allowing anything but ascii was a mistake

  516. moparisthebest

    haha yes

  517. Zash

    But punycode