From 33f185f5eed28c6c5dc476addf4321442473bf50dbd0c7cba259909c278b06d0 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Tue, 22 Sep 2020 09:01:33 +0000 Subject: [PATCH] Accepting request 833772 from GNOME:Next Update to 2.99.x - we have tracker stable renamed to tracker2, so we can easily already push the unstable branch OBS-URL: https://build.opensuse.org/request/show/833772 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/tracker?expand=0&rev=203 --- tracker-2.3.5.tar.xz | 3 - tracker-2.99.5.tar.xz | 3 + tracker-ontology-upgrades.patch | 84 -------------- tracker.changes | 91 +++++++++++++++ tracker.spec | 198 +++++++------------------------- 5 files changed, 134 insertions(+), 245 deletions(-) delete mode 100644 tracker-2.3.5.tar.xz create mode 100644 tracker-2.99.5.tar.xz delete mode 100644 tracker-ontology-upgrades.patch diff --git a/tracker-2.3.5.tar.xz b/tracker-2.3.5.tar.xz deleted file mode 100644 index 48b485d..0000000 --- a/tracker-2.3.5.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:43883cbb89c86766e7bde178a4fed5ee6fb9a61367998724a1f69e4d25f6bdc7 -size 1604004 diff --git a/tracker-2.99.5.tar.xz b/tracker-2.99.5.tar.xz new file mode 100644 index 0000000..8ae03f2 --- /dev/null +++ b/tracker-2.99.5.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4467fd8f6713ccf72ce458de85a9d9fffa27187576bd0a5ab684305b8d628a5f +size 1452888 diff --git a/tracker-ontology-upgrades.patch b/tracker-ontology-upgrades.patch deleted file mode 100644 index 01ac223..0000000 --- a/tracker-ontology-upgrades.patch +++ /dev/null @@ -1,84 +0,0 @@ -From e4303edce3c70dcd60300d6b72761cdc8d89121e Mon Sep 17 00:00:00 2001 -From: Carlos Garnacho -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 diff --git a/tracker.changes b/tracker.changes index 3856da2..713a754 100644 --- a/tracker.changes +++ b/tracker.changes @@ -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 diff --git a/tracker.spec b/tracker.spec index 9d9f58b..50f8209 100644 --- a/tracker.spec +++ b/tracker.spec @@ -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