Update to 1.5.2

This commit is contained in:
Kalev Lember 2015-08-20 09:13:15 +02:00
parent 579aeb8143
commit a14c337130
5 changed files with 7 additions and 226 deletions

View File

@ -1,27 +0,0 @@
From 68990f25f322e29b041bb47c20348021f8e5787f Mon Sep 17 00:00:00 2001
From: David King <amigadave@amigadave.com>
Date: Wed, 22 Jul 2015 13:31:55 +0100
Subject: [PATCH 1/4] libtracker-data: Fix printf string format
Introduced by commit 81135ae19c727df716d0c0945869462e75a53497.
https://bugzilla.gnome.org/show_bug.cgi?id=752717
---
src/libtracker-data/tracker-db-interface-sqlite.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/libtracker-data/tracker-db-interface-sqlite.c b/src/libtracker-data/tracker-db-interface-sqlite.c
index 7ea87c8..a1d4d83 100644
--- a/src/libtracker-data/tracker-db-interface-sqlite.c
+++ b/src/libtracker-data/tracker-db-interface-sqlite.c
@@ -1304,6 +1304,7 @@ tracker_db_interface_sqlite_fts_delete_id (TrackerDBInterface *db_interface,
stmt = tracker_db_interface_create_statement (db_interface,
TRACKER_DB_STATEMENT_CACHE_TYPE_UPDATE,
&error,
+ "%s",
db_interface->fts_delete_str);
if (!stmt || error) {
if (error) {
--
2.4.6

View File

@ -1,42 +0,0 @@
From ca48064339d58a9b5a87e005629d671fe663256b Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <carlosg@gnome.org>
Date: Wed, 22 Jul 2015 20:19:20 +0200
Subject: [PATCH 2/4] libtracker-miner: Fallback to basename checks on hidden
files
When we receive DELETED events on files, the TrackerFileNotifier/
TrackerIndexingTree attempt to find out if its hidden and should
thus be ignored. However the g_file_query_info() evidently fails
at that time, with the file already deleted, so we think the file
is not hidden and the delete operation gets propagated to the
TrackerMineFS.
Fix this by resorting to basename checks as a last resort, so
we do the right thing even after the file is gone.
---
src/libtracker-common/tracker-file-utils.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/libtracker-common/tracker-file-utils.c b/src/libtracker-common/tracker-file-utils.c
index 6fca87e..123d347 100644
--- a/src/libtracker-common/tracker-file-utils.c
+++ b/src/libtracker-common/tracker-file-utils.c
@@ -743,6 +743,15 @@ tracker_file_is_hidden (GFile *file)
/* Check if GIO says the file is hidden */
is_hidden = g_file_info_get_is_hidden (file_info);
g_object_unref (file_info);
+ } else {
+ gchar *basename;
+
+ /* Resort last to basename checks, this might happen on
+ * already deleted files.
+ */
+ basename = g_file_get_basename (file);
+ is_hidden = basename[0] == '.';
+ g_free (basename);
}
return is_hidden;
--
2.4.6

View File

@ -1,144 +0,0 @@
From e6dbeb6ea1b386ef22a6e530810ad38cb55ce8c5 Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <carlosg@gnome.org>
Date: Thu, 23 Jul 2015 22:28:00 +0200
Subject: [PATCH 3/4] rss: Set website url as a nfo:WebSite
nco:websiteUrl has to point to a rdfs:Resource according to the
ontology, so make the string a full blown nfo:WebSite, with its
nie:url.
---
src/miners/rss/tracker-miner-rss.c | 64 ++++++++++++++++++++++++++++++++------
1 file changed, 55 insertions(+), 9 deletions(-)
diff --git a/src/miners/rss/tracker-miner-rss.c b/src/miners/rss/tracker-miner-rss.c
index 5b349ab..a0f55ad 100644
--- a/src/miners/rss/tracker-miner-rss.c
+++ b/src/miners/rss/tracker-miner-rss.c
@@ -679,14 +679,36 @@ feed_item_insert_cb (GObject *source,
feed_item_insert_data_free (fiid);
}
+static gchar *
+sparql_add_website (TrackerSparqlBuilder *sparql,
+ const gchar *uri)
+{
+ gchar *website_urn;
+
+ website_urn = tracker_sparql_escape_uri_printf ("urn:website:%s", uri);
+
+ tracker_sparql_builder_insert_silent_open (sparql, NULL);
+ tracker_sparql_builder_subject_iri (sparql, website_urn);
+ tracker_sparql_builder_predicate (sparql, "a");
+ tracker_sparql_builder_object (sparql, "nie:DataObject");
+ tracker_sparql_builder_object (sparql, "nfo:Website");
+
+ tracker_sparql_builder_predicate (sparql, "nie:url");
+ tracker_sparql_builder_object_unvalidated (sparql, uri);
+
+ tracker_sparql_builder_insert_close (sparql);
+
+ return website_urn;
+}
+
static void
sparql_add_contact (TrackerSparqlBuilder *sparql,
const gchar *alias,
- GrssPerson *contact)
+ GrssPerson *contact,
+ const gchar *website_urn)
{
const gchar *name = grss_person_get_name (contact);
const gchar *email = grss_person_get_email (contact);
- const gchar *uri = grss_person_get_uri (contact);
tracker_sparql_builder_subject (sparql, alias);
tracker_sparql_builder_predicate (sparql, "a");
@@ -708,9 +730,9 @@ sparql_add_contact (TrackerSparqlBuilder *sparql,
tracker_sparql_builder_object_blank_close (sparql);
}
- if (uri != NULL) {
+ if (website_urn) {
tracker_sparql_builder_predicate (sparql, "nco:websiteUrl");
- tracker_sparql_builder_object_unvalidated (sparql, uri);
+ tracker_sparql_builder_object_iri (sparql, website_urn);
}
}
@@ -736,6 +758,8 @@ feed_item_check_exists_cb (GObject *source_object,
const GList *contributors;
const GList *list, *l;
GList *contrib_aliases = NULL;
+ gchar *website_urn = NULL;
+ GHashTable *contributor_websites;
fiid = user_data;
connection = TRACKER_SPARQL_CONNECTION (source_object);
@@ -785,7 +809,28 @@ feed_item_check_exists_cb (GObject *source_object,
g_message ("Inserting feed item for '%s'", url);
+ contributor_websites = g_hash_table_new_full (NULL, NULL, NULL,
+ (GDestroyNotify) g_free);
sparql = tracker_sparql_builder_new_update ();
+ author = grss_feed_item_get_author (fiid->item);
+ contributors = grss_feed_item_get_contributors (fiid->item);
+
+ for (l = contributors; l; l = l->next) {
+ const gchar *url;
+ gchar *urn;
+
+ url = grss_person_get_uri (l->data);
+
+ if (!url)
+ continue;
+
+ urn = sparql_add_website (sparql, url);
+ g_hash_table_insert (contributor_websites, l->data, urn);
+ }
+
+ if (author && grss_person_get_uri (author)) {
+ website_urn = sparql_add_website (sparql, grss_person_get_uri (author));
+ }
has_geolocation = grss_feed_item_get_geo_point (fiid->item, &latitude, &longitude);
tracker_sparql_builder_insert_open (sparql, NULL);
@@ -804,14 +849,11 @@ feed_item_check_exists_cb (GObject *source_object,
tracker_sparql_builder_object_double (sparql, longitude);
}
- author = grss_feed_item_get_author (fiid->item);
if (author != NULL) {
g_message (" Author:'%s'", grss_person_get_name (author));
- sparql_add_contact (sparql, "_:author", author);
+ sparql_add_contact (sparql, "_:author", author, website_urn);
}
- contributors = grss_feed_item_get_contributors (fiid->item);
-
for (l = contributors; l; l = l->next) {
gchar *subject;
gint i = 0;
@@ -820,7 +862,9 @@ feed_item_check_exists_cb (GObject *source_object,
subject = g_strdup_printf ("_:contrib%d", i++);
contrib_aliases = g_list_prepend (contrib_aliases, subject);
- sparql_add_contact (sparql, subject, l->data);
+ sparql_add_contact (sparql, subject, l->data,
+ g_hash_table_lookup (contributor_websites, l->data));
+ g_free (subject);
}
tracker_sparql_builder_subject (sparql, "_:message");
@@ -918,6 +962,8 @@ feed_item_check_exists_cb (GObject *source_object,
g_object_unref (cursor);
g_object_unref (sparql);
+ g_free (website_urn);
+ g_hash_table_free (contributor_websites);
}
static void
--
2.4.6

View File

@ -1 +1 @@
c732039cfe2de686c4994261e4cb3264 tracker-1.5.1.tar.xz
1f64091c12134babd8f9d6e5d8148b95 tracker-1.5.2.tar.xz

View File

@ -15,8 +15,8 @@
%endif
Name: tracker
Version: 1.5.1
Release: 2%{?dist}
Version: 1.5.2
Release: 1%{?dist}
Summary: Desktop-neutral search tool and indexer
Group: Applications/System
@ -28,12 +28,6 @@ Source0: https://download.gnome.org/sources/%{name}/1.5/%{name}-%{version
# https://bugzilla.redhat.com/show_bug.cgi?id=771601
Patch0: 0001-Only-autostart-in-GNOME-771601.patch
# Hotfixes from master
Patch1: 0001-libtracker-data-Fix-printf-string-format.patch
Patch2: 0002-libtracker-miner-Fallback-to-basename-checks-on-hidd.patch
Patch3: 0003-rss-Set-website-url-as-a-nfo-WebSite.patch
Patch4: 0004-rss-fix-typo.patch
BuildRequires: desktop-file-utils
BuildRequires: firefox
BuildRequires: giflib-devel
@ -180,15 +174,12 @@ This package contains the documentation for tracker
%setup -q
%patch0 -p1 -b .autostart-gnome
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
## nuke unwanted rpaths, see also
## https://fedoraproject.org/wiki/Packaging/Guidelines#Beware_of_Rpath
sed -i -e 's|"/lib /usr/lib|"/%{_lib} %{_libdir}|' configure
%build
%configure --disable-static \
--enable-gtk-doc \
@ -335,6 +326,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%changelog
* Thu Aug 20 2015 Kalev Lember <klember@redhat.com> - 1.5.2-1
- Update to 1.5.2
* Fri Jul 24 2015 Igor Gnatenko <ignatenko@src.gnome.org> - 1.5.1-2
- Backport rss fixes from upstream