1 Notmuch 0.5 (2010-11-11)
2 ========================
5 Maildir-flag synchronization
7 Notmuch now knows how to synchronize flags in maildir filenames with
8 tags in the notmuch database. The following flag/tag mappings are
17 'S' unread (added when 'S' flag is not present)
19 The synchronization occurs in both directions, (for example, adding
20 the 'S' flag to a file will cause the "unread" tag to be added, and
21 adding the "replied" tag to a message will cause the file to be
22 renamed with an 'R' flag).
24 This synchronization is enabled by default for users of the
25 command-line interface, (though only files in directories named
26 "cur" or "new" will be renamed). It can be disabled by setting the
27 new maildir.synchronize_flags option in the configuration file. For
30 notmuch config set maildir.synchronize_flags false
32 Users upgrading may also want to run "notmuch setup" once (just
33 accept the existing configuration) to get a new, nicely-commented
34 [maildir] section added to the configuration file.
36 For users of the notmuch library, the new synchronization
37 functionality is available with the following two new functions:
39 notmuch_message_maildir_flags_to_tags
40 notmuch_message_tags_to_maildir_flags
42 It is anticipated that future improvements to this support will
43 allow for safe synchronization of the 'T' flag with the "deleted"
44 tag, as well as support for custom flag/tag mappings.
48 Support for querying multiple filenames for a single message
50 It is common for the mailstore to contain multiple files with the
51 same message ID. Previously, notmuch would always hide these
52 duplicate files, (returning a single, arbitrary filename with
53 notmuch_message_get_filename).
55 With this release, library users can access all filenames for a
56 message with the new function:
58 notmuch_message_get_filenames
60 Together with notmuch_filenames_valid, notmuch_filenames_get, and
61 notmuch_filenames_move_to_next it is now possible to iterate over
62 all available filenames for a given message.
64 New command-line features
65 -------------------------
66 New "notmuch show --format=raw" for getting at original email contents
68 This new feature allows for a fully-functional email client to be
69 built on top of the notmuch command-line without needing any direct
70 access to the mail store itself.
72 For example, it's now possible to run "emacs -f notmuch" on a local
73 machine with only ssh access to the mail store/notmuch database. To
74 do this, simply set the notmuch-command variable in emacs to the
75 name of a script containing:
77 ssh user@host notmuch "$@"
79 If the ssh client has enabled connection sharing (ControlMaster
80 option in OpenSSH), the emacs interface can be quite responsive this
85 Fix "notmuch search" to print nothing when nothing matches
87 The 0.4 release had a bug in which:
89 notmuch search <expression-with-no-matches>
91 would produce a single blank line of output, (where previous
92 versions would produce no output. This fix also causes a change in
93 the --format=json output, (which would previously produce "[]" and
94 now produces nothing).
96 Emacs interface improvements
97 ----------------------------
98 Fix to allow pipe ('|') command to work when using notmuch over ssh
100 Fix count of lines in hidden signatures.
102 Omit repeated subject lines in (collapsed) thread display.
104 Display current thread subject in a header line.
106 Provide a "c i" binding to copy a thread ID from the search view.
108 Allow for notmuch-fcc-dirs to have a value of nil.
110 Also, the more complex form of notmuch-fcc-dirs now has a slightly
111 different format. It no longer has a special first-element, fallback
112 string. Instead it's now a list of cons cells where the car of each
113 cell is a regular expression to be matched against the sender
114 address, and the cdr is the name of a folder to use for an FCC. So
115 the old fallback behavior can be achieved by including a final cell
116 of (".*" . "default-fcc-folder").
118 Vim interface improvements
119 --------------------------
120 Felipe Contreras provided a number of updates for the vim interface.
122 These include optimizations, support for newer versions of vim, fixed
123 support for sending mail on modern systems, new commands, and
128 Added initial ruby bindings in bindings/ruby