conversation: move logic of message management in daemon

This heavily changes the API for the client. The goal here is
to move the logic to construct the history to show in the daemon
and not the client. This has several advantages:

1. Logic is common across every platforms, so bugs should not be
platform-specific
2. Client got less logic
3. Signal are simplified, if an edition comes, "MessageUpdated"
will be triggered instead MessageReceived.
4. Some tests are added for linearizing the history.
5. Search on edition is fixed.

Tests got heavily re-written, but the content didn't change (2 tests
are added, the rest is simplification).

GitLab: #831
Change-Id: Ie7c81077067e9e49db1dd396829c9225c0512c16
This commit is contained in:
Sébastien Blin
2023-06-27 11:45:43 -04:00
parent f83c60f275
commit 8468f15927
24 changed files with 2717 additions and 5420 deletions

View File

@ -1,5 +1,5 @@
project('jami-daemon', ['c', 'cpp'],
version: '13.11.0',
version: '14.0.0',
license: 'GPL3+',
default_options: ['cpp_std=gnu++17', 'buildtype=debugoptimized'],
meson_version:'>= 0.56'