[Dovecot] v1.1 plans

Timo Sirainen tss at iki.fi
Tue Apr 17 21:46:33 EEST 2007


I think I won't do any actual releases until it's mostly feature
complete. Then maybe v1.1.alpha1 or v1.1.beta1. So if you want to test
it before then, use CVS or the nightly snapshots.

I'm planning on keeping v1.1 almost completely compatible with v1.0.
There could be some minor configuration file changes, but for most
people v1.0's dovecot.conf should work with v1.1.

I want to update index file handling to use less locks and update
dovecot.index file less often. The file formats would still stay
backwards compatible with v1.0. After this I'm hoping to get index files
working well with NFS even with attribute cache enabled.

Dovecot v2.0 then brings incompatible index files and more or less
rewritten configuration file handling. It could still support old config
file format and settings, but the default will be somewhat different.

I'm hoping to release the first alphas/betas in 2-3 months, with v1.1.0
maybe even as early as next summer. The good thing here is that index
file code hasn't changed much since v1.0, so it should be stable. The
bad thing is that I've added a couple of completely new indexes. I'm
also quite busy for the next month, but I'm not sure how much it affects
my coding. :)

The largest already implemented new features are:

	+ Added support for IMAP UIDPLUS extension
	+ IMAP SORT: Sort keys are indexed, which makes SORT commands faster.
	+ IMAP THREAD: Threads are indexed into a dovecot.index.thread file.
	  It can usually be updated incrementally, so this makes THREAD fast.
	+ Added Dovecot-specific X-REFERENCES2 threading algorithm.
	  It's similar to REFERENCES, but it doesn't do base subject merging
	  and it sorts the threads by their newest message.
	+ When saving messages, update cache file immediately with the data
	  that we expect client to fetch later. Maildir-only currently.
	+ Mailbox list indexes. Mailbox metadata is stored there, so STATUS
	  commands can return synchronized mailboxes' metadata simply by
	  reading a single mailbox list index file.
	   - FIXME: Currently works only with Maildir++ layout.
	+ Expire plugin can be used to keep track of oldest messages in
	  specific mailboxes. A nightly run can then quickly expunge old
	  messages from the mailboxes that have them. The tracking is done
	  using lib-dict, so you can use either Berkeley DB or SQL database.
	+ Namespaces are supported everywhere now.
	    - FIXME: except by convert plugin
	+ Full text search indexing support with Lucene and Squat backends.
	+ OTP and S/KEY authentication mechanisms (by Andrey Panin).
	+ mbox and Maildir works with both Maildir++ and FS layouts. You can
	  change these by appending :LAYOUT=maildir++ or :LAYOUT=fs to
	  mail_location.

Features that I'm planning on implementing:

 - Fully supported shared mailboxes and IMAP ACL extension
 - Replace Squat FTS indexes with my new design
 - Case-insensitive searches with non-ASCII text as well
 - Maybe add support for all kinds of IMAP extensions that can be easily
supported. LEMONADE extensions especially: CONDSTORE, CATENATE and maybe
even URLAUTH if I can figure out how it should work.

If a feature can be implemented completely as a plugin, it could still
come in v1.1.beta stage, because it won't destabilize the rest of the
Dovecot anyway.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://dovecot.org/pipermail/dovecot/attachments/20070417/6fcbfc66/attachment.pgp 


More information about the dovecot mailing list