unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Carl Worth <cworth@cworth.org>
To: Michal Sojka <sojkam1@fel.cvut.cz>, notmuch@notmuchmail.org
Subject: Re: [PATCH 1/4] Mailstore abstraction interface
Date: Tue, 13 Apr 2010 10:53:12 -0700	[thread overview]
Message-ID: <87aat7kznb.fsf@yoom.home.cworth.org> (raw)
In-Reply-To: <1270737766-29237-2-git-send-email-sojkam1@fel.cvut.cz>

[-- Attachment #1: Type: text/plain, Size: 1638 bytes --]

On Thu,  8 Apr 2010 16:42:43 +0200, Michal Sojka <sojkam1@fel.cvut.cz> wrote:
> The goal of mailstore abstraction is to allow notmuch to store tags
> together with email messages. The abstract interface is needed because
> people want to use different ways of storing their emails. Currently,
> there exists implementation for two types of mailstore - plain files
> and maildir. It is expected that additional git-based mailstore will
> be developed later.

I don't agree with the approach being taken here.

I don't think that the expectation of future need is a good basis for
adding a level of abstraction now. This gives us current costs without
benefit.

Meanwhile, the two different mail stores that you are currently support
("plain" and "maildir") aren't really different types. We do already
have code within notmuch to detect whether any particular directory is a
maildir, (with the heuristic of looking for child directories named
"cur", "new", and "tmp"). So I think we can and should support both
maildir and non-maildir mail storage just fine.

The question of "once you have maildir storage, should you synchronize
that tags" is quite separate. The answer there might be "yes", "no", or
"let the user decide". But if it is configurable, then the configuration
should be something like

	[maildir]
	synchronize_flags=yes

rather than

	[mailstore]
	type=maildir

This series is looking like one of the most complete approaches to
maildir-flag synchronization, (and I like some of the motivation that
leads to "notmuch cat"). But I think the mailstore abstraction is
largely a distraction from the real features here.

-Carl

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2010-04-13 17:53 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-08 14:42 [PATCH 0/4] Mailstore abstraction v4 Michal Sojka
2010-04-08 14:42 ` [PATCH 1/4] Mailstore abstraction interface Michal Sojka
2010-04-13 17:53   ` Carl Worth [this message]
2010-04-13 21:49     ` Stewart Smith
2010-04-14  8:50     ` Michal Sojka
2010-04-08 14:42 ` [PATCH 2/4] Conversion to mailstore abstraction Michal Sojka
2010-04-08 14:42 ` [PATCH 3/4] Access messages through mail store interface Michal Sojka
2010-04-08 14:42 ` [PATCH 4/4] Add 'cat' subcommand Michal Sojka
2010-04-13 18:43 ` [PATCH 0/4] Mailstore abstraction v4 Carl Worth
  -- strict thread matches above, loose matches on Subject: below --
2010-03-18 15:39 Mailstore abstraction & maildir synchronization Michal Sojka
2010-03-18 15:39 ` [PATCH 1/4] Mailstore abstraction interface Michal Sojka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://notmuchmail.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87aat7kznb.fsf@yoom.home.cworth.org \
    --to=cworth@cworth.org \
    --cc=notmuch@notmuchmail.org \
    --cc=sojkam1@fel.cvut.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).