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

Re: LANGUAGE/COMPARATOR review




Hi Ken,

--On November 28, 2006 6:27:09 AM -0500 Ken Murchison <murch@xxxxxxxxxxxxxx> wrote:

1. The server MUST remember whether it has sent NAMESPACE to the client
at any point during this connection, and MUST resend an appropriate
NAMESPACE response when it processes LANGUAGE. The new NAMESPACE's
values replace any earlier values sent.

1b. As 1, with "The client MUST NOT cache NAMESPACE values across
connections." added.

2. The client MUST resent NAMESPACE if it changes language using
LANGUAGE after sending the NAMESPACE command.

3. Requiring ENABLE.

My personal preference is option 2, then 3, then 1/1b.

I don't like option 1, because if a client caches NAMESPACE and does not
(re)send it on connection establishment, the LANGUAGE command doesn't
cause the NAMESPACE response to be sent. And not 1b either, because if
the client isn't permited to to cache the namespace response, how can it
cache messages in mailboxes whose name starts with a NAMESPACE-based
prefix?

I'm fine with 1 or 2.  As a server guy, I don't care if we send
unsolicited NAMESPACE responses after LANGUAGE or we require the client
to issue NAMESPACE after LANGUAGE.  The former saves a roundtrip and the
latter is similar to CAPABILITY after STARTTLS/AUTHENTICATE.

Lets keep this simple and go with (2) as that does not require the server to remember more state than it already does. And in all likelihood clients will issue LANGUAGE before doing NAMESPACE anyway.

Plus I think making it a MUST is a little strong for something that is ultimately a user experience feature. Also, its only a SHOULD for the server to support the TRANSLATION extension to NAMESPACE anyway, so a client should not be required to re-issue NAMESPACE if there were no TRANSLATIONS before, right?

--
Cyrus Daboo