Hey Ken,


Thursday, July 05, 2001, 9:45:04 PM, you wrote:

KM> I am pleased to announce the availability of a selectable hierarchy
KM> separator for Cyrus IMAP.  Up until now, Cyrus used a netnews-style
KM> hierarchy, where '.' was used as the hierarchy delimiter -- thus
KM> prohibiting '.' from appearing in mailbox names.  This release allows a
KM> UNIX-style '/' separator to be used in the same fashion that David
KM> Fuchs' (and derivative) patches.

:)  Thanks Ken and Dave.

KM> This code leverages my previous alt-namespace work, and as a result does
KM> NOT change the on-disk mailstore structure, only what is sent via the
KM> IMAP protocol.  This means that any existing server can begin serving up
KM> mailboxes using the UNIX hierarchy separator (and/or the alternate
KM> namespace) simply changing the appropriate imapd.conf option.  In order
KM> to maintain compatibility with the on-disk structure, '.' in mailbox
KM> names are translated to '^' before being saved to disk.

I guess you figured it out.  Last I knew, you and Larry didn't even
know if this would be possible ;)

KM> You should consider this code to be alpha, but it is fully functional
KM> and appears to be as stable as the alt-namespace code.  I hacked this
KM> code in a couple of hours mainly as a proof of concept, so incompatible
KM> changes (such as the use of '^') may be made in the future, ie, DO NOT
KM> run this on a production server just yet.  I am hoping to have people
KM> test this code for bugs and performance issues (currently none known)
KM> before I commit to making this part of the standard distribution.

KM> Configuring the server to use the UNIX hierarchy separator is done by
KM> setting "unixhierarchysep: yes" in imapd.conf.  With this option, and
KM> the 'altnamespace' option, there are now four combinations of namespace
KM> and hierarchy delimiter.

Hmm . . . This would be fine for me, but maybe someone else would run
into a problem with wanting to use '/' in a username (have no clue
why).  In that case, an entry like "usesep: whatever_char_here" might
be a better idea, although admittedly harder to implement.

KM> The code can be obtained from CMU's CVS repository as usual using the
KM> 'hier-sep-r1' tag.  Otherwise, a pre-packaged distro can be obtained
KM> from:

KM> ftp://ftp.oceana.com/pub/cyrus-imapd-2.0.14-HIERSEP-r1.tar.gz
KM> http://www.oceana.com/ftp/cyrus-imapd-2.0.14-HIERSEP-r1.tar.gz

KM> Since I am the primary developer of this code, please send any feedback
KM> to me directly and/or the info-cyrus list.  Please do NOT send bug
KM> reports to cyrus-bugs.

KM> Enjoy,
KM> Ken

Oh, I will :)

Thanks a lot Ken.  I've been using Dave's patches quite successfully
(thanks Dave), but was looking to see them implemented with your ANN.

-- 
 Kevin

Reply via email to