Hello community, here is the log from the commit of package beagle checked in at Mon Aug 27 20:56:23 CEST 2007. -------- --- GNOME/beagle/beagle.changes 2007-08-08 19:29:46.000000000 +0200 +++ /mounts/work_src_done/STABLE/beagle/beagle.changes 2007-08-27 20:55:14.319669000 +0200 @@ -1,0 +2,7 @@ +Mon Aug 27 20:54:16 CEST 2007 - joeshaw@suse.de + +- Update to 0.2.18. Works against updated API in evolution-sharp + 0.13.3. Fixes bgo bugs #463803, #426573, #466891, #463003, and + #454656. + +------------------------------------------------------------------- libbeagle.changes: same change Old: ---- beagle-0.2.17.tar.gz beagle-evolution-sharp-update.patch New: ---- beagle-0.2.18.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ beagle.spec ++++++ --- /var/tmp/diff_new_pack.h20595/_old 2007-08-27 20:55:49.000000000 +0200 +++ /var/tmp/diff_new_pack.h20595/_new 2007-08-27 20:55:49.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package beagle (Version 0.2.17) +# spec file for package beagle (Version 0.2.18) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -18,8 +18,8 @@ License: The Apache Software License, X11/MIT Group: Productivity/Other Autoreqprov: on -Version: 0.2.17 -Release: 40 +Version: 0.2.18 +Release: 1 Summary: Desktop Search Application URL: http://beagle-project.org Source: %{name}-%{version}.tar.gz @@ -28,7 +28,6 @@ Patch3: beagle-log-level-warn.patch Patch6: epiphany-max-version.patch Patch7: fix-desktop-files.diff -Patch8: beagle-evolution-sharp-update.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Prereq: /usr/sbin/groupadd /usr/sbin/useradd Requires: mono-core >= 1.1.13.5 @@ -44,12 +43,13 @@ Requires: %{name}-lang = %{version} %description -Beagle is a search tool that ransacks your personal information - space to find whatever you might be looking for. Beagle is a - Linux desktop-independent service which transparently and - unobtrusively indexes your data in real-time. Beagle supports - many different data sources and file formats, including: * - Documents +Beagle is a search tool that ransacks your personal information space +to find whatever you might be looking for. Beagle is a Linux +desktop-independent service which transparently and unobtrusively +indexes your data in real-time. + +Beagle supports many different data sources and file formats, + including: * Documents * E-mails @@ -258,7 +258,6 @@ %patch3 %patch6 -p1 %patch7 -%patch8 %build intltoolize --copy --force --automake @@ -400,6 +399,10 @@ %{prefix}/%_lib/beagle/Backends/ThunderbirdBackends.dll* %changelog +* Mon Aug 27 2007 - joeshaw@suse.de +- Update to 0.2.18. Works against updated API in evolution-sharp + 0.13.3. Fixes bgo bugs #463803, #426573, #466891, #463003, and + [#454656]. * Wed Aug 08 2007 - maw@suse.de - Use %%fdupes - Split off a -lang subpackage. ++++++ libbeagle.spec ++++++ --- /var/tmp/diff_new_pack.h20595/_old 2007-08-27 20:55:49.000000000 +0200 +++ /var/tmp/diff_new_pack.h20595/_new 2007-08-27 20:55:49.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package libbeagle (Version 0.2.17) +# spec file for package libbeagle (Version 0.2.18) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -22,8 +22,8 @@ License: X11/MIT Group: Development/Libraries/GNOME Autoreqprov: on -Version: 0.2.17 -Release: 37 +Version: 0.2.18 +Release: 1 Summary: Beagle C Interface URL: http://www.gnome.org/projects/beagle/ Source: beagle-%{version}.tar.gz @@ -120,6 +120,10 @@ %{_datadir}/gtk-doc %changelog +* Mon Aug 27 2007 - joeshaw@suse.de +- Update to 0.2.18. Works against updated API in evolution-sharp + 0.13.3. Fixes bgo bugs #463803, #426573, #466891, #463003, and + [#454656]. * Wed Aug 08 2007 - maw@suse.de - Use %%fdupes - Split off a -lang subpackage. ++++++ beagle-0.2.17.tar.gz -> beagle-0.2.18.tar.gz ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagle-0.0.pc new/beagle-0.2.18/beagle-0.0.pc --- old/beagle-0.2.17/beagle-0.0.pc 2007-05-08 21:08:25.000000000 +0200 +++ new/beagle-0.2.18/beagle-0.0.pc 2007-08-27 19:55:45.000000000 +0200 @@ -5,6 +5,6 @@ Name: Beagle Description: We Index Your Life -Version: 0.2.17 +Version: 0.2.18 Libs: -r:${dlldir}/Beagle.dll -r:${dlldir}/Util.dll diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/BeagleClient/Client.cs new/beagle-0.2.18/BeagleClient/Client.cs --- old/beagle-0.2.17/BeagleClient/Client.cs 2007-02-07 20:04:18.000000000 +0100 +++ new/beagle-0.2.18/BeagleClient/Client.cs 2007-08-27 16:59:21.000000000 +0200 @@ -108,8 +108,10 @@ // wire, and we check this.closed in there. this.closed = true; - if (this.client != null) + if (this.client != null) { this.client.Close (); + this.client = null; + } if (!previously_closed && this.ClosedEvent != null) this.ClosedEvent (); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/beagled.in new/beagle-0.2.18/beagled/beagled.in --- old/beagle-0.2.17/beagled/beagled.in 2007-02-07 20:04:14.000000000 +0100 +++ new/beagle-0.2.18/beagled/beagled.in 2007-08-27 16:43:33.000000000 +0200 @@ -108,7 +108,7 @@ export GC_DONT_GC=1 CMDLINE="monogrind $TARGET_EXE $MONO_EXTRA_ARGS $BEAGLED_ARGS $FGBG_ARG" elif [ $mdb -eq 1 ]; then - CMDLINE="mdb $TARGET_EXE -args $BEAGLED_ARGS $FGBG_ARG" + CMDLINE="mdb -args $TARGET_EXE $BEAGLED_ARGS $FGBG_ARG" else CMDLINE="$BEAGLE_MONO_RUNTIME $MONO_EXTRA_ARGS $TARGET_EXE $BEAGLED_ARGS $FGBG_ARG" fi diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/BuildIndex.cs new/beagle-0.2.18/beagled/BuildIndex.cs --- old/beagle-0.2.17/beagled/BuildIndex.cs 2007-05-08 19:57:42.000000000 +0200 +++ new/beagle-0.2.18/beagled/BuildIndex.cs 2007-08-27 16:40:26.000000000 +0200 @@ -265,6 +265,14 @@ Environment.Exit (0); } + // Setup some exclude patterns akin to FSQ/FileNameFilter.cs + denied_patterns.Add (new ExcludeItem (ExcludeType.Pattern, "*~")); + denied_patterns.Add (new ExcludeItem (ExcludeType.Pattern, "#*#")); + denied_patterns.Add (new ExcludeItem (ExcludeType.Pattern, "*.o")); + denied_patterns.Add (new ExcludeItem (ExcludeType.Pattern, "*.a")); + denied_patterns.Add (new ExcludeItem (ExcludeType.Pattern, "*.aux")); + denied_patterns.Add (new ExcludeItem (ExcludeType.Pattern, "*.tmp")); + Log.Always ("Starting beagle-build-index (pid {0}) at {1}", Process.GetCurrentProcess ().Id, DateTime.Now); // Set system priorities so we don't slow down the system @@ -449,6 +457,17 @@ FlushIndexer (driver, request); // FlushIndexer clears the pending_request } + + + // Super Lame Hack: gtk-sharp up to 2.10 requires a main loop + // to dispose of any managed wrappers around GObjects. Since + // we don't have one, we'll process all the pending items in + // a loop here. This is particularly an issue with maildirs, + // because we need the loop to clean up after GMime. Without + // it, GMime's streams are never completely unref'd, the + // file descriptors aren't closed, and we run out and crash. + while (GLib.MainContext.Pending ()) + GLib.MainContext.Iteration (); } static IndexerReceipt [] FlushIndexer (IIndexer indexer, IndexerRequest request) @@ -463,6 +482,8 @@ ArrayList pending_children; pending_children = new ArrayList (); + fa_store.BeginTransaction (); + foreach (IndexerReceipt raw_r in receipts) { if (raw_r is IndexerAddedReceipt) { @@ -504,6 +525,8 @@ } } + fa_store.CommitTransaction (); + request.Clear (); // clear out the old request if (Shutdown.ShutdownRequested) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/EvolutionDataServerQueryable/CalContainer.cs new/beagle-0.2.18/beagled/EvolutionDataServerQueryable/CalContainer.cs --- old/beagle-0.2.17/beagled/EvolutionDataServerQueryable/CalContainer.cs 2007-02-07 20:04:14.000000000 +0100 +++ new/beagle-0.2.18/beagled/EvolutionDataServerQueryable/CalContainer.cs 2007-08-27 17:00:22.000000000 +0200 @@ -126,13 +126,13 @@ private void OnObjectsAdded (object o, Evolution.ObjectsAddedArgs args) { - foreach (CalComponent cc in CalUtil.CalCompFromICal (args.Objects.Handle, this.cal_view.Client)) + foreach (CalComponent cc in CalUtil.ICalToCalComponentArray (args.Objects.Handle, this.cal_view.Client)) AddCalComponent (cc); } private void OnObjectsModified (object o, Evolution.ObjectsModifiedArgs args) { - foreach (CalComponent cc in CalUtil.CalCompFromICal (args.Objects.Handle, this.cal_view.Client)) + foreach (CalComponent cc in CalUtil.ICalToCalComponentArray (args.Objects.Handle, this.cal_view.Client)) AddCalComponent (cc); } @@ -208,8 +208,8 @@ indexable.AddProperty (Property.NewDate ("fixme:starttime", cc.Dtstart.ToUniversalTime ())); indexable.AddProperty (Property.NewDate ("fixme:endtime", cc.Dtend.ToUniversalTime ())); - foreach (string attendee in cc.Attendees) - indexable.AddProperty (Property.New ("fixme:attendee", attendee)); + foreach (CalComponentAttendee attendee in cc.Attendees) + indexable.AddProperty (Property.New ("fixme:attendee", attendee.value)); foreach (string comment in cc.Comments) indexable.AddProperty (Property.New ("fixme:comment", comment)); @@ -217,14 +217,12 @@ foreach (string description in cc.Descriptions) indexable.AddProperty (Property.New ("fixme:description", description)); - foreach (string summary in cc.Summaries) - indexable.AddProperty (Property.New ("fixme:summary", summary)); + indexable.AddProperty (Property.New ("fixme:summary", cc.Summary)); foreach (string category in cc.Categories) indexable.AddProperty (Property.NewUnsearched ("fixme:category", category)); - foreach (string location in cc.Location) - indexable.AddProperty (Property.New ("fixme:location", location)); + indexable.AddProperty (Property.New ("fixme:location", cc.Location)); return indexable; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/EvolutionDataServerQueryable/EvolutionDataServerQueryable.cs new/beagle-0.2.18/beagled/EvolutionDataServerQueryable/EvolutionDataServerQueryable.cs --- old/beagle-0.2.17/beagled/EvolutionDataServerQueryable/EvolutionDataServerQueryable.cs 2007-02-07 20:04:14.000000000 +0100 +++ new/beagle-0.2.18/beagled/EvolutionDataServerQueryable/EvolutionDataServerQueryable.cs 2007-08-27 19:20:54.000000000 +0200 @@ -86,10 +86,13 @@ // e-d-s libraries. try { // This is a no-op - CalUtil.FreeGlueCompGLibSList (IntPtr.Zero); + CalUtil.datetime_to_icaltimetype (new DateTime ()); } catch (DllNotFoundException ex) { Logger.Log.Error (ex, "Unable to start EvolutionDataServer backend: Unable to find or open libraries:"); return; + } catch (EntryPointNotFoundException ex) { + Logger.Log.Error (ex, "Unable to start EvolutionDataServer backend: Unable to find or open libraries:"); + return; } finally { IsIndexing = false; timer.Stop (); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/ExtractContent.cs new/beagle-0.2.18/beagled/ExtractContent.cs --- old/beagle-0.2.17/beagled/ExtractContent.cs 2007-03-15 21:09:00.000000000 +0100 +++ new/beagle-0.2.18/beagled/ExtractContent.cs 2007-08-27 16:34:35.000000000 +0200 @@ -282,6 +282,16 @@ Console.WriteLine ("Unable to filter {0}: {1}", uri, e.Message); return -1; } + + // Super Lame Hack: gtk-sharp up to 2.10 requires a main loop + // to dispose of any managed wrappers around GObjects. Since + // we don't have one, we'll process all the pending items in + // a loop here. This is particularly an issue with maildirs, + // because we need the loop to clean up after GMime. Without + // it, GMime's streams are never completely unref'd, the + // file descriptors aren't closed, and we run out and crash. + while (GLib.MainContext.Pending ()) + GLib.MainContext.Iteration (); } if (writer != null) writer.Close (); diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/FileSystemQueryable/DirectoryModel.cs new/beagle-0.2.18/beagled/FileSystemQueryable/DirectoryModel.cs --- old/beagle-0.2.17/beagled/FileSystemQueryable/DirectoryModel.cs 2007-02-07 20:04:13.000000000 +0100 +++ new/beagle-0.2.18/beagled/FileSystemQueryable/DirectoryModel.cs 2007-08-27 16:24:18.000000000 +0200 @@ -174,6 +174,7 @@ public bool NeedsCrawl { get { return state != DirectoryState.Clean + && state != DirectoryState.PossiblyClean && state != DirectoryState.Uncrawlable; } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/FilterFactory.cs new/beagle-0.2.18/beagled/FilterFactory.cs --- old/beagle-0.2.17/beagled/FilterFactory.cs 2007-02-07 20:04:14.000000000 +0100 +++ new/beagle-0.2.18/beagled/FilterFactory.cs 2007-08-27 16:47:17.000000000 +0200 @@ -271,8 +271,8 @@ filter = candidate_filter; return true; - } else if (Debug) { - Logger.Log.Debug ("Unsuccessfully filtered {0} with {1}, falling back", path, candidate_filter); + } else { + Log.Warn ("Error in filtering {0} with {1}, falling back", path, candidate_filter); candidate_filter.Cleanup (); } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagled/LifereaQueryable/LifereaQueryable.cs new/beagle-0.2.18/beagled/LifereaQueryable/LifereaQueryable.cs --- old/beagle-0.2.17/beagled/LifereaQueryable/LifereaQueryable.cs 2007-02-07 20:04:14.000000000 +0100 +++ new/beagle-0.2.18/beagled/LifereaQueryable/LifereaQueryable.cs 2007-08-27 16:44:15.000000000 +0200 @@ -59,10 +59,27 @@ public LifereaQueryable () : base ("LifereaIndex", INDEX_VERSION) { - liferea_dir = Path.Combine (PathFinder.HomeDir, ".liferea"); - liferea_dir = Path.Combine (liferea_dir, "cache"); + } + + ///////////////////////////////////////////////// + + private bool CheckForDirectory () + { + string dir = Path.Combine (PathFinder.HomeDir, ".liferea_1.2"); + + if (! Directory.Exists (dir)) + dir = Path.Combine (PathFinder.HomeDir, ".liferea"); + + if (! Directory.Exists (dir)) + return false; + + liferea_dir = Path.Combine (dir, "cache"); icon_dir = Path.Combine (liferea_dir, "favicons"); liferea_dir = Path.Combine (liferea_dir, "feeds"); + + Log.Debug ("Found Liferea directory '{0}'", liferea_dir); + + return true; } ///////////////////////////////////////////////// @@ -76,7 +93,8 @@ private void StartWorker () { - if (!Directory.Exists (liferea_dir)) { + if (! CheckForDirectory ()) { + Log.Debug ("Watching for creation of Liferea directory"); GLib.Timeout.Add (60000, new GLib.TimeoutHandler (CheckForExistence)); return; } @@ -113,10 +131,10 @@ private bool CheckForExistence () { - if (!Directory.Exists (liferea_dir)) + if (! CheckForDirectory ()) return true; - this.Start (); + ExceptionHandlingThread.Start (new ThreadStart (StartWorker)); return false; } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagle-daemon.pc new/beagle-0.2.18/beagle-daemon.pc --- old/beagle-0.2.17/beagle-daemon.pc 2007-05-08 21:08:25.000000000 +0200 +++ new/beagle-0.2.18/beagle-daemon.pc 2007-08-27 19:55:45.000000000 +0200 @@ -5,7 +5,7 @@ Name: Beagle Daemon Description: We Index Your Life -Version: 0.2.17 +Version: 0.2.18 Requires: beagle-0.0 Libs: -r:${dlldir}/BeagleDaemonLib.dll -r:${dlldir}/BeagleDaemonPlugins.dll diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagle.spec new/beagle-0.2.18/beagle.spec --- old/beagle-0.2.17/beagle.spec 2007-05-08 21:08:25.000000000 +0200 +++ new/beagle-0.2.18/beagle.spec 2007-08-27 19:55:45.000000000 +0200 @@ -1,6 +1,6 @@ Summary: The Beagle Search Infrastructure Name: beagle -Version: 0.2.17 +Version: 0.2.18 Release: 1 License: LGPL Group: Applications/Development diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/beagle-ui-0.0.pc new/beagle-0.2.18/beagle-ui-0.0.pc --- old/beagle-0.2.17/beagle-ui-0.0.pc 2007-05-08 21:08:25.000000000 +0200 +++ new/beagle-0.2.18/beagle-ui-0.0.pc 2007-08-27 19:55:45.000000000 +0200 @@ -5,6 +5,6 @@ Name: Beagle Description: We Index Your Life -Version: 0.2.17 +Version: 0.2.18 Libs: -r:${dlldir}/Beagle.dll -r:${dlldir}/UiUtil.dll diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/ChangeLog new/beagle-0.2.18/ChangeLog --- old/beagle-0.2.17/ChangeLog 2007-05-08 21:05:12.000000000 +0200 +++ new/beagle-0.2.18/ChangeLog 2007-08-27 19:47:20.000000000 +0200 @@ -1,4 +1,164 @@ ------------------------------------------------------------------------ +r3905 | joeshaw | 2007-08-27 13:43:22 -0400 (Mon, 27 Aug 2007) | 1 line +Changed paths: + M /branches/beagle-0.2.16/NEWS + M /branches/beagle-0.2.16/configure.in + +Update version to 0.2.18 and update NEWS +------------------------------------------------------------------------ +r3904 | joeshaw | 2007-08-27 13:22:59 -0400 (Mon, 27 Aug 2007) | 6 lines +Changed paths: + M /branches/beagle-0.2.16/beagled/EvolutionDataServerQueryable/CalContainer.cs + M /branches/beagle-0.2.16/beagled/EvolutionDataServerQueryable/EvolutionDataServerQueryable.cs + M /branches/beagle-0.2.16/configure.in + +Update for evolution-sharp API changes introduced in 0.13.3, patch from +JP Rosevear. Now require evolution-sharp 0.13.3. Handle +EntryPointNotFoundException in addition to DllNotFoundException when +starting up the e-d-s backend. + + +------------------------------------------------------------------------ +r3902 | joeshaw | 2007-08-27 10:57:25 -0400 (Mon, 27 Aug 2007) | 5 lines +Changed paths: + M /branches/beagle-0.2.16/BeagleClient/Client.cs + +Merge r3837 from the trunk: + +Fix bug 463803 – beagle-search fails if daemon is restarted + + +------------------------------------------------------------------------ +r3901 | joeshaw | 2007-08-27 10:56:21 -0400 (Mon, 27 Aug 2007) | 6 lines +Changed paths: + M /branches/beagle-0.2.16/Filters/FilterPdf.cs + +Merge r3825 from the trunk: + +Adds support for PDF keywords in PDF filter. Allows ":" in PDF metadata. +Fixes #463003. Patch from Joseph Benavidez. + + +------------------------------------------------------------------------ +r3900 | joeshaw | 2007-08-27 10:54:00 -0400 (Mon, 27 Aug 2007) | 6 lines +Changed paths: + M /branches/beagle-0.2.16/Util/DigikamTags.cs + +Merge r3801 from the trunk: + +Fixes #454656. Fix the sql string used to retrieve tag information from +digikam db. + + +------------------------------------------------------------------------ +r3899 | joeshaw | 2007-08-27 10:53:13 -0400 (Mon, 27 Aug 2007) | 6 lines +Changed paths: + M /branches/beagle-0.2.16/search/Tiles/WebHistory.cs + +Merge r3792 from the trunk: + +* search/Tiles/WebHistory.cs - If dc:title is null or empty show the the +host name as the title. + + +------------------------------------------------------------------------ +r3898 | joeshaw | 2007-08-27 10:48:47 -0400 (Mon, 27 Aug 2007) | 7 lines +Changed paths: + M /branches/beagle-0.2.16/Filters/FilterDocbook.cs + M /branches/beagle-0.2.16/Filters/FilterText.cs + +Merge r3740 from the trunk: + +Ignore legal.xml files in docbook filter. + +(Also fixes a bug in the text filter) + + +------------------------------------------------------------------------ +r3897 | joeshaw | 2007-08-27 10:46:50 -0400 (Mon, 27 Aug 2007) | 7 lines +Changed paths: + M /branches/beagle-0.2.16/beagled/FilterFactory.cs + +Merge r3738 from the trunk: + +Always print an error message if filtering fails, otherwise users have +no clue wwhats going on. + + + +------------------------------------------------------------------------ +r3896 | joeshaw | 2007-08-27 10:42:34 -0400 (Mon, 27 Aug 2007) | 6 lines +Changed paths: + M /branches/beagle-0.2.16/beagled/LifereaQueryable/LifereaQueryable.cs + +Merge r3718 from the trunk: + +Add support for the ~/.liferea_1.2 directory to the Liferea backend. +bgo #426573. + + +------------------------------------------------------------------------ +r3895 | joeshaw | 2007-08-27 10:41:44 -0400 (Mon, 27 Aug 2007) | 5 lines +Changed paths: + M /branches/beagle-0.2.16/beagled/beagled.in + +Merge in r3711 from the trunk: + +Fix mdb command-line arguments. Beagle part of bxc #81556 + + +------------------------------------------------------------------------ +r3894 | joeshaw | 2007-08-27 10:39:16 -0400 (Mon, 27 Aug 2007) | 17 lines +Changed paths: + M /branches/beagle-0.2.16/Filters/FilterMail.cs + M /branches/beagle-0.2.16/beagled/BuildIndex.cs + M /branches/beagle-0.2.16/beagled/ExtractContent.cs + +Merge r3857 from the trunk: + +Fix a problem where processing large number of maildir files on the file +system would cause file descriptors to run out. The glib-sharp binding +(at least up until 2.10) batches and unrefs disposed managed wrappers in +a glib timeout, which requires that a main loop be running. While +beagled has one, beagle-build-index and beagle-extract-content do not. +So work around the problem by running "while +(GLib.MainContext.Pending()) GLib.MainContext.Iteration();" after +processing a batch of files, to ensure that wrappers are collected. +This fixes bgo #466891. + +In the mail filter, log GMime initialization error messages better and +don't continuously retry to reinitialize. If it's broken, it's going to +stay broken and we don't need to flood the logs with this. + + +------------------------------------------------------------------------ +r3882 | kkubasik | 2007-08-23 23:33:20 -0400 (Thu, 23 Aug 2007) | 7 lines +Changed paths: + M /branches/beagle-0.2.16/beagled/FileSystemQueryable/DirectoryModel.cs + +backport from trunk, original comment: +Now that we provide ample warning about inotify watch availability, no +longer recrawl directories that don't have inotify watches. This fixes +the problem where Beagle aggressively recrawls the same directories over +and over when the user has insufficient inotify watches and the +screensaver is active. + +------------------------------------------------------------------------ +r3881 | kkubasik | 2007-08-23 23:28:28 -0400 (Thu, 23 Aug 2007) | 2 lines +Changed paths: + M /branches/beagle-0.2.16/Util/Inotify.cs + +Update from trunk + +------------------------------------------------------------------------ +r3714 | dbera | 2007-05-10 13:48:21 -0400 (Thu, 10 May 2007) | 2 lines +Changed paths: + M /branches/beagle-0.2.16/beagled/BuildIndex.cs + +Add the transaction patch to the branch, just in case. + +------------------------------------------------------------------------ +------------------------------------------------------------------------ r3697 | joeshaw | 2007-05-08 15:09:07 -0400 (Tue, 08 May 2007) | 1 line Changed paths: M /branches/beagle-0.2.16/configure.in diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/configure new/beagle-0.2.18/configure --- old/beagle-0.2.17/configure 2007-05-08 21:07:57.000000000 +0200 +++ new/beagle-0.2.18/configure 2007-08-27 19:48:16.000000000 +0200 @@ -2654,7 +2654,7 @@ # Define the identity of the package. PACKAGE=beagle - VERSION=0.2.17 + VERSION=0.2.18 cat >>confdefs.h <<_ACEOF @@ -2810,7 +2810,7 @@ MONO_REQUIRED=1.1.13.5 GTK_SHARP_REQUIRED=2.4.0 GMIME_SHARP_REQUIRED=2.2.0 -EVOLUTION_SHARP_REQUIRED=0.10.2 +EVOLUTION_SHARP_REQUIRED=0.13.3 GSF_SHARP_REQUIRED=0.6 GTK_REQUIRED=2.6.0 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/configure.in new/beagle-0.2.18/configure.in --- old/beagle-0.2.17/configure.in 2007-05-08 21:04:11.000000000 +0200 +++ new/beagle-0.2.18/configure.in 2007-08-27 19:45:22.000000000 +0200 @@ -4,7 +4,7 @@ AC_INIT(beagled/BeagleDaemon.cs) AC_CANONICAL_SYSTEM -AM_INIT_AUTOMAKE(beagle, 0.2.17) +AM_INIT_AUTOMAKE(beagle, 0.2.18) ######################################################################## @@ -15,7 +15,7 @@ MONO_REQUIRED=1.1.13.5 GTK_SHARP_REQUIRED=2.4.0 GMIME_SHARP_REQUIRED=2.2.0 -EVOLUTION_SHARP_REQUIRED=0.10.2 +EVOLUTION_SHARP_REQUIRED=0.13.3 GSF_SHARP_REQUIRED=0.6 GTK_REQUIRED=2.6.0 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/Filters/FilterDocbook.cs new/beagle-0.2.18/Filters/FilterDocbook.cs --- old/beagle-0.2.17/Filters/FilterDocbook.cs 2007-02-13 21:55:44.000000000 +0100 +++ new/beagle-0.2.18/Filters/FilterDocbook.cs 2007-08-27 16:49:45.000000000 +0200 @@ -85,6 +85,11 @@ override protected void DoOpen (FileInfo info) { + if (info.Name == "legal.xml") { + Error (); + return; + } + base_path = info.FullName; reader = new XmlTextReader (Stream); reader.XmlResolver = null; diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/Filters/FilterMail.cs new/beagle-0.2.18/Filters/FilterMail.cs --- old/beagle-0.2.17/Filters/FilterMail.cs 2007-02-22 18:50:49.000000000 +0100 +++ new/beagle-0.2.18/Filters/FilterMail.cs 2007-08-27 16:56:41.000000000 +0200 @@ -45,6 +45,7 @@ public class FilterMail : Beagle.Daemon.Filter, IDisposable { private static bool gmime_initialized = false; + private static bool gmime_broken = false; private GMime.Message message; private PartHandler handler; @@ -67,15 +68,24 @@ protected override void DoOpen (FileInfo info) { if (!gmime_initialized) { + gmime_initialized = true; + + // Only try initialization once; if it fails, it'll never work. try { GMime.Global.Init (); - gmime_initialized = true; - } catch { + } catch (Exception e) { + Log.Error (e, "Unable to initialize GMime"); + gmime_broken = true; Error (); return; } } + if (gmime_broken) { + Error (); + return; + } + int mail_fd = Mono.Unix.Native.Syscall.open (info.FullName, Mono.Unix.Native.OpenFlags.O_RDONLY); if (mail_fd == -1) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/Filters/FilterPdf.cs new/beagle-0.2.18/Filters/FilterPdf.cs --- old/beagle-0.2.17/Filters/FilterPdf.cs 2007-05-08 19:57:43.000000000 +0200 +++ new/beagle-0.2.18/Filters/FilterPdf.cs 2007-08-27 16:56:39.000000000 +0200 @@ -59,16 +59,20 @@ // add pdfinfo's output to pool pout = new StreamReader (pc.StandardOutput); string str = null; - string[] tokens = null; + int idx = -1; string strMetaTag = null; bool bKeyword = false; + string prop = null; + string val = null; while ((str = pout.ReadLine ()) != null) { bKeyword = false; strMetaTag = null; - tokens = str.Split (':'); - if (tokens.Length > 1) { - switch (tokens[0]) { + idx = str.IndexOf (':'); + if (idx > 0) { + prop = str.Substring (0, idx); + val = str.Substring (idx + 1); + switch (prop) { case "Title": strMetaTag = "dc:title"; break; @@ -82,6 +86,9 @@ case "Creator": strMetaTag = "dc:creator"; break; + case "Keywords": + strMetaTag = "dc:keyword"; + break; case "Producer": strMetaTag = "dc:appname"; break; @@ -89,10 +96,10 @@ if (strMetaTag != null) { if (bKeyword) AddProperty (Beagle.Property.NewUnsearched (strMetaTag, - tokens[1].Trim())); + val.Trim ())); else AddProperty (Beagle.Property.New (strMetaTag, - tokens[1].Trim())); + val.Trim ())); } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/Filters/FilterText.cs new/beagle-0.2.18/Filters/FilterText.cs --- old/beagle-0.2.17/Filters/FilterText.cs 2007-02-07 20:04:18.000000000 +0100 +++ new/beagle-0.2.18/Filters/FilterText.cs 2007-08-27 16:49:45.000000000 +0200 @@ -60,6 +60,7 @@ if (file.Length > LENGTH_CUTOFF) { Beagle.Util.Logger.Log.Debug ("{0} is too large to filter!", file.FullName); Error (); + return; } } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/NEWS new/beagle-0.2.18/NEWS --- old/beagle-0.2.17/NEWS 2007-05-08 21:08:41.000000000 +0200 +++ new/beagle-0.2.18/NEWS 2007-08-27 19:45:10.000000000 +0200 @@ -1,4 +1,47 @@ +VErsion 0.2.18 +27 August 2007 + +Notable changes: + +* Build and run against evolution-sharp 0.13.3. + +* No longer recrawl directories if we can't set up an inotify watch. + This fixes the looping bug of death when the screensaver kicks in. + +* Greatly improve indexing overhead with the beagle-build-index tool. + +* Display a warning in the log if the number of inotify watches runs + out. + +* Fix a problem in which beagle-search wouldn't work after a daemon + restart. [bgo #463803] + +* Fix a bug in which processing large numbers of maildir files could + cause beagled to run out of file descriptors. [bgo #466891] + +* Add support for the ~/.liferea_1.2 directory to the Liferea + backend. [bgo #426573] + +* Add support for PDF keywords, and allow colons in PDF metadata. + [bgo #463003] + +* Ignore legal.xml files in the Docbook filter, since they're largely + content-less and frequently duplicated. + +* Fix the SQL used to retrieve tag information from the Digikam DB. + [bgo #454656] + +* Improve error reporting throughout. + +Contributors to this release: Joe Shaw, Debajyoti Bera, Lukas Lipka, +Joseph Benavidez, JP Rosevear. + +Full set of changes: +http://svn.gnome.org/viewcvs/*checkout*/beagle/tags/BEAGLE_0_2_18/ChangeLog + +------------------------------------------------------ + Version 0.2.17 8 May 2007 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/search/beagle-search.desktop.in new/beagle-0.2.18/search/beagle-search.desktop.in --- old/beagle-0.2.17/search/beagle-search.desktop.in 2007-05-08 21:08:23.000000000 +0200 +++ new/beagle-0.2.18/search/beagle-search.desktop.in 2007-08-27 19:55:44.000000000 +0200 @@ -13,4 +13,4 @@ X-GNOME-Bugzilla-Bugzilla=GNOME X-GNOME-Bugzilla-Product=beagle X-GNOME-Bugzilla-Component=General -X-GNOME-Bugzilla-Version=0.2.17 +X-GNOME-Bugzilla-Version=0.2.18 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/search/Tiles/WebHistory.cs new/beagle-0.2.18/search/Tiles/WebHistory.cs --- old/beagle-0.2.17/search/Tiles/WebHistory.cs 2007-02-07 20:04:11.000000000 +0100 +++ new/beagle-0.2.18/search/Tiles/WebHistory.cs 2007-08-27 16:54:55.000000000 +0200 @@ -24,7 +24,12 @@ public WebHistory (Beagle.Hit hit, Beagle.Query query) : base (hit, query) { Group = TileGroup.Website; - Title = hit.GetFirstProperty ("dc:title"); + + string title = hit.GetFirstProperty ("dc:title"); + if (String.IsNullOrEmpty (title)) + title = Hit.Uri.Host; + + Title = title; Description = hit.Uri.ToString (); } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/tools/beagle-settings.desktop new/beagle-0.2.18/tools/beagle-settings.desktop --- old/beagle-0.2.17/tools/beagle-settings.desktop 2007-05-08 21:09:19.000000000 +0200 +++ new/beagle-0.2.18/tools/beagle-settings.desktop 2007-08-27 19:57:36.000000000 +0200 @@ -61,4 +61,4 @@ X-GNOME-Bugzilla-Bugzilla=GNOME X-GNOME-Bugzilla-Product=beagle X-GNOME-Bugzilla-Component=General -X-GNOME-Bugzilla-Version=0.2.17 +X-GNOME-Bugzilla-Version=0.2.18 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/tools/beagle-settings.desktop.in new/beagle-0.2.18/tools/beagle-settings.desktop.in --- old/beagle-0.2.17/tools/beagle-settings.desktop.in 2007-05-08 21:08:23.000000000 +0200 +++ new/beagle-0.2.18/tools/beagle-settings.desktop.in 2007-08-27 19:55:44.000000000 +0200 @@ -10,4 +10,4 @@ X-GNOME-Bugzilla-Bugzilla=GNOME X-GNOME-Bugzilla-Product=beagle X-GNOME-Bugzilla-Component=General -X-GNOME-Bugzilla-Version=0.2.17 +X-GNOME-Bugzilla-Version=0.2.18 diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/Util/DigikamTags.cs new/beagle-0.2.18/Util/DigikamTags.cs --- old/beagle-0.2.17/Util/DigikamTags.cs 2007-02-07 20:04:12.000000000 +0100 +++ new/beagle-0.2.18/Util/DigikamTags.cs 2007-08-27 16:55:38.000000000 +0200 @@ -65,7 +65,7 @@ private static string digikamrc = null; private const string tags_sql_string = @"SELECT images.caption, tags.name, tags.pid FROM albums, images, imagetags, tags -WHERE images.id=imagetags.imageid AND imagetags.tagid=tags.id AND +WHERE images.id=imagetags.imageid AND imagetags.tagid=tags.id AND albums.id=images.dirid AND albums.url=@AlbumsUrl AND images.name=@ImagesName"; private const string tags_parenttags_sql_string = @"SELECT t1.name, t2.name FROM tags t1, tags t2 @@ -173,6 +173,7 @@ command.CommandText = tags_sql_string; command.Parameters.Add ("@AlbumsUrl", relative_path); command.Parameters.Add ("@ImagesName", filename); + //Console.WriteLine (tags_sql_string); SqliteDataReader reader = command.ExecuteReader (); @@ -183,9 +184,11 @@ original_tags = new ArrayList (); imagedata.caption = (string) reader [0]; original_tags.Add ((string) reader [1]); + //Console.WriteLine ("Adding tag {0}", (string) reader [1]); //Console.WriteLine ("Found caption:" + imagedata.caption); } while (reader.Read ()) { + //Console.WriteLine ("Adding more tag {0}", (string) reader [1]); original_tags.Add ((string) reader [1]); } diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/beagle-0.2.17/Util/Inotify.cs new/beagle-0.2.18/Util/Inotify.cs --- old/beagle-0.2.17/Util/Inotify.cs 2007-02-07 20:04:12.000000000 +0100 +++ new/beagle-0.2.18/Util/Inotify.cs 2007-08-27 16:24:19.000000000 +0200 @@ -140,6 +140,23 @@ error_message = Mono.Unix.UnixMarshal.GetErrorDescription (errno); Logger.Log.Warn ("Could not initialize inotify: {0}", error_message); + } else { + try { + FileStream fs = new FileStream ("/proc/sys/fs/inotify/max_user_watches", FileMode.Open, FileAccess.Read); + StreamReader r = new StreamReader (fs); + + string line = r.ReadLine (); + r.Close (); + + int watches = -1; + try { + watches = Int32.Parse (line); + } catch (FormatException) { } + + if (watches > -1 && watches < 32768) { + Log.Warn ("Inotify watches may be too low ({0}) for some users! Increase it to at least 65535 by setting fs.inotify.max_user_watches in /etc/sysctl.conf", watches); + } + } catch { } } } ++++++ libbeagle-only.patch ++++++ --- /var/tmp/diff_new_pack.h20595/_old 2007-08-27 20:55:51.000000000 +0200 +++ /var/tmp/diff_new_pack.h20595/_new 2007-08-27 20:55:51.000000000 +0200 @@ -80,14 +80,14 @@ =================================================================== --- configure.in.orig +++ configure.in -@@ -12,13 +12,6 @@ AM_INIT_AUTOMAKE(beagle, 0.2.16) +@@ -12,13 +12,6 @@ AM_INIT_AUTOMAKE(beagle, 0.2.18) ### Some dependencies ### -MONO_REQUIRED=1.1.13.5 -GTK_SHARP_REQUIRED=2.4.0 -GMIME_SHARP_REQUIRED=2.2.0 --EVOLUTION_SHARP_REQUIRED=0.10.2 +-EVOLUTION_SHARP_REQUIRED=0.13.3 -GSF_SHARP_REQUIRED=0.6 -GTK_REQUIRED=2.6.0 - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de