[Patch v5 6/8] lib: add private function to extract the database for a message.
[notmuch-archives.git] / a5 / fc6cc250b76a7affbf8613a61bda788f6202e5
1 Return-Path: <patricktotzke@googlemail.com>\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 536BC431FAF\r
6         for <notmuch@notmuchmail.org>; Wed, 18 Jan 2012 06:49:21 -0800 (PST)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Amavis-Alert: BAD HEADER SECTION, Duplicate header field: "Date"\r
9 X-Spam-Flag: NO\r
10 X-Spam-Score: -0.367\r
11 X-Spam-Level: \r
12 X-Spam-Status: No, score=-0.367 tagged_above=-999 required=5\r
13         tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,\r
14         FREEMAIL_FROM=0.001, INVALID_DATE=0.432, RCVD_IN_DNSWL_LOW=-0.7]\r
15         autolearn=disabled\r
16 Received: from olra.theworths.org ([127.0.0.1])\r
17         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
18         with ESMTP id Xw9naQnzS+70 for <notmuch@notmuchmail.org>;\r
19         Wed, 18 Jan 2012 06:49:20 -0800 (PST)\r
20 Received: from mail-we0-f181.google.com (mail-we0-f181.google.com\r
21         [74.125.82.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits))\r
22         (No client certificate requested)\r
23         by olra.theworths.org (Postfix) with ESMTPS id 89F63431FAE\r
24         for <notmuch@notmuchmail.org>; Wed, 18 Jan 2012 06:49:20 -0800 (PST)\r
25 Received: by werp13 with SMTP id p13so1473452wer.26\r
26         for <notmuch@notmuchmail.org>; Wed, 18 Jan 2012 06:49:19 -0800 (PST)\r
27 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;\r
28         d=googlemail.com; s=gamma;\r
29         h=content-type:mime-version:content-transfer-encoding:date:to\r
30         :message-id:from:subject:date;\r
31         bh=EpMRqTEe6SHLxwgYNqI7/nPHJau94mFwk4vdAa3lEF4=;\r
32         b=kHBb472hhdckrCXRWfK+JxU9koN47oTWiLL1X9fB6pdP7PdAlvvt0Kyxo2IdqhmVVR\r
33         Ljo6JhicYgruQLTfYRZ5luIRme1uXMQtbmru3uDzv0XHTgPsIAraQWUt4Qp5PK5e/4lW\r
34         g/ROeN1HfsDEcnK4S+MMLlohDJTG0ueYmCjUk=\r
35 Received: by 10.216.138.101 with SMTP id z79mr8270845wei.7.1326898159313;\r
36         Wed, 18 Jan 2012 06:49:19 -0800 (PST)\r
37 Received: from localhost (dhcp-91-036.inf.ed.ac.uk. [129.215.91.36])\r
38         by mx.google.com with ESMTPS id ek1sm22839080wib.10.2012.01.18.06.49.15\r
39         (version=TLSv1/SSLv3 cipher=OTHER);\r
40         Wed, 18 Jan 2012 06:49:16 -0800 (PST)\r
41 Content-Type: text/plain; charset="utf-8"\r
42 MIME-Version: 1.0\r
43 Content-Transfer-Encoding: quoted-printable\r
44 Date: Wed, 18 Jan 2012 14:48:23 -0000\r
45 To: Notmuch Mail <notmuch@notmuchmail.org>\r
46 Message-ID: <20120118144823.23822.46971@megatron>\r
47 From: Patrick Totzke <patricktotzke@googlemail.com>\r
48 Subject: [feature request] thread-based queries\r
49 Date: Wed, 18 Jan 2012 14:48:23 +0000\r
50 X-BeenThere: notmuch@notmuchmail.org\r
51 X-Mailman-Version: 2.1.13\r
52 Precedence: list\r
53 List-Id: "Use and development of the notmuch mail system."\r
54         <notmuch.notmuchmail.org>\r
55 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
56         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
57 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
58 List-Post: <mailto:notmuch@notmuchmail.org>\r
59 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
60 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
61         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
62 X-List-Received-Date: Wed, 18 Jan 2012 14:49:21 -0000\r
63 \r
64 Hi everyone,\r
65 \r
66 A recent discussion on alot's issue tracker[0]  made it clear that it might=\r
67  be useful to have a thread-based\r
68 matching for queries as an alternative to the current message based approac=\r
69 h:\r
70 \r
71 Consider a thread with two messages, one has a single tag 'flagged', the ot=\r
72 her a single tag 'unread'.\r
73 Now the thread doesn't match "tag:flagged AND tag:unread" as it doesn't con=\r
74 tain any matching messages.\r
75 However, listing the tags of this thread accumulates to ['flagged', 'unread=\r
76 '].\r
77 \r
78 As far as I know, there is no way one can tell notmuch to evaluate the quer=\r
79 y with threads as atomic entities\r
80 instead of messages so that the thread in the example above matches. I woul=\r
81 d like to see such a switch in =\r
82 \r
83 libnotmuch and the python bindings, maybe as parameter to `notmuch_query_cr=\r
84 eate` or as something similar to =\r
85 \r
86 `notmuch_query_set_sort`.\r
87 \r
88 I am aware that I can simulate the intended behaviour by rewriting the quer=\r
89 y myself, but I think\r
90 such a feature makes sense not only for alot users and should be implemente=\r
91 d at a lower level.\r
92 Moreover, I wouldn't be surprised if doing this at a library level is less =\r
93 painful than higher up\r
94 as Xapian has to parse query formulae anyway and hence should offer some co=\r
95 nvenience methods for dealing with them.\r
96 Please correct me if I'm wrong here or have just overlooked previous discus=\r
97 sions/solutions for this issue.\r
98 \r
99 Best,\r
100 /p\r
101 \r
102 [o]: https://github.com/pazz/alot/issues/270\r