I'm pleased to announce the release of Beagle 0.0.11. Our focus continues to be on fixing bugs. This is the most stable version of Beagle yet, and should be suitable for everyday use.
Please note that Beagle 0.0.11 uses inotify 0.23 when available. Earlier versions of inotify will fill you with a deep and abiding sadness. For the best possible experience, you should run Beagle on Mono 1.1.7 or better. OUR MANY URLS ------------- To download the 0.0.11 tarball or learn more, visit the Beagle wiki at: http://www.beagle-project.org Nat Friedman made some cool movies that demonstrate Beagle in action: http://nat.org/demos The latest gossip is available at: http://www.planetbeagle.org We still talk about Beagle on the dashboard-hackers mailing list: http://mail.gnome.org/mailman/listinfo/dashboard-hackers Making butter is easy: http://www.cookingforengineers.com/article.php?id=113 WHAT IS BEAGLE? --------------- Beagle is a tool for indexing and searching your data. It is in an early stage of development and should be considered experimental. 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 uses the Lucene indexing system from the prodigious Doug Cutting. Best is a graphical tool for searching the index that the daemon creates. Best doesn't query the index directly; it passes the search terms to the daemon and the daemon sends any matches back to Best. Best 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. DEPENDENCY HECK --------------- Beagle has many dependencies, and thus can be difficult to compile. It requires: * The full Mono stack (We all use 1.1.x, and you probably should too, but 1.0.6 will also work. 1.0.5 and earlier will NOT work.) * gtk-sharp 1.0.8 (1.9.x will NOT work) * Gecko-sharp 0.6 * Gmime 2.1.13 * Libexif 0.5 or better For the best possible Beagle experience, you should also have: * Mono 1.1.7 or better * Evolution-sharp 0.6 * wv 1.0.3 * An inotify 0.23-enabled kernel CHANGES SINCE 0.0.10 -------------------- Daemon/Infrastructure: * Added a shiny new configuration system (Daniel Drake) * Collect disk I/O statistics (Robert Love) * Backported TermEnum optimizations from SVN Lucene (Lukas Lipka) * Clean up the startup/shutdown quite a bit so that the daemon is ready to listen to requests almost immediately, so that early shutdowns are completed in a timely fashion, and to remove hacks from calling the remote shutdown method (Joe Shaw) * Tons of portability fixes for FreeBSD (Jean-Yves Lefort, Joe, Daniel Drake) * Fix crashes related to early disconnects from the server (Joe) * Support extended attributes through libattr if not provided by libc (Daniel) * Inotify subsciption system (Daniel) * Properly handle exceptions when we walk a directory with strange permissions (Jon Trowbridge) * If we are on a laptop running from battery power, don't speed up indexing when the system is idle (Jon) * Sqlite locking fixes (Jon) * Tons of query fixes (Jon) * NameIndex optimizations (Jon) Backends: * Support additional date formats in the vcard Rev field and catch exceptions on unknown ones (Joe) * Index flags from mbox mail (Joe) * Camel summary fixes (Joe) * Assorted property fixes (Jon) Filters: * CHM Filter (Miguel Cabrera) * Matlab filter (Damodharan R) * Scilab filter (Damodharan R) UI/Tools: * beagle-config utility (Daniel) * Better handling of unchanged hits in Best (Lukas) * IM Log Viewer clean-ups (Lukas) * Present the Best window instead of just showing it; this should fix problems where the window pops up behind other windows (Joe) * Fix a crasher in Best that amazingly only one person ever saw but everyone should have seen (Joe) Web Services: * Added new web-services based support for networked beagleds (KN Vijay) * Added support for exporting multiple folders for public webservice access (Vijay) * Fixes to filtering/translating logic for external access to web/web-service interface (Vijay) * Set source for network hits to Network (Vijay) * Added snippet support (Vijay) Everything Else: * Add library mappings for certain GNOME libraries so that devel packages aren't required (Brandon Hale) * Updated British English translation (Christopher Orr) * Added Bulgarian translation (Rostislav Raykov) * Updated Canadian English translation (Adam Weinberger) * Updated Dutch translation (Wouter Bolsterlee) * Added French translation (Christophe Merlet) * All the stuff I forgot (All of the people I forgot) KNOWN ISSUES ------------ It doesn't take that much ingenuity to confuse the file system backend. In particular, the right thing doesn't always happen if a file's name changes very rapidly. (i.e. "mv foo bar; mv bar baz; mv baz foo") The amount of memory consumed by the beagle daemon tends to grows over time. All of the major leaks have been fixed, but it might need to be manually killed and restarted after running for long periods of time. Due to a bug in mono, the beagle daemon will occasionally lock up when starting the helper process. As far as we can tell, this is pretty rare and only happens on SMP systems. There are a few other relatively rare deadlocks that also seem to be mono bugs. Occasionally beagled will deadlock on start-up. Sometimes a query will throw an exception and cause the beagled to deadlock until the querying process is killed. These are hard to trigger, but have been observed on non-SMP systems. On non-inotify systems, sometimes beagle will get confused and repeatedly re-index the same directory. 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. _______________________________________________ Dashboard-hackers mailing list Dashboard-hackers@gnome.org http://mail.gnome.org/mailman/listinfo/dashboard-hackers