RELNOTES.txt 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. Release notes for 8.3.0
  2. =======================
  3. Enhancements:
  4. * mapi: drop global lock and replace singleton allocmore table by
  5. per-object vectors [KC-328]
  6. * swig: expose group and company properties in Python [KC-320]
  7. * xapian-compact.py: new -c option to specify config file [KC-205]
  8. * utils: support setting out-of-office without an until-date [KC-275]
  9. * gateway, server: reload SSL certificates on SIGHUP [KC-301]
  10. * gateway: optimize LIST, SELECT, STATUS [KC-490]
  11. * dagent: log_raw_message option can now be used selectively on users [KC-370]
  12. * icalmapi: VCF conversion [KC-420]
  13. * migration-pst: call SaveChanges only once [KC-534]
  14. Fixes:
  15. * pyko: do not throw backtraces on log messages [KC-340]
  16. * server: Ctrl-C now works in gdb [KC-171]
  17. * ics: make creation of new syncids work incrementally [KC-208]
  18. * libserver: change incorrect compare operator for EID_V0 [KC-365]
  19. * migration-pst: show usage, not traceback, for invalid options [KC-372]
  20. * migration-pst: skip root folder more intelligently [KC-487]
  21. * migration-pst: MV properties are handled better [KC-457]
  22. * inetmapi: avoid buffer overread on rejected recipients
  23. (showed garbage in logs) [KC-398]
  24. * client: add extra checks for EID sizes [KC-500]
  25. * gateway: enforce user and password checking on local socket [KC-396,KC-490]
  26. * caldav: avoid a nullptr dereference [KC-236]
  27. * cachestat: avoid exception and unpack tuple [KC-402]
  28. * ldapplugin: revert "catch empty ldap_search_base" [KC-602]
  29. * spooler: fix crash on forwarding rules [KC-608]
  30. Changes:
  31. * server: compressed attachments now get the same permissions as uncompressed
  32. ones [KC-380]
  33. * server: make softdelete_lifetime config setting a reloadable
  34. property [KC-472]
  35. * icalmapi: handle missing timezone for RRULE [KC-414]
  36. * backup: maintain deleted folders and add --purge N option [KC-376]
  37. * migration-pst: filter metadata at start of subject [KC-424]
  38. * migration-pst: ignore decode errors [KC-521]
  39. * common: fix empty text bodies when converting U+0000 from
  40. RTF/HTML [KC-557,KC-580]
  41. * icalmapi: reworked copying description into mail body [KC-568]
  42. Of special mention:
  43. * search: python3 support (but requires new python-xapian and,
  44. as a result, a db migration or full reindexing)
  45. Developer/packager notes:
  46. * KC variables and functions now live in the KC:: C++ namespace [KC-369]
  47. * Build-time requirements: gsoap >= 2.8.39 [KC-335], libvmime >= 0.9.2,
  48. boost no longer needed at all [KC-451], xmlto no longer needed at all.
  49. Release notes for 8.2.0
  50. =======================
  51. Fixes:
  52. * backup: avoid exceptions on problematic rules/ACLs/delegates [KC-213,KC-266]
  53. * The comment for server.cfg's "disabled_features" was wrong [KC-262]
  54. * php: fix crash by adding missing pointer type conversions [KC-274]
  55. * dagent: the "Received" debugging header had the wrong target address
  56. * gateway: do not emit an X-Mailer field when retrieving mail [KC-277]
  57. * gateway: report missing attachments over IMAP better [KC-436]
  58. * server/ldap: report empty ldap_search_base setting
  59. * client: verify peer's SSL certificate name [KC-156,KC-409]
  60. * admin: support unwrapping "default:" type URLs [KC-289]
  61. * backup: fix tracebacks when used with ZCP [KC-306,KC-307,KC-308]
  62. * server: implement missing readback of compressed attachments [KC-285]
  63. * dagent: iCal descriptions caused wrong body parts to be displayed [KC-138]
  64. * dagent: mr-process failed to copy attachments to the calendar item [KC-202]
  65. * dagent: restore/rework forced ASCII charset upgrade [KC-294]
  66. * server: S3 attachment size was not calculated [KC-351]
  67. * inetmapi: review misdetection of TNEF necessity for reminders [KC-348]
  68. * icalmapi: unbreak timezone lookup [KC-313]
  69. * icalmapi: handle RRULE with missing timezone [KC-341]
  70. * inetmapi: avoid an infinite recursion on SMIME handling [KC-366]
  71. * inetmapi: avoid buffer overread when generating NDR [KC-398]
  72. * inetmapi: avoid overzealously generating winmail.dat [KC-348]
  73. * server: equalize fs permissions for attachments [KC-380]
  74. * migration-pst: resolve tracebacks [KC-372,KC-373,KC-377]
  75. * migration-pst: do not skip folder when items unprocessible [KC-417]
  76. * common: fix spurious crash in sk_SSL_COMP_free on shutdown [KC-443]
  77. Enhancements:
  78. * client: Kerberos/GSSAPI support [KC-396]
  79. * PST importer [KC-59]
  80. * Python 3 support [KC-48,KC-267]
  81. * search: files are now compacted, and their uid/gid checked [KC-188]
  82. * server: allow search folder creation outside of own store [KC-271]
  83. * dagent: forwarding by rule can be restricted with a whitelist [KC-109]
  84. * search: add script for findroot upgrade [KC-300]
  85. * php: can build with ZTS again [KC-442]
  86. * php: ICS import/export functions [KC-302]
  87. * server: AWS4-HMAC-SHA256 support for S3 [KC-170]
  88. * pyko: permit "public@company" syntax to specify stores [KC-317]
  89. * dagent: new AUTORESPOND_BCC option for use with OOF [KC-319]
  90. * kopano-stats: bind 'q' key to exit as well [KC-105]
  91. * presence: log authentication errors
  92. * Improved PHP7 support [*,KC-330]
  93. * backup: backup deleted items and folders [KC-376]
  94. * backup: add --purge option [KC-376]
  95. * backup: improved logging when ACL does not resolve to user/group [KC-431]
  96. Changes:
  97. * Non-Delivery Reports now originate from "Mail Delivery System"
  98. (like postfix) instead of yourself [KC-309]
  99. * Support for building with a no-SSLv2 OpenSSL 1.1. [KC-230]
  100. If you run such a setup, be aware that a config setting like
  101. "ssl_protocol = !SSLv2" in one or more of kopano-{server,gateway,ical}.cfg
  102. can inhibit the process from starting.
  103. * Cleanup of the example LDAP configuration files. [KC-229]
  104. /usr/share/doc/kopano/example-configs/ now has just a ldap.cfg,
  105. and no more ldap{,ms}.{active-directory,ldap}.cfg.
  106. * The example LDAP config file now has a different proposed value for
  107. ldap_object_search_filter for OpenLDAP. [KC-218]
  108. * spooler: messages with reminder will be sent with a TNEF copy [KC-152]
  109. * admin: group features will no longer be shown [KC-239]
  110. * search: log to file (if set) instead of stdout [KC-204]
  111. * search: treat '_' as a word break [KC-290]
  112. * swig: resolve crash when python programs end [KC-269]
  113. * config: change ldap_object_search_filter for WebApp to be able to
  114. search by mail address [KC-337]
  115. * backup: synchronize soft-deleted items [KC-376]
  116. * The RTF encoder incorrectly produced paragraphs where
  117. it should have created linefeeds [KC-338]
  118. * The RTF decoder failed to see that \uXXXX could start a paragraph [KC-338]
  119. * The RTF decoder erroneously created a new paragraph on \pard [KC-338]
  120. Developer/packager notes:
  121. * Support for building the source with newer gsoap
  122. (upto and including 2.8.37) [KC-261]
  123. * KC 8.2 is the first to support 2.8.34+ at runtime. [KC-261]
  124. Earlier KC releases only support gsoap < 2.8.30 because KC was using
  125. undocumented behavior for which the generator changed the wire protocol.
  126. * New libvmime API is now being used [KC-263]
  127. Internal:
  128. * Many "goto exit" were abolished and reordered [KC-87]
  129. * for() loop verbosity reduced by using range-based loops [KC-88]
  130. * pthread_mutex calls have been switched to std::mutex [KC-191]
  131. * Coverity report fixes and other possible NULL dereferences [KC-23,KC-235]
  132. * Memory leak fixes [KC-93,KC-98,KC-316]
  133. * Reduction of symbol table sizes [KC-20]
  134. Release notes for 8.1.0 [2016-10-05]
  135. ====================================
  136. Fixes:
  137. * server: A fast-growing memory leak was resolved [KC-12]
  138. * sql schema: all PRIMARY keys need to be NOT NULL, otherwise a UNIQUE
  139. key would be required. / MySQL 5.7 support [KC-2]
  140. * server: avoid "netlink: 4 bytes leftover" in dmesg [KC-82]
  141. * ldapplugin: hopefully avoid "Timed out" errors from ldap_search [KC-74]
  142. * swig: resolve a memory leak when using python components [KC-72]
  143. * server: better guard against off-size EntryIDs [KC-60]
  144. * ics: avoid referencing a value-replaced mysql_fetch_lengths array [KC-52]
  145. * backup: restore container classes [KC-22]
  146. * all daemons: fixed coredumps not getting generated most of the time [KC-61]
  147. * all: issue setgroups(2) before setuid(2) [KC-37]
  148. * server: avoid infinite do-nothing loop if tmp_path is unwritable [KC-77]
  149. * backup: users without a store are now ignored [KC-78]
  150. * kopano-mailbox-permissions: resolve a crash involving Unicode [KC-100]
  151. * inetmapi: Message-Id was truncated on send [KC-101]
  152. * inetmapi: character set was ignored when reading TNEF mails
  153. (mails with a winmail.dat part/attachment) [KC-83]
  154. * python: avoid terminal exception when handling a date past year 9999 [KC-184]
  155. * caldav: Lightning workaround is not to apply to Apple mail client [KC-145]
  156. * search: continue even if xapian db cannot be opened [KC-174]
  157. * search: cure an infinite loop [KC-157]
  158. * backup: miscellaneous [KC-161, KC-162, KC-192]
  159. * init: classic init scripts showed wrong status for python daemons [KC-220]
  160. * client: do check SSL certificate subject names [KC-156]
  161. Enhancements:
  162. * server: add ICS log messages [KC-18]
  163. * server: ship example config files for ldap multi-server [KC-65]
  164. * server: speed up REPLACE-type sql queries [KC-58]
  165. * server: speed up login phase by caching PR_LOGON_TIME [KC-6]
  166. * server: indexing of junk folders can be controlled now [KC-17]
  167. * server: warn about on-disk attachments that have wrong metadata [KC-104]
  168. * libicalmapi: improve fallback scenario to server_timezone in ical.cfg [KC-11]
  169. * tools: add an SPropValue pretty printer for use with gdb
  170. * `systemctl reload` for kopano services is now usable where supported [KC-71]
  171. * RHEL(6) initscripts did not cope with python daemons well [KC-96]
  172. * backup: add option to skip broken attachments [KC-45]
  173. * spooler: rule name is now logged [KC-102]
  174. * archiver: new scripts kopano-archiver-{aclsync,aclset,restore} [KC-39]
  175. * python/swig: resolve some memory leaks [KC-92, KC-95]
  176. * client: permit self-signed certificates [KC-155]
  177. * Add scripts (source tarball only) to inspect/delete stale search folders
  178. which slow down kopano-server startup and message modification when too many
  179. have accumulated [KC-140]
  180. * server: the allocator library is now switchable [KC-191, KC-216],
  181. there is a new option "allocator_library" in server.cfg to control it.
  182. * Initial PHP7 support [KC-130, KC-131, KC-134, KC-158]
  183. (not complete for Z-Push yet)
  184. Changes:
  185. * search: no longer do indexing on root and Draft folders [KC-57]
  186. * search: index junk folders, but skip updating suggestion list [KC-57]
  187. * Python 2.5 support is removed
  188. * server: libs3 is now dlopened to workaround libldap effects [KC-64]