Re: [Evolution-hackers] Moving from the single mbox file format for the local folders



On Thu, 2009-12-17 at 12:50 -0500, Jeffrey Stedfast wrote:
> Milan Crha wrote:
> > On Wed, 2009-12-16 at 19:50 -0500, Jeffrey Stedfast wrote:
> >   
> >> The standard way to nest Maildir folders is such:
> >>
> >> Maildir/
> >>    cur/
> >>    new/
> >>    tmp/
> >>    .GNOME/
> >>       cur/
> >>       new/
> >>       tmp/
> >>    .GNOME.Evolution/
> >>     
> >
> > maybe, but Evolution doesn't use this model, it is creating
> subfolders
> > directly, like:
> > Maildir/
> >    cur
> >    new
> >    tmp
> >    folder1
> >       cur
> >       new
> >       tmp
> >       folder2
> >
> > Which makes:
> >    Inbox
> >    folder1
> >       folder2

That's definitely not right.

> Ugh. I'm pretty sure the standard way of doing it is the way I noted
> above.

Actually the original maildir standard, from DJ, didn't discuss folders
at all: http://cr.yp.to/proto/maildir.html

However, an extension, maildir++, was developed that many people follow:
http://www.inter7.com/courierimap/README.maildirquota.html

It's primary purpose was to allow for mail quotas, that I expect Evo
doesn't care about, but it also provided a facility for folders and is
intended to be completely compatible with standard maildir (in the above
search for "folder").

> > How do you create a folder on the same level as Inbox with your
> model?

> I'm sure this has been solved before, but even if it hasn't, some IMAP
> servers have the same "limitation".
> 
> Keep in mind that the view doesn't have to be a 1-to-1 mapping of the
> model.

Exactly.  One could assume that the "top level" maildir is INBOX, and
everything at the next level of folder should be considered to be a
sibling of INBOX rather than a folder under INBOX.

If the user does create folders under INBOX, they would be created
starting with INBOX like any other subfolder.

So:

	maildir/
		.One/
		.Two/
		.Two.Three/
		.INBOX.Four/

would be a folder hierarchy of:

	INBOX
	INBOX/Four
	One
	Two
	Two/Three

It's simply a matter of having Evo's display engine understand the
situation correctly.  It's true that other maildir clients might list
all the folders under "Inbox" (my dovecot IMAP server does this right
now, for example, and they use maildir++ format).

One concern that is very valid is the inability of Windows to use ":".
On Windows that separator will need to be changed to something else.
Another concern is whether more than one "." can appear in a Windows
pathname... I don't use Windows so I don't know if newer filesystems
have done away with that restriction.

> > If there will be any change in the folder layout for maildir, we
> should
> > keep some option for backward compatibility, but that's obvious.  
> 
> Yep.

It seems to me that we'll need some kind of converter.  I actually DON'T
agree that newer versions of Evo should be coded to be able to read both
"new" and "old" maildir formats.  That way, to me, lies madness.
Instead there should be a conversion process (hopefully nicely
integrated and GUI-ified but at least an easy-to-use script) and it
should be able to, among other things, convert "old" maildir format to
"new" maildir format.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]