Meeting notes from Dmitry (and call for several discussions)

Dmitry Kazakov dimula73 at gmail.com
Sun Apr 27 13:13:50 BST 2025


Hi, all!

I will be missing on tomorrow's meeting, but I would still like to share
what I did in these two-three weeks. There are a few points marked with
**NEEDS DISCUSSION**. I would really like to hear your opinion on these
points.

1) Upgraded the AppImage runtime to the new version

   * The upgrade **broke** Krita AppImage to run on systems with
AppImageLauncher
      installed. See bug https://bugs.kde.org/show_bug.cgi?id=503204

   * The workaround for the issue is to upgrade AppImageLauncher to the
"alpha"
     version. But, as far as I can tell, it might be impossible on **some**
systems
     which install it using a package manager (e.g. Arch Linux).

   * The new runtime is currently activated in **both** the active branches,
     master and krita/5.2, so both branches are affected.

   * **NEEDS DISCUSSION:** We need to decide what to do, whether to revert
     this change or poke the AppImage developers about this issue or
     try to fix ourselves.

2) Made a testing branch with Ubuntu 22.04 base image for AppImage.

   Ubuntu 20.04 is reaching its EOL next month, so we should update our
AppImage
   packages. The MR with the prebuilt packages is here:

   https://invent.kde.org/graphics/krita/-/merge_requests/2388

   I need people with different distributions to test the packages built in
the
   pipeline from this MR. If it runs fine on all the knows systems, then I
can
   start the deploying process (it is not trivial, since we should also
switch
   the Android and Qt6 images/packages).

   Basically, I need a greenlight to start deploying the upgrade :)

3) Upgraded FFMPEG to version 7

   * **NEEDS DISCUSSION:**  It now supports AV1 encoder, perhaps we
     should add that to our GUI? Theoretically, it should be patent-free.

   * It now also supports hardware optimizations for Intel CPU/GPU using
     the QSV encoders. Personally, I didn't manage to make it work on
     my system. Perhaps someone could test it?

   * The QSV encoders are not available in the GUI, one should activate
     them manually by providing custom command-line in the encoder's
     settings page.

4) Been working on implementing unittests for the Metadata Deduplication MR.
   While writing the unittest I found a lot of issues still present with the
   metadata being duplicated. I think I fixed most of them, though the patch
   still needs to be cleaned up a little bit. I will do that after the
   vacation. MR: https://invent.kde.org/graphics/krita/-/merge_requests/2368

5) **NEEDS DISCUSSION:** I think my changes to the database schema in the
   metadata MR unintentionally activated `PRAGMA foreign_keys = ON` option,
   which opened a can of worms:

   * it seems like Krita uses foreign_key features of SQLite in the DB
schema,
     but Krita **has never activated** actual runtime checks for this. It
means
     that tables do declare the foreign key dependencies, but they are never
     verified on the runtime.

   * I wonder what should we do about that?

   * My idea/proposal:

     * enable foreign key checks on **development** (and nightly?) builds,
       do that developers should track down all the issues

     * disable foreign key checks on **release** builds and pray it works
       as before :)


-- 
Dmitry Kazakov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kimageshop/attachments/20250427/c47912a9/attachment.htm>


More information about the kimageshop mailing list