r29521 - in /desktop/experimental/brasero/debian: changelog control control.in patches/01_libtracker-sparql-0.10.patch patches/01_tracker-0.10.patch patches/series

biebl at users.alioth.debian.org biebl at users.alioth.debian.org
Sun Aug 28 22:26:00 UTC 2011


Author: biebl
Date: Sun Aug 28 22:25:59 2011
New Revision: 29521

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=29521
Log:
* Cherry-pick patch from upstream Git to use libtracker-sparql instead of
  libtracker-client, which is deprecated and scheduled to be removed in
  tracker 0.12.
* Change Build-Depends on libtracker-client-0.10-dev to
  libtracker-sparql-0.10-dev.

Added:
    desktop/experimental/brasero/debian/patches/01_libtracker-sparql-0.10.patch
Removed:
    desktop/experimental/brasero/debian/patches/01_tracker-0.10.patch
Modified:
    desktop/experimental/brasero/debian/changelog
    desktop/experimental/brasero/debian/control
    desktop/experimental/brasero/debian/control.in
    desktop/experimental/brasero/debian/patches/series

Modified: desktop/experimental/brasero/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/brasero/debian/changelog?rev=29521&op=diff
==============================================================================
--- desktop/experimental/brasero/debian/changelog [utf-8] (original)
+++ desktop/experimental/brasero/debian/changelog [utf-8] Sun Aug 28 22:25:59 2011
@@ -1,3 +1,13 @@
+brasero (3.0.0-3) UNRELEASED; urgency=low
+
+  * Cherry-pick patch from upstream Git to use libtracker-sparql instead of
+    libtracker-client, which is deprecated and scheduled to be removed in
+    tracker 0.12.
+  * Change Build-Depends on libtracker-client-0.10-dev to
+    libtracker-sparql-0.10-dev.
+
+ -- Michael Biebl <biebl at debian.org>  Mon, 29 Aug 2011 00:05:54 +0200
+
 brasero (3.0.0-2) experimental; urgency=low
 
   * Build for tracker 0.10. Closes: #628792

Modified: desktop/experimental/brasero/debian/control
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/brasero/debian/control?rev=29521&op=diff
==============================================================================
--- desktop/experimental/brasero/debian/control [utf-8] (original)
+++ desktop/experimental/brasero/debian/control [utf-8] Sun Aug 28 22:25:59 2011
@@ -31,7 +31,7 @@
                libnautilus-extension-dev (>= 2.91.90),
                libburn-dev (>= 0.4.0),
                libisofs-dev (>= 0.6.4),
-               libtracker-client-0.10-dev (>= 0.10.0),
+               libtracker-sparql-0.10-dev (>= 0.10.0),
                libtotem-plparser-dev (>= 2.32),
                libunique-dev (>= 1.0.0),
                intltool (>= 0.35.0)

Modified: desktop/experimental/brasero/debian/control.in
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/brasero/debian/control.in?rev=29521&op=diff
==============================================================================
--- desktop/experimental/brasero/debian/control.in [utf-8] (original)
+++ desktop/experimental/brasero/debian/control.in [utf-8] Sun Aug 28 22:25:59 2011
@@ -26,7 +26,7 @@
                libnautilus-extension-dev (>= 2.91.90),
                libburn-dev (>= 0.4.0),
                libisofs-dev (>= 0.6.4),
-               libtracker-client-0.10-dev (>= 0.10.0),
+               libtracker-sparql-0.10-dev (>= 0.10.0),
                libtotem-plparser-dev (>= 2.32),
                libunique-dev (>= 1.0.0),
                intltool (>= 0.35.0)

Added: desktop/experimental/brasero/debian/patches/01_libtracker-sparql-0.10.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/brasero/debian/patches/01_libtracker-sparql-0.10.patch?rev=29521&op=file
==============================================================================
--- desktop/experimental/brasero/debian/patches/01_libtracker-sparql-0.10.patch (added)
+++ desktop/experimental/brasero/debian/patches/01_libtracker-sparql-0.10.patch [utf-8] Sun Aug 28 22:25:59 2011
@@ -1,0 +1,262 @@
+From 8074d827f16702ed7dc26505136fbe645271d0a2 Mon Sep 17 00:00:00 2001
+From: Luis Medinas <lmedinas at gnome.org>
+Date: Sun, 28 Aug 2011 19:37:16 +0100
+Subject: [PATCH] Use libtracker-sparql instead of libtracker-client since
+ it's deprecated. Fixes bgo #651630.
+
+Adapt configure for tracker-sparql.
+---
+ configure.in                 |    4 +-
+ src/brasero-search-tracker.c |  147 +++++++++++++++++++++++++++++++++++-------
+ 2 files changed, 125 insertions(+), 26 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 4fb6776..d08e8b2 100644
+--- a/configure.in
++++ b/configure.in
+@@ -388,7 +388,7 @@ AC_ARG_ENABLE(search,
+ 			[enable_search="yes"])
+ 
+ if test x"$enable_search" = "xtracker"; then
+-	PKG_CHECK_MODULES(BRASERO_SEARCH, tracker-client-0.8 >= $TRACKER_REQUIRED)
++	PKG_CHECK_MODULES(BRASERO_SEARCH, tracker-sparql-0.10 >= $TRACKER_REQUIRED)
+ 	AC_DEFINE(BUILD_SEARCH, 1, [define if you  want to use search pane])
+ 	AC_DEFINE(BUILD_TRACKER, 1, [define if you  want to use search pane])
+ 	AC_SUBST(BRASERO_SEARCH_CFLAGS)
+@@ -406,7 +406,7 @@ elif test x"$enable_search" = "xbeagle"; then
+ 	build_tracker="no"
+ 	build_search="yes"
+ elif test x"$enable_search" = "xyes"; then
+-	PKG_CHECK_MODULES(BRASERO_SEARCH, tracker-client-0.8 >= $TRACKER_REQUIRED, build_search=yes, build_search=no)
++	PKG_CHECK_MODULES(BRASERO_SEARCH, tracker-sparql-0.10 >= $TRACKER_REQUIRED, build_search=yes, build_search=no)
+ 	if test x"$build_search" = "xyes"; then
+ 		AC_DEFINE(BUILD_SEARCH, 1, [define if you  want to use search pane])
+ 		AC_DEFINE(BUILD_TRACKER, 1, [define if you  want to use search pane])
+diff --git a/src/brasero-search-tracker.c b/src/brasero-search-tracker.c
+index 32478c7..fe7be2b 100644
+--- a/src/brasero-search-tracker.c
++++ b/src/brasero-search-tracker.c
+@@ -19,7 +19,8 @@
+ 
+ #include <stdlib.h>
+ 
+-#include <libtracker-client/tracker-client.h>
++#include <libtracker-sparql/tracker-sparql.h>
++#include <gio/gio.h>
+ 
+ #include "brasero-search-tracker.h"
+ #include "brasero-search-engine.h"
+@@ -27,7 +28,8 @@
+ typedef struct _BraseroSearchTrackerPrivate BraseroSearchTrackerPrivate;
+ struct _BraseroSearchTrackerPrivate
+ {
+-	TrackerClient *client;
++	TrackerSparqlConnection *connection;
++	GCancellable *cancellable;
+ 	GPtrArray *results;
+ 
+ 	BraseroSearchScope scope;
+@@ -54,11 +56,13 @@ brasero_search_tracker_is_available (BraseroSearchEngine *engine)
+ 	BraseroSearchTrackerPrivate *priv;
+ 
+ 	priv = BRASERO_SEARCH_TRACKER_PRIVATE (engine);
+-	if (priv->client)
++	GError *error = NULL;
++	if (priv->connection)
+ 		return TRUE;
+-
+-	priv->client = tracker_client_new (1, 30000);
+-	return (priv->client != NULL);
++	
++	priv->cancellable = g_cancellable_new ();
++ 	priv->connection = tracker_sparql_connection_get (priv->cancellable, &error);
++	return (priv->connection != NULL);
+ }
+ 
+ static gint
+@@ -124,30 +128,104 @@ brasero_search_tracker_score_from_hit (BraseroSearchEngine *engine,
+ 	return 0;
+ }
+ 
++static void brasero_search_tracker_cursor_callback (GObject      *object,
++						    GAsyncResult *result,
++						    gpointer      user_data);
++
++static void
++brasero_search_tracker_cursor_next (BraseroSearchEngine *search,
++				    TrackerSparqlCursor    *cursor)
++{
++	BraseroSearchTrackerPrivate *priv;
++	priv = BRASERO_SEARCH_TRACKER_PRIVATE (search);
++	
++	tracker_sparql_cursor_next_async (cursor,
++					  priv->cancellable,
++					  brasero_search_tracker_cursor_callback,
++					  search);
++}
++
++static void
++brasero_search_tracker_cursor_callback (GObject      *object,
++					GAsyncResult *result,
++					gpointer      user_data)
++{
++	BraseroSearchEngine *search;
++	GError *error = NULL;
++	TrackerSparqlCursor *cursor;
++	GList *hits;
++	gboolean success;
++
++	cursor = TRACKER_SPARQL_CURSOR (object);
++	success = tracker_sparql_cursor_next_finish (cursor, result, &error);
++
++	if (error) {
++		brasero_search_engine_query_error (search, error);
++		g_error_free (error);
++
++		if (cursor) {
++			g_object_unref (cursor);
++		}
++
++		return;
++	}
++
++	if (!success) {
++		brasero_search_engine_query_finished (search);
++
++		if (cursor) {
++			g_object_unref (cursor);
++		}
++
++		return;
++	}
++
++	/* We iterate result by result, not n at a time. */
++	hits = g_list_append (NULL, (gchar*) tracker_sparql_cursor_get_string (cursor, 0, NULL));
++	brasero_search_engine_hit_added (search, hits);
++	g_list_free (hits);
++
++	/* Get next */
++	brasero_search_tracker_cursor_next (search, cursor);
++}
++
+ static void
+-brasero_search_tracker_reply (GPtrArray *results,
+-			      GError *error,
++brasero_search_tracker_reply (GObject      *object,
++			      GAsyncResult *result,
+ 			      gpointer user_data)
+ {
+ 	BraseroSearchEngine *search = BRASERO_SEARCH_ENGINE (user_data);
+-	BraseroSearchTrackerPrivate *priv;
+-	int i;
++	GError *error = NULL;
++	
++	TrackerSparqlCursor *cursor;
++	GList *hits;
++	gboolean success;
+ 
+-	priv = BRASERO_SEARCH_TRACKER_PRIVATE (search);
++	cursor = TRACKER_SPARQL_CURSOR (object);
++	success = tracker_sparql_cursor_next_finish (cursor, result, &error);
++
++	if (cursor) {
++		g_object_unref (cursor);
++	}
+ 
+ 	if (error) {
+ 		brasero_search_engine_query_error (search, error);
+ 		return;
+ 	}
+ 
+-	if (!results) {
++	if (!success) {
+ 		brasero_search_engine_query_finished (search);
++		
++		if (cursor) {
++			g_object_unref (cursor);
++		}
+ 		return;
++    
+ 	}
+ 
+-	priv->results = results;
+-	for (i = 0; i < results->len; i ++)
+-		brasero_search_engine_hit_added (search, g_ptr_array_index (results, i));
++	hits = g_list_append (NULL, (gchar*) tracker_sparql_cursor_get_string (cursor, 0, NULL));
++	brasero_search_engine_hit_added (search, result);
++	g_list_free (hits);
+ 
+ 	brasero_search_engine_query_finished (search);
+ }
+@@ -232,10 +310,16 @@ brasero_search_tracker_query_start_real (BraseroSearchEngine *search,
+ 			 "OFFSET 0 "
+ 			 "LIMIT 10000");
+ 
+-	priv->current_call_id = tracker_resources_sparql_query_async (priv->client,
+-								      query->str,
+-	                                                              brasero_search_tracker_reply,
+-	                                                              search);
++	g_string_append (query, ")");
++
++	g_string_append (query,
++			 "} ORDER BY DESC(nie:url(?urn)) DESC(nfo:fileName(?urn))");
++
++	tracker_sparql_connection_query_async (priv->connection,
++					       query->str,
++					       priv->cancellable,
++					       brasero_search_tracker_reply,
++					       search);
+ 	g_string_free (query, TRUE);
+ 
+ 	return res;
+@@ -310,7 +394,7 @@ brasero_search_tracker_clean (BraseroSearchTracker *search)
+ 	priv = BRASERO_SEARCH_TRACKER_PRIVATE (search);
+ 
+ 	if (priv->current_call_id)
+-		tracker_cancel_call (priv->client, priv->current_call_id);
++		g_cancellable_cancel (priv->cancellable);
+ 
+ 	if (priv->results) {
+ 		g_ptr_array_foreach (priv->results, (GFunc) g_strfreev, NULL);
+@@ -364,9 +448,24 @@ static void
+ brasero_search_tracker_init (BraseroSearchTracker *object)
+ {
+ 	BraseroSearchTrackerPrivate *priv;
++	GError *error = NULL;
+ 
+ 	priv = BRASERO_SEARCH_TRACKER_PRIVATE (object);
+-	priv->client = tracker_client_new (1, 30000);
++	priv->cancellable = g_cancellable_new ();
++	priv->connection = tracker_sparql_connection_get (priv->cancellable, &error);
++
++	if (error) {
++		g_warning ("Could not establish a connection to Tracker: %s", error->message);
++		g_error_free (error);
++		g_object_unref (priv->cancellable);
++		
++		return;
++	} else if (!priv->connection) {
++		g_warning ("Could not establish a connection to Tracker, no TrackerSparqlConnection was returned");
++		g_object_unref (priv->cancellable);
++		
++		return;
++	}
+ }
+ 
+ static void
+@@ -378,9 +477,9 @@ brasero_search_tracker_finalize (GObject *object)
+ 
+ 	brasero_search_tracker_clean (BRASERO_SEARCH_TRACKER (object));
+ 
+-	if (priv->client) {
+-		g_object_unref (priv->client);
+-		priv->client = NULL;
++	if (priv->connection) {
++		g_object_unref (priv->connection);
++		priv->connection = NULL;
+ 	}
+ 
+ 	G_OBJECT_CLASS (brasero_search_tracker_parent_class)->finalize (object);
+-- 
+1.7.5.4
+

Modified: desktop/experimental/brasero/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/brasero/debian/patches/series?rev=29521&op=diff
==============================================================================
--- desktop/experimental/brasero/debian/patches/series [utf-8] (original)
+++ desktop/experimental/brasero/debian/patches/series [utf-8] Sun Aug 28 22:25:59 2011
@@ -1,1 +1,1 @@
-01_tracker-0.10.patch
+01_libtracker-sparql-0.10.patch




More information about the pkg-gnome-commits mailing list