http://dovecot.org/releases/2.0/beta/dovecot-2.0.beta2.tar.gz http://dovecot.org/releases/2.0/beta/dovecot-2.0.beta2.tar.gz.sig I tried to keep the configuration and APIs compatible with v2.0.beta1, but unfortunately there were a few things that really had to be changed: 1. passdbs and userdbs have now a separate "driver" setting inside them. So for example if you had: userdb passwd { } You'll now need to use instead: userdb { driver = passwd } 2. Services now have default inet_listeners. You need to either remove your existing ones, or override the defaults by giving the listeners's name like shown in the new example master.conf. For example if you had: service imap-login { inet_listener { port = 1234 .. change it to: service imap-login { inet_listener imap { port = 1234 If you want to disable a default listener, you can set its port to 0. Some new features: - Added auth_verbose_passwords = no|plain|sha1. If authentication fails, this setting logs the used password. If you don't really need to know what the password itself was, but are more interested in knowing if the user is simply trying to use the wrong password every single time or if it's a brute force attack, you can set this to "sha1" and only the SHA1 of the password is logged. That's enough to know if the password is same or different between login attempts. - lazy-expunge: Support a single-namespace configuration. In this setup if mailbox has some expunged messages and then the whole mailbox gets deleted, they get merged into the same deleted mailbox. - protocol !imap { .. } adds configuration to all protocols except imap. - imap/pop3 proxying supports now async DNS lookups for hosts. There's a separate dns-client service doing the lookups using OS's own blocking resolver. - dovecot-config file changed in a way that it'll be easier to create external software linking against dovecot libraries. This made Pigeonhole's configure script a lot simpler. And of course there have been lots of fixes.