1 Return-Path: <cworth@cworth.org>
\r
2 X-Original-To: notmuch@notmuchmail.org
\r
3 Delivered-To: notmuch@notmuchmail.org
\r
4 Received: from localhost (localhost [127.0.0.1])
\r
5 by olra.theworths.org (Postfix) with ESMTP id 13AF04196F2
\r
6 for <notmuch@notmuchmail.org>; Mon, 1 Nov 2010 23:33:23 -0700 (PDT)
\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org
\r
11 X-Spam-Status: No, score=-2.89 tagged_above=-999 required=5
\r
12 tests=[ALL_TRUSTED=-1, BAYES_00=-1.9, T_MIME_NO_TEXT=0.01]
\r
14 Received: from olra.theworths.org ([127.0.0.1])
\r
15 by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)
\r
16 with ESMTP id 9i-4TVreLOzz for <notmuch@notmuchmail.org>;
\r
17 Mon, 1 Nov 2010 23:33:12 -0700 (PDT)
\r
18 Received: from yoom.home.cworth.org (localhost [127.0.0.1])
\r
19 by olra.theworths.org (Postfix) with ESMTP id 06EE84196F0
\r
20 for <notmuch@notmuchmail.org>; Mon, 1 Nov 2010 23:33:12 -0700 (PDT)
\r
21 Received: by yoom.home.cworth.org (Postfix, from userid 1000)
\r
22 id A4461254007; Mon, 1 Nov 2010 23:33:11 -0700 (PDT)
\r
23 From: Carl Worth <cworth@cworth.org>
\r
24 To: notmuch@notmuchmail.org
\r
25 Subject: notmuch release 0.4 now available
\r
26 User-Agent: Notmuch/0.4 (http://notmuchmail.org) Emacs/23.2.1
\r
28 Date: Mon, 01 Nov 2010 23:33:04 -0700
\r
29 Message-ID: <87pquogrq7.fsf@yoom.home.cworth.org>
\r
31 Content-Type: multipart/signed; boundary="=-=-=";
\r
32 micalg=pgp-sha1; protocol="application/pgp-signature"
\r
33 X-BeenThere: notmuch@notmuchmail.org
\r
34 X-Mailman-Version: 2.1.13
\r
36 List-Id: "Use and development of the notmuch mail system."
\r
37 <notmuch.notmuchmail.org>
\r
38 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,
\r
39 <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>
\r
40 List-Archive: <http://notmuchmail.org/pipermail/notmuch>
\r
41 List-Post: <mailto:notmuch@notmuchmail.org>
\r
42 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>
\r
43 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,
\r
44 <mailto:notmuch-request@notmuchmail.org?subject=subscribe>
\r
45 X-List-Received-Date: Tue, 02 Nov 2010 06:33:23 -0000
\r
48 Content-Transfer-Encoding: quoted-printable
\r
50 After a (regrettable) 6-month hiatus, here is a new release of notmuch.
\r
52 I have not yet completed the merging of all interesting, outstanding
\r
53 patches, (nor even all the obvious ones), but I felt it was important to
\r
54 start having releases happen again.
\r
56 It may sound foolhardy, but I really would like to have releases happen
\r
57 as often as once per week. My plan is to start each week by simply
\r
58 looking to see if new code has landed, and if so, push it out in a new
\r
61 Let's see how well that works.
\r
63 In the meantime, enjoy this release which provides some important new
\r
64 command-line functionality, (notmuch search --output, notmuch show
\r
65 =2D-format=3Dmbox), lots of emacs interfaces (all sent messages now saved to
\r
66 mail store by default), and one fairly critical bug fix (avoid a
\r
67 possibility for a corrupt database if "notmuch new" is interrupted).
\r
69 There's a lot more beyond that as well. See below for details.
\r
74 carl.d.worth@intel.com
\r
76 Where to obtain notmuch 0.4
\r
77 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
\r
79 http://notmuchmail.org/releases/notmuch-0.4.tar.gz
\r
81 Which can be verified with:
\r
83 http://notmuchmail.org/releases/notmuch-0.4.tar.gz.sha1
\r
84 d40cb07adab0d595c64e9b73f1fd306cc9dff106 notmuch-0.4.tar.gz
\r
86 http://notmuchmail.org/releases/notmuch-0.4.tar.gz.sha1.asc
\r
87 (signed by Carl Worth)
\r
89 What's new in notmuch 0.4
\r
90 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
\r
91 New command-line features
\r
92 =2D------------------------
\r
93 notmuch search --output=3D(summary|threads|messages|tags|files)
\r
95 This new option allows for particular items to be returned from
\r
96 notmuch searches. The "summary" option is the default and behaves
\r
97 just as "notmuch search" has historically behaved.
\r
99 The new option values allow for thread IDs, message IDs, lists of
\r
100 tags, and lists of filenames to be returned from searches. It is
\r
101 expected that this new option will be very useful in shell
\r
102 scripts. For example:
\r
104 for file in $(notmuch search --output=3Dfiles <search-terms>); do
\r
105 <operations-on> "$file"
\r
108 notmuch show --format=3Dmbox <search-specification>
\r
110 This new option allows for the messages matching a search
\r
111 specification to be presented as an mbox. Specifically the "mboxrd"
\r
112 format is used which allows for reversible quoting of lines
\r
113 beginning with "From ". A reader should remove a single '>' from the
\r
114 beginning of all lines beginning with one or more '>' characters
\r
115 followed by the 5 characters "From ".
\r
117 notmuch config [get|set] <section>.<item> [value ...]
\r
119 The new top-level "config" command allows for any value in the
\r
120 notmuch configuration file to be queried or set to a new value. Both
\r
121 single-valued and multi-valued items are supported, as our any
\r
122 custom items stored in the configuration file.
\r
124 Avoid setting Bcc header in "notmuch reply"
\r
126 We decided that this was a bit heavy-handed as the actual mail
\r
127 user-agent should be responsible for setting any Bcc option. Also,
\r
128 see below for the notmuch/emacs user-agent now setting an Fcc by
\r
129 default rather than Bcc.
\r
131 New library features
\r
132 =2D-------------------
\r
133 Add notmuch_query_get_query_string and notmuch_query_get_sort
\r
135 These are simply functions for querying properties of a
\r
136 notmuch_query_t object.
\r
139 =2D-----------------
\r
140 Enable Fcc of all sent messages by default (to "sent" directory)
\r
142 All messages sent from the emacs interface will now be saved to the
\r
143 notmuch mail store where they will be incorporated to the database
\r
144 by the next "notmuch new". By default, messages are saved to the
\r
145 "sent" directory at the top-level of the mail store. This directory
\r
146 can be customized by means of the "Notmuch Fcc Dirs" option in the
\r
147 notmuch customize interface.
\r
149 Ability to all open messages in a thread to a pipe
\r
151 Historically, the '|' keybinding allows for piping a single message
\r
152 to an external command. Now, by prefixing this key with a prefix
\r
153 argument, (for example, by pressing "Control-U |"), all open
\r
154 messages in the current thread will be sent to the external command.
\r
156 Optional support for detecting inline patches
\r
158 This hook is disabled by default but can be enabled with a checkbox
\r
159 under "Notmuch Show Insert Text/Plain Hook" in the notmuch customize
\r
160 interface. It allows for inline patches to be detected and treated
\r
161 as if they were attachments, (with context-sensitive highlighting).
\r
163 Automatically tag messages as "replied" when sending a reply
\r
165 Messages replied to within the emacs interface will now be tagged as
\r
166 "replied". This feature can easily be customized to add or remove
\r
167 other tags as well. For example, a user might use a tag of
\r
168 "needs-reply" and can configure this feature to automatically remove
\r
169 that tag when replying. See "Notmuch Message Mark Replied" in the
\r
170 notmuch customize interface.
\r
172 Allow search-result color specifications to overlay each other
\r
174 For example, one tag can specify the background color of matching
\r
175 lines, while another can specify the foreground. With this change,
\r
176 both settings will now be visible simultaneously, (which was not the
\r
177 case in previous releases). See "Notmuch Search Line Faces" in the
\r
178 notmuch customize interface.
\r
180 Make hidden author names still available for incremental search.
\r
182 When there is insufficient space to display all authors of a thread
\r
183 in search results, the names of hidden authors are now still made
\r
184 available to emacs' incremental search commands. As the user
\r
185 searches, matching lines will temporarily expand to show the hidden
\r
188 New binding of Control-TAB (works like TAB in reverse)
\r
190 Many notmuch nodes already use TAB to navigate forward through
\r
191 various items allowing actions, (message headers, email attachments,
\r
192 etc.). The new Control-TAB binding operates similarly but in the
\r
193 opposite direction.
\r
195 New build-system features
\r
196 =2D------------------------
\r
197 Various portability fixes have been applied
\r
199 These include fixes for build failures on at least Solaris, FreeBSD,
\r
200 and Fedora systems. We're hopeful that the notmuch code base is now
\r
201 more portable than ever before.
\r
203 Arrange for libnotmuch to be found automatically after make install
\r
205 The notmuch build system is now careful to help the user avoid
\r
206 errors of the form "libnotmuch.so could not be found" immediately
\r
207 after installing. This support takes two forms:
\r
209 1. If the library is installed to a system directory,
\r
210 (configured in /etc/ld.so.conf), then "make install" will
\r
211 automatically run ldconfig.
\r
213 2. If the library is installed to a non-system directory, the
\r
214 build system adds a DR_RUNPATH entry to the final binary
\r
215 pointing to the directory to which the library is installed.
\r
217 When this support works, the user should be able to run notmuch
\r
218 immediately after "make install", without any errors trying to find
\r
219 the notmuch library, and without having to manually set environment
\r
220 variables such as LD_LIBRARY_PATH.
\r
222 Check compiler/linker options before using them
\r
224 The configure script now carefully checks that any desired
\r
225 compilation options, (whether for enabling compiler warnings, or for
\r
226 embedding rpath, etc.), are supported. Only supported options are
\r
227 used in the resulting Makefile.
\r
229 New test-suite features
\r
230 =2D----------------------
\r
231 New modularization of test suite.
\r
233 Thanks to a gracious relicensing of the test-suite infrastructure
\r
234 from the git project, notmuch now has a modular test suite. This
\r
235 provides the ability to run individual sections of the test suite
\r
236 rather than the whole things. It also provides better summary of
\r
237 test results, with support for tests that are expected to fail
\r
238 (BROKEN and FIXED) in addition to PASS and FAIL. Finally, it makes
\r
239 it easy to run the test suite within valgrind (pass --valgrind to
\r
240 notmuch-test or to any sub-script) which has been very useful.
\r
242 New testing of emacs interface.
\r
244 The test suite has been augmented to allow automated testing of the
\r
245 emacs interfaces. So far, this includes basic searches, display of
\r
246 threads, and tag manipulation. This also includes a test that a new
\r
247 message can successfully be sent out through a (dummy) SMTP server
\r
248 and that said message is successfully integrated into the notmuch
\r
249 database via the FCC setting.
\r
252 =2D----------------
\r
253 Fix potential corruption of database when "notmuch new " is interrupted.
\r
255 Previously, an interruption of "notmuch new" would (rarely) result
\r
256 in a corrupt database. The corruption would manifest itself by a
\r
257 persistent error of the form:
\r
259 document ID of 1234 has no thread ID
\r
261 The message-adding code has been carefully audited and reworked to
\r
262 avoid this sort of corruption regardless of when it is interrupted.
\r
264 Fix failure with extremely long message ID headers.
\r
266 Previously, a message with an extremely long message ID, (say, more
\r
267 than 300 characters), would fail to be added to notmuch, (triggering
\r
268 Xapian exceptions). This has now been fixed.
\r
270 Fix for messages with "charset=3Dunknown-8bit"
\r
272 Previously, messages with this charset would cause notmuch to emit a
\r
273 GMime warning, (which would then trip up emacs or other interfaces
\r
274 parsing the notmuch results).
\r
276 Fix notmuch_query_search_threads function to return NULL on any exception
\r
278 Fix "notmuch search" to return non-zero if notmuch_query_search_threads fai=
\r
281 Previously, this command could confusingly report a Xapian
\r
282 exception, yet still return an error code of 0. It now correctly
\r
283 returns a failing error code of 1 in this case.
\r
287 Fix to handle a message with a subject containing, for example "[1234]"
\r
289 Previously, a message subject containing a sequence of digits within
\r
290 square brackets would cause the emacs interface to mis-parse the
\r
291 output of "notmuch search". This would result in the message being
\r
292 mis-displayed and prevent the user from manipulating the message in
\r
293 the emacs interface.
\r
295 Fix to correctly handle message IDs containing ".."
\r
297 The emacs interface now properly quotes message IDs to avoid a
\r
298 Xapian bug in which the ".." within a message ID would be
\r
299 misinterpreted as a numeric range specification.
\r
301 Python-binding fixes
\r
302 =2D-------------------
\r
303 The python bindings for notmuch have been updated to work with python3.
\r
305 Debian-specific fixes
\r
306 =2D--------------------
\r
307 Fix emacs initialization so "M-x notmuch" works for users by default.
\r
309 Now, a new Debian user can immediately run "emacs -f notmuch" after
\r
310 "apt-get install notmuch". Previously, the user would have had to
\r
311 edit the ~/.emacs file to add "(require 'notmuch)" before this would
\r
315 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
\r
316 Notmuch is a system for indexing, searching, reading, and tagging
\r
317 large collections of email messages in maildir or mh format. It uses
\r
318 the Xapian library to provide fast, full-text search with a convenient
\r
321 For more about notmuch, see http://notmuchmail.org
\r
324 Content-Type: application/pgp-signature
\r
326 -----BEGIN PGP SIGNATURE-----
\r
327 Version: GnuPG v1.4.10 (GNU/Linux)
\r
329 iD8DBQFMz7Cg6JDdNq8qSWgRArkNAKCfaR2cGw5ylQ6l6P/liWHfbQJmTQCggp1Z
\r
330 NW3WSn/c+a63R19TZshkFUw=
\r
332 -----END PGP SIGNATURE-----
\r