[Dovecot-news] v2.2.28 release candidate 2 released

Timo Sirainen tss at iki.fi
Wed Feb 22 19:18:34 UTC 2017


I'm assuming that most of the bugs are now found and fixed, so the final 2.2.28 should be out in a day or two.

Changes since rc1:
 * Reverted [UNKNOWN-CTE] -> [PARSE] change
 + pop3c: Added pop3c_features=no-pipelining setting to prevent using PIPELINING extension even though it's advertised.
 - lmtp_user_concurrency_limit didn't work if userdb changed username
 - Fixed various bugs that were introduced in rc1

Here's the full list of changes again:

 * director: "doveadm director move" to same host now refreshes user's
   timeout. This allows keeping user constantly in the same backend by
   just periodically moving the user there.
 * When new mailbox is created, use initially INBOX's
   dovecot.index.cache caching decisions.
 * Expunging mails writes GUID to dovecot.index.log now only if the
   GUID is quickly available from index/cache.
 * pop3c: Increase timeout for PASS command to 5 minutes.
 * Mail access errors are no longer ignored when searching or sorting.
   With IMAP the untagged SEARCH/SORT reply is still sent the same as
   before, but NO reply is returned instead of OK.

 + Make dovecot.list.index's filename configurable. This is needed when
   there are multiple namespaces pointing to the same mail root
   (e.g. lazy_expunge namespace for mdbox).
 + Add size.virtual to dovecot.index when folder vsizes are accessed
   (e.g. quota=count). This is mainly a workaround to avoid slow quota
   recalculation performance when message sizes get lost from
   dovecot.index.cache due to corruption or some other reason.
 + auth: Support OAUTHBEARER and XOAUTH2 mechanisms. Also support them
   in lib-dsasl for client side.
 + auth: Support filtering by SASL mechanism: passdb { mechanisms }
 + Shrink the mail processes' memory usage by not storing settings
   duplicated unnecessarily many times.
 + imap: Add imap_fetch_failure setting to control what happens when
   FETCH fails for some mails (see example-config).
 + imap: Include info about last command in disconnection log line.
 + imap: Created new SEARCH=X-MIMEPART extension. It's currently not
   advertised by default, since it's not fully implemented.
 + fts-solr: Add support for basic authentication.
 + Cassandra: Support automatically retrying failed queries if
   execution_retry_interval and execution_retry_times are set.
 + doveadm: Added "mailbox path" command.
 + mail_log plugin: If plugin { mail_log_cached_only=yes }, log the
   wanted fields only if it doesn't require opening the email.
 + mail_vsize_bg_after_count setting added (see example-config).
 + mail_sort_max_read_count setting added (see example-config).
 + pop3c: Added pop3c_features=no-pipelining setting to prevent using
   PIPELINING extension even though it's advertised.

 - Index files: day_first_uid wasn't updated correctly since v2.2.26.
   This caused dovecot.index.cache to be non-optimal.
 - imap: SEARCH/SORT may have assert-crashed in
 - imap: FETCH X-MAILBOX may have assert-crashed in virtual mailboxes.
 - imap: Running time in tagged command reply was often wrongly 0.
 - search: Using NOT n:* or NOT UID n:* wasn't handled correctly
 - director: doveadm director kick was broken
 - director: Fix crash when using director_flush_socket
 - director: Fix some bugs when moving users between backends
 - imapc: Various error handling fixes and improvements
 - master: doveadm process status output had a lot of duplicates.
 - autoexpunge: If mailbox's rename timestamp is newer than mail's
   save-timestamp, use it instead. This is useful when autoexpunging
   e.g. Trash/* and an entire mailbox is deleted by renaming it under
   Trash to prevent it from being autoexpunged too early.
 - autoexpunge: Multiple processes may have been trying to expunge the
   same mails simultaneously. This was problematic especially with
   lazy_expunge plugin.
 - auth: %{passdb:*} was empty in auth-worker processes
 - auth-policy: hashed_password was always sent empty.
 - dict-sql: Merge multiple UPDATEs to a single statement if possible.
 - fts-solr: Escape {} chars when sending queries
 - fts: fts_autoindex_exclude = \Special-use caused crashes
 - doveadm-server: Fix leaks and other problems when process is reused
   for multiple requests (service_count != 1)
 - sdbox: Fix assert-crash on mailbox create race
 - lda/lmtp: deliver_log_format values weren't entirely correct if Sieve
   was used. especially %{storage_id} was broken.
 - lmtp_user_concurrency_limit didn't work if userdb changed username

More information about the Dovecot-news mailing list