| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Instead of figuring out from the subscription later on.
|
|
|
|
|
| |
Figure the service IRI early on cache struct creation, so we do not need
to rely on subscription+notifier to create it afterwards.
|
|
|
|
|
| |
Avoid poking the notifier for this, passing the cancellable for async
operations with the cache struct itself.
|
|
|
|
|
| |
Try to decouple the dependency on cache->notifier in code. This is a good
start.
|
|
|
|
|
|
|
|
| |
While handling the URN query cursor, we did not check the cancellable
and went all through with it, even if TrackerNotifier finalization
paths might have cancelled the task. This could not happen in practice
since the cache struct takes a reference on the TrackerNotifier, but
will happen with future commits.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make the TrackerNotifier::events signal ensured to be emitted in the
same main context that created the TrackerNotifier. This is coherent
with other threaded objects that have communication through signals
(e.g. GDBusProxy).
Notably, it is already expected to behave this way in tracker-miners.
Since the tracker-miner-fs-3 D-Bus endpoint is managed on a distinct
context/thread that should also handle the proxying of notifier events
without involvement of the main thread/context.
|
| |
|
|\
| |
| |
| |
| | |
build: Define _GNU_SOURCE for gmtime_r
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/596
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Found while building tracker 3.5.2 with clang 16, which enable
Wimplicit-function-declaration by default.
Without _GNU_SOURCE defined, tracker would fail in the configure phase
with Checking if "strftime 4-digit year modifier" runs: DID NOT
COMPILE error. And investigating the meson log we see
Compiler stderr:
/var/tmp/portage/app-misc/tracker-3.5.2/work/tracker-3.5.2-build/meson-private/tmplr2vm6b0/testfile.c:12:5: error: call to undeclared function 'gmtime_r'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
gmtime_r (×tamp, &tm);
And a little further up
Command line: clang /var/tmp/portage/app-misc/tracker-3.5.2/work/tracker-3.5.2-build/meson-private/tmplr2vm6b0/testfile.c -o /var/tmp/portage/app-misc/tracker-3.5.2/work/tracker-3.5.2-build/meson-private/tmplr2vm6b0/output.exe -O2 -pipe -march=native -DTRACKER_DEBUG -DG_DISABLE_CAST_CHECKS -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declaration -std=c99 -Wl,-O1 -Wl,--as-needed -fuse-ld=lld -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed
Seems like cc.run() doesn't pick up the general compiler args we set
earlier. We have already set it for the main build, so adding it just
for the configure test should be fine.
Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
|
| |
|
|
|
|
|
|
| |
Parameters bound to a bus TrackerSparqlStatement would
be leaked on statement execution. The GVariants are already
owned by the hashtable.
|
|\
| |
| |
| |
| |
| |
| | |
build: Detect appropriate strftime() year modifier at build time
Closes #402
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/593
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Different libc implementations (or different platforms) have different
bugs. Even though %Y is documented as a 4-digit number, and %C as
year/100 in a [00-99] range, they both crap out with years under 1000,
using respectively 3 and 1 digits.
This would be typically task for a width modifier (e.g. %4Y, or %2C),
but that was conversely found to break NixOS on Darwin.
Since the existing libc bugs paint us to a corner, detect an
appropriate modifier at build time to get a 4-digit year to get true
ISO 8601 in our supported [0001-9999] year range.
Closes: https://gitlab.gnome.org/GNOME/tracker/-/issues/402
|
|\ \
| | |
| | |
| | |
| | | |
docs: Switch shebang to bash since popd and pushd are bashisms
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/595
|
|/ /
| |
| |
| |
| |
| | |
popd and pushed are not implemented in all shells
https://rgeissert.blogspot.com/2013/02/a-bashism-week-pushing-and-poping.html
|
|\ \
| |/
|/|
| |
| | |
Fix some potential crashers
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/594
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In case of error reading from the input stream, we would
propagate the error through the GTask and break, falling
through paths that also try to return and free the task.
Handle the task entirely at the end of the function, based
on the return value. We still need to close the input stream
and soup message in any case.
CID: #1517496
|
| |
| |
| |
| |
| |
| |
| |
| | |
In some circumstances we may pass -1 as len to g_strndup(), that
does not follow the "-1 means strlen()" convention. Do this
ourselves.
CIDs: #1530151, #1530152
|
|/
|
|
|
|
| |
These might get to happen in the right circumstances, from the looks of
it. Possibly fixes https://retrace.fedoraproject.org/faf/reports/688192/
and similar automated reports.
|
| |
|
|\
| |
| |
| |
| | |
direct: Prune only content of correctly finished batches
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/590
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 944988326 attempted made finished batches cheap to keep
in memory, for languages where we don't have full control of
object lifetime (e.g. GJS).
This however broke tracker-miner-fs-3 handling of failures,
since that tries to peek at TrackerResources that were already
disposed by the TrackerBatch being cleared of content, in order
to retry, or report for `tracker3 status`.
In order to fix that and keep the improvement for the common
case (i.e. success), only clear the TrackerBatch contents if
the operation finished successfully.
Fixes: 944988326 ("libtracker-sparql/direct: Prune content of already executed batches")
|
| |
|
|\
| |
| |
| |
| | |
docs: Document FTS feature as a whole
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/589
|
|/
|
|
|
| |
Docs about FTS are somewhat thin and scattered. Add a doc
blurb about FTS explaining how things are put together.
|
|\
| |
| |
| |
| | |
Doc improvements
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/588
|
| |
| |
| |
| | |
To make it easier to access during reviews.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Duplicate/adapt the script existing at docs/website/build.py
in order to build HTML/markdown output for our command line
tools.
Since we use the xmlto CLI tool and asciibook->docbook->html
conversions to get style-free HTML documents, and it was not
previously a build dependency, make this an optional runtime
dependency while we cannot bump dependencies.
|
| |
| |
| |
| |
| |
| | |
Explain more in depth the relation between dataobject/informationelement,
taking inspiration from the original Nepomuk documentation in wording
and illustrations.
|
| |
| |
| |
| |
| |
| | |
Instead of including them as images, inline and theme them like
we do with other SVGs, this makes them look better on dark themes,
other than being a non-descript grey.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since we have files in the sources dir and generated files
in the build dir, we may want to generate documentation that
inline files from both locations.
Allow adding an additional lookup path for the file, so both
can be tried.
|
| |
| |
| |
| |
| |
| | |
Our helper script to substitute and inline doc sections and
images may choke if multiple {{ }} blocks are found in the
same line. Make it handle this situation in the regexp used.
|
| | |
|
| |
| |
| |
| | |
It was left unpushed in my tree, and silently not included.
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
core: handle FTS search terms individually
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/585
|
| |
| |
| |
| |
| | |
Test matching of disjoint terms, and usage of explicit quotes
to make exact matches.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit da9eb9a07c hid the internal FTS syntax as an implementation
detail, but it did so by making the full search string a single term,
so multiple input words had to also appear consecutively in the searched
text to be considered a match.
Bring back the flexibility in order/distance of the looked up words
by using a SQLite helper function to split FTS search terms. This
still results in the FTS syntax being hidden away, but splits the
input words so that each becomes its own search term.
Fixes: da9eb9a07c ("libtracker-data: Do not expose FTS5 syntax through fts:match")
|
| |
| |
| |
| |
| |
| |
| | |
This function splits the search terms, and surrounds each of them with
double quotes so they are taken as individual literal strings to be
matched, quotes explicitly present in the search string are observed
and handled as a single search term, and implicitly closed in unfinished.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
tests: Pass right type/width to varargs TrackerBatch API
Closes #397
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/587
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since we are departing from test beds that have libsoup2 only
into ones that have soup2 available but soup3 is also available and
enabled by default, the several paths skewed the coverage testing
paths.
Add a test target for soup2 specifically, so we get some of it back
and spot regressions in libsoup2 support.
|
| | |
| | |
| | |
| | | |
This may be necessary with the switch to gcovr >= 6.0.
|
| | |
| | |
| | |
| | |
| | | |
Hopefully gets us again past gcovr JSON format version mismatches,
and allows merging those from the different CI test runs.
|
| | |
| | |
| | |
| | | |
Provide a hint to CI logs if gcovr fails to get a JSON summary.
|
| | |
| | |
| | |
| | |
| | |
| | | |
In addition to testing stable Fedora (even old, till the previous commit)
on aarch64, test this architecture on Rawhide as well, in order to spot
possible endianness regressions from our dependencies.
|
| | |
| | |
| | |
| | | |
Fedora 35 is somewhat stale already.
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We specify G_TYPE_INT64 but pass an unspecified integer that gets
promoted to 32-bit. This wreaks havoc in the GValue varargs collection
glib code.
Specify the right type in our tests, so that we don't hit this bug.
Closes: https://gitlab.gnome.org/GNOME/tracker/-/issues/397
|
|\ \
| |/
|/|
| |
| | |
ci: Update stable fedora image to F37 and add rawhide@aarch64 tests
See merge request https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/586
|