Gajim - 2024-04-02


  1. beefox

    hello! is there a way to zoom / increase font size?

  2. beefox

    also, wiki is down atm

  3. cal0pteryx

    beefox: ctrl+plus

  4. rats

    when I get a message the gajim titlebar flashes continuously until i view the message, but only when I'm using the windows 10 high contrast accessibility setting. is it possible to disable this?

  5. cal0pteryx

    It's called attention. I'm not sure atm if you can disable that

  6. rats

    thanks for your help!

  7. fjklp

    rats: Go into the advanced configuration editor in Gajim > Preferences > Advanced > Advanced Configuration Editor and turn off use_urgency_hint. I'm not sure if this will do it but it's worth a try.

  8. fjklp

    Damn, looks like he left. I suspect that setting does it.

  9. cal0pteryx

    Thanks fjklp

  10. fjklp

    no problem

  11. lovetox

    hannibal, rebased

  12. bot

    lovetox pushed 1 commits to branch gajim/master cq: Fix some typos - https://dev.gajim.org/gajim/gajim/-/commit/633eaf9395de18ca63afb2d5d4a20aac54b3f7d9

  13. bot

    lovetox pushed 2 commits to branch gajim/master cq: Fix style issues revealed by ruff 0.3.2 - https://dev.gajim.org/gajim/gajim/-/commit/f22cf3b7ecfe37d055830794718d1ce77f6fbd30 refactor: Use 'join' to create groups string - https://dev.gajim.org/gajim/gajim/-/commit/92bd2fb91c59e527bad23cf6944d9106feed02f0

  14. bot

    lovetox pushed 2 commits to branch gajim/master ci: Update linters - https://dev.gajim.org/gajim/gajim/-/commit/8bad8b3852df574b483b43ccb9c7da95efef10b0 ci: Fix typing stubs suffix - https://dev.gajim.org/gajim/gajim/-/commit/c068b0f1fc999562d5aa395a70b455fb31008a19

  15. nicoco

    lovetox: may I have some of your thoughts on deciding to go for SQLAlchemy instead of "manually" writing the SQL queries? The next big work on slidge for me is on persistent storage and I from senior devs I trust I hear mostly arguments *against* using ORMs, I'm interested in your rationale for going with SQLAlchemy.

  16. lovetox

    Then you have to have expert knowledge of SQL, and you need to write your own ORM.

  17. lovetox

    You need to document your own ORM, so others after you can extend it and use it

  18. lovetox

    but i guess it depends all on what you need .. if you query one table you surley dont need an ORM

  19. lovetox

    i tried in my first approach to write my own ORM

  20. hannibal

    lovetox: pushed

  21. lovetox

    but it turned out to have the approx the same amount of LOC, but was not documented, nobody except me every used it, not tested, and 5% of the functionality of SQLAlchemy

  22. lovetox

    if you have 10+ tables, you naturally get into the situation, where you think, do i really need to type out 10 different insert stmt for 10 different tables, then you start building some abstraction to automatically build the SQL statementens .. and then you think hm i can do this for UPDATE statements also .. and after a while you build a lot of abstraction and then you realize, oh thats why people build a ORM

  23. nicoco

    Making it more maintainable and contributor-friendly sure makes sense for libre software.

  24. lovetox

    but i can also see the other side, i think there is a sweet spot for a specific ORM library regarding project size where it is used and for what it is used

  25. lovetox

    if you need some super fancy SQL features you maybe could run into trouble, if the ORM does not exaclty what you need

  26. lovetox

    for gajim its very basic stuff, a million other projects have exactly the same use case

  27. lovetox

    i dont fear that my hand written SQL is supoerior to whatever the SQLalchemy devs did

  28. nicoco

    Doesn't SQLAlchemy let you hand-write your SQL if you want to, eg if you notice that a specific query can be optimized?

  29. lovetox

    yes you can just pass text SQL

  30. lovetox

    but then you get back also some tuple with values

  31. lovetox

    and not your Object Model that you wnat

  32. lovetox

    and it can get very complex if you also use the feature where you keep objects and the database in sync

  33. lovetox

    you can use it, so if you update a single value on that object, sqlalchemy issues a update statement automatically etc

  34. lovetox

    then you suddenly have to think about a lot more, like object lifetimes, how old is the data, is it still in sync etc

  35. lovetox

    but in Gajim we dont use that

  36. lovetox

    i mostly use it so i dont have to write the model myself, on sqlalchemy models its really nice how you can define relationsships between the tables, and later simply tell it to join along these relationships with specific options

  37. nicoco

    Thanks for your insights. I'm really leaning towards using sqlalchemy, but we'll see when I actually get to working on it. I don't like the idea of reinventing the wheel, and anything that reduces maintenance burden sounds great to use.

  38. lovetox

    it definitly is something that you have to additionally learn.

  39. lovetox

    but at least many people use it, there is a butload of documentation, and support communities

  40. lovetox

    when i was finished writing my own, and didnt look at it for a month

  41. lovetox

    i looked at it again, and thought, ok why did i do this, this is exactly what sqlalchemy does

  42. Zeaps

    Gajim

  43. defal

    Indeed, gajim.