[PATCH] RFC: all deleting all properties with a given key
[notmuch-archives.git] / c6 / f28ffea63134adb2ee62e5d228210ba5ee9174
1 Return-Path: <tomi.ollila@iki.fi>\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 DE6B4431FAF\r
6         for <notmuch@notmuchmail.org>; Sat, 27 Oct 2012 13:38:02 -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: 0\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none]\r
12         autolearn=disabled\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 K1EhJFdUrBFx for <notmuch@notmuchmail.org>;\r
16         Sat, 27 Oct 2012 13:38:01 -0700 (PDT)\r
17 Received: from guru.guru-group.fi (guru.guru-group.fi [46.183.73.34])\r
18         by olra.theworths.org (Postfix) with ESMTP id C3732431FBF\r
19         for <notmuch@notmuchmail.org>; Sat, 27 Oct 2012 13:38:01 -0700 (PDT)\r
20 Received: from guru.guru-group.fi (localhost [IPv6:::1])\r
21         by guru.guru-group.fi (Postfix) with ESMTP id D49CF100045;\r
22         Sat, 27 Oct 2012 23:38:00 +0300 (EEST)\r
23 From: Tomi Ollila <tomi.ollila@iki.fi>\r
24 To: Austin Clements <amdragon@MIT.EDU>, Jani Nikula <jani@nikula.org>\r
25 Subject: Re: [PATCH v5 2/9] parse-time-string: add a date/time parser to\r
26         notmuch\r
27 In-Reply-To: <20121025185816.GX14861@mit.edu>\r
28 References: <cover.1350854171.git.jani@nikula.org>\r
29         <a90d3b687895a26f765539d6c0420038a74ee42f.1350854171.git.jani@nikula.org>\r
30         <20121022081444.GM14861@mit.edu> <20121025185816.GX14861@mit.edu>\r
31 User-Agent: Notmuch/0.14+59~gf9031cd (http://notmuchmail.org) Emacs/24.2.1\r
32         (x86_64-unknown-linux-gnu)\r
33 X-Face: HhBM'cA~<r"^Xv\KRN0P{vn'Y"Kd;zg_y3S[4)KSN~s?O\"QPoL\r
34         $[Xv_BD:i/F$WiEWax}R(MPS`^UaptOGD`*/=@\1lKoVa9tnrg0TW?"r7aRtgk[F\r
35         !)g;OY^,BjTbr)Np:%c_o'jj,Z\r
36 Date: Sat, 27 Oct 2012 23:38:00 +0300\r
37 Message-ID: <m2hapf647r.fsf@guru.guru-group.fi>\r
38 MIME-Version: 1.0\r
39 Content-Type: text/plain\r
40 Cc: notmuch@notmuchmail.org\r
41 X-BeenThere: notmuch@notmuchmail.org\r
42 X-Mailman-Version: 2.1.13\r
43 Precedence: list\r
44 List-Id: "Use and development of the notmuch mail system."\r
45         <notmuch.notmuchmail.org>\r
46 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
47         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
48 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
49 List-Post: <mailto:notmuch@notmuchmail.org>\r
50 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
51 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
52         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
53 X-List-Received-Date: Sat, 27 Oct 2012 20:38:03 -0000\r
54 \r
55 On Thu, Oct 25 2012, Austin Clements wrote:\r
56 \r
57 > Quoth myself on Oct 22 at  4:14 am:\r
58 >> Overall this looks pretty good to me, and I must say, this parser is\r
59 >> amazingly flexible and copes well with a remarkably hostile grammar.\r
60 >> \r
61 >> A lot of little comments below (sorry if any of this ground has\r
62 >> already been covered in the previous four versions).\r
63 >> \r
64 >> I do have one broad comment.  While I'm all for ad hoc parsers for ad\r
65 >> hoc grammars like dates, there is one piece of the literature I think\r
66 >> this parser suffers for by ignoring: tokenizing.  I think it would\r
67 >> simplify a lot of this code if it did a tokenizing pass before the\r
68 >> parsing pass.  It doesn't have to be a serious tokenizer with\r
69 >> streaming and keywords and token types and junk; just something that\r
70 >> first splits the input into substrings, possibly just non-overlapping\r
71 >> matches of [[:digit:]]+|[[:alpha:]]+|[-+:/.].  This would simplify the\r
72 >> handling of postponed numbers because, with trivial lookahead in the\r
73 >> token stream, you wouldn't have to postpone them.  Likewise, it would\r
74 >> eliminate last_field.  It would simplify keyword matching because you\r
75 >> wouldn't have to worry about matching substrings (I spent a long time\r
76 >> staring at that code before I figured out what it would and wouldn't\r
77 >> accept).  Most important, I think it would make the parser more\r
78 >> predictable for users; for example, the parser currently accepts\r
79 >> things like "saturtoday" because it's aggressively single-pass.\r
80 >\r
81 > I should add that I am not at all opposed to this patch as it is\r
82 > currently designed.  We need a date parser.  My comment about\r
83 > separating tokenization is just a way that this code could probably be\r
84 > simplified if someone were so inclined or if simplifying the code\r
85 > would help it pass any hurdles.\r
86 \r
87 What if the current patch set, i.e. messages\r
88 \r
89 $ grep Message-Id: ~/patch | sed 's/Message-Id: /id:/; y/<>/""/'\r
90 id:"e684cadbb5a01b6079ef344b0d6f97541847914a.1350854171.git.jani@nikula.org"\r
91 id:"a90d3b687895a26f765539d6c0420038a74ee42f.1350854171.git.jani@nikula.org"\r
92 id:"75a8f129d5e0d824b3e04ddfc1816c45fa0ec70d.1350854171.git.jani@nikula.org"\r
93 id:"606a94d565e6b21abfc59d6ba9676a807d669127.1350854171.git.jani@nikula.org"\r
94 id:"cbd383bfc4bf844bb0366f13f675d48956137c52.1350854171.git.jani@nikula.org"\r
95 id:"f21b8702728457c087478b26700e9448bc16c61d.1350854171.git.jani@nikula.org"\r
96 id:"37026480956679b12e82e4975f1837e93ef1c531.1350854171.git.jani@nikula.org"\r
97 id:"cff9c1dd87b8bc11326dca0b3589c81656500f5e.1350854171.git.jani@nikula.org"\r
98 \r
99 (patches 1-8 / 9 -- NEWS patch is stale) would just be pushed: there are\r
100 just few trivial things to be tuned and NEWS rebased -- which I think \r
101 Jani will gladly do... It is just so much easier for him to continue\r
102 and us others to review the new diffs than these whole patches again\r
103 and again... At least I volunteer to track that these remaining issues\r
104 (tokenizer not included :).\r
105 \r
106 Tomi\r