XSF Discussion - 2020-06-12


  1. queen_tilfaar

    How long do you guys think it's gonna take for matrix to completely replace xmpp? Just wondering

  2. moparisthebest

    Lol

  3. eevvoor

    queen_tilfaar‎ this is not even asymptotically to eternity

  4. rion

    Hey guys. To dup myself from the ejabberd room. Do I understand correctly it's impossible to use emoji in the MUC nickname?

  5. Zash

    It's forbidden, but not always impossible.

  6. rion

    I would some 🍺 there :-D

  7. Zash

    And the wrong combination of things slip through, you can cause s2s drops.

  8. Zash

    My recommendation is to preemptively assume fetal position under your desk and cry for a while.

  9. rion

    Zash: so you are disagree with last comments from there https://github.com/processone/ejabberd/issues/1896

  10. Zash

    I can look in a bit. We should also do a writeup of what Prosody (trunk) does

  11. rion

    What is the final date when MUC will be deprecated in favor of MIX where I believe 🍺 is allowed? =)

  12. Neustradamus

    rion: xmpp:ejabberd@conference.process-one.net?join

  13. vanitasvitae

    Wasnt there a website for that?

  14. Zash

    rion, check what https://tools.ietf.org/html/rfc8266 says about this

  15. Neustradamus

    rion: XEP-0045 is good for a lot of years!

  16. Zash

    When someone makes a MUC→MIX bridge, that's when all our problems go away. :)

  17. rion

    rfc8266 doesn't mention beer :-/

  18. rion

    Well from very quick look at rfc8266, emoji do no look something forbidden.

  19. Zash

    I imagine you also have to look at https://tools.ietf.org/html/rfc8264#section-4.3

  20. rion

    ah this hidden section..

  21. pep.

    Kev, the newsletter says about Smack: "Among additional support for more than a dozen new XEPs, the new release will contain a new architecture for modular transports, as well as a modified API that applies the builder pattern to stanza types.", is the term "modular transports" from Smack and if so can you explain a bit to help me (us) translate

  22. rion

    Zash: well ok. Doesn't really mater in fact. I just added KDE emoticons support in Psi and now have all the EmojiOne here. It was just interesting how I can apply it :)

  23. flow

    pep., was that a question for me?

  24. pep.

    Ah sorry

  25. pep.

    Smack, Smacks..

  26. pep.

    Wait smacks is something else?

  27. pep.

    mod_smacks.

  28. flow

    well there is mod_smacks

  29. pep.

    Anyway, confused..

  30. flow

    and of course the linux kernel's Simplified Mandatory Access Control Kernel (SMACK)

  31. pep.

    flow, so any hint for us translators? :p

  32. pep.

    What does that mean

  33. flow

    pep., in the past, when someone added support for a new xmpp transport to smack, what he/she usually did was "cp XMPPTCPConnection.java XMPPBOSHConnection.java"

  34. flow

    but that copied a lot of transport agnostic functionality to, and hence duplicated code

  35. flow

    with the modular architecutre, you can plug in transport implementation into the smae ModularXmppConnection, like rfc6120 TCP, BOSH, WebSocket, etc.

  36. flow

    with the modular architecutre, you can plug in transport implementations into the same ModularXmppConnection, like rfc6120 TCP, BOSH, WebSocket, etc.h

  37. flow

    pep., does that help?

  38. pep.

    Ok so you've "just" made the transport code a bit more modular :p

  39. flow

    "just", hehe, I think it is one of the most fundamental reworks of smack's core in the last two decades

  40. pep.

    (Not diminishing the work, just trying to understand)

  41. pep.

    Ok

  42. flow

    sure ;)

  43. Guus

    sm-acks (acking of stream management) vs smack (the xmpp lib) ?

  44. flow

    rion, simply put, emojis are not allowed in localparts. FYI, there is a test corpus with valid and invalid JIDs in jxmpp, e.g. https://github.com/igniterealtime/jxmpp/blob/master/jxmpp-strings-testframework/src/main/resources/xmpp-strings/jids/invalid/main#L46

  45. pep.

    flow, thanks yeah that helps

  46. rion

    flow: well that's ok. I'm interested in the resourcepart

  47. flow

    rion, ahh, MUC nicks, correct?

  48. rion

    yep

  49. flow

    rion, do you have an unicode code point for me?

  50. rion

    I tried this 🍺

  51. rion

    not sure about numbers

  52. rion

    U+1F37A

  53. flow

    rion, is valid in resourceparts

  54. rion

    so it's just ejabberd

  55. flow

    This codepoint was assigned with unicode 6.0 in 2010, so ten years ago. So if you talk to an implementation from 2009, it may rightly reject the address

  56. rion

    jabber.ru has ejabberd 2.3 iirc.

  57. flow

    hmm, wasn't there something special about xep45 nicks

  58. rion

    <nick> in muc is "discouraged" according to XEP

  59. rion

    fyi https://github.com/processone/ejabberd/issues/1896

  60. flow

    I believe cromain is wrong saying that "emoji class is not accepted for resource", The Unicode So category, where most emojis are reside, is, as far as I can tell, allowed in resourceparts

  61. flow

    but please follow the traces in the XEP yourself: rfc7622 resourcepart is OpaqueString profile of PRECIS FreeformClass → rfc7564 § 4.3.1

  62. jonas’

    Ge0rG, MattJ, Kev, please check your inboxes re message routing sprint

  63. Ge0rG

    jonas’: thank you very much.

  64. jonas’

    I don’t expect this to work out, and if it doesn’t, I’ll try to reschedule with more time ahead and with more potential timeslot input from the participants.

  65. Ge0rG

    I'm also very sorry for not giving feedback in a timely fashion.

  66. Ge0rG

    with my current scheduling background it might be better to do this whole thing on-list, though.

  67. Holger

    ejabberd doesn't support 7622 BTW, just 6122's Resourceprep. (No idea whether that should already allow emojis.)

  68. Zash

    Which combo of stringmangling RFCs was 6211?

  69. Zash

    Prosody is also on some older variant

  70. jonas’

    6211? Cryptographic Message Syntax?

  71. Zash

    m/rfc6[12]{3}/

  72. jonas’

    I don’t know that command

  73. Holger

    Zash: RFC 3454 + Appendix B in RFC 6122, I believe.

  74. Holger

    But I'm trying hard *not* to look into this right now :-)

  75. Zash

    Friday clock-out-o-clock is not the time for that, indeed.

  76. dwd

    Neustradamus, Please stop constantly asking me to test your memberbot PR for you. I have already explained I'm very busy and will not do it. You need to test it yourself, and clearly describe the benefits, or drop the issue.

  77. Neustradamus

    dwd: Please read the comment.

  78. dwd

    Neustradamus, Yeah, it tells me I have to test it. But firstly, I don't have to, and secondly, you tell me you haven't, and it's your code.

  79. Shell

    this sounds like a bug in Psi, fwiw.

  80. dwd

    Shell, Possibly; but the memberbot now accepts "yes" and "no" case-insensitively in all responses, so it's irrelevant, I think.

  81. Neustradamus

    If someone can confirm my solution, it will be nice, I would like a merging before next voting period... It will be nice to have before Gajim integration: https://dev.gajim.org/gajim/gajim/-/issues/9768 (cc lovetox).

  82. dwd

    But "Yes" or "No" both work in the current master of memberbot.

  83. Guus

    Neustradamus : dwd is thinking that your change is no longer needed, as someone else already made a similar change.

  84. Kev

    Well, the change doesn't do what it says it does.

  85. Kev

    It claims to be influencing what the bot is asking clients to send, and it doesn't, it's only the display label that's being changed, unless I'm incredibly dense.

  86. Kev

    So the right thing to do seems to be to close the PR, to me.

  87. Guus

    From what I read in the Github comments, others came to the same conclusion.

  88. Neustradamus

    Guus: No, it is not completely solved, the other PR adds support of Yes/No, but the problem is that the HTML code is not correct.

  89. dwd

    Neustradamus, You're suggesting that the spaces *outside* an anchor make a difference to how Psi interprets the encoded URL parameters, is that correct?

  90. Neustradamus

    rion: ^

  91. rion is out of the context

  92. Neustradamus

    https://github.com/xsf/memberbot/pull/4

  93. Neustradamus

    rion: https://github.com/xsf/memberbot/pull/4

  94. Zash

    but why

  95. rion

    Neustradamus: I'm sorry. From your PR descriptions it's never possible to understand what it's about. Please stop making PRs

  96. Neustradamus

    Context: Psi with auto-capitalize first letter of sentence (the feature is requested in Gajim too) Currently, when we click on "yes", we have "yes", and when we click on "no", we have "No". My PR permits to have "same": "Yes" and "No", all people are happy.

  97. Neustradamus

    It is clear, you can test directly with the test memberbot from dwd: memberbot@dave.cridland.net.

  98. pep.

    rion, don't say that or he'll go back to just demanding things to people :P

  99. pep.

    rion, don't say that or he'll go back to just demanding things from people :P

  100. Neustradamus

    rion: https://github.com/xsf/memberbot/pull/4#issuecomment-643006808 + https://github.com/xsf/memberbot/pull/4#issuecomment-643301118, it is not clear?

  101. dwd

    Neustradamus, But your PR doesn't do that.

  102. Zash

    I understand nothing.

  103. dwd

    Or rather:

  104. dwd

    Neustradamus, Firstly, your PR doesn't change anything - the spaces you've added are around the links, not what Psi is asked to send in the URLs, and

  105. pep.

    ahhhh, Neustradamus your PR adds spaces around so that they don't get capitalized in psi? what?

  106. dwd

    Neustradamus, Secondly, the patches that pep. and I already did mean that "Yes", "yes", "YES", and so on are all treated identically anyway, so it no longer matters whether Psi (or Gajim) capitalise the first letter or not.

  107. Neustradamus

    https://github.com/xsf/memberbot/pull/4#issuecomment-643301118 After my change you have now "same": yes: you will have now "Yes" no: you will have always "No"

  108. pep.

    Neustradamus, have you tested with all the latest changes? It shouldn't matter anymore if Psi capitalises or not

  109. Neustradamus

    Currently, you will see the difference, when you click on: yes: you have "yes" no: you have "No"

  110. pep.

    If it does then we should fix this instead of working around it

  111. rion

    Neustradamus: I guess I start understanding. You want to disabled auto-capitalization feature in Psi. correct? If so there is an option for this somewhere.

  112. pep.

    Neustradamus, is it the case in all clients?

  113. rion

    Neustradamus: options.ui.chat.auto-capitalize set it to false

  114. Neustradamus

    Yes no problem without the auto-capitalize feature, it is "yes" and "no".

  115. rion

    so solved!

  116. MattJ

    If you enable auto-capitalize, and it doesn't capitalize, isn't that a bug?

  117. pep.

    Neustradamus, so it's not a memberbot issue?

  118. Neustradamus

    I have specify in the ticket: - You can test with Psi and auto-capitalize function: "Psi -> Options -> Messages -> Input -> Automaticaly capitalize the first letter in a sentence".

  119. Neustradamus

    I have specified in the ticket: - You can test with Psi and auto-capitalize function: "Psi -> Options -> Messages -> Input -> Automaticaly capitalize the first letter in a sentence".

  120. MattJ

    With your "fix": doesn't capitalize => bug

  121. pep.

    Neustradamus, yes but why should it matter for memberbot what Psi does here. Maybe help fix the auto-capitalization issue

  122. pep.

    In psi.

  123. Neustradamus

    rion: it is not solved, the problem is always here with auto-capitalize the first letter of a setence, but it is solved with my fix.

  124. rion

    Well guys already told you the fix is invalid. And I agree.

  125. rion

    If you want to switch off capitalization of specific contact you have to go to our issue tracker and request something like "implement BLOCKlist for the capitalization feature"

  126. Neustradamus

    We will see with Gajim and the same feature if it is a problem with Psi or Gajim or memberbot

  127. pep.

    Neustradamus, great!

  128. pep.

    Please report back

  129. Neustradamus

    rion: I do not want to disable this feature for a contact

  130. Neustradamus

    I think that you do not understand and you have not tested with you XMPP client

  131. dwd

    Neustradamus, But... the memberbot now doesn't care if you capitalise or not (or, if Psi does). So what's the problem you're trying to fix?

  132. Neustradamus

    The problem is only for one choice

  133. Neustradamus

    The difference is about the click on "yes" or "no"

  134. Neustradamus

    yes = yes, no = No

  135. Neustradamus

    Do you see the difference between yes and No?

  136. dwd

    Neustradamus, And as far as testing your patch goes - you can surely do that yourself instead of insisting that I (or anyone else) does so?

  137. dwd

    Neustradamus, To be clear: The memberbot does NOT see a difference anymore.

  138. dwd

    Neustradamus, Because Alex and pep. and I spent some time ensuring that was the case.

  139. pep.

    dwd, I say let's wait on his investigation with gajim :P

  140. pep.

    Maybe both Psi and Gajim need fixing.

  141. Neustradamus

    Can you add my little changes in memberbot/chat_voting.py? Take few minute, and confirm it...

  142. Neustradamus

    -> https://github.com/xsf/memberbot/pull/4/files

  143. dwd

    Neustradamus, But you can, surely?

  144. dwd

    Neustradamus, Why do i have to?

  145. pep.

    If you allow me a short baguette interlude: Neustradamus, t'es en train de corriger le problème au mauvais endroit. memberbot envoie la même chose à tout le monde, le problème ici est juste dû au fait que Psi capitalise. Comme tu proposes, regarde Gajim pour voir comment ça marche avec et peut-être qu'on pourra en tirer d'aures conclusions :)

  146. rion

    Neustradamus: if you want I can add a different logic when text is pasted but not typed manually. But it's something for Psi 3.0 (in a couple of years)

  147. moparisthebest

    rion, vanitasvitae: this website? https://www.moparisthebest.com/mix/

  148. Neustradamus

    dwd: I have not a test memberbot.

  149. Neustradamus

    rion: Have you added the test-memberbot? You have seen the problem?

  150. rion

    moparisthebest: lgtm =)

  151. dwd

    Neustradamus, So make one. Create an XMPP account somewhere and point the script at it. And if you can't do that, we have to assume you are not competent to make any code changes to it.

  152. Neustradamus

    But you have one here, it is easy to update some lines, no?

  153. Neustradamus

    pep.: Do you understand that once is good and once is bad?

  154. Neustradamus

    pep.: Do you understand that one is good and one is bad?

  155. pep.

    Neustradamus, but it's not memberbot's fault

  156. rion

    Neustradamus: I don't use capitalization. It's better have a habit to press shift manually. Otherwise you will start forgetting doing this everywhere.

  157. rion

    I'm starting thinking Psi doesn't need this feature

  158. dwd

    rion, The auto-capitalisation or Neustradamus?

  159. Zash

    I feel like the opposite feature would be nicer, to undo the useless capitalization added by phone keyboards

  160. rion

    dwd: good question

  161. pep.

    Zash, that's an issue with the sending clients :P

  162. Neustradamus

    That you can see the main Psi developer can not test it... Because it does not use.

  163. Zash

    pep., therefore memberbot needs to handle it!!!1!

  164. pep.

    Zash, would you undo the (almost) systematic capitalization I do when writing from poezio?

  165. Zash

    pep., uNDO? WHEN YOU CAN REVERSE CAPS!

  166. pep.

    I mean at the beginning of a sentence

  167. Zash

    pep., uNDO? wHEN YOU CAN REVERSE CAPS!

  168. Zash

    :P

  169. Neustradamus

    You can look the diff: '<a href="xmpp:{0}?message;type=chat;body=yes">yes</a> /' ' <a href="xmpp:{0}?message;type=chat;body=no">no</a>)</p>')

  170. Neustradamus

    There is a space before "no" and there is no before "yes"

  171. dwd

    Neustradamus, Yes, I did. It doesn't change the URL, which is (we hope) what Psi uses to decide what to send.

  172. Neustradamus

    Can you add directly, one example on 4: ' Would you like to recast your votes? (' '<a href="xmpp:{0}?message;type=chat;body=yes">yes</a> /' ' <a href="xmpp:{0}?message;type=chat;body=no">no</a>)</p>')

  173. Neustradamus

    My PR solves...

  174. larma

    If what Neustradamus writes is actually true, that would be a very weird bug in Psi...

  175. larma

    (beside the weird feature of auto-capitalizing text that was not even typed in)

  176. pep.

    Well "yes" being at the beginning of a sentence I'd say that's on purpose?

  177. pep.

    But body semantics etc..

  178. Neustradamus

    No problem for "no" but there is a problem for "yes", and the difference is only the missing space between "yes" and "no" parts.

  179. pep.

    Neustradamus, no, the "only" difference is that "yes" is at the beginning of the message I'm guessing.

  180. pep.

    Neustradamus, no, the "only" relevant difference is that "yes" is at the beginning of the message I'm guessing.

  181. larma

    Neustradamus, *if* your PR has any effect at all, that would definitely be a very weird bug in Psi.

  182. pep.

    Surely some clients strip spaces so that probably wouldn't have any effect on them :P

  183. pep.

    But body semantics etc..

  184. Neustradamus

    pep.: yes it is same :)

  185. Neustradamus

    - https://github.com/xsf/memberbot/blob/master/memberbot/chat_voting.py#L256 - https://github.com/xsf/memberbot/blob/master/memberbot/chat_voting.py#L264 - https://github.com/xsf/memberbot/blob/master/memberbot/chat_voting.py#L270 - https://github.com/xsf/memberbot/blob/master/memberbot/chat_voting.py#L276

  186. pep.

    Neustradamus, the issue is not memberbot, period.

  187. pep.

    I think we've brought enough points here today to show you that

  188. Neustradamus

    pep.: I think that we have progressed, it must be solved before next voting period.

  189. pep.

    It is solved from memberbot's side

  190. Neustradamus

    My PR has been merged?

  191. Kev

    Memberbot does not need changing.

  192. Guus

    🍿

  193. Guus

    This is fascinating.

  194. golabu

    I do like the efforts being made in https://xmpp.work/ and people are probably going to hate me for mentioning it, but someone has to do it. - The privacy policy (https://xmpp.work/privacy-policy/) is extremely hard to find (only link I found is in "Add Service Provider" -> "Sign Up"). Thus violating Art 12 (1) GDPR. - The privacy policy does not state the identity and the contact details of the data controller. Thus violationg Art 13 (1)(a) GDPR. - The privacy policy does not state how long Matomo tracking data is stored. Thus violating Art 13 (2)(a) GDPR. - The website uses Matomo in a way where tracking cookies are set without users consent. Thus violating Art 5 (3) ePD. - Additional hint: The privacy policy does not state if and how long server logs are stored. Assuming they are, this would be a violation of Art 13 GDPR. If no server logs are stored, it doesn't hurt to mention that.

  195. moparisthebest

    maybe whoever owns it isn't under GDPR jurisdiction?

  196. pep.

    golabu, thanks for reporting this

  197. pep.

    moparisthebest, they are

  198. Zash

    moparisthebest, where would that be?

  199. moparisthebest

    everywhere except EU I guess

  200. golabu

    If the website would not list job offers in EEA you could try to argue that (even without geoblocking) if the data controller / operator is really not located in EEA.

  201. golabu

    But as soon as the website targets EEA (which it does by listing job offers in EEA) GDPR applies.

  202. pep.

    I'm afraid we can only defer to the website author as we don't have access to this..

  203. moparisthebest

    looks like there is only 1 job listed in India and the rest in the USA though?

  204. pep.

    moparisthebest, I don't think JC will argue that this shouldn't be under GDPR anyway. The XMPP community being rather EU-centric (be it good or bad)

  205. pep.

    That'd be sad

  206. moparisthebest

    looking at the job listings you wouldn't think it was EU-centric, they are all USA except the Indian one :)

  207. pep.

    Anyway that's not the point. Not sure why we need legislation to run after services to provide a privacy policy that states what it does with the data. GDPR or not.

  208. moparisthebest

    I don't even see a place to put data in there? do you mean just the job listings?

  209. pep.

    dunno, JC stated in the mail to operators that people could register themselves on the website

  210. pep.

    I haven't tried

  211. pep.

    But then matomo etc., you don't even need to register I guess

  212. Guus

    golabu: thanks, intjko these are sensible things to improve. I've asked the maintainer of the site (which is not the XSF) to have a look.

  213. Guus

    > looking at the job listings you wouldn't think it was EU-centric, they are all USA except the Indian one :) Given that it is live for just a couple of hours, that hardly is a trustworthy accurate reflection of the future listing.

  214. jcbrand

    golabu: thanks for the feedback, I'll try to incorporate it next week

  215. golabu

    jcbrand, 👍️

  216. golabu

    also sidenote: opkode.com (which I assume is your personal website) also uses matomo with tracking cookies but without user consent or any kind of privacy policy.

  217. jcbrand

    I'll disable Matomo for xmpp.work. Would have been nice to keep track of visitor numbers, but it's to much effort to comply with the cookie tracking regulations.

  218. Jeybe

    It's not representing anyway, as I could imagine that many users block tracking per default and send a DNT header (at least for me it's self-evident).

  219. Guus

    > It's not representing anyway, as I could imagine that many users block tracking per default and send a DNT header (at least for me it's self-evident). I would be surprised if a significant amount of users does so. Our particular bubble (and I'm thinking you're overestimating blockers there) is a poor representation of the general public.

  220. Neustradamus

    dwd: the test-memberbot is offline? rion will test...

  221. Neustradamus

    To confirm that the bug is in the memberbot

  222. dwd

    I've shut that machine down for the weekend, yes.

  223. Neustradamus

    Oh :'(

  224. Neustradamus

    Kev: Can you reopen my PR, I will not create an identical PR... Thanks in advance.

  225. Neustradamus

    And I confirm you, the problem is solved with.

  226. Jeybe

    > I would be surprised if a significant amount of users does so. Our particular bubble Guus: I do refer to our bubble of course, because that are the ones that use XMPP I'd say. If you don't care about freedom and privacy I don't see why anybody should use XMPP.

  227. moparisthebest

    do people still use DNT? did any company in the history of the internet ever actually respect it? https://www.fastcompany.com/90308068/how-the-tragic-death-of-do-not-track-ruined-the-web-for-everyone

  228. Jeybe

    moparisthebest: No, I do not know any major tracking company that does. Only privacy respecting service providers with a properly configured Matomo seem to do so. And for that it's good to have, because not every individual caring about privacy does block JavaScript by default (or so?).

  229. pep.

    Jeybe, some people argue and are happy / encourage that XMPP be used by capitalists companies that have for primary goal to pay their shareholders, and as a fact don't consider freedom nor privacy as a first choice (or at all) :)

  230. pep.

    It's actually a feature often not to consider privacy

  231. pep.

    Just think about their business model for a moment

  232. Jeybe

    pep.: So you refer to proprietary chat solutions build upon XMPP, like the chat system of League of Legends for example?

  233. Jeybe

    Or Zoom ;-)

  234. pep.

    For example

  235. Jeybe

    So they do hire for XMPP devs explicitely?

  236. dwd

    Jeybe: yes, us evil capitalists who try to exploit poor clinicians do. Other evil capitalists also do, including many who fund the XSF.

  237. dwd

    Jeybe: in fairness, there's also a lot of evil organisations who aren't capitalists who use, and hire for, XMPP.

  238. jcbrand

    pep.: purposefully misrepresenting other people's positions isn't a good look

  239. pep.

    misrepresenting?

  240. pep.

    You include yourself in there if you think you fit in

  241. pep.

    That sentence could very well be written absent of moral judgement

  242. pep.

    (I do judge though)

  243. Maranda

    > jcbrand, 👍️ > also sidenote: opkode.com (which I assume is your personal website) also uses matomo with tracking cookies but without user consent or any kind of privacy policy. Matomo allows for explicit opt-out, and also you could simply have your browser activate the do not track flag it honors that too

  244. Maranda

    Also if the problem is gdpr even if it tracks data it's anonimised so it could perfectly fit in a compliant site privacy policy

  245. Maranda

    Really maybe you should tone down your enthusiasms guys, sometimes

  246. Maranda

    (because it's often misplaced)