Upgrading Dovecot v1.0 to v1.1¶
You can use your old dovecot.conf
from v1.0. It should work without changes, although a couple of deprecated settings have been removed.
Upgrading from Dovecot versions older than v1.0.rc1 directly to v1.1 is not recommended. v1.0 versions contain some backwards compatibility checks and file format converters that have been removed from v1.1.
If you want to downgrade back after running v1.1, don’t downgrade to older versions than v1.0.8 or you’ll get crashes.
Especially if you’re using maildir, the dovecot-uidlist
file format has changed and Dovecot versions older than v1.0.2 can’t read it.
Connections¶
listen = [::]
listens only for IPv6 connections now in most operating systems. If you want both IPv4 and IPv6 uselisten = *, [::]
By default the number of connections per-user per-IP is limited to 10. You can change this with the
mail_max_userip_connections
setting.
Authentication¶
Passwd-file: If you use
%d
in args, it no longer means that domain isn’t looked up from the passwd-file. You’ll need to addusername_format=%n
prefix to args (e.g.args = username_format=%n /etc/virtual.%d
).Empty or NULL password no longer means “any password is valid”. You’ll also have to return “nopassword” field.
PAM: There’s no more
blocking=yes
setting, it’s now always enabled. If you want to limit the number of lookups done by a dovecot-auth worker, changeauth_worker_max_request_count
setting. Setting it to 1 makes it work basically the same as the oldblocking=no
.Passwd: The problem with passwd lookups is that temporary errors (e.g. LDAP server down) are returned as “user doesn’t exist” errors. You may want to try the new NSS userdb.
SQL and LDAP:
user_global_uid
anduser_global_gid
fields have been removed from their config files. Instead you can now usemail_uid
andmail_gid
settings indovecot.conf
. This also means that it’s no longer a requirement to specify a userdb at all (a dummy Static User Database is used internally).
Mail handling¶
In v1.0
mmap_disable=yes
might have worked faster. If you had changed this only because of that, it’s time to set it back to “no”.NFS users should now set
mail_nfs_storage=yes
andmail_nfs_index=yes
. Dovecot no longer requires attribute cache to be disabled.Quota Plugin plugin has completely new configuration. See Quota Plugin.
Maildir:
dovecot-uidlist
file is in a new format. The old format is automatically converted to new one, but if you plan to move back to v1.0 be sure to use at least v1.0.2 which will also understand this new format.Index files have slightly changed as well. Upgrading to v1.1 should go transparently, but moving back to v1.0 might again cause some errors. v1.0.8 fixes some assert-crashes that were caused by reading v1.1-generated index files.
dotlock_use_excl=yes
is default nowadays. If you’re still using an ancient NFSv2 setup, you’ll need to set this to “no”.mbox: Delete existing dovecot.index.cache files from all mailboxes. Otherwise you may see some errors in logs.
default_mail_env
has been renamed tomail_location
(since v1.0.rc11 already).Namespaces:
deliver now supports namespaces. If you use namespace prefixes or a non-default separator and you deliver to non-INBOXes, deliver will now have to use the configured prefix and separators.
This is especially important for Sieve scripts. For example if you only have “INBOX.” namespace prefix and you used to use
fileinto "box"
, it now has to be instead:fileinto "INBOX.box"
hidden=yes
now hides the namespace only from IMAP NAMESPACE reply. You’ll also need to setlist=no
to truly hide them from clients’ mailbox list.
Removed settings¶
mail_read_mmaped
: Mails are never read mmaped anymore. There wasn’t much point.
mmap_no_write
: OpenBSD users will have to settle for mmap_disable=yes for now.