1. 11 Oct, 2020 2 commits
  2. 10 Oct, 2020 1 commit
  3. 09 Oct, 2020 1 commit
  4. 06 Oct, 2020 1 commit
  5. 05 Oct, 2020 1 commit
  6. 04 Oct, 2020 3 commits
  7. 03 Oct, 2020 3 commits
    • Daniel Vrátil's avatar
    • Daniel Vrátil's avatar
      (De)compress payload data during (de)serialization · 37f9fcae
      Daniel Vrátil authored
      The compression is completely transparent to clients, serializers and
      Akonadi. The idea is that when serializing payload, we can compress
      the serialized data using LZMA compression to save space. The data are
      usually large enough to benefit from the compression and at the same
      time small enough for the compression to not cause any significant
      performance overhead.
      
      In my local experiment, compressing each file in file_db_data reduced
      the overall size by ~30%.
      
      The only place where the compression aspects "leak" to the user is
      regarding the Item and part sizes stored in Akonadi.
      
      The change is backwards compatible, so it can handle uncompressed
      payloads created before this change just fine. All newly created
      or updated payloads will get compressed automatically. Eventually
      a StorageJanitor task to compress th entire storage may be introduced,
      but we may need some proper progress reporting for that, since it
      may take a lot of time, even on fast SSD disk to compress all the
      files in file_db_data (depending on size of the database).
      37f9fcae
    • Daniel Vrátil's avatar
      Implement CompressionStream · 2bf3a5c9
      Daniel Vrátil authored
      It's a QIODevice that can be placed on top of another
      QIODevice. When opened in read-only mode, it will read
      compressed data from the underlying device and output
      decompressed data. When opened in write-only mode it
      will take the data written into it and write them
      compressed into the underlying device.
      2bf3a5c9
  8. 01 Oct, 2020 1 commit
  9. 29 Sep, 2020 2 commits
  10. 21 Sep, 2020 3 commits
  11. 20 Sep, 2020 1 commit
  12. 15 Sep, 2020 3 commits
  13. 13 Sep, 2020 1 commit
  14. 11 Sep, 2020 1 commit
  15. 07 Sep, 2020 1 commit
  16. 05 Sep, 2020 3 commits
  17. 04 Sep, 2020 1 commit
  18. 03 Sep, 2020 1 commit
    • Volker Krause's avatar
      Set package prefix dependent variables before calling find_dependency() · 7fcdb7fb
      Volker Krause authored
      find_dependency() changes the package prefix variable to whatever that is
      for the package we look for. That's commonly the same, so this doesn't
      matter. In the Flatpak build environment however Akonadi and its
      dependencies are in different prefixes, causing this to break modules
      depending on Akonadi when they need any of these variables.
      7fcdb7fb
  19. 02 Sep, 2020 3 commits
    • Christophe Giboudeaux's avatar
    • Ahmad Samir's avatar
      AgentBase: Fix crash in setOnline · 66d1135d
      Ahmad Samir authored
      When setOnline tries to access the mSettings member after the latter has
      been deleted we get a crash; mSettings is deleted in quit() or cleanup(),
      therefore it looks like a race condition: the Agent is about to quit, but
      some other code calls setOnline leading to a crash. It looks like this can
      happen in more than one way, e.g. via a dbus call (from AgentInstance), or
      via a sub-class of AgentBase calling setOnline directly. Use a bool member
      var, modelled after how AgentInstance uses a similar logic.
      
      BUG: 418844
      (cherry picked from commit 53574eb6)
      66d1135d
    • Ahmad Samir's avatar
      AgentBase: Fix crash in setOnline · 53574eb6
      Ahmad Samir authored
      When setOnline tries to access the mSettings member after the latter has
      been deleted we get a crash; mSettings is deleted in quit() or cleanup(),
      therefore it looks like a race condition: the Agent is about to quit, but
      some other code calls setOnline leading to a crash. It looks like this can
      happen in more than one way, e.g. via a dbus call (from AgentInstance), or
      via a sub-class of AgentBase calling setOnline directly. Use a bool member
      var, modelled after how AgentInstance uses a similar logic.
      
      BUG: 418844
      53574eb6
  20. 01 Sep, 2020 1 commit
  21. 26 Aug, 2020 1 commit
  22. 23 Aug, 2020 1 commit
  23. 22 Aug, 2020 2 commits
  24. 19 Aug, 2020 1 commit
  25. 16 Aug, 2020 1 commit