Gajim - 2017-04-18


  1. lovetox why are server losing compatibility? the change is only sending the result as iq instead of message
  2. lovetox the stanza id is added regardless of version
  3. lovetox so thats probably one or two lines of code
  4. lovetox to support 3 versions
  5. lovetox not a case where i would say, oh we have to get rid of old stuff
  6. viq lovetox, I can't answer that, if you want to ask them yourself you could poke Zash on prosody@conference.prosody.im
  7. lovetox viq im adding support for MAM:1 now
  8. viq lovetox, <3
  9. lovetox its a bit of a problem, because basically we could support all MAM versions, and probably many server are out there who dont support MAM:2
  10. lovetox but i dont think gajim can use different namespaces depending on what the server supports
  11. lovetox so i have to add that as well
  12. viq Yeah, from having a quick look at gajim code yesterday it just assumes One True Version of MAM and goes with it, it would need to detect that.
  13. viq I've had a glance at Conversations code, and they seem to do some detection, I could find it for you if it would help (though it's an android client, so java)
  14. lovetox i think i just add MAM:1
  15. lovetox and every stone old server that doesnt support this should upgrade anyway, or people can use the current gajim version
  16. Link Mauve lovetox, MAM:1 is obsolete, you want MAM:2.
  17. Link Mauve Did you not read the XEP? :|
  18. lovetox no, why is it obsolete?
  19. Link Mauve Because MAM:2 has been released two months ago?
  20. lovetox and? its only adding a stanza id
  21. Link Mauve It’s also another namespace.
  22. lovetox thats no reason to upgrade and get incompatible with a lot of servers
  23. Link Mauve Some servers, like Prosody, only support :2.
  24. lovetox thats great, and some servers only support :1
  25. Link Mauve :1 and :0 and :tmp were flawed due to not having the concept of stanza-id.
  26. Link Mauve lovetox, ask them to upgrade?
  27. Holger :tmp had them.
  28. Holger Well <archive-id/>s.
  29. Link Mauve Holger, indeed.
  30. lovetox why should i ask people to upgrade, there is no gain for them when they use gajim
  31. Holger lovetox: Because you always sync *all* messages from MAM anyway, right?
  32. lovetox right :D
  33. lovetox im not saying gajim does it good
  34. lovetox but why break with servers when there is no gain
  35. Link Mauve lovetox, not having a stanza-id means that you can’t deduplicate messages from the archive.
  36. Link Mauve And can’t synchronise on a message you sent.
  37. lovetox and why the hell does prosody not support 1
  38. Link Mauve Because ↑
  39. Holger Link Mauve: Gajim doesn't dedup.
  40. Link Mauve ^^'
  41. lovetox there is no difference from 1 to 2 what ive seen
  42. lovetox you can add the stanza id in 1 and 2 the server does not have to care
  43. Holger Link Mauve: On login, Gajim simply queries all messages from MAM that were archived since the previous MAM request. Regardless of whether or not they were received as live messages as well.
  44. Link Mauve lovetox, we wouldn’t have bumped the namespace if there were no differences…
  45. lovetox and then we dedup, or else, we had a lot of double messages in the history holger
  46. Link Mauve Holger, does that mean the local archive gets full of duplicates?
  47. Link Mauve lovetox, how do you deduplicate then?
  48. lovetox of course not lol
  49. Link Mauve If not by the stanza-id?
  50. Holger The reason for the namespace bump is, if you do make use of stanza IDs, you need the guarantee that they're generated by the server.
  51. lovetox i understand that, but why not supporting 1
  52. Link Mauve Yes.
  53. Holger lovetox: Maybe I rememver the code incorrectly.
  54. lovetox the server does not have to care
  55. Link Mauve lovetox, supporting multiple versions isn’t the easiest thing ever, and once everyone moves to :2 there won’t be any problem anymore.
  56. Holger lovetox: I thought with MAM support enabled, the archive is only filled from MAM.
  57. Link Mauve lovetox, how do you deduplicate without caring for the stanza-id?
  58. lovetox wait
  59. Holger lovetox: If that's wrong then I agree with Link Mauve that stanza IDs would definitely help you, as you can't dedup reliably without them.
  60. Link Mauve Holger, indeed, there is no way for a user to inject or retract messages in the archive.
  61. lovetox we dedup with time, and msg txt
  62. Holger Which is unreliable.
  63. lovetox it works so well that iv never seen a double message
  64. lovetox you dont have to tell me what good stanza ids are for
  65. lovetox thats not the question here
  66. lovetox its why would i not support 1
  67. Holger "there is no gain for them when they use gajim"
  68. lovetox when the only thing changed for the server
  69. lovetox is the namespace
  70. lovetox Holger there is none
  71. Holger Obviously I do have to tell you :-)
  72. lovetox if i break now with a server
  73. lovetox and a user comes and tells me it does not work anymore
  74. Holger If it breaks things then there's a trade-off.
  75. lovetox and i tell him upgrade we had to update
  76. lovetox and he ask, why
  77. Holger That's different from stating that there's no gain.
  78. lovetox then i tell him : oh just because ..
  79. lovetox i said there is no gain when using gajim
  80. lovetox look it up
  81. Holger And if you perform dedup in Gajim there's a gain when using Gajim, because it makes dedup reliable.
  82. Holger Dedup of incoming messages, that is.
  83. lovetox but not with stanza id, i would have to add that
  84. lovetox again with no gain, because we dont have a problem with duplicates
  85. Holger You mean "you haven't seen a problem personally", right?
  86. lovetox oh yeah, there could be a problem, sometime, somewhere
  87. lovetox as there could be many other problems, because i have to migrate the database, and add new code
  88. Holger This sort of problem is much easier to trigger under bad network conditions with lots of resumptions, MAM requests, failing MAM requests, ...
  89. Holger So maybe you're just not using Gajim on a notebook in a café with bad WiFi.
  90. Holger Other might. And making dedup reliable for them is a gain. I'm not saying it's worth the hassle right now, mind.
  91. lovetox what, a MAM message result is always the same
  92. Holger ...
  93. lovetox on a cafe or a broken connection
  94. lovetox if i can dedup it once
  95. lovetox it will work the second time
  96. lovetox and im not arguing the use of stanza ids
  97. lovetox im arguing why are the server not support 1
  98. lovetox when the difference is only one number
  99. Holger You were arguing both.
  100. lovetox or can you point me to other things that changed
  101. Holger And I was responding to one of the things you were arguing.
  102. Holger But I'm out, you're obviously annoyed by such responsed.
  103. Holger *responses.
  104. lovetox so are there other differences?
  105. Holger I agree it's desirable to have servers support both. It just doesn't help if we agree on this as long as neither of us works on the server in question.
  106. lovetox im annoyed by the fact that clients have to deal with all kinds of server quirks, this supports that, the other on that, this does it in this way, the other in that way
  107. lovetox and then when asking to support a namespace, where the difference is just the name
  108. Holger I can assure you that dealing with all kind of client quirks is not more fun :-)
  109. lovetox thats too much too ask
  110. Holger Does Gajim support multiple namespaces?
  111. lovetox no thats the problem here
  112. Holger I thought you kind of had the policy of not doing that for anything.
  113. Holger Ah.
  114. lovetox i have to add this aswell now
  115. Flow an absetraction layer for multiple namespace versions of a XEP is always a good idea
  116. Link Mauve Although sometimes it’s hard to achieve that in a meaningful way.
  117. lovetox next thing is, the protocol namespaces are in nbxmpp
  118. lovetox so i have to stay compatible with older gajim versions
  119. Holger So supporting multiple namespaces isn't trivial even for the case where the behavior is (almost) identical? Maybe it isn't trivial with Prosody's code, either (but I dunno).
  120. lovetox as i understand it, its not almost identical, it IS identical
  121. Holger Which is not my point at all :-)
  122. lovetox but lets stop that, i found a way to support both namespaces
  123. Holger I do agree that it's even more desirable to have servers support multiple namespaces than it is for clients, though.
  124. Link Mauve lovetox, I have a user on Gajim 0.16.5 from Ubuntu saying they are missing every message when they are offline with another client online, my server supports MAM:0 only, is there something obviously wrong?
  125. lovetox i guess you did tell him that he can only few the mam catchup in the history window
  126. lovetox not the chatwindow
  127. lovetox *view
  128. Link Mauve Yes.
  129. lovetox is it happening for every contact?
  130. lovetox because gajim has this build in encryption, if the other client is gajim
  131. lovetox then mam will not work
  132. lovetox if he uses omemo or something like that, the problem could also encryption related
  133. lovetox but generelly i dont know of any MAM issue in 0.16.5
  134. Link Mauve lovetox, it does it with all of their three contacts, and without encryption.
  135. lovetox Edit -> Account
  136. lovetox Generel Tab, check sync with server
  137. Link Mauve That was the first thing I asked them, everything is checked.
  138. lovetox thats it i dont have more :/ not heard of such a issue until now
  139. Link Mauve Same. :/
  140. lovetox you can look in the advanced config editor
  141. lovetox there is a config value
  142. lovetox last_mam_id
  143. lovetox check if there is a id
  144. lovetox if yes, that means we received something at one point
  145. lovetox i had once a case, where there was a strange mam_id in there
  146. lovetox one that was not valid
  147. lovetox check that, if its a valid id from your server
  148. lovetox otherwise delete it
  149. lovetox this will trigger loading all messages
  150. Link Mauve lovetox, apparently it’s empty.
  151. lovetox i guess the only thing left then is to check if we send the query at start
  152. lovetox in xml console
  153. Link Mauve I just asked him to check whether MAM was actually set to always.
  154. lovetox in one of his other clients?
  155. lovetox because gajim doesnt have that option i believe
  156. Link Mauve It doesn’t?
  157. Link Mauve Isn’t it in Actions > Advanced > Archiving preferences?
  158. Link Mauve lovetox, oh, and this menu item is grayed for them!
  159. lovetox thats for xep136
  160. Link Mauve Hmm, why does it work for me, on the very same server?
  161. lovetox only master branch supports it for 313
  162. Link Mauve Oh…
  163. lovetox easy test would be
  164. lovetox to go off with the other client he has
  165. lovetox and write with gajim
  166. lovetox then look if the other client querys mam
  167. lovetox that way you know if its server related
  168. bot Philipp Hörist pushed 1 commit to branch _refs/heads/master_ of _python-nbxmpp_ <https://dev.gajim.org/gajim/python-nbxmpp>: *23a41027* <https://dev.gajim.org/gajim/python-nbxmpp/commit/23a410277ac89e5cd69030c2f69d78b840dca778> Add new MAM namespaces
  169. Link Mauve lovetox, ahem, they actually disabled MAM at some point…
  170. lovetox so i change gajim master now to MAM2
  171. lovetox and then tell you to update your outdated server Link Mauve :D
  172. Link Mauve Sure, I will at some point. :)
  173. Link Mauve But people are still using Gajim 0.16…
  174. sergio lovetox: will does mam continue working with ejabberd? Ejabberd doesnt support mam:2 I think
  175. lovetox lol :D
  176. lovetox you got to be kidding me
  177. lovetox 0.16 branch will stay on MAM:0 for now
  178. lovetox and master branch will be MAM:2
  179. lovetox Holger, ejabberd supports 2 or not?
  180. sergio lovetox: I'm not kidding you 😅
  181. Holger lovetox: Nope. Will take another few weeks until it does.
  182. Holger (But it'll continue to support :tmp, :0, and :1 then.)
  183. mdosch In conversation i can edit sent messages. Is this also possible with gajim?
  184. Link Mauve mdosch, Ctrl-Up.
  185. bot Philipp Hörist pushed 3 commits to branch _refs/heads/master_ of _gajim_ <https://dev.gajim.org/gajim/gajim>: *f8a028b5* <https://dev.gajim.org/gajim/gajim/commit/f8a028b553691045ee68f89a3389f1f86d4632cb> Add/Modify Events to handle all MAM namespaces *6b75f4ab* <https://dev.gajim.org/gajim/gajim/commit/6b75f4ab3531273db2815798368a46336bdcb75b> Choose MAM namespace and save it *b42c21d3* <https://dev.gajim.org/gajim/gajim/commit/b42c21d3e049cda4f9bb596c470dc3f0006cfa43> Use new MAM Events and use chosen MAM namespace
  186. Link Mauve lovetox, I don’t think https://dev.gajim.org/gajim/gajim/commit/6b75f4ab3531273db2815798368a46336bdcb75b does what you think it does.
  187. Link Mauve You will have to do multiple tests.
  188. Link Mauve or doesn’t work like that.
  189. lovetox it yields true if one of the namespaces is in features
  190. lovetox ah damn
  191. lovetox yeah that look not right
  192. mdosch Link Mauve: thank you
  193. lovetox but why does it work ..
  194. Link Mauve lovetox, 'a' or 'b' == 'a'.
  195. Link Mauve So you are actually only checking for the first one.
  196. lovetox yeah just noticed
  197. lovetox how to do this efficiently without list comprehension
  198. lovetox or better in a readable way
  199. Link Mauve Move the lines 2014-2019 two lines above, and set a boolean in each branch.
  200. Link Mauve Also replace the else with an elif.
  201. lovetox ah yeah good idea thanks
  202. lovetox dont even need a boolean, when namespace is set i know its in there
  203. Link Mauve Right.
  204. arune lovetox, Link Mauve, Holger: https://mobile.twitter.com/iNPUTmice/status/834166855761788929 not true?
  205. Link Mauve arune, it is.
  206. Link Mauve But the module included with Prosody 0.10, not the one from prosody-modules, only supports :2.
  207. arune Aha
  208. arune But 0.10 is not released yet so that can't be an issue 😉
  209. Link Mauve And 0.9 didn’t support MAM, so no Prosody user ever used it right?
  210. mdosch I do, but I am using prosody 0.10 with the community module
  211. lovetox from there page
  212. lovetox 2016-01-27: Prosody 0.9.10 has been released, and is now available for download! See our release announcement for more info.
  213. lovetox ah lol 0.10
  214. mdosch ;)
  215. mdosch It's not yet released
  216. bot Philipp Hörist pushed 3 commits to branch _refs/heads/master_ of _gajim_ <https://dev.gajim.org/gajim/gajim>: *09512065* <https://dev.gajim.org/gajim/gajim/commit/09512065d438c157b4d41a7fdbf1d7178ed35dd7> Fix wrong inclusion check *d7a6b6ab* <https://dev.gajim.org/gajim/gajim/commit/d7a6b6ab0b04ffe2b591290df4eda33cfdc7a904> Register new MAM Events *86e29fb7* <https://dev.gajim.org/gajim/gajim/commit/86e29fb7f460a9a93fe5af8981b041122df2e7b9> LegacyArchiving Event does not have a type
  217. lovetox so master branch nightly from tomorrow on should support :2
  218. lovetox but you need also nbxmpp nightly
  219. lovetox because of the new namespaces
  220. lovetox Link Mauve, as you often mention the importance of namespaces within tags
  221. lovetox why is there no namespace in the new archived tag
  222. lovetox that the mam adds now
  223. Link Mauve bot, uh, where?
  224. arune mdosch: how do you make prosody use the community instead of the built in?
  225. mdosch arune, plugin_paths = { "/path/to/prosody-modules/" }
  226. mdosch it automatically takes the mam from community-modules if present, otherwise it falls back to builtin
  227. arune mdosch: thx
  228. mdosch arune, you can check out the modules with mercurial > hg clone https://hg.prosody.im/prosody-modules /path/to/prosody-modules
  229. 5gf http://i.imgur.com/aEasN0Y.png How to change user agent?
  230. mdosch probably in the config editor
  231. 5gf mdosch, I don't find the option
  232. mdosch had a look in the config editor... also didn't find a option
  233. 5gf + :(