# HG changeset patch # User Timo Sirainen # Date 1030579269 -10800 # Node ID fb7500933a11d782ad9ab4b6862547a6d5d86cc8 # Parent d0a9a516f00f07f24cefc5929aa4a53ad9ad3721 0.97 released diff -r d0a9a516f00f -r fb7500933a11 NEWS --- a/NEWS Thu Aug 29 02:23:54 2002 +0300 +++ b/NEWS Thu Aug 29 03:01:09 2002 +0300 @@ -1,3 +1,29 @@ +v0.97 2002-08-29 Timo Sirainen + + + Large mails are handled in 256kB blocks, so mail size no longer + has hardly any effect on memory usage + + 64bit file offsets are used if supported by system. This means + Dovecot is fully capable of handling >2G mails in those systems. + With 32bit offsets >2G mails may not behave too well, but should + not crash either. + + I fixed lots of potential integer overflows. This should make us + fully crash-free no matter what happens (index file corruption + mostly). I didn't verify everything too carefully yet, so more + auditing is still needed before we fully reach that goal. + + Implemented several missing tasks / optimizations to index handling. + It should now stay fast after longer usage periods. + + New configuration file options: log_path, log_timestamp, imaps_listen + + "Critical errors" are now hidden from users, ie. any error message + that is not a direct reply to user error is written into log file + and user gets only "Internal error [timestamp]". + + Nonblocking SSL handshaking + + Lots of code cleanups + - Lots of mbox fixes, it seems to be somewhat reliable now + - Year in Date-field was parsed wrong + - Appending mail to mbox didn't work right + - Always verify that mailbox names are valid (especially they shouldn't + contain "../") + v0.96 2002-08-08 Timo Sirainen * Changed to LGPL v2.1 license diff -r d0a9a516f00f -r fb7500933a11 TODO --- a/TODO Thu Aug 29 02:23:54 2002 +0300 +++ b/TODO Thu Aug 29 03:01:09 2002 +0300 @@ -1,10 +1,9 @@ + test: - make sure mmap()s work properly with NFS - - make sure first_hole_records is updated properly - make sure locking is done properly when opening/switching modifylog - make sure index->header->flags are updated at correct times - make sure SELECT rebuilds index properly when next_uid is near 32bit value - - make sure io_buffer_send() handles huge inputs properly - make sure rfc822_parse_date() works properly - make sure imap_match functions work properly - make sure connection limits work @@ -25,10 +24,14 @@ yet. this way we don't need to read the messages fully just to find out that. - mbox: - - BUG: adding new mail after indexes are created doesn't work - update Status and X-Status headers when flags are changed. how? probably by just writing a new mbox file at close time. - EXPUNGE doesn't delete the mail from the mbox file + - if a file isn't valid mbox and it's tried to be opened, say it in one + line in error log, not 6.. + - if we read-locked mbox file when we're accessing it, we could get it + pretty reliable.. do other MUAs do that? if yes, drop the dotlock + and only support flock() or fcntl() locking. - there's some race condition issues when opening mailboxes.. - set_lock() is ugly and horrible and should really be done something. does the syncing really need to be there? maybe put it into separate @@ -64,6 +67,8 @@ - we should probably do some light checking that appended mails actually look like valid rfc822 mails.. - SEARCH CHARSET support, iconv()? + - SEARCH could optionally support scanning inside file attachments and use + plugins to extract text out of them (word, excel, pdf, etc. etc.) - RENAME INBOX isn't atomic with Maildir. And in general, RENAME can't be moved to another storage. Maybe support doing also using COPY + delete once COPY is atomic? @@ -125,6 +130,7 @@ - HIGH: Make sure messages of size INT_MAX..UINT_MAX (and more) work correctly. virtual_size can also overflow making it less than physical_size - verify memory alignment is valid when reading from index files + - create env_put() and env_clean() optional optimizations: - provide some helper binary to save new mail into mailboxes with CR+LF diff -r d0a9a516f00f -r fb7500933a11 configure.in --- a/configure.in Thu Aug 29 02:23:54 2002 +0300 +++ b/configure.in Thu Aug 29 03:01:09 2002 +0300 @@ -1,7 +1,7 @@ AC_INIT(src) AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE(dovecot, 0.96) +AM_INIT_AUTOMAKE(dovecot, 0.97) AM_MAINTAINER_MODE