commit 91184b796758518699c2873aa45d3e06c67abd9e
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:08:45 2026 +0100
Update the changelog
commit f438d5c8007aa710496447731b0bc726e9908301
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:29:26 2026 +0100
libtracker-extract-zip.so is no longer built
Upstream copied the function in this shared library into the
individual extractor shared objects.
commit cbefba3db6c39ab774677380db00f71f3bb7b0d0
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:17:32 2026 +0100
Refresh patches
commit a56fe59d54859ce7e6514c6f29e058942999970c
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:25:39 2026 +0100
tiff-photo-1 test has been fixed upstream
commit bf4cc8b69bf13782d8519efdb4a248689c46a464
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:11:51 2026 +0100
Drop patch incorporated upstream
commit d185f0579474b1a5f2f46a7f9730ae4974e402f2
Merge: c33dfa5d e8984025
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:08:45 2026 +0100
Update upstream source from tag 'upstream/3.11.0'
Update to upstream version '3.11.0'
with Debian dir 86a1d8f00b265560d89b2fb8ca818b3a74adfc8a
commit e89840256892fda515e77a04fa3d50368de7370f
Merge: 968e3846 bb5b4778
Author: Charles <charles05@canonical.com>
Date: Mon Mar 30 09:08:41 2026 +0100
New upstream version 3.11.0
commit bb5b477893df0a838e21f8ee32013200472d3404
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sun Mar 15 01:40:56 2026 +0100
Release 3.11.0
commit c35ec7b25ace5d01892c043fca4e6c0e87b4a253
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sun Mar 15 01:20:03 2026 +0100
tests: Make another FD auto-managed
To avoid spurious leak warnings when the module is meant to
fail.
CID: #412756
commit 9835e1dced3dcf719e708a59bb3c4eb65671d7e5
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sun Mar 15 01:12:15 2026 +0100
cli: Check return value of cursor iteration
In fixing the possible NULL error dereference, we left the
cursor_next() return value unchecked, which Coverity does not
like.
CID: #354741
commit 9f977e1f5d3bdb81f3f27a41c0bc00fc2da97d70
Merge: 39e8324f 010af8fb
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sun Mar 15 00:09:12 2026 +0000
Merge branch 'wip/tvseason-fix' into 'main'
Fix libav extractor TV series/season information extraction
Closes #423
See merge request https://gitlab.gnome.org/GNOME/localsearch/-/merge_requests/663
commit 010af8fb494908d6749079ab3c5c51f23ce5fee5
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Thu Mar 12 11:39:57 2026 +0100
tests: Test TV show information extraction from videos
Add this metadata to the mp4-video-without-audio.mp4 testcase
so it is tested. Even though data structure correctness is sort
of ensured since the extractor data is also inserted to a database
in a smoke run, it also makes sense to test the correctness of the
extracted metadata in the expected JSON file.
commit e78e41a7937fdf3a161eae3d201fb1d588d49421
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Thu Mar 12 11:43:53 2026 +0100
extractor: Fix libav extractor TV series/season information extraction
This support was suboptimal and broken, since the TV show name was not
extracted, and since the season number was hooked into a non-existing
nmm:season property on the nmm:TVShow. Extract the title, and create
nmm:TVSeries / nmm:TVSeason that are consistent with the ontology.
Closes: https://gitlab.gnome.org/GNOME/localsearch/-/issues/423
commit e0def2ea377be1b676aa413451d4c233a6554319
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Thu Mar 12 11:42:50 2026 +0100
extractor: Add TrackerResource helpers for TV series/season data
This is structured data that makes sense to have helpers for.
commit 39e8324fa40a5044f38545f5a3cb063b6ac5efc1
Merge: 4b3e96ec 2a575f07
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sat Mar 14 23:59:41 2026 +0000
Merge branch 'wip/spurious-deadlines' into 'main'
extractor: Clean up deadline watchdog sooner after extraction
See merge request https://gitlab.gnome.org/GNOME/localsearch/-/merge_requests/664
commit 2a575f07ec680be2654cc522348916ba11121501
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Thu Mar 12 11:49:43 2026 +0100
extractor: Clean up deadline watchdog sooner after extraction
When a file is extracted, it is scheduled on a separate thread for
processing. In order to watch for this processing thread possibly
stalling (or taking too long), a timeout GSource on the original
calling thread is set up as GTask data. If this source fires up,
the processing thread was deemed as taking too long, and the
extractor restarted as a result.
However, this GSource stays as GTask data for as long as this
object is alive, this means the full roundtrip until the main
thread receives the response, calls g_task_propagate_pointer() on
it, and unrefs it.
There may be situations during high load that the processing
thread finishes the task, issues g_task_return_pointer() on it,
but it takes a long time for the calling thread (i.e. main) to
act on it. In this case the deadline source may still end up
triggering despite it not being the processing thread's fault.
Since the GSource and all of the task data already fulfilled
their purpose after having called g_task_return_pointer() from
the worker thread, we can safely dispose of it earlier, so the
deadline watchdog is disabled after processing is finished, and
the task can be eventually freed in an independent manner.
commit 4b3e96ecbcd13f624f0f95ef9b469a057215bc92
Merge: 5b5d1ab8 821484cf
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sat Mar 14 23:44:28 2026 +0000
Merge branch 'wip/coverity-fixes' into 'main'
Fix for issues spotted by Coverity
See merge request https://gitlab.gnome.org/GNOME/localsearch/-/merge_requests/665
commit 821484cf571ac55fe0888425bcb5fe1906062c68
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 12:09:06 2026 +0100
extractor: Fix compiler warnings with newer GCC
More places where strchr() return value does not have the expected
constness:
../src/extractor/tracker-extract-png.c: In function ‘raw_profile_new’:
../src/extractor/tracker-extract-png.c:145:27: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
145 | p = strchr (lut, a);
| ^
../src/extractor/tracker-extract-png.c:151:27: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
151 | q = strchr (lut, b);
| ^
commit ab3faba783567d71eb0261a0ae6fc789accdcfec
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 12:07:49 2026 +0100
extractor: Fix compiler warning with newer GCC
Another strchr return value missing the right const-ness:
../src/extractor/utils/tracker-xmp.c: In function ‘div_str_dup’:
../src/extractor/utils/tracker-xmp.c:205:22: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
205 | gchar *ptr = strchr (value, '/');
| ^~~~~~
commit cc989b47509cd68860e0d401d0ababd746f82b7c
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 12:04:31 2026 +0100
common: Fix compiler warnings with newer GCC
This can be seen with newer GCC:
../src/common/tracker-file-utils.c: In function ‘tracker_path_list_filter_duplicates’:
../src/common/tracker-file-utils.c:442:27: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
442 | p = strrchr (path, G_DIR_SEPARATOR);
| ^
../src/common/tracker-file-utils.c: In function ‘tracker_filename_casecmp_without_extension’:
../src/common/tracker-file-utils.c:743:12: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
743 | pa = strrchr (a, '.');
| ^
../src/common/tracker-file-utils.c:744:12: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
744 | pb = strrchr (b, '.');
| ^
Honor the const-ness of the return value. Involved some changes in the
places where string modifications were performed in-place in list elements.
commit c68564d2434ea66e125679b3083c3dbd0ecf6271
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:59:14 2026 +0100
extractor: Mark variable as G_GNUC_UNUSED
On modern enough gexiv2 this will be unused, causing a compiler
warning.
commit 11601357215adea42696b3579c7e89200017c472
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:58:24 2026 +0100
cli: Drop unused variable
This count variable went nowhere.
commit 6d4eeade92bdd9fd15e7e8383491e8fea5d1a900
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:43:23 2026 +0100
tests: Make FD variable auto-managed
The intent of the test is triggering the sandbox and terminating
the process, but let's give Coverity this candy and make the FD
variable impossible to be leaked.
CID: #412756
commit b287d5d99964f02bfb54173cca2267880ff66353
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:53:36 2026 +0100
indexer: Handle GError for warning
We were ignoring the error if our configuration "backup" for diffs
on restart could not be saved. It seems too egregious for Coverity,
so warn.
CIDs: #490525, #501122
commit e0631e12ba7ff8a422d8b845fc682c124d8c5f47
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:33:02 2026 +0100
indexer: Fix error check
Make the internal error actually used during indexer database initialization,
so it can check for corrupted databases.
CID: #501121
commit 090c82b3458fbe521d90b8e5f671ce8550562036
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:29:13 2026 +0100
cli: Fix possible double frees in "localsearch tag" subcommand
The errors are already g_autoptr() managed, avoid explicitly freeing
them on error paths.
CIDs: #468031, #468032
commit cec2a81dba501425ea7a843702f3bd9edb6e5249
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:21:33 2026 +0100
cli: Fix paths towards barely possible NULL dereference
The query counting the folders uses the scalar COUNT() function,
so it's not sensible that the cursor wouldn't return one value.
Appease Coverity so it doesn't think we may end up with a NULL
error.
CID: #468030
commit 09e4263e0f3d87fc90005510bc775948d3b25d4b
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:50:27 2026 +0100
extractor: Check g_utf8_validate() return value
This is not strictly necessary, since the function may partially
validate the string (and we go with it), but appease Coverity this
way.
CID: 500881
commit 9906fd0df531a77968104fd8ac9158ea0fd93e95
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:37:11 2026 +0100
extractor: Fix possible invalid reads reading embedded metadata in JPEG
Perform better tests on the data length, so under/overflow is not possible.
and avoid possible leaks of the exif/iptc data by replacing the variables.
CIDs: #491057, #365655
commit a0b664307aacf8d4789459f494e3fd98aa1d8be4
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:31:12 2026 +0100
extractor: Remove unused variable and dead code
This error is unused.
CID: #490613
commit 551c1ab02c68d729b2f535e1715271441b2a5301
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:26:45 2026 +0100
extractor: Fix possible NULL pointer dereference on invalid exiv2 data
It should not happen that exiv2 returns an empty buffer with just a charset
prefix, let's anyhow protect against it.
CID: #491058
commit 78595896109194d952fa5e269b7845ddbcd902ff
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Fri Mar 13 11:19:01 2026 +0100
extractor: Fix wrong condition getting JPEG h/v resolution
Fix thinko in the condition, we are looking for either of those
values, not none of them.
CID: #491056
commit 5b5d1ab8ad1165484926c98dae3d10f8ece42329
Merge: 5f7aa314 407b89a6
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sat Mar 14 23:36:36 2026 +0000
Merge branch 'zip-shared' into 'main'
extractor: Move zip-input-stream into a private shared library
See merge request https://gitlab.gnome.org/GNOME/localsearch/-/merge_requests/662
commit 407b89a62f0537c8240cb282f982494912694e44
Author: Charles <charles05@canonical.com>
Date: Mon Mar 9 20:05:56 2026 +0000
extractor: Move zip-input-stream into extractor modules
This avoids distribution issues with libzip. Distributions which don't
carry this dependency in their main supported suite can more easily
package the relevant dependencies in a separate package, rather than
this zip-related functions being dynamically exported from the main
tracker-extractor-3 executable.
commit 5f7aa314b46efed0c2842a6abbe4f03ed0c96132
Merge: 315bd51b f391eb52
Author: Carlos Garnacho <carlosg@gnome.org>
Date: Sat Mar 14 23:17:08 2026 +0000
Merge branch 'zip-tests-condition' into 'main'
tests: Condition libzip dependent extractor tests
See merge request https://gitlab.gnome.org/GNOME/localsearch/-/merge_requests/661
commit 315bd51b986cdb344d55926dfba3cc2bc5550cb8
Author: Bruce Cowan <bruce@bcowan.me.uk>
Date: Tue Mar 10 19:12:13 2026 +0000
Update British English translation
commit 1fcd1fa1f5da62c82b730c837354e9aa30cc86a7
Author: Ask Hjorth Larsen <asklarsen@gmail.com>
Date: Mon Mar 9 23:12:58 2026 +0000
Update Danish translation
commit e5b765e79b9348350a35721cabcdc5f3b68128a6
Author: Jordi Mas <jmas@softcatala.org>
Date: Sat Mar 7 10:50:07 2026 +0100
Update Catalan translation
commit 8b59aadea4e35836de0c94655b9b21eaedadd6e8
Author: Victoria <royal.victoria@proton.me>
Date: Fri Mar 6 21:36:05 2026 +0000
Update Polish translation
commit f391eb52f9e199c05f59894ce35e911e0138f87e
Author: Charles <charles05@canonical.com>
Date: Fri Mar 6 09:24:30 2026 +0000
tests: Condition libzip dependent extractor tests
These tests rely on tracker-extractor-3 being linked to libzip. If the
zip feature is disabled, the tests also need to be skipped.
Among the 5 debian patches available in version 3.11~rc-2 of the package, we noticed the following issues:
Automatic checks made by the Debian l10n team found some issues with the translations contained in this package. You should check the l10n status report for more information.
Issues can be things such as missing translations, problematic translated strings, outdated PO files, unknown languages, etc.