]> git.cworth.org Git - notmuch-wiki/blob - news/release-0.13.mdwn
fix 0.13 release date
[notmuch-wiki] / news / release-0.13.mdwn
1 [[!meta date="2012-05-15"]]
2
3 Notmuch 0.13 (2012-05-15)
4 =========================
5
6 Command-Line Interface
7 ----------------------
8
9 ### Reply to sender
10
11 `notmuch reply` has gained the ability to create a reply template
12 for replying just to the sender of the message, in addition to reply
13 to all. The feature is available through the new command line option
14 `--reply-to=(all|sender)`.
15
16 ### JSON reply format
17
18 `notmuch reply` can now produce JSON output that contains the headers
19 for a reply message and full information about the original message
20 begin replied to. This allows MUAs to create replies intelligently.
21 For example, an MUA that can parse HTML might quote HTML parts.
22
23 Calling notmuch reply with `--format=json` imposes the restriction that
24 only a single message is returned by the search, as replying to
25 multiple messages does not have a well-defined behavior. The default
26 retains its current behavior for multiple message replies.
27
28 ### Tag exclusion
29
30 Tags can be automatically excluded from search results by adding them
31 to the new `search.exclude_tags` option in the Notmuch config file.
32
33 This behaviour can be overridden by explicitly including an excluded
34 tag in your query, for example:
35
36         notmuch search $your_query and tag:$excluded_tag
37
38 Existing users will probably want to run `notmuch setup` again to add
39 the new well-commented [search] section to the configuration file.
40
41 For new configurations, accepting the default setting will cause the
42 tags "deleted" and "spam" to be excluded, equivalent to running:
43
44         notmuch config set search.exclude_tags deleted spam
45
46 ### Raw show format changes
47
48 The output of show `--format=raw` has changed for multipart and
49 message parts.  Previously, the output was a mash of somewhat-parsed
50 headers and transfer-decoded bodies.  Now, such parts are reproduced
51 faithfully from the original source.  Message parts (which includes
52 part 0) output the full message, including the message headers (but
53 not the transfer headers).  Multipart parts output the part as
54 encoded in the original message, including the part's headers.  Leaf
55 parts, as before, output the part's transfer-decoded body.
56
57 ### Listing configuration items
58
59 The new `config list` command prints out all configuration items and
60 their values.
61
62 Emacs Interface
63 ---------------
64
65 ### Changes to tagging interface
66
67 The user-facing tagging functions in the Emacs interface have been
68 normalized across all notmuch modes.  The tagging functions are now
69 notmuch-search-tag in search-mode, and notmuch-show-tag in
70 show-mode.  They accept a string representing a single tag change,
71 or a list of tag changes.  See 'M-x describe-function notmuch-tag'
72 for more information.
73
74 NOTE: This breaks compatibility with old tagging functions, so user
75 may need to update in custom configurations.
76
77 ### Reply improvement using the JSON format
78
79 Emacs now uses the JSON reply format to create replies. It obeys
80 the customization variables message-citation-line-format and
81 message-citation-line-function when creating the first line of the
82 reply body, and it will quote HTML parts if no text/plain parts are
83 available.
84
85 New add-on tool: notmuch-mutt
86 -----------------------------
87
88 The new contrib/ tool `notmuch-mutt` provides Notmuch integration for
89 the Mutt mail user agent. Using it, Mutt users can perform mail
90 search, thread reconstruction, and mail tagging/untagging without
91 leaving Mutt.  notmuch-mutt, formerly distributed under the name
92 `mutt-notmuch` by Stefano Zacchiroli, will be maintained as a notmuch
93 contrib/ from now on.
94
95 Library changes
96 ---------------
97
98 The API changes detailed below break binary and source compatibility,
99 so libnotmuch has been bumped to version 3.0.0.
100
101 ### The function `notmuch_database_close` has been split into `notmuch_database_close` and `notmuch_database_destroy`
102
103 This makes it possible for long running programs to close the xapian
104 database and thus release the lock associated with it without
105 destroying the data structures obtained from it.
106
107 ### `notmuch_database_open`, `notmuch_database_create`, and `notmuch_database_get_directory` now return errors
108
109 The type signatures of these functions have changed so that the
110 functions now return a `notmuch_status_t` and take an out-argument for
111 returning the new database object or directory object.
112
113 Go bindings changes
114 -------------------
115
116 ### Go 1 compatibility
117
118 The go bindings and the `notmuch-addrlookup` utility are now
119 compatible with go 1.