Strip whitespace from real names in IMAP FETCH responses. 0.15 Make imapd threads terminate when session closes, broken in 0.14. Fix IDLE, broken in 0.14. 0.14 Cope with multiple IMAP commands in a single packet, for mutt compatibility. Cope better with unexpected client disconnections. Fix a bug with end of message (/^.$/) detection when message spans multiple packets. Replace to, cc and bcc tables with a single recipients table. 0.13 Create u_* views at LOGIN, so that mailbox queries can operate on only the current users' messages. Make the LIST and LSUB commands case-insenitive, to better suit the "Find mailboxes" feature in Webmail. 0.12 Add a tsearch2 index of message body parts, updated as messages are recieved, and a Keywords/ mailbox hierarchy for matching messages using it. 0.11 Fetch headers of all messages together at the start of a FETCH command. Add smtpd_log_conversation configuration setting to determine whether SMTP is recorded in syslog. Use new libpbe::Database interface to PostgreSQL with prepared queries. Log real names and email addresses so that they can be offered as suggestions in an auto-complete dialog. Record random addresses as per-recipient custom addresses, so the same random address will be re-used in subsequent messages to the same recipient. Use actions framework for mailing lists. Add spam-labelling mailboxes. Create .lock files when backup files are being written, so that external code that manages backup files can avoid them until they are fully written. Record random addresses as they are allocated - useful for subsequent spam tracking. 0.10 Add tsearch2 searching on subjects. Fix an issue with escaping in FETCH BODYSTRUCTURE responses. Fix an issue with the response to UID STORE commands. Fix the Reply-To address in IMAP responses. 0.9 Fix IMAP BODY[n] code to return the MIME part's body only, not the header and body as it wrongly did before. 0.8 Use libpbe's FileDescriptor class. Make Domains mailboxes more efficient by adding an index on split_part(from_addr,'@',2) and rewriting the actions query to make use of it. Fix three further issues with the syntax of the FETCH ENVELOPE response, and two with the FETCH BODYSTRUCTURE response. 0.7 Fix a bug with the parsing of SEARCH ON. Fix a bug with the syntax of the FETCH ENVELOPE response. Avoid some compiler warnings. A very basic implementation of SEARCH HEADER has been added; this only just works, and requires that you CREATE CAST (bytea TO text) WITHOUT FUNCTION as the postgres user. SEARCH , e.g. SEARCH UID, has been added. A simple script, "dmdb", that runs psql to connect to the decimail database, has been added. For better support of systems where Postgres is on a non-standard port or a remote machine, dmimapd and dmsmtpd can accept database connection parameters on the command line. The default init scripts will now get these settings from /etc/decimail.conf. 0.6 Add three more mailbox hierarchies using the actions framework: - Per domain name - Per subject line - Labels Put TO: and CC: messages, as well as FROM: messages, in the People/ hierarchy. Move SQL for actions things into an actions/ subdirectory. Hopefully fix the long-standing 100% CPU bug in imapd. 0.5 Add the "Actions Framework": IMAP CREATE, DELETE, RENAME and COPY commands trigger lookups in an actions table based on the mailbox name; the action is an SQL query that is executed. An example application of the actions framework is a per-correspondent mailbox system where new mailboxes can be populated by copying a single example message from the correspondent. Use boost threads in place of omni_thread. This is fragile and needs further work. Import libpbe using svn:externals. Move to Subversion. Make imap logging optional and off by default. 0.4 libpbe fix to error reporting during startup. Add dm_add_ml, dm_del_ml scripts. Fix odd bug with MAIL FROM:<> Add delete daemon. Fix missing includes in libpbe ip.cc. 0.3 Dependency of create_imap.sql on mailboxes.sql has been removed; subscribing to mailboxes should work. Add triggers to regenerate mailboxes. Distinguish between threads in syslog with {n} prefix. Tolerate MAIL FROM: with illegal space between : and < Store configuration in DB. Use pg_config. Remove dependency on unused libident. Add missing sql/create_deletelog.sql and import/Makefile. 0.2 Correct syntax error in STORE response (missing parens); fixes need to try twice before message is deleted. Check return values in SMTPd to cope properly when client disconnects prematurely. In libpbe SmtpClient: report server error messages. 0.1 Initial Release.