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 E0F1A431FB6 for ; Tue, 14 Aug 2012 11:11:29 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -0.699 X-Spam-Level: X-Spam-Status: No, score=-0.699 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] 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 iGMEKZ9d13lB for ; Tue, 14 Aug 2012 11:11:27 -0700 (PDT) Received: from mail-qa0-f46.google.com (mail-qa0-f46.google.com [209.85.216.46]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id A83E1431FAE for ; Tue, 14 Aug 2012 11:11:27 -0700 (PDT) Received: by qaas11 with SMTP id s11so2512135qaa.5 for ; Tue, 14 Aug 2012 11:11:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=7HYAlBtkIR3ccyFNau4Bldx6YCTap8UBpAlaBvCYFLw=; b=GClmcAGKUGklt6AycF2eEGhXgFy63zv3iggcsm78flMjw9EG/2h83o4sqMfGzrICHT JVrubDNIPfnGFpxu38h1nmwo1wf5MePj4xLwfI/hZIypESng1gCuFXPz0AKX2N1UGHXR svlDS4MdVC9+itN5RT8F82MfKaC5y3brs3qOgMJFrm5n0j9F9/kefEVLDiQOK6RBB52S I83DjKzDpseitSvL44OlOQmkH/2TitwazkmeNwbHxM9BOs0odnJvr5weov/SSe4ZNmY3 IlqyiimQl49ehrmM0fdTaJKQBdQljgcEhb0oSG2QLIuOzK5+5sOaotd4ejsnfQFNirlC iVIA== Received: by 10.50.182.229 with SMTP id eh5mr13355776igc.38.1344967885616; Tue, 14 Aug 2012 11:11:25 -0700 (PDT) MIME-Version: 1.0 Sender: chm.duquesne@gmail.com Received: by 10.64.24.9 with HTTP; Tue, 14 Aug 2012 11:11:05 -0700 (PDT) In-Reply-To: References: <20120811094635.GY28321@pub.cz.oracle.com> <874no613ms.fsf@flamingspork.com> <20120814160442.GO28321@pub.cz.oracle.com> <20120814165044.GP28321@pub.cz.oracle.com> From: Christophe-Marie Duquesne Date: Tue, 14 Aug 2012 20:11:05 +0200 X-Google-Sender-Auth: PR9CzvbxV2WzvReahivhyTA0hCM Message-ID: Subject: Re: Alternative (raw) message store (i.e. instead of maildir) To: Ciprian Dorin Craciun Content-Type: text/plain; charset=UTF-8 Cc: notmuch@notmuchmail.org 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: Tue, 14 Aug 2012 18:11:30 -0000 On Tue, Aug 14, 2012 at 7:05 PM, Ciprian Dorin Craciun wrote: > I proposed -- better said queried if possible or at least wanted > -- to have an internal interface (SPI) that any mail store would have > to implement in order to be indexed and used by notmuch. I guess the > interface would be quite lightweight, and would need just the > following: > * open store; > * create a cursor iterating through all the emails, yielding only the keys; > * read the envelope (as a byte blob) of a particular key; (used > only for displaying thread lists, etc.;) > * read the body (as a byte blob) of a particular key; > * maybe create a cursor iterating over all those emails that have > changed since a particular timestamp; Someone wrote a fork of offlineimap to store mail in couchdb [1]. The same couchdb can be mounted with fuse as a maildir [2] for mutt. According to the author [3], the fuse interface is read only. Assuming your proposal was implemented, one could complete this work with an interface to couchdb for offlineimap and get all the features previously requested. [1]: https://github.com/theodoreb/offlineimap [2]: https://github.com/theodoreb/couchdb-maildir-fuse [3]: http://theodoreb.net/resume