XMPP Council - 2020-05-27

  1. paul has left

  2. susmit88 has joined

  3. debacle has left

  4. Wojtek has left

  5. daniel has left

  6. daniel has joined

  7. kusoneko has left

  8. kusoneko has joined

  9. stpeter has left

  10. susmit88 has left

  11. susmit88 has joined

  12. stpeter has joined

  13. susmit88 has left

  14. susmit88 has joined

  15. stpeter has left

  16. stpeter has joined

  17. Tobias has joined

  18. susmit88 has left

  19. susmit88 has joined

  20. stpeter has left

  21. stpeter has joined

  22. stpeter has left

  23. paul has joined

  24. stpeter has joined

  25. stpeter has left

  26. kusoneko has left

  27. kusoneko has joined

  28. stpeter has joined

  29. stpeter has left

  30. 3ch0 has joined

  31. bear has left

  32. 3ch0 has left

  33. stpeter has joined

  34. stpeter has left

  35. stpeter has joined

  36. bear has joined

  37. Tobias has left

  38. Tobias has joined

  39. stpeter has left

  40. daniel has left

  41. daniel has joined

  42. daniel has left

  43. daniel has joined

  44. stpeter has joined

  45. stpeter has left

  46. larma has left

  47. stpeter has joined

  48. larma has joined

  49. debacle has joined

  50. stpeter has left

  51. larma has left

  52. larma has joined

  53. stpeter has joined

  54. stpeter has left

  55. stpeter has joined

  56. stpeter has left

  57. stpeter has joined

  58. eta has left

  59. eta has joined

  60. stpeter has left

  61. stpeter has joined

  62. stpeter has left

  63. stpeter has joined

  64. hotspud has left

  65. hotspud has joined

  66. vaulor has left

  67. SouL has left

  68. vaulor has joined

  69. SouL has joined

  70. stpeter has left

  71. Zash has left

  72. Zash has joined

  73. stpeter has joined

  74. stpeter has left

  75. stpeter has joined

  76. undefined has left

  77. stpeter has left

  78. undefined has joined

  79. stpeter has joined

  80. stpeter has left

  81. eta has left

  82. eta has joined

  83. daniel has left

  84. daniel has joined

  85. daniel has left

  86. daniel has joined

  87. stpeter has joined

  88. moparisthebest has left

  89. daniel has left

  90. daniel has joined

  91. daniel has left

  92. daniel has joined

  93. daniel has left

  94. daniel has joined

  95. daniel has left

  96. daniel has joined

  97. daniel has left

  98. daniel has joined

  99. daniel has left

  100. daniel has joined

  101. daniel has left

  102. daniel has joined

  103. daniel has left

  104. daniel has joined

  105. daniel has left

  106. daniel has joined

  107. daniel has left

  108. daniel has joined

  109. daniel has left

  110. daniel has joined

  111. daniel has left

  112. daniel has joined

  113. eta has left

  114. eta has joined

  115. daniel has left

  116. daniel has joined

  117. dwd has joined

  118. undefined has left

  119. undefined has joined

  120. undefined has left

  121. undefined has joined

  122. moparisthebest has joined

  123. undefined has left

  124. undefined has joined

  125. undefined has left

  126. undefined has joined

  127. sonny has left

  128. sonny has joined

  129. undefined has left

  130. jonas’

    1) Roll Call

  131. daniel


  132. jonas’

    (sorry for the slight delay)

  133. undefined has joined

  134. Zash

    Ice cream

  135. jonas’


  136. dwd


  137. jonas’

    2) Agenda Bashing

  138. jonas’

    fippo wants to have XEP-0338 LC’d

  139. jonas’

    I see no reason why not to add this to today’s agenda, so I’m going to do that

  140. jonas’

    anything beyond that?

  141. daniel

    oh yes that makes sense

  142. Zash

    338 is?

  143. daniel

    i forgot to ask for that during my round of jingle related calls

  144. jonas’

    XEP-0338: Jingle Grouping Framework

  145. daniel

    +1 for calling

  146. jonas’

    3) Editor’s Update - Calls in Progress - CFE for XEP-0050 (ends at 2020-06-09) - Expired/Expiring calls: - LC for XEP-0393 (ended yesterday)

  147. jonas’

    4) Items for voting

  148. jonas’

    4a) Proposed XMPP Extension: Channel Binding Capability URL: https://xmpp.org/extensions/inbox/xep-sasl-cb-types.html Abstract: This specification allows servers to annouce their supported SASL channel-binding types to clients.

  149. jonas’


  150. jonas’

    (though at a first glance, it looks better than the other one)

  151. dwd

    I note this is Florian writing up his suggestion. I'm +1 on this.

  152. Zash


  153. daniel


  154. jonas’

    ok, it’s very massively short

  155. jonas’


  156. jonas’

    moving on

  157. dwd

    (I mean, this is exactly what we were all saying we were happy with last week, so...)

  158. jonas’

    4b) PR#949: XEP-0157: Add status-addresses registrar entry URL: https://github.com/xsf/xeps/pull/949

  159. dwd


  160. jonas’

    there was some discussion in context of this on-list, see: https://mail.jabber.org/pipermail/standards/2020-May/037443.html

  161. daniel


  162. jonas’

    I’m still not certain that this is a good place for that type of info, but it certainly doesn’t harm

  163. jonas’

    so +1

  164. Zash

    +1, assuming this is how registries work

  165. susmit88 has left

  166. jonas’

    that’s not how registries work, but we don’t have a working registry, so this is the second-best thing

  167. dwd

    Yes, some suggestion of whether this should be in DNS or .well-known, but it feels like putting it here is a necessary first step.

  168. jonas’

    Zash, do you want to change your vote based on that bit of info? ;)

  169. Zash

    Nah, +1 still

  170. jonas’


  171. jonas’

    4c) Decide on Advancement of XEP-0393: Message Styling URL: https://xmpp.org/extensions/xep-0393.html LC-Thread: https://mail.jabber.org/pipermail/standards/2020-May/037394.html Abstract: This specification defines a formatted text syntax for use in instant messages with simple text styling.

  172. dwd

    So I quite like this. But I'm aware that lots of people do not.

  173. jonas’

    -1, because of: - Concerns raised on the mailing list by community members about an explicit opt-in switch for the use of styling - Concerns raised on the list (by me and others) about the lack of any possible way to replace this with an updated variant (either in this or a future document) because of lack of explicit signalling - Concerns by me and others that putting "markup" in the <body/> is *not* the way to go in XMPP (this is more of a weak purity argument to some extent) - Security concerns because people will do stupid things with existing markdown parsers and the document should mention that, even though they’re not 100% compatible.

  174. Zash

    I agree with jonas’

  175. dwd

    The problem as I see it is that there are a bunch of conflicting demands around styled text in messages, and I don't think we have any clean solutions yet. This is definitely not one, either.

  176. jonas’

    that said, I’d like to repeat what I said in my original email: This thing did a great deal of improvement by providing rich text to flagship clients. This is good for UX. I think this was a useful intermediate step, and now we need to find a way to do this properly.

  177. jonas’

    but this should not be on Standards Track as is. I’d be happy to put this to Informational-Active actually.

  178. jonas’

    oh, and I forgot to mention another reason for -1: - Lack of explicit formal grammar to write a compliant parser.

  179. dwd

    Anyway - I think I'm +0 on this advancing to Draft

  180. jonas’

    15:11:10 Zash> I agree with jonas’ shall I record that as a seconding of my -1?

  181. daniel

    +1 this is standardizing something that clients in one form or another have been doing for years. this is not really in-body markdown because the formatting doesn’t get removed. it's just a suggestion on how do visually display emphasis that a user would give the text regardless. therfor it doesn’t need opt-in or opt-out

  182. Zash

    jonas’: sure.

  183. dwd

    daniel, I know it doesn't need signalling or negotiation, but I think it would be nicer if it did.

  184. dwd

    daniel, Also, how would you feel about Informational/Active here?

  185. daniel

    i'm not against adding a hint <hey-there-im-using-393/>

  186. jonas’

    daniel, in that case I argue that it doesn’t belong on Standards Track. It can maybe live in Informational or be moved to modernxmpp.org; just like the rules for how to use '392 with JIDs and stuff

  187. jonas’

    daniel, in that case I argue that it doesn’t belong on Standards Track. It can maybe live in Informational or be moved to modernxmpp.org (or a similar resource); just like the rules for how to use '392 with JIDs and stuff

  188. daniel

    adding that hint probably doesn’t block it going on to draft

  189. jonas’

    I do not feel comfortable to approve this as (quoting XEP-0001): > A wire protocol intended to be used as a standard part of XMPP technologies. [13]

  190. daniel

    jonas’, i have no hard feelings regarding the track

  191. SamWhited

    I'm also okay with adding a "I'm using styling" hint or even a "this message isn't intended to be styled" hint, but I'd like to just state for the record that this is unnecessary bloat. Also, I took great care to make sure the grammar was well defined so that you can write a compliant parser, but there won't be a formal grammer because I don't know anything well enough tow rite one. I do feel strongly that it belongs to the standard track.

  192. SamWhited

    "to write", even.

  193. jonas’

    even Informational is stretching it IMO, but I’d accept that as a middle-ground. A non-XSF resource would be more fitting for UI things (which this is in daniels line of argument)

  194. SamWhited


  195. Zash

    Overloading body without negotiation is problematic

  196. dwd

    jonas’, What on your list is blocking?

  197. dwd

    Zash, Overloading or hinting? (Given Daniel's observation that people literally type this stuff anyway)

  198. sonny has left

  199. dwd


  200. dwd

    Negoation or hinting, I mean to ask.

  201. Zash

    dwd: Either is better that nothing

  202. jonas’

    dwd, I can be persuaded to accept the overloading of <body/> in this specific way if and only if an opt-in is given. The lack of formal grammar is not blocking if implementors agree that it is doable without (which is probably more something to deal with for moving to Final)

  203. jonas’

    if an opt-in is present, it’s also more clearly wire protocol belonging on standards track.

  204. SamWhited

    It will definitely never be opt-in because that defeats the whole point. The *reason* it did such a good job of getting client adoption and fixing that part of the ecosystem is that it wasn't opt-in, it was just telling you how you could apply styling to things users already do.

  205. SamWhited

    It could be opt-out per message, but that's all that I'd be comfortable with there.

  206. jonas’

    opt-in is the only thing I’m going to be comfortable with.

  207. dwd

    jonas’, So if it's merely hinting and not an explicit negotiation, then if I type the same stuff myself, am I *not* XMPP conformant anymore?

  208. sonny has joined

  209. jonas’

    what the opt-in would be signalling, in my mind, is: "The user observed that the message would be styled in this way before sending, e.g. by having the input UI control display styling inline."

  210. jonas’

    and by opt-in I mean <this-is-styling xmlns="…"/>

  211. dwd

    jonas’, I could see a <styled xmlns='...' active='boolean'/> around to signal whether *this* is bold or not. But given I can type it anyway, and in many clients it already will be shown bold heuristically, I can't see a problem with it being hinted rather than negotiation.

  212. flow

    Sorry for interrupting, but I've to run in 5m. And missed the spot when you where discussing it. One thing re 4b: I talked with pep and wondered if the form field's registry entry should include data form validation information. In particular, that the value's datatype is xs:anyURI. I think we should ideally discuss this *before* adding the registry entry, because, changing it afterwards could be considered a breaking change. Hence you may want to re-consider. I think pep (or I) would be happy to add that additional information to the registry submission.

  213. jonas’

    dwd, maybe that’s the misunderstanding. By opt-in, I simply mean a flag inside the <message/>. It’s not necessary to go full-blown "only do this if disco#info has something" or something like the chat session negotiation which existed somewheer.

  214. dwd

    jonas’, Ah, right. Gotcha.

  215. jonas’

    flow, does the registry support schema stuff? In that case that sounds useful, can you make a note in the PR?

  216. dwd

    jonas’, That would move me from +0 to +1, as well, and if it also provides a way to explicitly state that there's no styling, that'd be great, too.

  217. jonas’

    Zash, do you agree with that?

  218. jonas’

    then we’d have a clear way forward for the author

  219. SamWhited

    I'll add the no styling hint, but the "this is styling" hint will completely break the entire point of this and I am absolutely against adding it.

  220. Zash

    jonas’: A hint? Yes, that's fine with me.

  221. jonas’

    ok, moving on then, we have one more item on the agenda

  222. dwd

    SamWhited, Noted, but I think you're in the rough here.

  223. jonas’

    4d) Issue Last Call for XEP-0338 URL: https://xmpp.org/extensions/xep-0338.html Abstract: This specification provides an XML mapping for translating the RFC 5888 SDP Grouping Framework to Jingle

  224. daniel

    i don’t understand why it breaks the point

  225. SamWhited

    I can write it up for the millionth time, but it makes this much harder to implement, much less consistent, and generally breaks the XEP to add a "this is styling" hint.

  226. Zash

    daniel: same

  227. jonas’

    order please

  228. SamWhited

    But we can discuss this on list for the millionth time, sorry for taking time in the council meeting.

  229. jonas’

    we can continue the discussion in AOB if everyone agrees to extending the meeting time, or xsf@ or on-list

  230. daniel

    +1 on 4d

  231. flow

    jonas’, I'd have to check, but i'll be gone in a few minutes. I'd like to discuss this, as it appears we do not have a single form field in the registry which uses data form validation annotations. Likely because nobody every did it. And IMHO we should allow for it, as it's usefull information. Will add a remark to the PR. Happy to discuss this later in greater detail. bbl

  232. Zash

    +1 for LC

  233. jonas’

    +1 for XEP-0338

  234. daniel

    i’m expecting this have similiar outcome as the other two jingle specs we called

  235. dwd

    +1 to LC.

  236. daniel

    few but positive feedback

  237. jonas’

    flow, we’re still pending on Ge0rGs vote either way. Please add a note to the PR so that the Editors will defer merging and we can re-do the vote in case you find that you have to change it

  238. Zash

    I'm almost out of battery fyi

  239. jonas’

    5) Pending votes

  240. jonas’


  241. jonas’

    (except Ge0rG now)

  242. jonas’

    6) Date of next

  243. jonas’

    +1w wfm

  244. daniel

    +1w wfm

  245. dwd

    +1 wwfm

  246. Zash


  247. jonas’

    7) AOB

  248. jonas’

    since Zash is out of battery and we’re running out of time, I’d like to skip this one

  249. jonas’

    since Zash is out of battery and we’re running out of time anyways, I’d like to skip this one

  250. dwd

    Happy to.

  251. jonas’

    8) Ite Meeting Est

  252. jonas’

    thanks all

  253. Zash


  254. jonas’

    quick note that I sent a meeting time scheduling thing for the routing stuff (cc @ Ge0rG )

  255. dwd

    Thanks jonas’!

  256. jonas’

    SamWhited, I note you’re not in xsf@, any reason for that?

  257. dwd

    BTW, why would one ever block a Last Call?

  258. jonas’

    dwd, if it’s 90% TODO maybe?

  259. SamWhited

    jonas’: too noisey and distracting; happy to join temporarily if we want to have this discussion in there

  260. dwd

    jonas’, But you could raise that in Last Call?

  261. daniel

    SamWhited, i don’t understand how <styling boolean/> breaks the purpose of the XEP. it allows receiving clients to have three different modes. style everything, style everything but <styled false>; only style <styled true/>

  262. jonas’

    SamWhited, ok, feel free to continue the discussion here for now then

  263. daniel

    sending clients would have to support ever sending <styled false/>

  264. daniel

    if they didn’t want to

  265. jonas’

    dwd, sure, but ... yeah, I mean, it doesn’t make much sense to me either. I’d somehow expect LC to be editor-driven while CFE would be council-driven, but it seems to be the other way ’round

  266. SamWhited

    daniel: I don't actually understand the three modes

  267. daniel

    and just adding <styled true/> is free

  268. SamWhited

    What is the default if no styled=false or styled=true is present?

  269. daniel


  270. daniel

    the receiving client can decide

  271. dwd

    SamWhited, The default is "Implementation defined", which is what it is now.

  272. jonas’

    SamWhited, "sending client doesn’t know what it’s doing, use a local user/implementation preference"

  273. jonas’

    while styled=true is "sending client knows what it’s doing and emphatically agrees with this being displayed fancy" and styled=false is "nope, this must not be styled ever"

  274. sonny has left

  275. sonny has joined

  276. SamWhited

    So now we have some clients forcing styling on, some forcing it off, and some that we just do our own thing for. From the users perspective, that's just going to be similar messages from different contacts or even the same contacts when they switch clients randomly being styled or not

  277. dwd

    One advantage is that if the client receives something *broken, it can know whether this is genuinely broken or just not actually styling.

  278. SamWhited

    If my clients default is "no styling unless styling=true" and one contact sends me "this is *styled* <styling=true>" and another sends me "this is *styled*" but they just typed it, that just looks confusing that one is styled and the other isn't.

  279. dwd

    SamWhited, But one of your clients might not do styling anyway, right now.

  280. SamWhited

    Also, how does this work in MUCs? If one user quotes a message and they apply styling=true and another replies and quotes it but their client applies styling=false, now there are two replies that represent the same quote differently

  281. dwd

    SamWhited, So I don't see what changes.

  282. SamWhited

    dwd: but they would or would not apply it equally for all messages from all contacts, muc participants, etc.

  283. dwd

    SamWhited, No.

  284. daniel

    SamWhited, well *your* client could still default to styled if there are no hints

  285. jonas’

    (I assume Conversations will)

  286. jonas’

    (at least for a transition period)

  287. daniel


  288. SamWhited

    daniel: that's even worse, now different clients that I use will have different defaults. On conversations it might default to styling=true, but when I switch over to dino it defaults to styling=false and it looks different

  289. sonny has left

  290. sonny has joined

  291. jonas’

    the recommendation to default to styling=true can be put in a place where client developers look for "good UX tips" *hinthint*

  292. SamWhited

    This adds an entire massive amount of uncertainty and possibility for breakage. Even from the sending clients perspective it adds confusion and different ways to implement things

  293. jonas’

    how does this add uncertainty for *sending* clients?

  294. SamWhited

    For example, if I click a "bold" button and it wraps the text in styling directives, I thin it's pretty obvious that styling=true should bge added to the message

  295. SamWhited

    However, if I just type "check out this *styling*" what should it do?

  296. pep.

    re flow's suggestion on 157, I'm happy to add the validation thing but I have no clue how

  297. SamWhited

    Should it add styling=true? Do nothing and let it be inconsistently displayed between the remote users clients?

  298. jonas’

    SamWhited, that depends: does your input field show it as boldface inside the input field? if so, styling=true, otherwise no.

  299. jonas’

    pep., I hear flow will look that up

  300. dwd

    jonas’, +1 on that.

  301. pep.

    And re 393 hint, I think that's pretty much useless

  302. daniel

    > SamWhited, that depends: does your input field show it as boldface inside the input field? if so, styling=true, otherwise no. +1

  303. dwd

    SamWhited, Your client should be expressing the user's intent.

  304. pep.

    Clients will just put that in the payload all the time and we're back to normal

  305. dwd

    pep., Isn't that OK?

  306. pep.

    To be back to normal?

  307. moparisthebest

    clients don't know the user's intent

  308. Zash

    I don't see how making things more explicit makes things uncertain.

  309. moparisthebest

    I'm certainly not going to press any 'bold' button, I'll just continue writing *like this* because that's how I've always written everything

  310. pep.

    moparisthebest, that's their issue, they could very well know if they allowed it in the input format

  311. SamWhited

    Zash: because it's not making them explicit, having a "styling=false" alone is making things more explicit, but having both is introducing even more possible states that you can't predict.

  312. dwd

    pep., I mean, if clients put the styling hint in all the time, that just means they're explicitly intending the message to be styled.

  313. moparisthebest

    I get the impression people think this XEP documents some new and exciting input format, and if so, it would indeed be bad, but it documents existing functionality in most clients across most protocols since as far as anyone can remember

  314. pep.

    I'm gonna repeat myself for the nth time, https://lab.louiz.org/poezio/poezio/issues/3455#note_7769 this is how you do a proper input format, and it's also possible on mobile

  315. pep.

    dwd, and what in the message actually is styled?

  316. SamWhited

    No matter what if things don't support styling obviously those will display differently. We can't fix that part except by making the styling characters something people are used to seeing anyways (which was the point of this XEP, they're already doing this anyways so that part is fine)

  317. moparisthebest

    email, irc, usenet, everything else, right? where you just type in your styling

  318. SamWhited

    Any randomization of how things are displayed on top of that is a bad thing.

  319. dwd

    SamWhited, So what's the randomization you're anticipating?

  320. moparisthebest

    many xmpp clients even already implemented this, gajim did for instance

  321. moparisthebest

    before it was a XEP I mean

  322. pep.

    moparisthebest, gajim doesn't implement 393 indeed

  323. pep.

    Even conversations differs slightly

  324. SamWhited

    dwd: I just explained it. It now matters if we have support on *both* sides of the connectio, and we have tons more states that we could be in

  325. SamWhited

    Eg. the situation in a MUC I just posited.

  326. moparisthebest

    pep., *this* always worked in gajim

  327. pep.


  328. pep.

    Ah "*this*"

  329. moparisthebest

    bolded *this*

  330. pep.

    So because one implementation chose stars to use bold means it's good to put in a standard?

  331. pep.

    And it's never ever gonna change

  332. moparisthebest

    not this one implementation

  333. pep.

    Because you have the world of god

  334. SamWhited

    Just having a way to disable it is fine, that lets us express user intent without adding a third undefined state where we're not sure what will happen

  335. pep.

    Because you have the word of god

  336. moparisthebest

    pep. also a ton of other xmpp clients, most irc clients, most email clients etc etc etc

  337. dwd

    SamWhited, But the undefined state is the only current one in '393.

  338. jonas’

    SamWhited, we’ve been over this.

  339. jonas’

    I have seen your arguments, I just disagree with them.

  340. pep.

    I also disagree (but I think that's already explicit)

  341. pep.

    And I agree with jonas’ points for -1

  342. SamWhited

    dwd: sort of. Right now it's just the only state, it's not a weird in-between.

  343. SamWhited

    Just adding a styling=false *does* make that state more explicit, so I'm okay with that.

  344. SamWhited

    Adding styling=true *and* styling=false makes that middle ground confusing and undefined.

  345. moparisthebest

    pep., jonas’ , again it seems like you guys view this as some new protocol, instead of simply documenting what always existed without being documented

  346. jonas’

    moparisthebest, just because something existing doesn’t mean it’s a good thing to endorse.

  347. pep.

    this ^

  348. jonas’

    moparisthebest, just because something exists doesn’t mean it’s a good thing to endorse.

  349. jonas’

    you can document all you want -- but not with XSF endorsement.

  350. moparisthebest

    it doesn't matter if you endorse it or not, it exists, you'll never change it

  351. pep.

    moparisthebest, also, nothing in what you're saying here forces you to butcher the wire format

  352. moparisthebest

    it'd be nice if clients would have some place to look for consistancy, rather than try to figure out what other clients do, isn't that the whole point of standards?

  353. moparisthebest

    this xep isn't butchering any wire format, this has always been passed over the wire like this because people type it this way

  354. sonny has left

  355. sonny has joined

  356. pep.

    Ok it's the same nonsense as before over again

  357. jonas’

    moparisthebest, we all agree that we need a force of people who can actually reason about UI choices and know things there. The XSF is (currently) not that organisation.

  358. moparisthebest

    again, whether the XSF officially agrees to adopt this or not, it doesn't change the fact that it's always worked this way and will continue to do so

  359. moparisthebest

    just makes it look dumb to not officially recognize that

  360. jonas’

    moparisthebest, I know that, and I’m fine with that.

  361. jonas’

    the first part either way

  362. jonas’

    the second I don’t necessarily agree with

  363. moparisthebest

    some of it is in fact super valuable

  364. jonas’

    I feel this discussion is, once more, in a dead end.

  365. jonas’

    and I’m going to attend to other things now, just FTR

  366. moparisthebest

    I've seen a lot of clients in the past, various protocols, but they *remove* the little stars for bold etc, and can accidentally change meaning

  367. moparisthebest

    this suggests you don't do that, which is helpful

  368. SamWhited

    Trying to understand peoples opinions (mostly moparisthebest, jonas’, and pep. I think): is it your opinion that it's okay for informational right now because it documents what clients are already doing and just tries to make them use more consistent rules, but only for standards track if it adds some sort of hints?

  369. pep.

    I'm just against it as long as there's no effort wrt. wire format. But I'm not council anyway

  370. pep.

    Hinting is not gonna fix much

  371. jonas’

    SamWhited, I think it’s not *okay* for Informational, but I *maybe* could see this as a possible middle-ground. I’m not sure about Zashes opinion on that.

  372. moparisthebest

    my opinion is it's a standard whether you *really wish* it wasn't or not...

  373. SamWhited

    pep. even if it were just informational?

  374. pep.

    SamWhited, what does that change

  375. jonas’

    pep., Standards Track is for Wire Format, Informational is "the other stuff"

  376. undefined has left

  377. pep.

    It doesn't even document what people use, it documents something that somebody wanted to force on users

  378. pep.

    (that is, people use some kind of markdown)

  379. jonas’

    I’m still not sure that Informational should be a dump for "'random' UI things documented for Instant Messaging clients which happen to use XMPP"

  380. undefined has joined

  381. jonas’

    I’m still not sure that Informational should be a place for "'random' UI things documented for Instant Messaging clients which happen to use XMPP"

  382. SamWhited

    What do you mean by "force on users"?

  383. moparisthebest

    pep., I suspect the clients that already do this are far greater than the ones that never did...

  384. SamWhited

    I thought informational was explicitly for documenting what clients were already doing and that's why people mentioned it, but the XSFs spec levels never made any sense to me. I guess I should go reread 0001 or whatever

  385. pep.

    SamWhited, well you did specifically choose to step away from markdown to prevent devs from using markdown parsers right

  386. pep.

    Whereas users ask for "markdown" syntax

  387. jonas’

    moparisthebest, the last call didn’t bring up any except Conversations and Dino (partial implementation) I think.

  388. SamWhited

    pep. sort of. That was part of the decision, but also I just immitated what many clients were already doing (which wasn't markdown)

  389. jonas’

    moparisthebest, so I doubt that claim.

  390. moparisthebest

    jonas’, gajim did it before it was a XEP, still does it last time I checked

  391. pep.

    SamWhited, ok. Well now if I want to promote another syntax on my client anyway, I can't

  392. SamWhited

    pep. also, I don't think users know what markdown actually is since they keep calling this markdown anyways (though of course, if they tried to implement it it wouldn't work and they'd realize their mistake)

  393. jonas’

    moparisthebest, gajim does quotations and strikethrough and stuff? (I don’t use gajim)

  394. SamWhited

    pep. why not?

  395. SamWhited

    pep. isn't that the same as any other standard? We had XHTML-IM, but some people implemented it and some implemented something like this, and I think Xabber's web thing actually had its own proprietary spec, etc.

  396. moparisthebest

    pep., jonas’ , check out thunderbird https://burtrum.org/up/6e1978be-53dd-4036-afd0-c0ec683e19c2/open-screeny-5017.png

  397. jonas’

    moparisthebest, that’s not '393, it doesn’t define // or __

  398. jonas’

    out for real now

  399. moparisthebest

    then maybe it should :)

  400. SamWhited

    jonas’: yes, that was part of the point, everybody was doing something vaguely similar to 0393, but they all had slightly different rules. This tried to standardize those rules based on what I saw the most clients doing.

  401. pep.

    SamWhited, because you're not signaling yours and my users are going to receive payloads from other clients are gonna see different sigils and then complain they don't see things formatted in their client.

  402. moparisthebest

    jonas’, pep. , kiwi (most popular web irc client) the one freenode hosts https://burtrum.org/up/95378a1e-3720-455d-b33f-94192f69e022/open-screeny-5123.png

  403. jonas’

    moparisthebest, that’s not an XMPP client.

  404. moparisthebest

    right, again, just documenting how *everyone* used text messaging before XMPP even existed

  405. pep.

    SamWhited: so I have to parse supposedly meaningless text (styling) and try to convert into my markup

  406. moparisthebest

    that's my point

  407. jonas’

    you’re good at this. I need to physically step away from my XMPP client now.

  408. pep.

    So that I emulate other users sending my markup

  409. pep.

    Which is meh

  410. pep.

    Whether if you properly signalied on the wire where you markup is I wouldn't have to worry about clumsily parsing text

  411. SamWhited

    pep. I'm sorry, I didn't understand that at all, can you rephrase that first message that started "because you're not signaling yours"? Sorry

  412. pep.

    Styling is not being signaled. Nowhere it says "this is styling" and "what is styling in there"

  413. sonny has left

  414. sonny has joined

  415. SamWhited

    Right, that's what we're discussing. I got that far.

  416. moparisthebest

    because people don't signal that, they are just typing, remember that pep.

  417. SamWhited

    Wait, are you just worried that if your client doesn't support it users are going to ask you to support it?

  418. pep.

    moparisthebest, please stop. You don't seem to make a difference between users and clients

  419. moparisthebest

    pep., because with this there is no difference

  420. pep.

    SamWhited, I'm worried that I can't support anything else because I'll have to deal with styling anyway

  421. pep.


  422. pep.

    moparisthebest, that's where you are wrong. Or let's say we disagree

  423. SamWhited

    pep. why would you have to deal with styling anyways? You don't have to support it in your client if you don't want to

  424. pep.

    SamWhited, I do? Say I support NewMarkup (my custom format), I properly apply markup for it in the UI, and I don't apply markup for styling when receiving

  425. pep.

    Users would probably wonder why. What I would prefer to do is convert the received styling into NewMarkup so it also gets displayed properly

  426. pep.

    But that's not possible as long as styling is not signaled

  427. SamWhited

    pep. I don't understand how having a hint helps with that. If you support converting styling to new markup, parse the message as styling just as if you were going to display it and then convert it to your markup

  428. pep.

    Well the "parse the message as styling" is not really defined anywhere

  429. SamWhited

    Or, if there is a styling=false hint, you could not convert it (which is the hint I'm okay with adding).

  430. MattJ

    How about we just don't standardize this? The argument is that "users are doing it", but users are inconsistent

  431. moparisthebest

    pep., my question is, if I type something like *this* into my client, how would it know whether I wanted *this* to be styled or not? in fact I sometimes change my mind, here I want it styled, if I pasted some code I wouldn't want it styled, does that make sense?

  432. pep.

    I don't know what's styling in your message

  433. SamWhited

    pep. it is defined as "if you support styling, parse messages as styling"

  434. pep.

    SamWhited, and what is styling in your message?

  435. moparisthebest

    ie, the client can't know whether the user wants it styled or not, that's why it's *great* to have rules like "leave styling marks"

  436. SamWhited

    pep. the entire message, always.

  437. pep.

    "> <" is that a quote, is that an emoji

  438. SamWhited

    pep. that is a quote, the spec defines how you parse that. If you want it to be an emoji, that's fair, which is why I'm okay adding a styling=false hint.

  439. pep.

    We've been making the same arguments over two years, I'm not sure what more I can do

  440. pep.

    SamWhited, but then what about: "> < *foo*"

  441. pep.

    "*foo*" would not be parsed as bold.

  442. theTedd has joined

  443. SamWhited

    pep. why not?

  444. pep.

    Because you sent styling=false

  445. SamWhited

    oh, then that's not a quote or bold because you sent styling=false, so don't convert it into your NewMarkup

  446. SamWhited

    oooh, or are you suggesting that you want half the message to be styled, but part of it not to be? eg. that should be a quote in your markup, but not bolded foo?

  447. pep.

    I don't like the either all or nothing "feature"

  448. SamWhited

    ahh, gotcha, sorry, that's what I didn't understand about this entire conversation.

  449. pep.

    That's been my pitch for 2 years. Thanks for reading :(

  450. SamWhited

    pep. yes, I know, but from your previous message it seemed like you were making a completely different argument.

  451. SamWhited

    My mistake, I understand now.

  452. theTedd

    pep's point is that styling should really be an input method, not wire format; any formatting that's then applied becomes wire format using whatever-rich-markup; the fact we're dealing with this at all is because it's already used and some clients want to be clever and apply the styling automatically

  453. pep.

    theTedd, thanks :p

  454. pep.

    SamWhited, which is why I think the hint is not gonna help (not much at least, it's a small improvement)

  455. SamWhited

    I think they should apply it automatically, but if we add styling=false as a hint, clients could always add that if they wanted and only disable it if the user clicked the "bold" button or the "style this message" button explicitly

  456. SamWhited

    So that seems fine if that's something you want to do.

  457. pep.

    The hint is not sufficient

  458. sonny has left

  459. sonny has joined

  460. pep.

    https://lab.louiz.org/poezio/poezio/issues/3455#note_7769 Have you read this? Replace "XHTML-IM" but "some wire format" if you prefer

  461. SamWhited

    pep. I was responding to theTedd's thing, you're right that it's not sufficient to style only part of the message but it't not for that

  462. pep.

    https://lab.louiz.org/poezio/poezio/issues/3455#note_7769 Have you read this? Replace "XHTML-IM" by "some wire format" if you prefer

  463. theTedd

    the second point is 'what' should they apply automatically? obviously you say 0393, but a client may support another -- the hint would indicate which

  464. SamWhited

    pep. yes, you can do that just fine with styling. You parse the message as its being typed, and if you get a "bold" or whatever you convert it to your XHTML, that seems fine.

  465. pep.

    SamWhited, you can't actually do that with styling

  466. pep.

    Because you're gonna send "*foo*" in both cases

  467. SamWhited

    If you hit backspace, remove your internal XHTML styling for that one element and don't update it anymore

  468. SamWhited

    (unless it changes)

  469. pep.

    Ah you're talking about a proper wire format. Sure

  470. SamWhited

    You are right that remote clients that support XHTML-IM vs. remote clients that support styling will show different things

  471. SamWhited

    But styling doesn't do fonts or sizes or whatever else XHTML-IM did anyways, it's not an exact replica, so this will be true no matter what.

  472. pep.

    I'd be happy just having what styling does with a proper wire format. That is, styling only used as input format

  473. SamWhited

    Yes but that would make things far more complicated, and unnecessarily so when it works fine most of the time.

  474. SamWhited

    And you can do what that issue wants today easily enough, so why add more complexity?

  475. pep.

    more complicated, surely. But that doesn't lock us up with this format and all its disadvantages

  476. pep.

    I can't do that already, since I can't parse what I receive properly

  477. SamWhited

    You're not locked up with this format as you say anyways, feel free to do your own thing.

  478. theTedd

    SamWhited, what's the complication? either apply styling (hint=true) or don't (hint=false), or do what you already did when hints didn't exist (no hint)

  479. SamWhited

    pep. why can't you parse it? Parse the whole message, convert it to XHTML-IM, remove any HTML around bits where the user hits backspace, and call it a day

  480. pep.

    SamWhited, same issue, I don't know in your message what is styling and what isn't

  481. SamWhited

    theTedd: I was talking about pep.'s suggestion that we add wire format around all the styled sections. hint=false is fine and doesn't add significant complexity.

  482. SamWhited

    pep. it's all styling unless they hit backspace right after entering the text.

  483. theTedd

    SamWhited, okay, but why is true a difficulty?

  484. pep.

    SamWhited, that's fine when sending but not when receiving

  485. SamWhited

    theTedd: true isn't difficult, it's just unnecessary and makes there be lots more states

  486. SamWhited

    pep. okay, we were talking about sending I thought. When receiving if you support XHTML use that, if not, the whole message is styling because that's the way styling works.

  487. theTedd

    SamWhited, there are three states: true, false, none -- none is what already exists

  488. pep.

    SamWhited, right, and that's why I say we're locked up with styling

  489. SamWhited

    pep. so don't support styling if you don't like it, I don't see what the problem is.

  490. SamWhited

    or just support it as an input method and then send XHTML-IM or whatever.

  491. theTedd

    pep., this is documenting what's already used, it's never going to turn into a real markup wire format and people are always going to do *this*

  492. pep.

    theTedd, by encouraging client devs not to do anything about it

  493. pep.

    "yeah it's fine, while you could help fix the state, just put stuff on the wire who cares"

  494. pep.

    "yeah it's fine, while you could help fix the current state, just put stuff on the wire who cares"

  495. theTedd

    I agree, but devs are lazy and will take a library you throw at them when it exists

  496. SamWhited

    pep. you're assuming that everyone else thinks this is bad somehow too, but we're not trying to just stick everyone with the current thing to be jerks, we're documenting it because we believe that it's good enough as is and works well in practice.

  497. pep.

    SamWhited, I'm not saying this is not good for users

  498. Ge0rG

    You can't fix the current state, you only can fix a future that comes after you created a XEP and got it widely implemented

  499. pep.

    I'm saying users only care about the input format

  500. pep.

    I'm not sure what's wrong about this statement

  501. pep.

    And if we agree, can we move towards this please

  502. SamWhited

    I agree that users don't care what's happening behind the scenes, they just want to type *bold* and see their text be bolded.

  503. pep.


  504. theTedd

    ideally, we should, but right now people are doing (and will continue to do) do inline text formatting, so that does still need to be handled

  505. SamWhited

    Which is why the fact that their text is being sent behind the scenes and then parsed as-is is not something users care about and works fine.

  506. pep.

    SamWhited, but why encourage devs not to care about what goes on the wire

  507. theTedd

    'fine' -- it's hacky at best

  508. SamWhited

    pep. why should they care if it works fine?

  509. pep.

    I'm not sur ewhat's to gain here

  510. SamWhited

    Let's refocus this discussion:

  511. pep.

    it doesn't "work fine"

  512. pep.

    Just like theTedd said it's hacky at best

  513. SamWhited

    I *think* the fundamental disagreement here is that if I type "this is *bold* and this is *not bold*" you think the second one should have the option of not being bold, right? Or is there something else?

  514. pep.


  515. pep.


  516. SamWhited

    okay, so let's ignore wire format, user input methods, etc. since those are just consequences of wanting this feature.

  517. Wojtek has joined

  518. pep.

    Well "this feature" also possibly being accidental

  519. SamWhited

    Instead, let's figure out exactly what features we want, then we can figure out if it's possible to do it with the current thing or if we need tons of wire format.

  520. pep.

    I type something and it gets interpreted wrongly

  521. SamWhited

    pep. I didn't undestand that, what did you mean by "being accidental"?

  522. pep.

    "> <" being just one example

  523. SamWhited

    So having a styling=false hint fixes that example.

  524. pep.

    Just got another example on another channel with gajim interpreting received ":/" as an emoji (when it was part of or URI: foo://bar). Not styling, but same kind of problem to me

  525. SamWhited

    Also, I suspect that it's rare enough in practice that we don't have to care.

  526. pep.

    SamWhited, it "fixes" that example if that's the only thing in the message

  527. sonny has left

  528. theTedd

    pep., you can't fix 0393 to do that - it's not going to happen

  529. SamWhited

    pep. and I'm saying that's not a huge problem if one message on rare occasions has to have no styling because you want to display something that would conflict.

  530. pep.

    theTedd, I know and that's why I don't want 393 :)

  531. theTedd

    SamWhited, you're defending 0393 when pep is really arguing for an alternative

  532. SamWhited

    theTedd: yes, I'm defending it saying that we don't need an alternative, or that if pep. wants one accepting 393 doesn't stop him from writing one.

  533. pep.

    The thing is that you're also forcing 393 on me (as a user, and client dev)

  534. theTedd

    pep's argument is that providing this reduces the motivation to do anything else because "it largely works"

  535. pep.

    And I'd like to prevent that

  536. SamWhited

    Again, I'm really not. You don't have to implement 393.

  537. pep.

    But I can't stop receiving maybe-393 payloads

  538. undefined has left

  539. SamWhited

    pep. you can't stop receiving those anyways, people are *already* typing asterisks and what not.

  540. SamWhited

    It doesn't matter if the spec exists or not.

  541. theTedd

    hint=true would at least make it explicit what you're receiving

  542. undefined has joined

  543. pep.

    SamWhited, and if their client supported something that had a proper wire format, I would know

  544. pep.

    And I could interpret them differently

  545. pep.

    So yes in a way you're forcing me to implement 393 to be able to parse it and convert it to something else. Even if it might not be a 393 payload

  546. SamWhited

    You can already do that. If you get your other wire format, interpret it as that. If not, interpret it as styling unless it has a hint=false.

  547. SamWhited

    Or don't implement styling at all and only support your other wire format if you get that.

  548. susmit88 has joined

  549. pep.

    I'm not sure where I'm not clear on this

  550. pep.

    Why don't you see you're actually forcing me to implement it

  551. pep.

    well, "you", clients implementing 393

  552. pep.

    You by extension

  553. SamWhited

    Lots of clients already implement 393, it's just not called that and they all have slightly different rules.

  554. SamWhited

    This spec doesn't change that.

  555. pep.

    Let's just talk about the spec

  556. SamWhited

    The spec doesn't change anything, so it's not forcing you to implement or not implement anything.

  557. pep.

    Ok I'm giving up sorry

  558. pep.

    It's being vetoed anyway so..

  559. paul has left

  560. SamWhited

    Possibly stupid question: does anyone know if there's a name for the emoji pep. mentioned? ("> <")? I'm just trying to figure out what it is so I can use it in an example maybe

  561. SamWhited

    I've never seen it before

  562. theTedd


  563. SamWhited

    Thanks. I don't see that one in this list of kaomoji, but I'll keep looking

  564. pep.

    😖😫 < some variant of these

  565. SamWhited

    I see a few other faces that use ><, but they're all wrapped in quotes, or don't have a space after the ">" so they wouldn't be quotes anyways

  566. SamWhited

    wrapped in parens, I mean

  567. theTedd

    they tend be much more complex with various unicode characters

  568. pep.


  569. SamWhited

    pep. that wouldn't conflict or be a quote, so no problem with that one

  570. pep.

    SamWhited, not sure what you're trying to do here anyway

  571. pep.

    it's just one example

  572. SamWhited

    pep. I know, I want to use it in an example in the XEP of disabling the styling hint

  573. SamWhited

    So I was just trying to find what that emoji represented, but I can't find it anywhere

  574. SamWhited

    If the way it's actually written doesn't actually conflict, it's not a good example for me to use

  575. theTedd

    the 'real' way might not, but people lazily type >< because it's quicker

  576. Zash


  577. SamWhited

    ah, gotcha. Okay, I'll just use it in the example then as is and say that it's an emoji without naming it. Thanks.

  578. pep.

    Also a quote from Zash in dino@ the other day: "That's how it works on *nix afaik, $LANG and $LC_* etc"

  579. Zash


  580. pep.

    And I can grep through logs if you want a lot more

  581. SamWhited

    pep. that's okay, I just needed one and the emoji example is a good one to use since people will probably understand it

  582. SamWhited


  583. paul has joined

  584. sonny has joined

  585. sonny has left

  586. susmit88 has left

  587. sonny has joined

  588. susmit88 has joined

  589. theTedd has left

  590. susmit88 has left

  591. susmit88 has joined

  592. sonny has left

  593. sonny has joined

  594. pep.

    hmm so what's the status of the 157 PR? "Accepted but"?

  595. jonas’

    pep., accepted, but flow wants to investigate whether he wants to improve it before we get it into Active

  596. larma has left

  597. jonas’

    (in which case we’ll have to re-vote)

  598. jonas’

    oh, also, Ge0rGs vote is pending

  599. jonas’

    so it’s *not* accepted at this stage

  600. jonas’

    but even if Ge0rG had already not-vetoed it, The Editors™ would delay the merge until flow reports back

  601. pep.

    should I change it to WIP or sth? (after Ge0rg votes?)

  602. pep.

    or blocked or..

  603. Ge0rG

    Should I just delay my vote?

  604. larma has joined

  605. David has joined

  606. bear has left

  607. jonas’

    pep., there is a "Draft" button

  608. jonas’

    that would probably be appropriate

  609. jonas’

    also, for the record, we voted on d902893

  610. jonas’

    also, for the record, we voted on d902893

  611. jonas’

    having it written down here makes it easier to keep track when re-reviewing the thing

  612. pep.

    jonas’: yeah that's what I meant

  613. Zash

    what's that, a case where using github doesn't make things better? :)

  614. sonny has left

  615. sonny has joined

  616. Wojtek has left

  617. sonny has left

  618. sonny has joined

  619. Wojtek has joined

  620. debacle has left

  621. bear has joined

  622. sonny has left

  623. kusoneko has left

  624. kusoneko has joined

  625. kusoneko has left

  626. kusoneko has joined

  627. kusoneko has left

  628. kusoneko has joined

  629. kusoneko has left

  630. kusoneko has joined

  631. vaulor has left

  632. SouL has left

  633. vaulor has joined

  634. SouL has joined

  635. susmit88 has left

  636. debacle has joined

  637. susmit88 has joined

  638. debacle has left

  639. debacle has joined

  640. sonny has joined

  641. kusoneko has left

  642. kusoneko has joined

  643. sonny has left

  644. sonny has joined

  645. sonny has left

  646. kusoneko has left

  647. kusoneko has joined

  648. sonny has joined

  649. stpeter has left

  650. sonny has left

  651. sonny has joined

  652. eta has left

  653. sonny has left

  654. eta has joined

  655. sonny has joined

  656. stpeter has joined

  657. sonny has left

  658. sonny has joined

  659. susmit88 has left

  660. susmit88 has joined

  661. robertooo has left

  662. susmit88 has left

  663. susmit88 has joined

  664. sonny has left

  665. Tobias has left

  666. susmit88 has left

  667. susmit88 has joined

  668. daniel has left

  669. daniel has joined

  670. undefined has left

  671. susmit88 has left

  672. susmit88 has joined

  673. robertooo has joined

  674. susmit88 has left

  675. susmit88 has joined

  676. susmit88 has left

  677. susmit88 has joined

  678. stpeter has left

  679. debacle has left

  680. stpeter has joined