Hi, I'm happy to announce the release of Beagle 0.2.7.
This version fixes the dreaded "Lock obtain timed out" bug, includes a new SVG and marks the return of the CHM filter. It introduces a compressed text cache, so that the disk space needed to generate snippets is greatly reduced, and many more bug fixes. OUR MANY URLS ------------- To download the 0.2.7 tarball or learn more, visit the Beagle wiki at: http://www.beagle-project.org The latest gossip is available at: http://www.planetbeagle.org Nat Friedman made some cool movies that demonstrate Beagle in action: http://nat.org/demos We still talk about Beagle on the dashboard-hackers mailing list: http://mail.gnome.org/mailman/listinfo/dashboard-hackers Info on Beagle's participation in Google's Summer of Code can be found here: http://beagle-project.org/Summer_Of_Code WHAT IS BEAGLE? --------------- 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, audio and video 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, Konqueror browsing history, system documentation, and many others. Beagle also indexes tags on your photos from F-Spot and Digikam. 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 Cutting. 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. DEPENDENCY HECK --------------- Beagle requires: * Mono 1.1.13.5 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: * GMime 2.2.1 * Evolution-sharp 0.10.2 or 0.11.1 * 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 http://users.avafan.com/~fredrik/beagle/wv-libole2-readonly.patch * An inotify-enabled kernel. Inotify is in the mainline Linux kernel as of 2.6.13. And other optional dependencies: http://beagle-project.org/Optional_Prerequisites CHANGES SINCE 0.2.6 ------------------- Daemon/Infrastructure: * Fix bugs in the query parser by using a regular expression-based system. (Max Wiehle, Keving Kubasik) * Compress items in the text cache, greatly reducing disk usage. (Kevin, Lukas Lipka) * Fix a bug in which the sqlite database could get cluttered with older files. (Debajyoti Bera, Joe Shaw) * Again write out the PID of the locking process, or else we cannot effectively detect dangling locks. (Joe) * If we see a lockfile with no PID, assume it's a dangling lock. (Joe) * No longer handle SIGQUIT to shut down the daemon; it's used very valuably by Mono for debugging purposes. (Joe) * Add a BEAGLE_DISABLE_XATTR environment variable to disable extended attribute support for testing purposes. (Joe) * Only print out the inotify "Maximum watch limit hit" warning once. (Joe) * Convert HTML entities when creating snippets. (Lukas, Kevin) * Patch our xdgmime installation to not crash if the data is reloaded while it is processing it. (Joe) * Fix an issue with newer Mono installations where the index helper process would become a zombie after it finished and was never cleaned up. (Joe) * Fix a bug in which properties weren't being sorted and couldn't be found. (Max, Kevin, Bera) * Work around a Mono bug so that dangling symlinks in ~/.beagle/Log are cleaned up at startup. (Joe) Backends: * Generate mail delete events using the indexable generator rather than creating many individual indexables by hand, which could flood the scheduler and slow the system down. (Joe) * Check for exceptions when calling GetChanges() on Evolution calendars and addressbooks. (Joe) Filters: * Added an SVG filter. (Alexander Macdonald) * Re-enable the CHM filter. (Miguel Cabrera) * Close the OpenOffice zip file when we're finished. (Joe) * Index additional info from ebuild files, including installation info and desktop file entries. (Pat Double) * Add duration and bitrate properties to the music filter. (Lukas) * Add a filter for Boo. (Paul Betts) * Don't throw EncodingFoundException in the HTML parser unless asked to. (Bera) * Add application/x-php as a valid mime type for the PHP filter. (Kevin) * Make sure the mime type is lower case before matching on it. (Kevin, Joe) UI: * Catch exceptions if we can't load an application's icons. (Joe, Pierre Poissinger) * Include the date in note tiles. (Lukas) * Only display the first line of a calendar item's description. (Dan Winship) * Use mailto URIs rather than invoking Evolution directly when possible. (Lukas) * Use desktop-launch to open file tiles when applicable. (Lukas) * Make the text in the details pane selectable. (Lukas) * If the calendar's description is empty, still display the item. (Lukas) * Simplify the code for the details pane significantly. (Lukas) * Scale down very large mime icons for display. (Lukas) * Enable the "Open With" menu if GTK+ 2.8 is available at build-time. (Kevin) * Force the window to get wider if the tiles get wider rather than creating a horizontal scrollbar. (Dan) Tools: * Add --enable-deletion to beagle-build-index, which removes deleted files from the index. (Bera) * Add $sharedir/gtk-doc/html and $sharedir/gnome/html to the documentation crawl rules. (Joe) * Fix a typo in the beagled manpage. (Kevin Lamontagne) * Fix bugs dealing with shell quoting in beagle-query. (Max) Translations: * Updated Brazilian Portuguese translation. (Raphael Higino) * Updated Czech translation. (Jakub Friedl) * Updated Dutch translation. (Vincent van Adrighem) * Updated Finnish translation. (Ilkka Tuohela) * Updated Galician translation. (Ignacio Casal Quinteiro) * Updated Greek translation. (Kostas Papadimas) * Updated Japanese translation. (Takeshi Aihana) * Updated Norwegian bokmål translation. (Øivind Hoel) * Updated Simplified Chinese translation. (Funda Wang) * Updated Spanish translation. (Francisco Javier F. Serrador) * Updated Swedish translation. (Daniel Nylander) * Updated Vietnamese translation. (Clytie Siddall) Everything Else: * Make the Firefox extension work with Bon Echo (2.0 Alpha). (Joe) * Check for mmap() in configure.in, to optimize xdgmime. (Joe) * Add a pkg-config file for the UiUtil.dll assembly. (Luis Medinas) * Getting Dashboard building again. (Luis) KNOWN ISSUES ------------ We still use a bit 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. Certain files can crash the underlying libraries Beagle uses to extract metadata. This has been observed in MS Word and JPG files. If you encounter such a crash, please report it to the upstream developer of those libraries (wv1 and libexif for the above, respectively). 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