X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=NEWS;h=500e7a71d1b990c338ee93ddb1cd81713579dc8c;hb=3ac72151c2e5ef9209fa5d5b0b03bf85bafb3503;hp=4152e7c9e1b8cab87317cda565d44b13105f3f7e;hpb=ad6a6edb38e428f7bbcd81b49fd2ef1e5197f8c7;p=notmuch diff --git a/NEWS b/NEWS index 4152e7c9..500e7a71 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,96 @@ -Notmuch 0.12 (2012-xx-xx) +Notmuch 0.13 (2012-xx-xx) +========================= + +Command-Line Interface +---------------------- + +Reply to sender + + "notmuch reply" has gained the ability to create a reply template + for replying just to the sender of the message, in addition to reply + to all. The feature is available through the new command line option + --reply-to=(all|sender). + +JSON reply format + + "notmuch reply" can now produce JSON output that contains the headers + for a reply message and full information about the original message + begin replied to. This allows MUAs to create replies intelligtently. + For example, an MUA that can parse HTML might quote HTML parts. + + Calling notmuch reply with --format=json imposes the restriction that + only a single message is returned by the search, as replying to + multiple messages does not have a well-defined behavior. The default + retains its current behavior for multiple message replies. + +Tag exclusion + + Tags can be automatically excluded from search results by adding them + to the new 'search.exclude_tags' option in the Notmuch config file. + + This behaviour can be overridden by explicitly including an excluded + tag in your query, for example: + + notmuch search $your_query and tag:$excluded_tag + + Existing users will probably want to run "notmuch setup" again to add + the new well-commented [search] section to the configuration file. + + For new configurations, accepting the default setting will cause the + tags "deleted" and "spam" to be excluded, equivalent to running: + + notmuch config set search.exclude_tags deleted spam + +Raw show format changes + + The output of show --format=raw has changed for multipart and + message parts. Previously, the output was a mash of somewhat-parsed + headers and transfer-decoded bodies. Now, such parts are reproduced + faithfully from the original source. Message parts (which includes + part 0) output the full message, including the message headers (but + not the transfer headers). Multipart parts output the part as + encoded in the original message, including the part's headers. Leaf + parts, as before, output the part's transfer-decoded body. + +Listing configuration items + + The new "config list" command prints out all configuration items and + their values. + +Emacs Interface +--------------- + +Reply improvement using the JSON format + + Emacs now uses the JSON reply format to create replies. It obeys + the customization variables message-citation-line-format and + message-citation-line-function when creating the first line of the + reply body, and it will quote HTML parts if no text/plain parts are + available. + +New add-on tool: notmuch-mutt +----------------------------- + +The new contrib/ tool "notmuch-mutt" provides Notmuch integration for +the Mutt mail user agent. Using it, Mutt users can perform mail +search, thread reconstruction, and mail tagging/untagging without +leaving Mutt. notmuch-mutt, formerly distributed under the name +"mutt-notmuch" by Stefano Zacchiroli, will be maintained as a notmuch +contrib/ from now on. + +Library changes +--------------- + +API changes + + The function notmuch_database_close has been split into + notmuch_database_close and notmuch_database_destroy. + + This makes it possible for long running programs to close the xapian + database and thus release the lock associated with it without + destroying the data structures obtained from it. + +Notmuch 0.12 (2012-03-20) ========================= Command-Line Interface @@ -13,12 +105,24 @@ Reply to sender Mail store folder/file ignore - A new configuration option, `new.ignore`, lets users specify a - ;-separated list of file and directory names that will not be - searched for messages by "notmuch new". + A new configuration option, `new.ignore`, lets users specify a + ;-separated list of file and directory names that will not be + searched for messages by "notmuch new". + + NOTE: *Every* file/directory that goes by one of those names will + be ignored, independent of its depth/location in the mail store. + +Unified help and manual pages + + The notmuch help command now runs man for the appropriate page. If + you install notmuch somewhere "unusual", you may need to update + MANPATH. + +Manual page for notmuch configuration options - NOTE: *Every* file/directory that goes by one of those names will - be ignored, independent of its depth/location in the mail store. + The notmuch CLI configuration file options are now documented in the + notmuch-config(1) manual page in addition to the configuration file + itself. Emacs Interface --------------- @@ -68,6 +172,44 @@ New functions optionally visiting a URI to the current message at one of a number of Mailing List Archives. +Fix MML tag quoting in replies + + The MML tag quoting fix of 0.11.1 unintentionally quoted tags + inserted in `message-setup-hook'. Quoting is now limited to the + cited message. + +Show view archiving key binding changes + + The show view archiving key bindings 'a' and 'x' now remove the + "inbox" tag from the current message only (instead of thread), and + move to the next message. At the last message, 'a' proceeds to the + next thread in search results, and 'x' returns to search + results. The thread archiving functions are now available in 'A' and + 'X'. + +Support text/calendar MIME type + + The text/calendar MIME type is now supported in addition to + text/x-vcalendar. + +Generate inline patch fake attachment file names from message subject + + Use the message subject to generate file names for the inline patch + fake attachments. The names are now similar to the ones generated by + 'git format-patch' instead of just "inline patch". See "Notmuch Show + Insert Text/Plain Hook" in the notmuch customize interface. + +Enable `notmuch-search-line-faces' by default + + Make the `notmuch-search-line-faces' functionality more discoverable + for new users by showing "unread" messages bold and "flagged" + messages blue by default in the search view. + +Printing Support + + notmuch-show mode now has simple printing support, bound to '#' by + default. You can customize the variable notmuch-print-mechanism. + Library changes --------------- @@ -95,8 +237,10 @@ Build fixes Compatibility with GMime 2.6 It is now possible to build notmuch against both GMime 2.4 and 2.6. - However, a bug in current GMime 2.6 causes notmuch not to report - signatures where the signer key is unavailable (GNOME bug 668085). + However, a bug in GMime 2.6 before 2.6.5 causes notmuch not to + report signatures where the signer key is unavailable (GNOME bug + 668085). For compatibility with GMime 2.4's tolerance of "From " + headers we require GMime 2.6 >= 2.6.7. Notmuch 0.11.1 (2012-02-03) =========================== @@ -320,10 +464,10 @@ Search avoids opening and parsing message files improve search speed by as much as 10X, but taking advantage of this requires a database rebuild: - notmuch dump > notmuch.dump - # Backup, then remove notmuch database ($MAIL/.notmuch) - notmuch new - notmuch restore notmuch.dump + notmuch dump > notmuch.dump + # Backup, then remove notmuch database ($MAIL/.notmuch) + notmuch new + notmuch restore notmuch.dump New collection of add-on tools ------------------------------ @@ -487,13 +631,13 @@ Folder-based searching directories in which mail files are stored (within the mail storage). The syntax is as follows: - folder: + folder: For example, one might use things such as: - folder:spam - folder:2011-* - folder:work/todo + folder:spam + folder:2011-* + folder:work/todo to match any path containing a directory "spam", "work/todo", or containing a directory starting with "2011-", respectively. @@ -508,10 +652,10 @@ Folder-based searching this feature for all mail, the entire notmuch index will need to be rebuilt as follows: - notmuch dump > notmuch.dump - # Backup, then remove notmuch database ($MAIL/.notmuch) - notmuch new - notmuch restore notmuch.dump + notmuch dump > notmuch.dump + # Backup, then remove notmuch database ($MAIL/.notmuch) + notmuch new + notmuch restore notmuch.dump Support for PGP/MIME @@ -643,7 +787,7 @@ Automatic detection and hiding of original message in top-posted message When a message contains a line looking something like: - ----- Original Message ----- + ----- Original Message ----- emacs hides this and all subsequent lines as an "original message", (allowing the user to click or press enter on the "original message" @@ -658,8 +802,8 @@ New hooks for running code when tags are modified tool. To facilitate this, two new hooks are added which can be modified in the following settings of the notmuch customize group: - Notmuch Before Tag Hook - Notmuch After Tag Hook + Notmuch Before Tag Hook + Notmuch After Tag Hook New optional support for hiding some multipart/alternative parts @@ -667,7 +811,7 @@ New optional support for hiding some multipart/alternative parts multipart/alternative group (such as a text/plain part as well as a text/html part). Users can configure the setting: - Notmuch Show All Multipart/Alternative Parts + Notmuch Show All Multipart/Alternative Parts to "off" in the notmuch customize group to have the interface automatically hide some part alternatives (such as text/html @@ -714,13 +858,13 @@ Ruby bindings are now much more complete - Message().__cmp__() and __hash__() These allow, for example: - if msg1 == msg2: ... + if msg1 == msg2: ... As well as set arithmetic on Messages(): - s1, s2= set(msgs1), set(msgs2) - s1.union(s2) - s2 -= s1 + s1, s2= set(msgs1), set(msgs2) + s1.union(s2) + s2 -= s1 Removed: - len(Messages()) as it exhausted the iterator. @@ -736,10 +880,10 @@ Added support for building in a directory other than the source directory This can be used with the widely-supported idiom of simply running the configure script from some other directory: - mkdir build - cd build - ../configure - make + mkdir build + cd build + ../configure + make Fix to save configure options for future, implicit runs of configure @@ -789,11 +933,11 @@ Fixed spurious search results from "overlapped" indexing of addresses This fixed a bug where a search for: - to:user@elsewhere.com + to:user@elsewhere.com would incorrectly match a message sent: - To: user@example,com, someone@elsewhere.com + To: user@example,com, someone@elsewhere.com Fix --output=json when search has no results @@ -855,13 +999,13 @@ Maildir-flag synchronization tags in the notmuch database. The following flag/tag mappings are supported: - Flag <-> Tag - ---- ----- - 'D' draft - 'F' flagged - 'P' passed - 'R' replied - 'S' unread (added when 'S' flag is not present) + Flag <-> Tag + ---- ----- + 'D' draft + 'F' flagged + 'P' passed + 'R' replied + 'S' unread (added when 'S' flag is not present) The synchronization occurs in both directions, (for example, adding the 'S' flag to a file will cause the "unread" tag to be added, and @@ -874,7 +1018,7 @@ Maildir-flag synchronization new maildir.synchronize_flags option in the configuration file. For example: - notmuch config set maildir.synchronize_flags false + notmuch config set maildir.synchronize_flags false Users upgrading may also want to run "notmuch setup" once (just accept the existing configuration) to get a new, nicely-commented @@ -883,8 +1027,8 @@ Maildir-flag synchronization For users of the notmuch library, the new synchronization functionality is available with the following two new functions: - notmuch_message_maildir_flags_to_tags - notmuch_message_tags_to_maildir_flags + notmuch_message_maildir_flags_to_tags + notmuch_message_tags_to_maildir_flags It is anticipated that future improvements to this support will allow for safe synchronization of the 'T' flag with the "deleted" @@ -902,7 +1046,7 @@ Support for querying multiple filenames for a single message With this release, library users can access all filenames for a message with the new function: - notmuch_message_get_filenames + notmuch_message_get_filenames Together with notmuch_filenames_valid, notmuch_filenames_get, and notmuch_filenames_move_to_next it is now possible to iterate over @@ -921,7 +1065,7 @@ New "notmuch show --format=raw" for getting at original email contents do this, simply set the notmuch-command variable in emacs to the name of a script containing: - ssh user@host notmuch "$@" + ssh user@host notmuch "$@" If the ssh client has enabled connection sharing (ControlMaster option in OpenSSH), the emacs interface can be quite responsive this @@ -933,7 +1077,7 @@ Fix "notmuch search" to print nothing when nothing matches The 0.4 release had a bug in which: - notmuch search + notmuch search would produce a single blank line of output, (where previous versions would produce no output. This fix also causes a change in @@ -989,9 +1133,9 @@ notmuch search --output=(summary|threads|messages|tags|files) expected that this new option will be very useful in shell scripts. For example: - for file in $(notmuch search --output=files ); do - "$file" - done + for file in $(notmuch search --output=files ); do + "$file" + done notmuch show --format=mbox @@ -1094,13 +1238,13 @@ Arrange for libnotmuch to be found automatically after make install errors of the form "libnotmuch.so could not be found" immediately after installing. This support takes two forms: - 1. If the library is installed to a system directory, - (configured in /etc/ld.so.conf), then "make install" will - automatically run ldconfig. + 1. If the library is installed to a system directory, + (configured in /etc/ld.so.conf), then "make install" will + automatically run ldconfig. - 2. If the library is installed to a non-system directory, the - build system adds a DR_RUNPATH entry to the final binary - pointing to the directory to which the library is installed. + 2. If the library is installed to a non-system directory, the + build system adds a DR_RUNPATH entry to the final binary + pointing to the directory to which the library is installed. When this support works, the user should be able to run notmuch immediately after "make install", without any errors trying to find @@ -1144,7 +1288,7 @@ Fix potential corruption of database when "notmuch new " is interrupted. in a corrupt database. The corruption would manifest itself by a persistent error of the form: - document ID of 1234 has no thread ID + document ID of 1234 has no thread ID The message-adding code has been carefully audited and reworked to avoid this sort of corruption regardless of when it is interrupted. @@ -1304,15 +1448,15 @@ An entirely new initial view for notmuch, (friendly yet powerful) away. Note: For users that liked the original mode of "emacs -f notmuch" - immediately displaying a particular search result, we - recommend instead running something like: + immediately displaying a particular search result, we + recommend instead running something like: - emacs --eval '(notmuch search "tag:inbox" t)' + emacs --eval '(notmuch search "tag:inbox" t)' - The "t" means to sort the messages in an "oldest first" order, - (as notmuch would do previously by default). You can also - leave that off to have your search results in "newest first" - order. + The "t" means to sort the messages in an "oldest first" order, + (as notmuch would do previously by default). You can also + leave that off to have your search results in "newest first" + order. Full-featured "customize" support for configuring notmuch @@ -1343,7 +1487,7 @@ Support for doing tab-completion of email addresses One such program (implemented in python with the python bindings to notmuch) is available via: - git clone http://jkr.acm.jhu.edu/git/notmuch_addresses.git + git clone http://jkr.acm.jhu.edu/git/notmuch_addresses.git Install that program as notmuch-addresses on your PATH, and then hitting TAB on a partial email address or name within the To: or Cc: @@ -1534,11 +1678,11 @@ Fix headers to be properly decoded in "notmuch reply" Previously, the user might see: - Subject: Re: =?iso-8859-2?q?Rozlu=E8ka?= + Subject: Re: =?iso-8859-2?q?Rozlu=E8ka?= rather than: - Subject: Re: Rozlučka + Subject: Re: Rozlučka The former text is properly encoded to be RFC-compliant SMTP, will be sent correctly, and will be properly decoded by the @@ -1583,12 +1727,12 @@ Add support to configure for many standard options. We include actual support for: - --includedir --mandir --sysconfdir + --includedir --mandir --sysconfdir And accept and silently ignore several more: - --build --infodir --libexecdir --localstatedir - --disable-maintainer-mode --disable-dependency-tracking + --build --infodir --libexecdir --localstatedir + --disable-maintainer-mode --disable-dependency-tracking Install emacs client in "make install" rather than requiring a separate "make install-emacs". @@ -1615,3 +1759,13 @@ a performance bug that made notmuch very slow when modifying tags. This would cause distracting pauses when reading mail while notmuch would wait for Xapian when removing the "inbox" and "unread" tags from messages in a thread. + + +