16976 Commits

Author SHA1 Message Date
33400db731 build: add option to ignore system libs detection
Change-Id: Ib2ee7c69a9105ae33a816bd19c7fcbdb0b58fd32
2025-08-01 15:47:14 -04:00
5d99b9c5fc contrib: hide FFmpeg symbols
https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1944

Change-Id: Ic85446b5b14dd93d74896245b3a02375d5641bfc
2025-08-01 15:39:20 -04:00
bf6a6690e1 docker: remove sdbus-c++ dependency
Use contrib version

Change-Id: I39a64bf4a42e362ab947229815dd3e21313c77c2
2025-08-01 15:16:14 -04:00
86475591d4 cmake: support building multi-arch contrib on macOS
Change-Id: I29f135bb43c2b06cdb57f073e77872d923716f7a
2025-08-01 15:10:32 -04:00
8111dd56ba contrib: set CMAKE_SYSTEM_PROCESSOR on Darwin
Change-Id: I51ccb462103a30d557830d31c5075f73d393ed97
2025-08-01 15:10:27 -04:00
88ffdfb299 meson: require sdbus-c++ 2.0+
Change-Id: I4db2d2425ff52b599c3e648673313ed90e031126
2025-08-01 11:45:15 -04:00
3fa3f7bad9 update sdbus-cpp to 2.1.0 and adjust daemon for breaking changes
Change-Id: I94835a8edead6e9a3b22a5a47b8605afc7bad286
2025-08-01 11:44:58 -04:00
0920927895 Revert "update sdbus-cpp to 2.1.0 and adjust daemon for breaking changes"
This reverts commit 4a99991086.

Reason for revert: temporary revert since this breaks the build on most distros that we currently support, including Ubuntu 24.04, and sdbus-cpp 2.0 is not backward compatible with older systemd versions.

GitLab: #1141
Change-Id: I3d50c0a433bd63d7dc76a2659258cf9e38bbbc29
2025-08-01 11:21:31 -04:00
07455d0b30 debug_utils: add StatsTimer
Change-Id: I6ad09f94ba4fd01e189b11d55bb1b2861f5a6c39
2025-08-01 11:19:21 -04:00
dcbaf46973 portaudio: bump to latest version
Bump to 9abe5fe7db729280080a0bbc1397a528cd3ce658, this adds numerous
fix, mainly to wasapi.

GitLab: #1962
Change-Id: I0112e391e378b3273bfb5e168bfbe55be3272277
2025-07-31 13:19:53 -04:00
991773cd16 jamiaccount: disable replay mechanism
Change-Id: I7916ded6d761d5932286b4ef683b33cda2db051a
2025-07-30 15:27:49 -04:00
233ec883b8 remove duplicate conversation handling block
Handles multiple one-to-one conversations for a
contact and avoids unnecessary removals.

Change-Id: Ida4571cd07bb640ea63a287725466e690dd2d6e1
2025-07-30 12:58:13 -04:00
631373f0b8 cmake: add coverage support
Change-Id: I10808a63a315173ac063117c4857d47e2ae44be3
2025-07-29 17:07:15 -04:00
cabd5d6374 docker: don't install libsdbus-c++ on Ubuntu 22.04
Use contrib version

Change-Id: I239b83de4587faf53afe3c301371e7ab7e18f7ca
2025-07-29 17:02:16 -04:00
a8b1354d3f jamiaccount: cleanup
Change-Id: I5a126b0172108f1af15438f933a280236d839b23
2025-07-24 10:54:02 -04:00
123fd551a4 contrib: fix gmp build with GCC 15
GCC 15 defaults to -std=gnu23, which breaks the configure checks (see:
<https://gmplib.org/list-archives/gmp-bugs/2024-November/005550.html>).

Change-Id: I9cffd29cd74319f55dadb121b362a2460a4730e5
2025-07-22 15:46:31 -04:00
e849123c2b configure.ac: fix sdbus-c++-xml2cpp check
AC_PATH_PROG's third argument is a fallback value, not a fallback action.

Change-Id: I8859049e3ed17028334aa707cced24a9d2d1cba4
2025-07-22 15:38:19 -04:00
4a99991086 update sdbus-cpp to 2.1.0 and adjust daemon for breaking changes
The daemon sources were adjusted via the ChatGPT-provided sed snippet:

find . -name '*.cpp' -o -name '*.hpp' | while read -r file; do
  sed -i \
    -e 's/\(AdaptorInterfaces([^,]*,\) *"\([^"]*\)"/\1 sdbus::ObjectPath("\2")/' \
    -e 's/\(createSessionBusConnection(\) *"\([^"]*\)"/\1 sdbus::ServiceName("\2")/' \
    -e 's/\(createSystemBusConnection(\) *"\([^"]*\)"/\1 sdbus::ServiceName("\2")/' \
    "$file"
done

Fixes: #1141
Change-Id: I9d7b75814c66cdd8a12432c349f5df7b3e6796cd
2025-07-22 15:35:28 -04:00
2dc79812a7 contrib: fix upnp build hang
Fixes: #1142
Change-Id: I4102f03b8da69ea6472a69b641899aaf9f7d51a4
2025-07-22 15:21:59 -04:00
4a7b5ac5b2 Revert "media_decoder: handle invalid data in AVPacket"
This reverts commit f20373cda2.
The reasoning is that the commit above introduces an issue
which is more common than the problem it resolves.
We temporarily revert until we are able to find a solution
which can distinguish between the two instances in which avcodec_send_packet returns AVERROR_INVALIDDATA. This revert
adds a comment which describes the two issues.

GitLab: #1137
Change-Id: Ib3a5ed6ff13b3a160870d48c748c99f37fa2288e
2025-07-21 13:46:35 -04:00
d4e62c305a contrib: fix --cache-dir to specify tarballs directory
f76aba52e9 introduced a regression where CONF_TARBALLS was no longer
set to the value provided to --cache-dir.

Change-Id: I16cb8da6bb3d0a65d33a272d6ca24f79cca36de6
2025-07-21 08:56:41 -04:00
348ee92764 configure.ac: Expand AC_CONFIG_FILES to fix a race.
The commands apparently run for each file listed, or something
similar, leading to:

  configure: creating ./config.status
  config.status: creating test/agent/Makefile
  chmod: cannot access 'test/agent/pre-inst-env': No such file or directory
  chmod: cannot access 'test/agent/scenarios/bulk-calls/run-scenario': No such file or directory
  config.status: creating test/agent/pre-inst-env
  chmod: cannot access 'test/agent/scenarios/bulk-calls/run-scenario': No such file or directory

* configure.ac [ENABLE_AGENT]: Separate AC_CONFIG_FILES uses per file.

Change-Id: Ib283955b73540248e09bf31ef44ef3d178b216fa
2025-07-21 08:49:13 -04:00
17b4054b38 ConversationModule: require conversation to accept request
Change-Id: I8b4ce0139272158d77d7cb91d929e8b5f3bea035
2025-07-18 16:16:57 -04:00
4e0dbcf657 ConversationModule: don't ask invites to ourselves
Change-Id: Ibb8b0500eb5f2eaa23c4c8b3dbabac749340b8b2
2025-07-18 16:16:27 -04:00
ae3c757fed ArchiveAccountManager: sync in p2p
Change-Id: Icf28d014464003be6c15116f7ed8fbacaf6eb488
2025-07-18 15:22:47 -04:00
796dd8a185 conversation: callback without lock
Change-Id: I01574e819210c853c8cdbcde6f366956b61b8077
2025-07-18 13:39:34 -04:00
8310709827 sipcall: cleanup
Change-Id: I0dbde3f7e74d3aea04397f72fa29d9665184f1f4
2025-07-18 13:11:41 -04:00
3547a1e769 sync module: send sync messages in parallel
Change-Id: I6c4b77f33b94e3043fa979f945939ef45d9c9440
2025-07-18 09:46:33 -04:00
bf91fe2b61 contrib: update asio
Change-Id: I11902ccad42001763d0f3fcab252e1d764b27c53
2025-07-18 09:46:33 -04:00
f3b6c06ae0 jamiaccount: cleanup
Change-Id: I1686262c1ae4000e5dd16cd9b4e370c1eae4664d
2025-07-17 15:01:46 -04:00
924034fb73 ArchiveAccountManager: cleanup
Change-Id: I9f50862b57f0c30c4766825af0b090c2eb0e5c55
2025-07-17 15:01:46 -04:00
1969975c2c gitserver: add context to log messages
Change-Id: I9bd9db97a0e280e1fe548bf1f84313397f79b3db
2025-07-09 13:36:17 -04:00
847d1fdbed update for asio 1.30
Change-Id: Iac5a8f965eb5211f3016946c5f4eee5b34f748f7
2025-07-09 10:04:38 -04:00
7a2ed6e925 gittransport: use fmt instead of std::ostringstream
Change-Id: I6f9d093298e5fe46267ac0e1ca78d824b0a42f7c
2025-07-09 10:04:33 -04:00
898fe1fbbc encoder: enable SPS/PPS in every H.264 keyframe
Set AV_CODEC_FLAG2_LOCAL_HEADER for H.264 to include
SPS/PPS headers in each keyframe. This improves decoder
robustness during packet loss or late joins in RTP
streaming scenarios.

Change-Id: I9f31bd26dca343a83cff1cfa5cc8ada789f94786
2025-07-08 17:20:31 -04:00
bae238e6f9 tests: add contrib lib dir
Change-Id: I3323d86c4b80993e9cd0b3f3bbb9440bb65ba0bd
2025-07-08 15:53:21 -04:00
69347f0f1d exceptions: use fmt instead of std::ostringstream
Change-Id: I87d034eb2e9f9527c167ea5d1ee634168ec38f16
2025-07-08 15:38:52 -04:00
c772a3d92d namedirectory: use starts_with
Change-Id: Ie65271cf32f43c89243e701859c4b21bdaf57062
2025-07-08 15:38:42 -04:00
d2a3032543 SwarmManager: send request on io pool
Change-Id: Icdb722ba4131862e56391243f08cdbcf16cfeb52
2025-07-08 15:38:36 -04:00
9b07b6d5c9 ConversationModule: bootstrap without holding mutex
Change-Id: I6bf61173a79c0284a2fca3aca4ec7e5a1a1c1c53
2025-07-08 15:11:05 -04:00
0b39b0c36d SyncModule: sync on io pool
Change-Id: Ied96331123e06d01305ea7d01aea3a6d684cb6bb
2025-07-08 15:03:42 -04:00
18b6ae56db Add encryption support when importing archive
Save password and scheme on new device during
linking. Set archiveHasPassword flag in config
when saving the archive.

Change-Id: I8822c746d2f7968fef5493ee3f4c92f121274c5a
2025-07-08 14:33:58 -04:00
edfa4fa623 namedirectory.cpp: cleanup
Change-Id: I02f9cc0e18fdee5a04d1a3c516650821d4d9d248
2025-06-26 08:00:21 -04:00
a5eee33e40 tests: remove unneeded std::move of temporary
Change-Id: I2deb3d4c64ad764b2dcd8b50018abb766526b5c9
2025-06-23 19:36:21 -04:00
66bad93487 cmake/tests: add restinio dependency for ut_namedirectory
Namedirectory unit tests uses restinio directly which itself depends on llhttp.
So while restinio itself is header only, we need to declare the dependency
for appropriate linking of llhttp.

Change-Id: I113257613c660e5e73c52c14fb6691cd6c85f693
2025-06-23 19:36:21 -04:00
72363e1083 cmake: depend explicitly on nettle
Nettle is used directly for sha3 computation

Change-Id: I9ad71746f78e433e5df65938d477cc6c93dc6a31
2025-06-23 19:36:19 -04:00
837eb562d8 rational: cleanup, add to_string()
Change-Id: I84578c8bb23ea164a78194b40e700d62eb8cfa52
2025-06-23 16:07:24 -04:00
60fd7559d3 videomanager: only save config if setting changed
Change-Id: I5edef4f1e1a5b92e6e0222d735d50b764eb5b188
2025-06-23 16:07:24 -04:00
9a47abbac7 sipcall: start and stop streams in parallel
Change-Id: I884acf675fa72c1d3dc06de8c70c1e3e7f1bd021
2025-06-23 16:04:10 -04:00
b687f8e21c media: fix return value for mediaTypeToString
The function mediaTypeToString never checked for nullptr
return values, which could potentially lead to crashes.
This patch ensures it always returns a valid string for
all defined MediaType values.

Change-Id: I81ef8876e1f57265584fae02cdfaff2894ff9f8c
2025-06-19 15:07:57 -04:00