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?