[[!meta date="2011-10-11"]] Notmuch 0.9 (2011-10-01) ======================== New, general features --------------------- Correct handling of interruptions during "notmuch new" "notmuch new" now operates as a series of small, self-consistent transactions, so it can correctly resume after an interruption or crash. Previously, interruption could lose existing tags, fail to detect messages on resume, or leave the database in a state temporarily or permanently inconsistent with the mail store. Library changes --------------- New functions notmuch\_database\_begin\_atomic and notmuch\_database\_end\_atomic allow multiple database operations to be performed atomically. notmuch\_database\_find\_message\_by\_filename does exactly what it says. API changes notmuch\_database\_find\_message (and n\_d\_f\_m\_by\_filename) now return a status indicator and uses an output parameter for the message. This change required changing the SONAME of libnotmuch to libnotmuch.so.2 Python bindings changes ----------------------- - Re-encode python unicode objects to utf-8 before passing back to libnotmuch. - Support Database().begin\_atomic()/end\_atomic() - Support Database().find\_message\_by\_filename() NB! This needs a db opened in READ-WRITE mode currently, or it will crash the python process. The is a limitation (=bug) of the underlying libnotmuch. - Fixes where we would not throw NotmuchErrors when we should (Justus Winter) - Update for n\_d\_find\_message* API changes (see above). Ruby bindings changes --------------------- - Wrap new library functions notmuch\_database\_{begin,end}\_atomic. - Add new exception Notmuch::UnbalancedAtomicError. - Rename destroy to destroy! according to Ruby naming conventions. - Update for n\_d\_find\_message* API changes (see above). Emacs improvements ------------------ * Add gpg callback to crypto sigstatus buttons to retrieve/refresh signing key. * Add notmuch-show-refresh-view function (and corresponding binding) to refresh the view of a notmuch-show buffer. Reply formatting cleanup ------------------------ "notmuch reply" no longer includes notification that non-leafnode MIME parts are being suppressed.