--- /dev/null
+Return-Path: <jrollins@finestructure.net>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+ by olra.theworths.org (Postfix) with ESMTP id E9504431FBD\r
+ for <notmuch@notmuchmail.org>; Sat, 14 Apr 2012 12:08:00 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -2.29\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-2.29 tagged_above=-999 required=5\r
+ tests=[RCVD_IN_DNSWL_MED=-2.3, T_MIME_NO_TEXT=0.01] autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+ by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+ with ESMTP id 1ObXVJzWH16d for <notmuch@notmuchmail.org>;\r
+ Sat, 14 Apr 2012 12:08:00 -0700 (PDT)\r
+Received: from outgoing-mail.its.caltech.edu (outgoing-mail.its.caltech.edu\r
+ [131.215.239.19])\r
+ by olra.theworths.org (Postfix) with ESMTP id 8008A431FAF\r
+ for <notmuch@notmuchmail.org>; Sat, 14 Apr 2012 12:08:00 -0700 (PDT)\r
+Received: from fire-doxen.imss.caltech.edu (localhost [127.0.0.1])\r
+ by fire-doxen-postvirus (Postfix) with ESMTP id 315942E50D97;\r
+ Sat, 14 Apr 2012 12:08:00 -0700 (PDT)\r
+X-Spam-Scanned: at Caltech-IMSS on fire-doxen by amavisd-new\r
+Received: from finestructure.net (unknown [76.89.193.65])\r
+ (Authenticated sender: jrollins)\r
+ by fire-doxen-submit (Postfix) with ESMTP id 6088B2E50D8C;\r
+ Sat, 14 Apr 2012 12:07:57 -0700 (PDT)\r
+Received: by finestructure.net (Postfix, from userid 1000)\r
+ id EF53745D; Sat, 14 Apr 2012 12:07:56 -0700 (PDT)\r
+From: Jameson Graef Rollins <jrollins@finestructure.net>\r
+To: Mark Walters <markwalters1009@gmail.com>,\r
+ Notmuch Mail <notmuch@notmuchmail.org>\r
+Subject: Re: [PATCH 5/8] emacs: modify search tag functions to use new\r
+ notmuch-tag interface\r
+In-Reply-To: <871unwn40g.fsf@qmul.ac.uk>\r
+References: <1333354853-25729-1-git-send-email-jrollins@finestructure.net>\r
+ <1333845338-22960-1-git-send-email-jrollins@finestructure.net>\r
+ <1333845338-22960-2-git-send-email-jrollins@finestructure.net>\r
+ <1333845338-22960-3-git-send-email-jrollins@finestructure.net>\r
+ <1333845338-22960-4-git-send-email-jrollins@finestructure.net>\r
+ <1333845338-22960-5-git-send-email-jrollins@finestructure.net>\r
+ <1333845338-22960-6-git-send-email-jrollins@finestructure.net>\r
+ <871unwn40g.fsf@qmul.ac.uk>\r
+User-Agent: Notmuch/0.12+112~gffb05d6 (http://notmuchmail.org) Emacs/23.4.1\r
+ (x86_64-pc-linux-gnu)\r
+Date: Sat, 14 Apr 2012 12:07:54 -0700\r
+Message-ID: <871unq169h.fsf@servo.finestructure.net>\r
+MIME-Version: 1.0\r
+Content-Type: multipart/signed; boundary="=-=-=";\r
+ micalg=pgp-sha256; protocol="application/pgp-signature"\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+ <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Sat, 14 Apr 2012 19:08:01 -0000\r
+\r
+--=-=-=\r
+\r
+On Mon, Apr 09 2012, Mark Walters <markwalters1009@gmail.com> wrote:\r
+> My only comment here is that I wonder about the tag-all command. I can\r
+> see that this is a performance win over applying tag region to the whole\r
+> buffer but is it another place where we have a race with incoming mail\r
+> (ie we tag everything that now matches rather than everything in the\r
+> buffer).\r
+\r
+Yes, I think this is a problem. notmuch-{search,show}-tag-all are both\r
+subject to race conditions. I suggest we remove notmuch-search-tag-all\r
+in favor of the region tagging capabilities of notmuch-show-tag. I will\r
+submit a patch for that. notmuch-show-tag-all is trickier, since there\r
+no tag-by-region capability at the moment. That will have to be added\r
+before this function can be replaced.\r
+\r
+> A second advantage with the tag-region form is that it automatically\r
+> does excludes. Currently notmuch-tag does not do excludes as it looked\r
+> very hairy to implement correctly: thus the tag-all command could spend\r
+> a lot of time tagging excluded messages.\r
+\r
+Actually, I don't think this is true, at least for search mode. In\r
+search mode threads are tagged by their thread id, therefore any\r
+excluded messages in the thread will receive the same tagging\r
+operations.\r
+\r
+The current operation is at least, in my opinion, self consistent. If\r
+we're going to tag by thread then all messages in the thread should be\r
+tagged, whether or not they're excluded. I do think, however, that it\r
+might be nice to add a tagging function that only tags the matching\r
+messages in the thread. In that case excluded messages would not be\r
+tagged. That's for future work, though.\r
+\r
+jamie.\r
+\r
+--=-=-=\r
+Content-Type: application/pgp-signature\r
+\r
+-----BEGIN PGP SIGNATURE-----\r
+Version: GnuPG v1.4.12 (GNU/Linux)\r
+\r
+iQIcBAEBCAAGBQJPicsKAAoJEO00zqvie6q8cZEQALmcO+ZmVhRNpyJBxPVldp9E\r
+LI+uT+DJNAHhaH5M+WuJDBJmFl232uG8wFrhcmwoLgK2WvJx8LmU4W9YGAafwgEz\r
+5HC8OoS3ybc6XvdALZRAoyvy/2FFboNN2tEbO9B7tBPNhyuDRs4iH6ZmCu74kMsA\r
+PztaFT7kPC7+zuiS7TxWxShLvnh/0rw9TrOvyW2L4031F9XeuphyUvWkSeJjRx8w\r
+HB69URfnaQBmP4PbNZz9ShiIOIMle5WPtqlpcxymcNg6wX05XxaLqGdJeKVrILLc\r
+TyZW1/rXY1YWicO0KRJ4GaaEDXjrsRrlxKXXyUvvMhUWoGVMlWQiUv2CK7VwltKb\r
+ecIgb1fmc1q03VPbg+HSOmivMcBMA+2iwBN55q0PHCy112y0pFl3dqOOy59EWKfg\r
+2yVqHh2aqXE7SK1dpqcZCQCeTWX092fKCMP5UsgNkqLR2jUtCz3bdy0t+N4/6XE0\r
+/NXtfOHeCVF2EZkImmoDmQQBqYk1X3x0dnKMT9VyHt/JzMuZJJQtRyB7l34KWw34\r
+jxaQPA5uqbdE9ZQdzfC6G0EcKZ2UZDccgf/ALrkfx+JG0kJjcr7NxRXpZVEWzz2F\r
+wnY9d5+gUBr7VOG052KPmtGCojOKECQNmfXHgjv+fRJIYjUHWT/iVFL7NCXq0VtZ\r
+164UfBKVzATHxe5WKFqc\r
+=q9b+\r
+-----END PGP SIGNATURE-----\r
+--=-=-=--\r