http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gz.sig Pretty large release. Please test before the final v2.2.28, which should be out in a few days. BTW. Our plan is to start making new releases approximately every month from now on. * 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. * imap: When BINARY FETCH sees invalid content, return NO [PARSE] reply instead of [UNKNOWNCTE] (which is now used only for actually unknown Content-Transfer-Encoding headers). * 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). - 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 client_check_command_hangs - 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_autoexpunge_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.
On 20 February 2017 at 13:15, Timo Sirainen <tss at iki.fi> wrote:> http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gz > http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gz.sig > > Pretty large release. Please test before the final v2.2.28, which should > be out in a few days. > > BTW. Our plan is to start making new releases approximately every month > from now on. >So by December we'll have had at least 10 new releases? Why do many though? Just curious. I am running this on two servers already - and monitoring... -- Best regards, Odhiambo WASHINGTON, Nairobi,KE +254 7 3200 0004/+254 7 2274 3223 "Oh, the cruft."
Hi, On 20-Feb-17 12:15, Timo Sirainen wrote:> imap: When BINARY FETCH sees invalid content, return NO [PARSE] reply > instead of [UNKNOWNCTE] (which is now used only for actually unknown > Content-Transfer-Encoding headers).Has this been tested with Roundcube webmail? I know Roundcube has some workarounds when dovecot now responds with that "[UNKNOWNCTE]". Best regards, Toni
On 20 Feb 2017, at 13.47, Toni Mattila <toni at solu.fi> wrote:> > Hi, > > On 20-Feb-17 12:15, Timo Sirainen wrote: >> imap: When BINARY FETCH sees invalid content, return NO [PARSE] reply >> instead of [UNKNOWNCTE] (which is now used only for actually unknown >> Content-Transfer-Encoding headers). > > Has this been tested with Roundcube webmail? I know Roundcube has some workarounds when dovecot now responds with that "[UNKNOWNCTE]".No. Hmm. This was one of the changes that I was wondering whether it should be in v2.2 or if it should be left to v2.3. Actually looks like the change was done already last May, so I must have decided earlier not to put it to v2.2, but now semi-accidentally added it. I'll remove it from the final v2.2.28, but I suppose should tell Roundcube to start preparing for this change in v2.3.
On 20.02.2017 12:47, Toni Mattila wrote:>> imap: When BINARY FETCH sees invalid content, return NO [PARSE] reply >> instead of [UNKNOWNCTE] (which is now used only for actually unknown >> Content-Transfer-Encoding headers). > > Has this been tested with Roundcube webmail? I know Roundcube has some > workarounds when dovecot now responds with that "[UNKNOWNCTE]".I suppose we'll have to fix the Roundcube code where we do: // handle UNKNOWN-CTE response - RFC 3516, try again with standard BODY request if ($binary && !$found && preg_match('/^' . $key . ' NO \[UNKNOWN-CTE\]/i', $line)) { Create a ticket for this, please. In RFC3501 [PARSE] is described as "The human-readable text represents an error in parsing the [RFC-2822] header or [MIME-IMB] headers of a message in the mailbox.". So, is this really an appropriate error code for this case? -- Aleksander 'A.L.E.C' Machniak Kolab Groupware Developer [http://kolab.org] Roundcube Webmail Developer [http://roundcube.net] ---------------------------------------------------- PGP: 19359DC1 # Blog: https://kolabian.wordpress.com
On 20/02/2017 10:15, Timo Sirainen wrote:> http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gzI had a minor problem on build. I have configured without compression, [ZFS is providing it]: ./configure \ ... \ --with-bzlib=no \ --with-zlib=no \ --with-lzma=no \ --with-lz4=no \ src/lib-compression/istream-zlib.c uses "#ifdef HAVE_ZLIB" to prevent compiling the compression methods but test-compression.c tries to use these: Undefined first referenced symbol in file i_stream_create_gz test-compression.o ld: fatal: symbol referencing errors. No output written to test-compression I avoided the problem by hacking out compression-test from the makefile src/lib-compression/Makefile.in Otherwise rc1 is working with Solaris 10 / Sun Studio 12.5 - thank you.
On 20 Feb 2017, at 13.43, Odhiambo Washington <odhiambo at gmail.com> wrote:> >> BTW. Our plan is to start making new releases approximately every month >> from now on. >> > > So by December we'll have had at least 10 new releases?Maybe. Lets see :)> Why do many though? Just curious.There's a lot of work to do and doesn't make sense to do as huge releases as they now seem to be. BTW. Related to this: We're now looking for someone to do even more coding work for us, ideally to be located in Finland: https://www.linkedin.com/jobs/view/275257998/ <https://www.linkedin.com/jobs/view/275257998/>
Pigeonhole will follow later today. Op 20-2-2017 om 11:15 schreef Timo Sirainen:> http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gz > http://dovecot.org/releases/2.2/rc/dovecot-2.2.28.rc1.tar.gz.sig > > Pretty large release. Please test before the final v2.2.28, which should be out in a few days. > > BTW. Our plan is to start making new releases approximately every month from now on. > > * 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. > * imap: When BINARY FETCH sees invalid content, return NO [PARSE] reply > instead of [UNKNOWNCTE] (which is now used only for actually unknown > Content-Transfer-Encoding headers). > * 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). > > - 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 > client_check_command_hangs > - 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_autoexpunge_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.
On Mon Feb 20 2017 05:15:34 GMT-0500 (Eastern Standard Time), Timo Sirainen <tss at iki.fi> wrote:> + auth: Support OAUTHBEARER and XOAUTH2 mechanisms. Also support them > in lib-dsasl for client side.So... does this mean dovecot now has OAUTH2 support? If so... yay! and I'll go open a Thunderbird bug to add support for dovecot's OAUTH2...
On 20.02.2017 23:56, Tanstaafl wrote:> On Mon Feb 20 2017 05:15:34 GMT-0500 (Eastern Standard Time), Timo > Sirainen <tss at iki.fi> wrote: >> + auth: Support OAUTHBEARER and XOAUTH2 mechanisms. Also support them >> in lib-dsasl for client side. > So... does this mean dovecot now has OAUTH2 support? If so... yay! and > I'll go open a Thunderbird bug to add support for dovecot's OAUTH2...Yes. It support OAUTHBEARER and XOAUTH2 bearer authentication. See https://wiki.dovecot.org/PasswordDatabase/oauth2 Aki