http://dovecot.org/releases/2.2/beta/dovecot-2.2.beta1.tar.gz http://dovecot.org/releases/2.2/beta/dovecot-2.2.beta1.tar.gz.sig
Lots of fixes since 2.2.alpha1, especially related to dsync. Also dsync now supports syncing private message flags when INDEXPVT is used.
Here's again the list of all the major changes in v2.2:
* When creating home directories, the permissions are copied from the
parent directory if it has setgid-bit set. For full details, see
http://wiki2.dovecot.org/SharedMailboxes/Permissions
* "doveadm auth" command was renamed to "doveadm auth test"
* IMAP: ID command now advertises server name as Dovecot by default.
It was already trivial to guess this from command replies.
* dovecot.index.cache files can be safely accessed only by v2.1.11+.
Older versions may think they're corrupted and delete them.
+ Implemented IMAP MOVE and BINARY extensions
+ Implemented IMAP CATENATE, URLAUTH and URLAUTH=BINARY extensions
(by Stephan Bosch).
+ Implemented IMAP NOTIFY extension. Requires mailbox_list_index=yes
to be enabled.
+ Redesigned and rewritten dsync. The new design makes the syncing
faster, more reliable and more featureful. The new dsync protocol
isn't backwards compatible with old dsync versions (but is designed
to be forwards compatible with future versions).
+ All mailbox formats now support per-user message flags for shared
mailboxes by using a private index. It can be enabled by adding
:INDEXPVT=<path> to mail location. This should be used instead of
:INDEX also for Maildir/mbox to improve performance.
+ Improved mailbox list indexes. They should be usable now, although
still disabled by default.
+ Added LAYOUT=index. The mailbox directories are created using their
GUIDs in the filesystem, while the actual GUID <-> name mapping
exists only in the index.
+ LMTP proxy: Implemented XCLIENT extension for passing remote IP
address through proxy.
On 1/7/13 12:33 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/beta/dovecot-2.2.beta1.tar.gz
$ ./configure && make && make check on a fresh install:
[...] Debug: http-client: request [GET http://pigeonhole.dovecot.org:80/]: Submitted Debug: http-client: host pigeonhole.dovecot.org: Host created Debug: http-client: host pigeonhole.dovecot.org: Performing asynchronous DNS lookup Error: http-client: dns_lookup(pigeonhole.dovecot.org) failed: connect(/var/run/dovecot/dns-client) failed: No such file or directory [...] Debug: http-client: request [POST http://jigsaw.w3.org:80/HTTP/300/Go_307]: Destroy (requests left=3) Debug: http-client: Waiting for 3 requests to finish Panic: file ioloop-epoll.c: line 182 (io_loop_handler_run): assertion failed: (msecs >= 0) Error: Raw backtrace: ./test-http-client() [0x41710a] -> ./test-http-client(default_fatal_handler+0x2a) [0x4171ca] -> ./test-http-client(i_fatal+0) [0x40ba05] -> ./test-http-client() [0x41d114] -> ./test-http-client(io_loop_run+0x28) [0x41bf58] -> ./test-http-client(http_client_wait+0x4a) [0x40e6ba] -> ./test-http-client(main+0x6b1) [0x40c351] -> /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f5a693ce9b5] -> ./test-http-client() [0x40c65d] /bin/sh: line 1: 31440 Aborted ./$bin make[2]: *** [check-test] Error 1
$ ./configure && make && make check on a dovecot-2.1 running machine:
[...] Debug: http-client: host pigeonhole.dovecot.org: DNS lookup successful; got 1 IPs Debug: http-client: host pigeonhole.dovecot.org: Setting up connection to 217.119.238.12:80 (ssl=no) Debug: http-client: peer 217.119.238.12:80: Peer created Debug: http-client: conn 217.119.238.12:80 [2]: Connection created (1 parallel connections exist) Debug: http-client: host pigeonhole.dovecot.org: Setting up connection to 217.119.238.12:81 (ssl=no) Debug: http-client: peer 217.119.238.12:81: Peer created Debug: http-client: conn 217.119.238.12:81 [3]: Connection created (1 parallel connections exist) Debug: http-client: host pigeonhole.dovecot.org: Setting up connection to 217.119.238.12:443 (ssl=yes) Debug: http-client: peer 217.119.238.12:443: Peer created Fatal: Plugin 'ssl_iostream_openssl' not found from directory /usr/lib64/dovecot make[2]: *** [check-test] Error 1
Looks like make check needs a running version of dovecot (version 2.2?) for http-client tests. Is this intentional?
-- Eray Aslan
On Mon, 2013-01-07 at 15:35 +0200, Eray Aslan wrote:
On 1/7/13 12:33 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/beta/dovecot-2.2.beta1.tar.gz
$ ./configure && make && make check on a fresh install:
[...] Debug: http-client: request [GET http://pigeonhole.dovecot.org:80/]: Submitted Debug: http-client: host pigeonhole.dovecot.org: Host created Debug: http-client: host pigeonhole.dovecot.org: Performing asynchronous DNS lookup Error: http-client: dns_lookup(pigeonhole.dovecot.org) failed: connect(/var/run/dovecot/dns-client) failed: No such file or directory [...] Looks like make check needs a running version of dovecot (version 2.2?) for http-client tests. Is this intentional?
I hadn't realized it needed a running Dovecot, but I had been wondering if it's a good idea to do remote connections in "make check". Now thinking more about it, it's not a very good idea, so I've removed it.
It would be possible to avoid a running Dovecot by setting dns_client_socket_path = "", but for some reason the test hangs then at the end.
On Mon, 2013-01-07 at 12:33 +0200, Timo Sirainen wrote:
Lots of fixes since 2.2.alpha1, especially related to dsync. Also dsync now supports syncing private message flags when INDEXPVT is used.
After some more dsync fixes that are available in hg, I'm now using it for replicating my company's mails. Seems to be working now, v2.2.rc1 hopefully not far away. :)
Although still in TODO is for the replication process to use the new "quick stateful sync" feature of dsync. It requires keeping track of the state string for each user, so needs a bit larger change. Maybe it's enough to keep these strings only in memory. (Replication currently does a full sync for all users at startup anyway.)
Also people have wanted dsync to support regular TCP connections. It should be somewhat easy to support that using doveadm service, I think.
On 8.1.2013, at 10.47, Timo Sirainen tss@iki.fi wrote:
On Mon, 2013-01-07 at 12:33 +0200, Timo Sirainen wrote:
Lots of fixes since 2.2.alpha1, especially related to dsync. Also dsync now supports syncing private message flags when INDEXPVT is used.
After some more dsync fixes that are available in hg, I'm now using it for replicating my company's mails. Seems to be working now, v2.2.rc1 hopefully not far away. :)
And after some more fixes it really seems to be working now.
Although still in TODO is for the replication process to use the new "quick stateful sync" feature of dsync. It requires keeping track of the state string for each user, so needs a bit larger change. Maybe it's enough to keep these strings only in memory. (Replication currently does a full sync for all users at startup anyway.)
Implemented this also. The state strings are kept only in memory. Much better for dsync to use only a few kilobytes of network traffic per change than hundreds of kBs. :)
participants (2)
-
Eray Aslan
-
Timo Sirainen