Accepting request 836025 from GNOME:Factory

Update to 2.99.x - we have tracker stable renamed to tracker2, so we can easily already push the unstable branch (forwarded request 833772 from dimstar)

OBS-URL: https://build.opensuse.org/request/show/836025
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/tracker?expand=0&rev=132
This commit is contained in:
Dominique Leuenberger 2020-09-25 14:24:26 +00:00 committed by Git OBS Bridge
commit 72bb29758a
5 changed files with 134 additions and 245 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:43883cbb89c86766e7bde178a4fed5ee6fb9a61367998724a1f69e4d25f6bdc7
size 1604004

3
tracker-2.99.5.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4467fd8f6713ccf72ce458de85a9d9fffa27187576bd0a5ab684305b8d628a5f
size 1452888

View File

@ -1,84 +0,0 @@
From e4303edce3c70dcd60300d6b72761cdc8d89121e Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <carlosg@gnome.org>
Date: Wed, 13 May 2020 19:41:55 +0200
Subject: [PATCH] libtracker-data: Improve changes over single valued ontology
properties
Things like rdfs:label and rdfs:comment that are not tracker through the
TrackerOntology and are single-valued may result in errors if there's
changes on those.
Handle those better by replacing the value instead of trying to insert
over it.
---
src/libtracker-data/tracker-data-manager.c | 43 +++++++++++++---------
1 file changed, 26 insertions(+), 17 deletions(-)
diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c
index dadb0f585..22f8749fc 100644
--- a/src/libtracker-data/tracker-data-manager.c
+++ b/src/libtracker-data/tracker-data-manager.c
@@ -1962,6 +1962,7 @@ tracker_data_ontology_process_statement (TrackerDataManager *manager,
gboolean in_update,
gboolean ignore_nao_last_modified)
{
+ TrackerProperty *property;
GError *error = NULL;
if (g_strcmp0 (predicate, RDF_TYPE) == 0) {
@@ -2042,28 +2043,36 @@ tracker_data_ontology_process_statement (TrackerDataManager *manager,
}
}
- if (is_uri) {
- tracker_data_insert_statement_with_uri (manager->data_update, graph, subject,
- predicate, object,
- &error);
+ property = tracker_ontologies_get_property_by_uri (manager->ontologies, predicate);
- if (error != NULL) {
- g_critical ("%s", error->message);
- g_error_free (error);
- return;
+ if (is_uri) {
+ if (tracker_property_get_is_new (property) ||
+ tracker_property_get_multiple_values (property)) {
+ tracker_data_insert_statement_with_uri (manager->data_update, NULL,
+ subject, predicate, object,
+ &error);
+ } else {
+ tracker_data_update_statement (manager->data_update, NULL,
+ subject, predicate, object,
+ &error);
}
-
} else {
- tracker_data_insert_statement_with_string (manager->data_update, graph, subject,
- predicate, object,
- &error);
-
- if (error != NULL) {
- g_critical ("%s", error->message);
- g_error_free (error);
- return;
+ if (tracker_property_get_is_new (property) ||
+ tracker_property_get_multiple_values (property)) {
+ tracker_data_insert_statement_with_string (manager->data_update, NULL,
+ subject, predicate, object,
+ &error);
+ } else {
+ tracker_data_update_statement (manager->data_update, NULL,
+ subject, predicate, object,
+ &error);
}
}
+
+ if (error != NULL) {
+ g_critical ("%s", error->message);
+ g_error_free (error);
+ }
}
static void
--
2.26.2

View File

@ -1,3 +1,94 @@
-------------------------------------------------------------------
Wed Sep 9 07:34:11 UTC 2020 - dimstar@opensuse.org
- Update to version 2.99.5:
+ Fix DBus logging in tracker-sandbox test helper.
+ Removed programming terms from English stop word list.
+ Handle empty input correctly.
+ Fix possible database locks when using "tracker3 sql" on a
running database.
+ Fixes for SERVICE clauses in UNIONs.
+ Handle empty group graph patterns as per the spec.
+ Fixes to property paths being used in different graphs.
+ Release memory on inactivity.
+ Fix build/linking with 2.x in the system.
+ Add "tracker3 export --2to3" helper for data migrations.
+ Hide FTS5 search syntax from fts:match.
+ Updated translations.
-------------------------------------------------------------------
Mon Sep 7 07:51:33 UTC 2020 - dimstar@opensuse.org
- Update to version 2.99.4:
+ CLI modernization:
- integration with pager.
- bash completion for endpoints.
+ Use curly quotes consistently in CLI options.
+ SPARQL parsing fixes.
+ Multiple fixes around 'VALUES' SPARQL syntax.
+ Fix race conditions around graph creation.
+ Better use of asserts in tests.
- Changes from version 2.99.3:
+ Add portal.
+ Use WAL on all database connections.
+ Fix race conditions in reusable statements.
+ Documentation fixes and improvements.
+ Better errors from library function calls.
+ Test fixes.
+ CI improvements.
- Changes from version 2.99.2:
+ Dropped priority argument from
tracker_sparql_connection_update*().
+ Better parser error messages.
+ SPARQL correctness fixes.
+ Fixes to tracker_sparql_cursor_is_bound() checks.
+ Ontology clean ups and sync ups with Nepomuk.
+ Fixed lifetime of blank node labels.
+ Fixes to recursive property paths.
+ Ensure property functions pick non NULL values.
+ Several fixes merge SERVICE{} data with the local graph
pattern.
+ Add `tracker export --show-graphs` CLI subcommand to show
available graphs.
+ Parameter bindings within SERVICE{} clauses are now allowed.
+ Fixes to single/double quote escaping.
+ Fixes to make tracker-sandbox more usable in tests.
+ Many cleanups, memory leak and performance fixes.
- Changes from version 2.99.1:
+ Highlighted updates compared to 2.x:
- A full implementation of SPARQL 1.1/
- A change of paradigm. There is no central store, services are
free to create their own, and to make those an endpoint for
public access. Applications may syndicate queries across
external endpoints through the SERVICE syntax.
- No tracker-store.
- No libtracker-miner.
- No libtracker-control.
+ API changes:
- Explicit API to create a local store, or proxy a DBus/remote
one.
- TrackerEndpoint proxies local stores out of process.
- separate python library to write tests.
+ A base and reference ontologies of our own:
- Officially it's no longer Nepomuk.
- No more broken links.
+ An extensible CLI tool, with a generic set of core subcommands.
+ Parallel installable to tracker 2.x.
- Bump TrackerAPI to 3.0 and RPMTrackerAPI to 3_0.
- Drop tracker-ontology-upgrades.patch: fixed upstream.
- Drop pkgconfig(libnm) BuildRequires: no longer needed.
- Add pkgconfig(systemd) buildRequires: explicitly checked for and
used to be pulled in by libnm.
- No longer pass -Dsystemd_user_services=%{_userunitdir} to meson:
not needed anymore.
- Disable test suite for now: need to workout to run it without X.
- Drop subpackages that no longer exist due to upstream changes and
remove their dependency from the -devel package:
+ libtracker-control-%{RPMTrackerAPI}-0
+ libtracker-miner-%{RPMTrackerAPI}-0
+ typelib-1_0-TrackerControl-%{RPMTrackerAPI}
+ typelib-1_0-TrackerMiner-%{RPMTrackerAPI}
-------------------------------------------------------------------
Tue Aug 25 16:13:22 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@ -17,42 +17,40 @@
#
%define TrackerAPI 2.0
%define RPMTrackerAPI 2_0
%define TrackerAPI 3.0
%define RPMTrackerAPI 3_0
Name: tracker
Version: 2.3.5
Version: 2.99.5
Release: 0
Summary: Object database, tag/metadata database, search tool and indexer
License: GPL-2.0-or-later
Group: Productivity/Other
URL: https://wiki.gnome.org/Projects/Tracker
Source0: https://download.gnome.org/sources/tracker/2.3/%{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM tracker-ontology-upgrades.patch boo#1170587 dimstar@opensuse.org -- Fix ontology migration from very old tracker versions
Patch1: tracker-ontology-upgrades.patch
Source0: https://download.gnome.org/sources/tracker/2.99/%{name}-%{version}.tar.xz
BuildRequires: asciidoc
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: glib2-devel >= 2.46.0
BuildRequires: glib2-devel >= 2.52.0
BuildRequires: gobject-introspection-devel
BuildRequires: gtk-doc
BuildRequires: intltool
BuildRequires: libicu-devel >= 4.8.1.1
BuildRequires: meson
BuildRequires: meson >= 0.50.0
BuildRequires: pkgconfig
BuildRequires: python3
BuildRequires: sqlite3-devel >= 3.8.3
BuildRequires: sqlite3-devel >= 3.15.0
BuildRequires: translation-update-upstream
BuildRequires: vala >= 0.18.0
BuildRequires: zlib-devel
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(json-glib-1.0) >= 1.0
BuildRequires: pkgconfig(libnm)
BuildRequires: pkgconfig(libseccomp) >= 2.0
BuildRequires: pkgconfig(libsoup-2.4) >= 2.40
BuildRequires: pkgconfig(libxml-2.0) >= 2.6
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(upower-glib) >= 0.9.0
BuildRequires: pkgconfig(uuid)
# We want to index files by default, if possible
@ -81,65 +79,6 @@ It provides context linking and audit trails for file objects.
It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.
# This package name is not correct as per SLPP, but the 'lib' lives in a
# private directory: the symbol provided is libtracker-common.so() (same
# name across multiple versions of tracker).
# Yet, different libtracker-miner-* packages require their explicit
# version of libtracker-common.so as they link is done using rpath.
%package -n libtracker-common-%{RPMTrackerAPI}
Summary: Convenience libraries for Tracker
Group: System/Libraries
Requires: %{name}
# Obsolete old tracker libs, bnc#876649
Obsoletes: libtracker-extract-0_16-0
# Obsolete tracker 1.0 - this is not a 'real' slpp package, thus can be obsoleted
Obsoletes: libtracker-common-1_0
%description -n libtracker-common-%{RPMTrackerAPI}
Tracker is a desktop-neutral object database, tag/metadata database,
search tool and indexer.
This package contains private convenience libraries for the
various tracker libraries.
%package -n libtracker-control-%{RPMTrackerAPI}-0
Summary: Control library for Tracker
# rpm autodetects libtracker-common.so() symbol, which is provided by all versions of libtracker-common, so we need to help with an explicit Requires.
Group: System/Libraries
Requires: libtracker-common-%{RPMTrackerAPI}
%description -n libtracker-control-%{RPMTrackerAPI}-0
Tracker is a desktop-neutral object database, tag/metadata database,
search tool and indexer.
It consists of a common object database that allows entities to
have an almost infinite number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.
It provides context linking and audit trails for file objects.
It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.
%package -n libtracker-miner-%{RPMTrackerAPI}-0
Summary: Miner library for Tracker
# rpm autodetects libtracker-common.so() symbol, which is provided by all versions of libtracker-common, so we need to help with an explicit Requires.
Group: System/Libraries
Requires: libtracker-common-%{RPMTrackerAPI}
%description -n libtracker-miner-%{RPMTrackerAPI}-0
Tracker is a desktop-neutral object database, tag/metadata database,
search tool and indexer.
It consists of a common object database that allows entities to
have an almost infinite number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.
It provides context linking and audit trails for file objects.
It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.
%package -n typelib-1_0-Tracker-%{RPMTrackerAPI}
Summary: Introspection bindings for the Tracker Sparql library
Group: System/Libraries
@ -151,33 +90,9 @@ search tool and indexer.
This package provides the GObject Introspection bindings for the
sparql library for Tracker.
%package -n typelib-1_0-TrackerControl-%{RPMTrackerAPI}
Summary: Introspection bindings for the Tracker Control library
Group: System/Libraries
%description -n typelib-1_0-TrackerControl-%{RPMTrackerAPI}
Tracker is a desktop-neutral object database, tag/metadata database,
search tool and indexer.
This package provides the GObject Introspection bindings for the
extract library for Tracker.
%package -n typelib-1_0-TrackerMiner-%{RPMTrackerAPI}
Summary: Introspection bindings for the Tracker Miner library
Group: System/Libraries
%description -n typelib-1_0-TrackerMiner-%{RPMTrackerAPI}
Tracker is a desktop-neutral object database, tag/metadata database,
search tool and indexer.
This package provides the GObject Introspection bindings for the
miner library for Tracker.
%package -n libtracker-sparql-%{RPMTrackerAPI}-0
Summary: Sparql library for Tracker
# rpm autodetects libtracker-common.so() symbol, which is provided by all versions of libtracker-common, so we need to help with an explicit Requires.
Group: System/Libraries
Requires: libtracker-common-%{RPMTrackerAPI}
%description -n libtracker-sparql-%{RPMTrackerAPI}-0
Tracker is a desktop-neutral object database, tag/metadata database,
@ -195,12 +110,8 @@ and search all types of files and other first class objects.
%package -n tracker-devel
Summary: Development files for the Tracker indexer
Group: Development/Libraries/GNOME
Requires: libtracker-control-%{RPMTrackerAPI}-0 = %{version}
Requires: libtracker-miner-%{RPMTrackerAPI}-0 = %{version}
Requires: libtracker-sparql-%{RPMTrackerAPI}-0 = %{version}
Requires: typelib-1_0-Tracker-%{RPMTrackerAPI} = %{version}
Requires: typelib-1_0-TrackerControl-%{RPMTrackerAPI} = %{version}
Requires: typelib-1_0-TrackerMiner-%{RPMTrackerAPI} = %{version}
%description -n tracker-devel
Tracker is a desktop-neutral object database, tag/metadata database,
@ -219,69 +130,47 @@ translation-update-upstream po %{name}
-Ddocs=true \
-Dfunctional_tests=false \
-Dstemmer=disabled \
-Dsystemd_user_services=%{_userunitdir}
%{nil}
%meson_build
%install
%meson_install
%find_lang %{name} %{?no_lang_C}
%find_lang %{name}3 %{?no_lang_C}
# Ensure we have a /usr/share/tracker/icons/ folder, so the
# tracker-extras build can put icons in there without having to worry
mkdir -p %{buildroot}%{_datadir}/tracker/icons/
# Let's package the template directory where consumers can put their ontology files
mkdir %{buildroot}%{_datadir}/tracker3/domain-ontologies
%fdupes %{buildroot}%{_datadir}/vala/
%fdupes %{buildroot}%{_datadir}/gtk-doc
rm -f %{buildroot}%{_libdir}/tracker-%{TrackerAPI}/libtracker-common.a
%ifnarch %arm
%check
%meson_test
%endif
#ifnarch %arm
#check
#meson_test
#endif
%post -n libtracker-control-%{RPMTrackerAPI}-0 -p /sbin/ldconfig
%postun -n libtracker-control-%{RPMTrackerAPI}-0 -p /sbin/ldconfig
%post -n libtracker-miner-%{RPMTrackerAPI}-0 -p /sbin/ldconfig
%postun -n libtracker-miner-%{RPMTrackerAPI}-0 -p /sbin/ldconfig
%post -n libtracker-sparql-%{RPMTrackerAPI}-0 -p /sbin/ldconfig
%postun -n libtracker-sparql-%{RPMTrackerAPI}-0 -p /sbin/ldconfig
%files
%license COPYING
%{_sysconfdir}/xdg/autostart/tracker-store.desktop
%{_bindir}/tracker
%{_libexecdir}/tracker-store
%{_userunitdir}/tracker-store.service
%{_bindir}/tracker3
%dir %{_libdir}/tracker-%{TrackerAPI}/
%{_datadir}/bash-completion/completions/tracker
%{_datadir}/tracker/
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.service
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.DB.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.FTS.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.Store.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.gschema.xml
%{_mandir}/man1/tracker-daemon.1%{ext_man}
%{_mandir}/man1/tracker-export.1%{ext_man}
%{_mandir}/man1/tracker-index.1%{ext_man}
%{_mandir}/man1/tracker-info.1%{ext_man}
%{_mandir}/man1/tracker-reset.1%{ext_man}
%{_mandir}/man1/tracker-search.1%{ext_man}
%{_mandir}/man1/tracker-sparql.1%{ext_man}
%{_mandir}/man1/tracker-sql.1%{ext_man}
%{_mandir}/man1/tracker-status.1%{ext_man}
%{_mandir}/man1/tracker-store.1%{ext_man}
%{_mandir}/man1/tracker-tag.1%{ext_man}
%files -n libtracker-common-%{RPMTrackerAPI}
%{_libdir}/tracker-%{TrackerAPI}/libtracker-data.so
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.enums.xml
%files -n libtracker-control-%{RPMTrackerAPI}-0
%{_libdir}/libtracker-control*.so.*
%files -n libtracker-miner-%{RPMTrackerAPI}-0
%{_libdir}/libtracker-miner*.so.*
%{_datadir}/bash-completion/completions/tracker3
%{_datadir}/tracker3/
%dir %{_datadir}/tracker3/domain-ontologies
%{_libexecdir}/tracker3/
%{_libexecdir}/tracker-xdg-portal-3
%{_mandir}/man1/tracker3-endpoint.1.gz
%{_mandir}/man1/tracker3-export.1.gz
%{_mandir}/man1/tracker3-import.1.gz
%{_mandir}/man1/tracker3-sparql.1.gz
%{_mandir}/man1/tracker3-sql.1.gz
%{_mandir}/man1/tracker-xdg-portal-3.1.gz
%{_datadir}/dbus-1/services/org.freedesktop.portal.Tracker.service
%{_userunitdir}/tracker-xdg-portal-3.service
%files -n libtracker-sparql-%{RPMTrackerAPI}-0
%{_libdir}/libtracker-sparql*.so.*
@ -289,30 +178,23 @@ rm -f %{buildroot}%{_libdir}/tracker-%{TrackerAPI}/libtracker-common.a
%files -n typelib-1_0-Tracker-%{RPMTrackerAPI}
%{_libdir}/girepository-1.0/Tracker-%{TrackerAPI}.typelib
%files -n typelib-1_0-TrackerControl-%{RPMTrackerAPI}
%{_libdir}/girepository-1.0/TrackerControl-%{TrackerAPI}.typelib
%files -n typelib-1_0-TrackerMiner-%{RPMTrackerAPI}
%{_libdir}/girepository-1.0/TrackerMiner-%{TrackerAPI}.typelib
%files -n tracker-devel
%doc AUTHORS README.md NEWS
%{_libdir}/lib*.so
%{_libdir}/tracker-%{TrackerAPI}/trackertestutils
%{_includedir}/tracker-%{TrackerAPI}/
%{_libdir}/pkgconfig/tracker-control-%{TrackerAPI}.pc
%{_libdir}/pkgconfig/tracker-miner-%{TrackerAPI}.pc
%{_libdir}/pkgconfig/tracker-sparql-%{TrackerAPI}.pc
%{_datadir}/gir-1.0/*.gir
%{_datadir}/gtk-doc/html/libtracker-miner/
%{_datadir}/gtk-doc/html/libtracker-control/
%{_datadir}/gtk-doc/html/ontology/
%{_datadir}/gtk-doc/html/libtracker-sparql/
%{_datadir}/gtk-doc/html/libtracker-sparql-3/
%{_datadir}/gtk-doc/html/ontology-3/
%dir %{_datadir}/tracker3
%dir %{_datadir}/tracker3/domain-ontologies
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/*.deps
%{_datadir}/vala/vapi/*.vapi
%{_includedir}/tracker-%{TrackerAPI}/
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/tracker-sparql-%{TrackerAPI}.pc
%{_libdir}/pkgconfig/tracker-testutils-%{TrackerAPI}.pc
%{_libdir}/tracker-%{TrackerAPI}/trackertestutils
%files lang -f %{name}.lang
%files lang -f %{name}3.lang
%changelog