ANNOUNCE: Beagle 0.2.4


I'm pleased to announce the release of Beagle 0.2.4.

This release is primarily a bug fix release.  It fixes a number of
irritating bugs, including some exceptions while indexing, memory
usage explosion while using deskbar-applet, plain text files being
recognized as application/octet-stream, and various UI crashes.

This release also features a number of optimizations:.  Indices have
been added to the sqlite databases, so beagle-build-index is now
substantially faster as are files in which we can't set extended
attributes.  We now also limit the amount of data we pull from some
filters, so extremely large files now index more quickly.

Speaking of filters, there are several new filters in this release:
GIF, XSLT, RPM, and Gentoo Ebuild files are all now indexed.


To download the 0.2.4 tarball or learn more, visit the Beagle wiki at:

The latest gossip is available at:

Nat Friedman made some cool movies that demonstrate Beagle in action:

We still talk about Beagle on the dashboard-hackers mailing list:

The Coptic language was a descendant of the Egyptian hieroglyphic
languages, but used a modified Greek alphabet:

Beagle is a tool for indexing and searching your data.  Beagle is improving
rapidly on many fronts, and should work well enough for everyday use.
The Beagle daemon transparently monitors your data and updates the index
to reflect any changes.  On an inotify-enabled system, these updates happen
more-or-less in real time.  So for example,
* Files are immediately indexed when they are created, are re-indexed
  when they are modified, and are dropped from the index upon deletion.
* E-mails are indexed upon arrival.
* IM conversations are indexed as you chat, a line at a time.

Beagle supports many different file formats including OpenOffice
documents, Microsoft Word documents, PDFs, HTML files, and many image
and audio formats.  Beagle can extract information from your file
system, Evolution and KMail mailboxes, Evolution calendars and
addressbooks, Gaim and Kopete instant messenger conversations, several
RSS aggregators, Tomboy notes, system documentation, and many others.

Beagle also provides Firefox and Epiphany extensions that index web
pages in real-time as the user visits them.

Beagle uses the Lucene indexing system from the prodigious Doug

Beagle includes a GTK-based graphical tool for searching the index
that the daemon creates.  This application doesn't query the index
directly; it passes the search terms to the daemon and the daemon
sends any matches back.  The user interface then renders the results
and allows you to perform useful actions on the matching objects.

Indexing your data requires a fair amount of computing power, but the Beagle
daemon tries to be as unobtrusive as possible.  It contains a scheduler that
works to prioritize tasks and control CPU usage, based on whether or not
you are actively using your workstation.


Beagle requires:
* Mono 1.1.10 or better, along with the full Mono stack
* gtk-sharp 2.3.90 or better
* GMime 2.1.19
* Libexif 0.5.7 or better
* shared-mime-info

For the best possible Beagle experience, you should also have:
* Mono
* GMime 2.2.1
* Evolution-sharp 0.10.2
* libgsf 1.12.1 and gsf-sharp 0.6
* Either wv 1.2.0, or a *patched* wv 1.0.3 --- the patch is available from
* An inotify-enabled kernel.  Inotify is in the mainline Linux
  kernel as of 2.6.13.

And other optional dependencies:


* Use POSIX calls to create Lucene lockfiles, to work around the lock
  obtail timeout bug.  (D Bera)
* Check the first 256 bytes of application/octet-stream to make sure
  it's not actually text/plain.  (Bera)
* Extract a maximum for 40,000 words from filters.  (Bera)
* Allow keyword queries in non-property queries, and make most
  keywords throughout the backends and filters unsearched.  (Bera)
* Fix the thread local storage patch, to fix exceptions and memory
  explosions.  (Joe)
* Add indices to the fallback sqlite databases, dramatically speeding
  up creation and searching.  (Pat Double)
* Do a binary search when searching properties in a hit.  (Bera)
* Print out the Mono version at daemon startup.  (Joe)

* Work around pipe URIs in Liferea backend.  (Bera)
* Don't index .system folders in Gaim directories.  (Lukas Lipka)
* Get the Google backend working again, but disable it by default.

* New GIF filter.  (Alexander Macdonald, Joe)
* New XSLT filter.  (Alexander)
* New RPM filter.  (Bera)
* New Ebuild filter.  (Pat)
* Make the new image filters use FilterImage.  (Lukas)
* Fix parsing of Gaim 2.0 logs.  (Lukas, Zafar)
* Fix the external filter to look in $sysconfdir/beagle, rather than
  $sysconfdir.  (Joe)
* Fixed up the HTML and PDF filters to not extract more than 40,000
  words.  (Bera)
* If an error is set when pulling text from filters, stop trying to
  pull.  (Joe)
* Fix an exception when trying to read from an F-Spot database we
  failed to open.  (Joe)

* Fix an exception when clicking the forward and back buttons.  (Dan
* Fix a crash if we got an empty MIME type.  (Dan)
* Fix crashes when drawing the F-Spot emblem on image tiles.  (Dan,
* Make the folder tile look more like the file tile.  (Dan)
* Check whether we can thumbnail an item, so that we don't fill up the
  failed thumbnail cache.  (Dan)
* Remove some padding that is no longer needed and looks bad in some
  themes.  (Dan)
* Fix up a few localization issues.  (Dan)
* Fix up some timestamp bugs, especially with files.  (Dan)
* Don't use the MailMessage tile for messages not parsed through
  gmime.  (Lukas)
* Fix the awkwardly positioned date label in the MailMessage's details
  pane.  (Lukas)
* Close the query when we open the Quick Tips page, to prevent the
  page from disappearing.  (Lukas)

* Fix the scripts to allow being run uninstalled from the source
  directory, but only from the system directories once installed, in a
  safe manner.  (Joe)
* GNOME HIG fixes for beagle-settings.  (Dennis Cranston)
* Add a --list-filters option to beagle-info.  (Bera, Joe)
* Fix a typo in the crawl-applications rule.  (Lukas)
* Add /usr/local/share/doc to the crawl-documentations rule.  (Lukas)
* Allow bludgeon to be disabled at configure time.  (Kevin Kubasik)
* Install the beagle-extract-content tool.  (Joe)
* Use cron.daily for beagle-crawl-system, rather than cron.d.  (Joe)

* Add a beagle_util_daemon_is_running() to libbeagle.  (Lukas)

Everything Else:
* Check for a newer version of Epiphany.  (Kyle Ambroff, Christian
* Move some more dependencies only required when building the GUI.
* Allow beagle to be built without the X screensaver extension.
  (Marijn, Lipka)

* Added Georgian translation.  (Vladimer Sichinava)
* Added Punjabi translation.  (Amanpreet Singh Alam)
* Updated Dutch translation.  (Vincent van Adrighem)
* Updated Italian translation.  (Luca Ferretti)
* Updated Japanese translation.  (Takeshi AIHANA)
* Updated Lithuanian translation.  (Žygimantas Beručka)
* Updated Spanish translation.  (Francisco Javier F. Serrador)
* Updated Vietnamese translation.  (Clytie Siddall)


Yes, we know we use too much memory.  We are working on it.

Certain extremely large documents can temporarily degrade your
system's performance while they are being indexed.

The file system is now much more robust than ever before.  However, there
are still race conditions that can occur with certain combinations of
file system operations.  In some cases it might be necessary to stop and
restart the daemon.

The CHM filter has been disabled because the HTML filter it is based
upon has changed, and it has not been updated.

The web services architecture has been deprecated and is no longer
built.  It has some design issues and is currently unmaintained.

At this point in development, we cannot commit to stable APIs or file formats.
You will almost certainly need to delete your indexes and start again at some
point in the future.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]