Gajim - 2024-09-29


  1. luckydark

    hellow

  2. fjklp

    hello

  3. bot

    wurstsalat pushed 2 commits to branch gajim/master fix: Windows: Fix detecting MS Store version - https://dev.gajim.org/gajim/gajim/-/commit/ccaa27ecf260cad4a9320e5aa84e3e893094296a fix: Windows: Fix Notification AUMID for MS Store install - https://dev.gajim.org/gajim/gajim/-/commit/5d3a7304be1505f864eafd1c35f41beeec0cce12

  4. bot

    lovetox pushed 2 commits to branch gajim/master cq: Add winrt typing stubs - https://dev.gajim.org/gajim/gajim/-/commit/13a0d1be7bb6a4898580669a69d932464bbd68d5 cq: Remove type ignore comments - https://dev.gajim.org/gajim/gajim/-/commit/d3b5221a8aa6dc86203477739f902e6653db4b15

  5. bot

    wurstsalat pushed 1 commits to branch gajim/master other: Windows: Improve MS Store development instructions - https://dev.gajim.org/gajim/gajim/-/commit/3f4feed225c7032a6491ca8088e580e00230d9f5

  6. meson

    > simply delete your db then it will be created with the new table that has worked, I will now try it again with migrate :)

  7. meson

    Why is there an arbitrary pragma version of < 10 used for re-initialization of the storage (db)? https://dev.gajim.org/gajim/gajim/-/blob/master/gajim/common/storage/cache.py?ref_type=heads#L134

  8. meson

    shouldn't that better read `if user_version < CURRENT_USER_VERSION` ?

  9. cal0pteryx

    meson: this is cache, cache often gets dumped. There is no migration, so I guess everything's ng below 10 goes to the trash

  10. meson

    I see, makes sense.. It's just that `CURRENT_USER_VERSION = 10` by definition above and that's why I thought it was likely intended to be used

  11. cal0pteryx

    I'm curious, what are you working on? :?

  12. cal0pteryx

    :)

  13. meson

    one thing is figuring out how the storage and sqlalchemy code works and once I got it, my plan is to fill a new table with media information of received / sent files. ;) I got it to work already for newly received files and the `filetransfer` table, but I don't think that's the right table and also useful columns are missing.

  14. lovetox

    meson, whats missing?

  15. lovetox

    the table was designed to hold the path where the file is stored

  16. luckydark

    lovetox, hi

  17. meson

    lovetox, it has length, width, but I would also expect `duration` and maybe `position` for video/audio if we are already doing that do we need thumbnail path or can it always be easily derived? Since we want to filter media by JID, we would get it via the message table (fk_foreign_pk), then direction and fk_account_pk or fk_foreign_pk: Wouldn't it be quicker to add the user_jid_pk (whatever is it called) directly to the filetransfer table?

  18. meson

    And then when I fill the filetransfer table with data, for every entry there's a jingle file transfer message displayed in the chat. Guess, this code path hasn't been tested fully yet.

  19. lovetox

    whats the difference between length and duration for yoU?

  20. meson

    a video or gif could have a length and width but also a duration

  21. lovetox

    length? you mean height?

  22. meson

    oh, yes, sorry

  23. lovetox

    yeah we have all 3, height, width and length

  24. meson

    I see it now, sorry

  25. lovetox

    position, whats that?

  26. meson

    to remember the position of a playback. Maybe not necessary or too useful.

  27. lovetox

    i dont think we need to store that in the database

    👍 1
  28. lovetox

    ok, and you want to load everything from a JID

  29. meson

    I think that was the plan for https://dev.gajim.org/gajim/gajim/-/issues/11285

  30. meson

    > A database for files shared in each conversation

  31. meson

    https://share.conversations.im/meeson_/IjS4akD5kpOEHG1j/Screenshot_20240929_142257.png

  32. meson

    > And then when I fill the filetransfer table with data, for every entry there's a jingle file transfer message displayed in the chat. Guess, this code path hasn't been tested fully yet. ^

  33. lovetox

    i dont understand what you are trying to say

  34. lovetox

    is this not expected?

  35. meson

    I thougt jingle file transfer is always p2p, that's why I would not have expected it, when I upload something via httpupload. I feel like I miss some (a lot of) knowledge in this field but I'm happy to start learning some more basics. :)

  36. meson

    I mean this line is called for each file I send here: https://dev.gajim.org/gajim/gajim/-/blob/master/gajim/gtk/control.py?ref_type=heads#L528

  37. lovetox

    ok i think i understand you mean the GUI shows something that looks like jingle file transfer

  38. lovetox

    yes we simply didnt implement anything else

  39. meson

    Okay and how would I infer or query the type to insert if I wanted to extend the GUI part for httpupload or stateless file sharing ?

  40. lovetox

    hm it should not matter from where the file comes

  41. lovetox

    thats the source

  42. lovetox

    url-data is from a url

  43. lovetox

    jingle is via jingle

  44. lovetox

    but in the end i dont think the user needs to see a difference

  45. luckydark

    gays when the all chat been online

  46. luckydark

    and the group talk about what the thema

  47. luckydark

    if can i ask

  48. lovetox

    hm meson, i just ask myself is it not better for a media browser to just get all infos from the harddisk

  49. meson

    > hm it should not matter from where the file comes sure, but what's the idea of the jingle file transfer chat message gui, I've posted earlier. I've never actually used jingle file transfer in Gajim: Is it just to observe the progress of the file transfer? Is there an easy way to test it, i.e. can I enforce jingle file transfer somehow?

  50. meson

    > hm meson, i just ask myself is it not better for a media browser to just get all infos from the harddisk how exactly?

  51. lovetox

    yeah load files and analyze them

  52. lovetox

    as we do know for every preview

  53. meson

    sounds kind of slow to me, but I have no benchmarks :)

  54. lovetox

    as we do now for every preview

  55. meson

    we can try it and if it doesn't work good, we can try the db approach ..

  56. lovetox

    we write all data to some cache table

  57. lovetox

    question for me is if this is smart to try to use a filetransfer table for a media browser

  58. lovetox

    question is does the media browser need a connection to the chat in some way?

  59. meson

    how would you draw the connection between the cache table and a message in the db then if I wanted to delete a file (+ the messsage) within the media browser?

  60. lovetox

    thats the question for me, what are the user requirements for the browser

  61. lovetox

    if its just show, and open files, and delete files, i would say we dont need a connection to some message

  62. meson

    I would say it becomes useful, if you can a) quickly find your stuff and b) be able to manage it

  63. meson

    b) includes deletion and forwarding for instance

  64. meson

    b) includes deletion and forwarding and jumping to for instance

  65. lovetox

    yes, but we only want to delete the file, not the associated message from the chat

  66. lovetox

    in the chat this would then simply show as, file not available anymore

  67. lovetox

    if someone want to delete the message from the chat including the file, i would say he would use the chat as interface and not the media browser

  68. cal0pteryx

    luckydark: please use some translator, I don't understand anything

  69. luckydark

    cal0pteryx, this group chat talk about what pro

  70. meson

    but you already delete single messages from the chat (message db table), why not also delete the corresponding message to a file?

  71. cal0pteryx

    meson: currently it shows a jingle transfer file, if the fileprop still exists (that is only the case if gajim hasn't been restarted)

  72. meson

    but you already can delete single messages from the chat (message db table), why not also delete the corresponding message to a file?

  73. cal0pteryx

    luckydark: this is a support chat for Gajim, an XMPP client

  74. lovetox

    > but you already can delete single messages from the chat (message db table), why not also delete the corresponding message to a file? because thats something different, if you want to remove files from your system, you usually dont want to remove the information that you got sent that file

  75. luckydark

    cal0pteryx, i search for a group chat can i learn some of skills on pc like hack forums or something

  76. cal0pteryx

    luckydark: then you're terribly wrong here, please go look somewhere else

  77. luckydark

    cal0pteryx, thanks

  78. cal0pteryx

    https://search.jabber.network

  79. luckydark

    cal0pteryx, u are the best

  80. lovetox

    meson, but i guess we can try it via filetransfer table

  81. meson

    > you usually dont want to remove the information that you got sent that file but how would that be useful? For the purpose of being able to re-download that file if necessary?

  82. lovetox

    we just need a custom query that joins message with filetransfer and simply gives you only messges that have filetransfers

  83. cal0pteryx

    >> you usually dont want to remove the information that you got sent that file > but how would that be useful? For the purpose of being able to re-download that file if necessary? For example, yes. And if there is a gallery attached, you maybe want to remove just one file

  84. meson

    ok

  85. lovetox

    i think its just totally different things, you dont expect chat messages to be deleted only because you remove a file from your harddisk

  86. meson

    Alright, convinced. :)

  87. meson

    > we just need a custom query that joins message with filetransfer and simply gives you only messges that have filetransfers Sounds good to me. Gajim should probably query the message db once fully for media files and fill its filetansfer table. Where would you place this code? Should this happen in the background or once on start and block the main gui similar to the db migration process until it's finished?

  88. lovetox

    what do you mean?

  89. lovetox

    for oob links?

  90. lovetox

    we have no filetransfers yet

  91. lovetox

    except the jingle stuff

  92. lovetox

    what you probably mean are links sent, which we show a preview for

  93. lovetox

    i would not consider these for the media browser ..

  94. lovetox

    we probably at one point want something like a link browser, where we reference websites and links we receved

  95. cal0pteryx

    From a user perspective it would be weird if the current de-facto standard for files would not show up in the browser though

  96. lovetox

    i guess we could try to convert messages with oob tag to the filetransfer table

  97. lovetox

    but then we have zero metadata

  98. meson

    What I currently do is,whenever gajim receives a message/files (includes sent messages), which is considered previewable (in preview.py) I add it to the filetransfer table.

  99. cal0pteryx

    We could look up the files and add meta data (width, height)

  100. meson

    With the foreign_pk referencing the original messahe

  101. meson

    With the foreign_pk referencing the original message

  102. meson

    The Preview object has metadata iirc (Im afk)

  103. lovetox

    no definitly not everything that is previewable

  104. lovetox

    it needs to have a oob tag

  105. lovetox

    if not its just some random weblink

  106. lovetox

    under a media browser i understand files we got sent from other contacts

  107. lovetox

    not weblinks we decided to preview

  108. lovetox

    for this we can do a link browser

  109. meson

    Um, sure. I hadn't link previews in mind amd forgot that it's something planned

  110. cal0pteryx

    You can configure gajim to display a preview for every link. And that should not be handled like a "file" in a gallery. So yes, only if oob is present

  111. meson

    👍

  112. meson

    Check it out later

  113. Anon Ymous

    The new 1.9.4 Windows version crashes on exit:

  114. Anon Ymous

    https://upload.movim.eu/files/2a96c71ff922583d71a54834f1ad1d07cbd24f11/L4fMN1TheuR0/image.png

  115. lovetox

    with on exit, you mean Gajim -> Quit?

  116. Anon Ymous

    Yes

  117. Anon Ymous

    The window closes normally and then this dialog pops up

  118. Anon Ymous

    Every time since 1.9.4

  119. Anon Ymous

    Another thing I just found: Gajim makes a temp folder (`%Temp%\gajim-?????`), but if that folder is removed during runtime for some reason, everything attachment related just fails, instead of Gajim checking if the folder still exists and (re)creating it if needed.

  120. meson

    Anon Ymous: the latter I can look after tonite, sounds like my fault ;)

  121. Anon Ymous

    Thanks meson! 🙂

  122. bot

    lovetox pushed 1 commits to branch gajim/master refactor: Create temp dir on demand - https://dev.gajim.org/gajim/gajim/-/commit/f488fe1f93a5fbbe299f94f1f3699ca0aea95afc

    ♥ 1
  123. mirux

    > Yes > > The window closes normally and then this dialog pops up > > Every time since 1.9.4 Similar error without that window

  124. mirux

    Meantioned that some days ago

  125. bot

    lovetox pushed 1 commits to branch gajim/master change: Windows: Disable file system virtualization for MS Store app - https://dev.gajim.org/gajim/gajim/-/commit/7d26bf51777a617c3ba84cb85164018d37b378a3

  126. bot

    lovetox pushed 10 commits to branch gajim/master cq: Remove unnecessary pyright ignores - https://dev.gajim.org/gajim/gajim/-/commit/010742a44055df70a504fe2b6957994ff2df0e7a ci: Update pyright to 1.1.382 - https://dev.gajim.org/gajim/gajim/-/commit/e08a3c7bc41e01980e88144f16ace0caf010787e cq: Fix return type - https://dev.gajim.org/gajim/gajim/-/commit/b270fb6cdcbc8b3655e8d880d2c683cf5f212cf5 refactor: Fix variable typos - https://dev.gajim.org/gajim/gajim/-/commit/6cb94f2abd8bbb8df42b8b8d4d9e187aa5877d1e ci: Update codespell to 2.3.0 - https://dev.gajim.org/gajim/gajim/-/commit/f650b6a9bd1f4fa83fd72692cdba806f505a7664 ci: Update ruff to 0.6.8 - https://dev.gajim.org/gajim/gajim/-/commit/673172c07e7e32ef3dc008ca9ce4db5dffca375b refactor: Simplify return statements - https://dev.gajim.org/gajim/gajim/-/commit/8ae09ffe2f766af4da5f8ccef9e08b9c556fe883 refactor: Only use ascii variable names - https://dev.gajim.org/gajim/gajim/-/commit/32a9523e0a62956c10cdedd51304771b5fd3f0d2 ci: Update ruff ignore list - https://dev.gajim.org/gajim/gajim/-/commit/925923867ee2f76e8de3cea9af9b8aa6c680c121 refactor: Simplify if statements - https://dev.gajim.org/gajim/gajim/-/commit/8377ebccc5d9a10e8c9abe31e18320a5c80f22d8

  127. bot

    lovetox pushed 1 commits to branch gajim/master chore: Update translations - https://dev.gajim.org/gajim/gajim/-/commit/0bf389705644e8fe03390159744460fde9788bdd