Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id C2345431FB6 for ; Tue, 1 Feb 2011 21:03:41 -0800 (PST) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: 0 X-Spam-Level: X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[RCVD_IN_DNSWL_NONE=-0.0001] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dmieLqQ6A1FI for ; Tue, 1 Feb 2011 21:03:41 -0800 (PST) Received: from dmz-mailsec-scanner-8.mit.edu (DMZ-MAILSEC-SCANNER-8.MIT.EDU [18.7.68.37]) by olra.theworths.org (Postfix) with ESMTP id EDDBF431FB5 for ; Tue, 1 Feb 2011 21:03:40 -0800 (PST) X-AuditID: 12074425-b7c98ae000000a04-a6-4d48e5ab3481 Received: from mailhub-auth-4.mit.edu ( [18.7.62.39]) by dmz-mailsec-scanner-8.mit.edu (Symantec Brightmail Gateway) with SMTP id 23.D4.02564.BA5E84D4; Wed, 2 Feb 2011 00:03:39 -0500 (EST) Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103]) by mailhub-auth-4.mit.edu (8.13.8/8.9.2) with ESMTP id p1253c3u008837 for ; Wed, 2 Feb 2011 00:03:39 -0500 Received: from awakening.csail.mit.edu (awakening.csail.mit.edu [18.26.4.91]) (authenticated bits=0) (User authenticated as amdragon@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id p1253bEa025558 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT) for ; Wed, 2 Feb 2011 00:03:38 -0500 (EST) Received: from amthrax by awakening.csail.mit.edu with local (Exim 4.72) (envelope-from ) id 1PkUsT-0000yQ-2F for notmuch@notmuchmail.org; Wed, 02 Feb 2011 00:03:37 -0500 Date: Wed, 2 Feb 2011 00:03:37 -0500 From: Austin Clements To: notmuch@notmuchmail.org Subject: Re: [RFC PATCH v2 0/8] Custom query parser, date search, folder search, and more Message-ID: <20110202050336.GB28537@mit.edu> References: <1295165458-9573-1-git-send-email-amdragon@mit.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1295165458-9573-1-git-send-email-amdragon@mit.edu> User-Agent: Mutt/1.5.20 (2009-06-14) X-Brightmail-Tracker: AAAAAA== X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 05:03:41 -0000 I rebased the query parser against current master. It's on the qparser-3 branch at http://awakening.csail.mit.edu/git/notmuch.git At cworth's request, I've folded the database closing bug fix in to the appropriate patch. I also stripped out my implementation of folder searching, since it obviously conflicts with cworth's [1]. I'm not planning to resend the patches unless asked because there were no actual code changes. [1] I still assert the "correct" folder solution is somewhere between mine and cworth's: rooted and non-recursive by default (non-recursive is the only thing that makes sense for Maildir++ folders and it would be silly for the default to depend on folder type), but leveraging the flexibility of custom query transforms to support Maildir++ folders and recursive (and maybe non-rooted) searches as well. Non-rooted and recursive searches even map to natural syntaxes that align with Xapian's existing wildcard syntax. Quoth myself on Jan 16 at 3:10 am: > This is version 2 of the custom query parser. It now supports date > searches with sane syntax, folder searches (without any additions or > changes to the database, unlike cworth's recent commit), and "tag:*" > and "-tag:*" queries for finding tagged and untagged messages. I used > these features to guide changes to the original design and to validate > the approach. This is still RFC, but it's much less raw now. > > In addition to the new features, the core query parser has a bunch of > cleanups and changes, including completely redone NEAR and ADJ > operators that now behave essentially the same as they do in Xapian's > query parser. I also split the implementation of these out into a > separate patch for ease of review. > > There's a notable lack of tests in this current series. I do have a > pile of tests for the lexer, parser, and generator, but the > infrastructure for testing them needs cleanup before I send that out. > -- Austin Clements MIT/'06/PhD/CSAIL amdragon@mit.edu http://web.mit.edu/amdragon Somewhere in the dream we call reality you will find me, searching for the reality we call dreams.