notmuch-search-toggle-order and notmuch-tree
[notmuch-archives.git] / 3e / 8abfe023c0e6e13ef8a9bd3f8605a437866b8e
1 Return-Path: <sojkam1@fel.cvut.cz>\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 587FF4196F3\r
6         for <notmuch@notmuchmail.org>; Mon, 29 Mar 2010 02:03:09 -0700 (PDT)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -1.9\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5\r
12         tests=[BAYES_00=-1.9] autolearn=ham\r
13 Received: from olra.theworths.org ([127.0.0.1])\r
14         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
15         with ESMTP id yZZ3BgFZ02an for <notmuch@notmuchmail.org>;\r
16         Mon, 29 Mar 2010 02:03:08 -0700 (PDT)\r
17 Received: from max.feld.cvut.cz (max.feld.cvut.cz [147.32.192.36])\r
18         by olra.theworths.org (Postfix) with ESMTP id 72C704196F2\r
19         for <notmuch@notmuchmail.org>; Mon, 29 Mar 2010 02:03:08 -0700 (PDT)\r
20 Received: from localhost (unknown [192.168.200.4])\r
21         by max.feld.cvut.cz (Postfix) with ESMTP id CF39C19F338E;\r
22         Mon, 29 Mar 2010 11:03:07 +0200 (CEST)\r
23 X-Virus-Scanned: IMAP AMAVIS\r
24 Received: from max.feld.cvut.cz ([192.168.200.1])\r
25         by localhost (styx.feld.cvut.cz [192.168.200.4]) (amavisd-new,\r
26         port 10044)\r
27         with ESMTP id 0nN6IxIXNsV6; Mon, 29 Mar 2010 11:03:06 +0200 (CEST)\r
28 Received: from imap.feld.cvut.cz (imap.feld.cvut.cz [147.32.192.34])\r
29         by max.feld.cvut.cz (Postfix) with ESMTP id 8E90C19F330B;\r
30         Mon, 29 Mar 2010 11:03:06 +0200 (CEST)\r
31 Received: from steelpick.2x.cz (k335-30.felk.cvut.cz [147.32.86.30])\r
32         (Authenticated sender: sojkam1)\r
33         by imap.feld.cvut.cz (Postfix) with ESMTPSA id 24D3BFA003;\r
34         Mon, 29 Mar 2010 11:03:05 +0200 (CEST)\r
35 Received: from wsh by steelpick.2x.cz with local (Exim 4.71)\r
36         (envelope-from <sojkam1@fel.cvut.cz>)\r
37         id 1NwAsD-0002rb-Ob; Mon, 29 Mar 2010 11:03:05 +0200\r
38 From: Michal Sojka <sojkam1@fel.cvut.cz>\r
39 To: Sebastian Spaeth <Sebastian@SSpaeth.de>, David Edmondson <dme@dme.org>,\r
40         notmuch@notmuchmail.org\r
41 In-Reply-To: <87pr2n1sar.fsf@SSpaeth.de>\r
42 References: <87iq8o76r8.fsf@uf.hh.sledj.net> <87aatt2pf7.fsf@SSpaeth.de>\r
43         <87y6hdgfr3.fsf@steelpick.2x.cz> <87pr2n1sar.fsf@SSpaeth.de>\r
44 Date: Mon, 29 Mar 2010 11:03:05 +0200\r
45 Message-ID: <87k4svh54m.fsf@steelpick.2x.cz>\r
46 MIME-Version: 1.0\r
47 Content-Type: text/plain; charset=us-ascii\r
48 Subject: Re: [notmuch] JSON based emacs UI\r
49 X-BeenThere: notmuch@notmuchmail.org\r
50 X-Mailman-Version: 2.1.13\r
51 Precedence: list\r
52 List-Id: "Use and development of the notmuch mail system."\r
53         <notmuch.notmuchmail.org>\r
54 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
55         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
56 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
57 List-Post: <mailto:notmuch@notmuchmail.org>\r
58 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
59 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
60         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
61 X-List-Received-Date: Mon, 29 Mar 2010 09:03:09 -0000\r
62 \r
63 On Mon, 29 Mar 2010, Sebastian Spaeth wrote:\r
64 > On Sun, 28 Mar 2010 07:46:40 +0200, Michal Sojka <sojkam1@fel.cvut.cz> wrote:\r
65 > > I don't think this can be solved only in Makefile. From my look at dme's\r
66 > > repo, he adds a new subcomand 'part', which is used by the UI. So if you\r
67 > > want to use the new UI and your other features, you need to merge the\r
68 > > things together.\r
69\r
70 > I agree that notmuch and notmuch.el need to be developed deployed in\r
71 > close cooperation. However, this bundling makes things a bit more\r
72 > complex to untangle. I am willing to e.g. add the -part improvement to\r
73 > my own branch of notmuch, but I want to follow dme's frontend closely.\r
74\r
75 > > To build my version of notmuch, I use an ugly script\r
76 > > (http://rtime.felk.cvut.cz/gitweb/notmuch.git/blob/refs/heads/debian-wsh:/wsh-buildpackage)\r
77 > > which first does a big octopus merge to combine several features to one\r
78 > > branch and then I build notmuch from there. The current state of my\r
79 > > integration can be seen at\r
80 > > http://rtime.felk.cvut.cz/gitweb/notmuch.git/shortlog/refs/heads/integration/features.\r
81\r
82 > Interesting, but a bit more complicated that I was originally thinking off.\r
83\r
84 > > This approach has a disadvantage that integration/features branch is\r
85 > > often rewritten (whenever I add, remove or change a patch) so that\r
86 > > others cannot track the branch. On the other side, the advantage is that\r
87 > > others can easily see which patches I have applied on top of master. If\r
88 > > Carl updates master, I just rerun the script and the updated integration\r
89 > > branch is ready (unless there is a merge conflict).\r
90\r
91 > Very nice.\r
92 \r
93 Here is a simplified version of my script. It does only the merge. If\r
94 you want to use it, I recommend adding this script to a separate branch\r
95 so that you can track which branched were added or removed to your\r
96 features branch (you will modify the $branches variable in the script).\r
97 \r
98 #!/bin/sh\r
99 \r
100 branches="\r
101 decode-headers-in-reply\r
102 dme/citation-suffixes\r
103 no-self-bcc-on-reply\r
104 "\r
105 \r
106 set -e\r
107 \r
108 die()\r
109 {\r
110         echo >&2 "fatal: $*"\r
111         exit 1\r
112 }\r
113 \r
114 if [ -z "$EXEC_OK" ]; then\r
115     # If this script is tracked by repository, checking out another\r
116     # branch could delete it so we copy it to tmp and run it from\r
117     # there.\r
118     script=$(mktemp -t notmuch-integrate.XXXXXX)\r
119     cp "$0" "$script"\r
120     EXEC_OK=1\r
121     export EXEC_OK\r
122     exec sh "$script" "$@"\r
123 fi\r
124 \r
125 [ $EXEC_OK != 1 ] && die "Error: something went wrong"\r
126 \r
127 trap "rm '$0'" EXIT\r
128 \r
129 git branch -D integration/features || :\r
130 git checkout -b integration/features master\r
131 git merge $branches\r