1:tocdepth: 3
2
3====================================
4Cyrus IMAP 3.2.0-beta2 Release Notes
5====================================
6
7.. WARNING::
8    This is a beta release and may contain fun bugs.  Testing it
9    out and providing feedback would be greatly appreciated, but do
10    not run this on your production mail stores!
11
12Download from GitHub:
13
14    *   https://github.com/cyrusimap/cyrus-imapd/releases/download/cyrus-imapd-3.2.0-beta2/cyrus-imapd-3.2.0-beta2.tar.gz
15    *   https://github.com/cyrusimap/cyrus-imapd/releases/download/cyrus-imapd-3.2.0-beta2/cyrus-imapd-3.2.0-beta2.tar.gz.sig
16
17.. _relnotes-3.2.0-beta2-changes:
18
19Major changes since the 3.0.x series
20====================================
21
22* Sieve bug fixes and features
23* Caldav and Carddav improvements
24* Support for JMAP core protocol (:rfc:`8620`)
25* Support for JMAP Mail (:rfc:`8621`)
26* Experimental support for JMAP Contacts (requires
27  `jmap_nonstandard_extensions: yes` in :cyrusman:`imapd.conf(5)`)
28* Experimental support for JMAP Calendars (requires
29  `jmap_nonstandard_extensions: yes` in :cyrusman:`imapd.conf(5)`)
30* Xapian bug fixes
31* Improvements to Annotations handling
32* DRAC support has been deprecated
33* Support for Prometheus stats
34* SNMP stats support has been deprecated
35* Removed support for the Sphinx backend to squatter searches
36* New cyrus.index format v16 included since 3.1.5 - adds unseen count and
37  createdmodseq to index header, savedate and createdmodseq to index records
38* Support for WebSockets
39* Support for HTTP/2.0
40* Experimental support for Zeroskip database format
41* Intermediate mailboxes are now recorded in mailboxes database
42* Conversations database format update - adds flags and internaldate fields,
43  and is now versioned for future-compatibility.  You will need to rebuild
44  your conversations databases with :cyrusman:`ctl_conversationsdb(8)` and
45  the `-b` switch to benefit from this
46* IMAP FETCH accepts two new data items, MAILBOXIDS and MAILBOXES, which
47  respectively return the unique ids or names of the containing mailboxes of
48  each message in the sequence (for best performance, rebuild your
49  conversations databases as above)
50* :cyrusman:`mbpath(8)` is now much more useful
51* Twoskip database format now supports shared locks, and ensures record
52  headers do not span disk block boundaries
53* All Cyrus binaries now use real sysexits exit codes instead of mapping
54  nearly everything to EX_TEMPFAIL
55* CyrusDB errors now syslog the actual error instead of just "cyrusdb error"
56* New `allowdeleted` :cyrusman:`imapd.conf(5)` option (default off), which
57  allows admin users to see deleted mailboxes and expunged messages over IMAP
58* :cyrusman:`cyr_virusscan(8)` now supports custom templates for notifications
59  sent about infected messages that have been deleted
60* :cyrusman:`imapd.conf(5)` options that represent a time duration now accept
61  'd', 'h', 'm', 's' suffixes rather than arbitrary units
62* The `tls_server_cert` and `tls_server_key` :cyrusman:`imapd.conf(5)` options
63  now allow two certificate/key pairs (e.g. RSA and EC) to be used.  Thanks
64  Дилян Палаузов
65* Mailbox create/delete/rename are now performed under a lock on the user's
66  namespace, to prevent races (especially during big renames)
67* The :cyrusman:`cyr_info(8)` `conf-lint` subcommand no longer complains
68  about channel-prefixed sync options
69* New `master_bind_errors_fatal` :cyrusman:`imapd.conf(5)` option (default
70  off), with which master will refuse to start if any of the configured
71  services are unable to successfully bind their port.  The default and legacy
72  behaviour is for master to start with the affected services disabled, and
73  not try to start them again until a SIGHUP is received
74* New `autocreate_acl` :cyrusman:`imapd.conf(5)` option, for specifying ACLs
75  to use when mailboxes are created by `autocreate_inbox_folders`
76
77Updates to default configuration
78================================
79
80The :cyrusman:`cyr_info(8)` `conf`, `conf-all` and `conf-default` subcommands
81now accept an `-s <version>` argument to highlight :cyrusman:`imapd.conf(5)`
82options that are new or whose behaviour has changed since the specified
83version.  We recommend using this when evaluating a new Cyrus version to
84check which configuration options you will need to re-examine and maybe change
85during the process.
86
87* The `specialusealways` option is now enabled by default. It must
88  explicitly be disabled for interoperability with legacy clients that
89  can't handle RFC 6154 attributes in extended LIST commands.
90* The values accepted by `expunge_mode` have changed, please see the
91  documentation for more information about the changes.
92* The legacy GETANNOTATIONS/SETANNOTATIONS IMAP commands will no longer
93  work unless `annotation_enable_legacy_commands` is enabled.
94* The `outbox_sendlater` option and its functionality have been removed.
95
96
97Security fixes
98==============
99
100* Contains fix for `CVE-2017-14230 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14230>`_
101* Contains fix for `CVE-2019-18928 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18928>`_
102* Contains fix for `CVE-2019-19783 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19783>`_
103
104
105Significant bugfixes
106====================
107
108* Contains fix for :issue:`2839`
109
110
111.. _Xapian: https://xapian.org
112.. _ClamAV: https://www.clamav.net
113.. _JMAP: http://jmap.io
114