MBOX-Line: From mrc at CAC.Washington.EDU  Mon Jun 25 09:45:01 2007
To: imap-protocol@u.washington.edu
From: Mark Crispin <mrc@CAC.Washington.EDU>
Date: Fri Jun  8 12:34:40 2018
Subject: [Imap-protocol] Namespace separators
In-Reply-To: <1182787190.3768.198.camel@hurina>
References: <1182783681.3768.187.camel@hurina>
	<alpine.OSX.0.99.0706250816170.1955@pangtzu.panda.com>
	<1182787190.3768.198.camel@hurina>
Message-ID: <alpine.OSX.0.99.0706250913080.1955@pangtzu.panda.com>

On Mon, 25 Jun 2007, Timo Sirainen wrote:
> I find this # thing also a bit weird. The client can't know about those
> namespaces without NAMESPACE command, and if it does then there's really
> no need for # because it can find out the exact prefixes anyway. So why
> should the client do anything differently if there's #?

Without a breakout mechanism such as #, then you have the ambiguity 
problem that you reported in your earlier message.  How do you know that a 
name is in one namespace as opposed to some other one?

More importantly, what happens if the different namespaces have different 
hierarchy semantics; different delimiters, different ways of expressing 
root, etc.?  Maybe a particular namespace doesn't have hierarchy at all.

Netnews vs. the UNIX filesystem is an obvious example of two completely 
incompatible hierarchies.

I see no benefit to implementing an incompatible means of doing multiple 
namespaces, and HUGE demerits.  Anyone who finds themselves negatively 
impacted will put the blame directly on your server.  Don't do it.

Either have one namespace, with a single set of hierarchy semantics 
(meaning only ONE hierarchy delimiter) throughout, or do namespaces 
compatibly, following the namespace convention.

> I've understood that many commonly used clients ignore namespaces and
> only show what is visible with LIST "" *, so I'd want to keep it
> possible to list contents of all namespaces with it.

Does your server list all other users' mailboxes with that command (since 
after all a user may have a public access mailbox)?  Why not?

Does your server do an "ls -R /" for that command?  Why not?

Assuming that the user has a stupid client that does LIST "" * (a very bad 
thing to do), why do you think that she wants to download ten thousand 
newsgroup names each and every time the client is run?  Especially a user 
on a mobile device over EDGE.

There is always a line.  Drawing the line is difficult.

> Dovecot actually allows the admin to configure any kind of namespaces.
> I'm currently just wondering what kind of configurations I should
> prevent.

I don't think that LIST "" * should show anything other than the user's 
personal names.

-- Mark --

http://panda.com/mrc
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.

