Redirect fixes: enable automatic account selection and do not append signature to...
[claws.git] / ChangeLog
index 11cd10b042eeff3d9b46ae99c3b8732c8034c11f..52f4552cacf2889143672a991310b0c9f5aba24b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,337 @@
+2003-07-23
+
+       * src/procmsg.h: changed MsgPermFlags and MsgTmpFlags from enum to
+         guint32 for portability (thanks to Alfons).
+       * src/imap.c: imap_add_msgs(): removed redundant unlink().
+
+2003-07-22
+
+       * src/session.[ch]:
+         session_read_msg_cb()
+         session_read_data_cb(): fixed a bug that ran into infinite loop
+         if connection was closed by remote host (thanks to Yoichi Imai).
+         Added SESSION_EOF state to SessionState.
+         session_is_connected(): new.
+       * src/inc.[ch]: inc_put_error()
+         src/send_message.c: send_put_error(): also put log messages.
+
+2003-07-18
+
+       * more optimization of IMAP4.
+       * src/folder.[ch]: added a method add_msgs() that adds multiple files
+         to a folder.
+         Removed redundant scan() for the operations of FolderItem.
+       * src/imap.[ch]: implemented Folder::add_msgs() and optimized move
+         and copy from other Folder instances.
+       * src/mh.[ch]: implemented Folder::add_msgs() and cleaned up the code.
+         mh_fetch_msg(): scan folder if required.
+       * src/procmsg.[ch]: procmsg_get_message_file_list(): returns file
+         list from message list.
+       * src/summaryview.c: don't remove MSG_MARKED flags on
+         delete/move/copy operation.
+         summary_display_msg_full(): removed redundant message fetching.
+
+2003-07-17
+
+       * optimized move/copy/delete/mark operations of IMAP4 by using
+         sequence set when issuing commands (adopted claws' implementation
+         with cleaning it up).
+       * src/imap.[ch]:
+         imap_set_message_flags()
+         imap_cmd_envelope()
+         imap_cmd_copy()
+         imap_cmd_store(): take sequence set string instead of UID number.
+         imap_do_copy_msgs_with_dest(): optimized by using sequence set.
+         imap_cmd_fetch(): use BODY.PEEK instead of BODY.
+         imap_remove_all_msg()
+         imap_set_message_flags(): use FLAGS.SILENT instead of FLAGS.
+       * src/compose.c
+         src/summaryview.c: use imap_msg_list_{set,unset}_perm_flags()
+         instead of issuing commands for each message.
+
+2003-07-15
+
+       * src/inc.c
+         src/prefs_account.[ch]
+         src/send_message.c
+         src/session.[ch]: added an option to enable/disable non-blocking
+         SSL.
+
+2003-07-15
+
+       * src/compose.c: compose_attach_append(): display message's subject
+         when attaching message/rfc822 file.
+
+2003-07-14
+
+       * src/session.[ch]:
+         session_recv_msg()
+         session_recv_data()
+         session_read_msg_cb()
+         session_read_data_cb(): optimized by removing sock_peek() and
+         buffering received data in user space (correctly implemented
+         this time).
+
+2003-07-11
+
+       * src/session.c: reverted the previous change because it couldn't
+         handle data receiving after messages correctly.
+
+2003-07-11
+
+       * src/session.c:
+         session_recv_msg()
+         session_read_msg_cb(): optimized by removing sock_peek() and
+         buffering messages in user space.
+
+2003-07-11
+
+       * src/imap.[ch]: refactored.
+         Changed all functions that have SockInfo arguments to take
+         IMAPSession.
+         Made imap_cmd_count an instance variable: IMAPSession::cmd_count.
+         imap_open(): only establish TCP (or SSL) connection.
+         imap_session_new(): process greeting and authentication here.
+
+2003-07-10
+
+       * src/imap.[ch]: implemented CRAM-MD5 authentication, and made code
+         cleanups.
+       * src/prefs_account.[ch]: added option menu for IMAP4 authentication
+         type in Receive tab, and hide other protocols' frames.
+
+2003-07-10
+
+       * src/mainwindow.c: send_queue_cb(): don't scan folder twice if
+         error occurred.
+       * src/procmsg.c: procmsg_send_queue(): return number of sent
+         messages.
+
+2003-07-09
+
+       * src/mainwindow.c:
+         main_window_set_toolbar_sensitive()
+         main_window_set_menu_sensitive(): removed the locking of file
+         operations while receiving mail.
+
+2003-07-09
+
+       * src/folder.[ch]: folder_item_remove_msg(): take MsgInfo as an
+         argument instead of message number.
+       * src/imap.[ch]: imap_remove_msg(): reimplemented using
+         imap_remove_msgs().
+       * src/mh.[ch]: mh_do_move(): reimplemented using
+         mh_do_move_msgs_with_dest().
+         mh_copy_msg(): reimplemented using mh_copy_msgs_with_dest().
+       * src/procmsg.c: procmsg_send_queue(): modified to use message list.
+
+2003-07-08
+
+       * src/rfc2015.c: rfc2015_is_encrypted(): check MimeInfo::mime_type
+         to suppress some warnings.
+       * src/logwindow.c: log_window_append(): don't scroll up when trimming
+         lines.
+
+2003-07-07
+
+       * src/compose.c: add 'Content-Disposition: inline' to a text/plain
+         part when using PGP/MIME signing.
+
+2003-07-04
+
+       * version 0.9.3
+
+2003-07-04
+
+       * src/defs.h: changed UI_REFRESH_INTERVAL from 40msec to 50msec.
+       * src/session.c: session_read_msg_cb(): make it always fail if
+         sock_read() returns by error.
+       * src/socket.[ch]: sock_check(): handle exceptional SSL condition.
+         sock_has_pending_data(): removed.
+         Removed debug output.
+       * src/send_message.c: send_recv_message(): display messages to
+         statusbar.
+
+2003-07-03
+
+       * src/inc.[ch]: update received message number on CList while
+         retrieving.
+       * src/session.c: session_read_data_cb(): optimized by removing
+         g_malloc() and memcpy().
+
+2003-07-02
+
+       * src/socket.[ch]: sock_add_watch(): new. It monitors SSL by original
+         watch functions (otherwise uses g_io_add_watch()).
+       * src/session.[ch]: removed previous workarounds, and replaced
+         g_io_add_watch() with sock_add_watch().
+
+2003-07-01
+
+       * src/socket.[ch]: added sock_has_pending_data() which returns TRUE
+         if socket has pending data.
+       * src/session.c: session_recv_msg(), session_recv_data(): check if
+         socket has pending data and call the callbacks immediately in that
+         case (fixes the hang at ESMTP EHLO on SSL).
+
+2003-06-30
+
+       * src/socket.c: check return value in SSL functions.
+
+2003-06-30
+
+       * src/mimeview.c: mimeview_init(): initialize TextView to prevent
+         slowdown caused by GTK+ themes (thanks to Yuri Arapov).
+
+2003-06-27
+
+       * src/session.c: session_read_data_cb(): clear Session::read_data_buf
+         before calling callbacks.
+
+2003-06-26
+
+       * src/socket.c: made socket connection protocol independent.
+       * src/session.c: removed debug g_print().
+       * src/inc.c: made status bar output less verbose, and show counter
+         on main window's progressbar.
+
+2003-06-26
+
+       * src/session.c: added missing #include <errno.h>.
+
+2003-06-25
+
+       * src/session.[ch]: reimplemented the Session system with non-blocking
+         I/O to solve the performance and the code design issue.
+       * src/socket.[ch]: added sock_connect_async() and
+         sock_connect_async_cancel() to enable asynchronous connection.
+         sock_peek(): modified the implementation.
+       * src/pop.c: optimized the receiving of the responses of
+         UIDL/LIST/RETR.
+
+2003-06-18
+
+       * src/procmsg.c: procmsg_get_thread_tree(): prevent threading problems
+         when a node is an ancestor (parent / great parent), which mostly
+         happens with circular references (thanks to Phillipe Gramoulle
+         for finding an sample set of messages, and Alfons for the patch).
+
+2003-06-16
+
+       * src/pop3.c: pop3_get_uidl_table(): return empty hash table even if
+         UIDL list is not found (fixes inability of initial retrieval).
+
+2003-06-10
+
+       * src/main.c: added the option '--status-full' which shows the status
+         of each folder specified. The option '--status' also takes
+         following arguments for folders (thanks to Yuri Arapov).
+       * src/folder.[ch]: folder_get_status(): new. it takes the array of
+         folders as the argument and returns their status.
+         folder_count_total_msgs(): removed.
+
+2003-06-06
+
+       * version 0.9.2
+
+2003-06-06
+
+       * src/filesel.c
+         src/foldersel.c
+         src/inputdialog.c: use gtk_main_iteration() instead of gtk_main()
+         to prevent abort when a button is double-clicked.
+
+2003-06-02
+
+       * src/addr_compl.c: invalidate_address_completion(): check if
+         g_completion_list is NULL (thanks to Kazuhiro NISHIYAMA).
+
+2003-06-02
+
+       * src/pop.c: pop3_session_recv_data_finished(): fixed a bug that
+         deleted messages that is to be kept on server (thanks to Tristan
+         Wallis).
+
+2003-05-27
+
+       * version 0.9.1
+
+2003-05-26
+
+       * src/socket.[ch]:
+         sock_set_io_timeout(): new. It sets the timeout interval.
+         sock_gdk_input_add(): removed since it's not used anymore.
+       * src/prefs_common.[ch]: added an option to set the timeout parameter.
+
+2003-05-26
+
+       * src/action.c: fixed a bug that didn't hide user string in
+         create_io_dialog() (thanks to Markus Amersdorfer).
+         Removed ChildInfo::type and added Children::action_type.
+
+2003-05-23
+
+       * src/inc.c: inc_start(): ask every password before retrieving.
+         Don't popup the redundant error dialog.
+         inc_account_mail()
+         inc_all_account_mail()
+         inc_progress_dialog_set_list(): separated account list display
+         into a new function.
+         inc_progress_dialog_set_label()
+         inc_recv_data_finished()
+         inc_recv_message(): properly update the dialog when RETR finished.
+
+2003-05-22
+
+       * src/imap.c:
+         imap_modified_utf7_to_locale()
+         imap_locale_to_modified_utf7(): fixed compilation failure when not
+         using iconv().
+
+2003-05-21
+
+       * src/procmime.c: procmime_scan_multipart_message(): fixed parsing
+         of message/rfc822 parts.
+
+2003-05-21
+
+       * src/pop.c: pop3_ok(): detect timeout error.
+
+2003-05-20
+
+       * src/imap.c: imap_locale_to_modified_utf7(): fixed the encoding bug
+         when locale strings include '+'.
+         imap_modified_utf7_to_locale()
+         imap_locale_to_modified_utf7(): at least escape/unescape '&' even
+         if iconv() is not supported.
+
+2003-05-20
+
+       * src/compose.c:
+         compose_insert_sig()
+         compose_get_signature_str(): include separator in signature string.
+         Don't insert separator if signature file is not found.
+         Disabled use of implicit default signature path (~/.signature) when
+         sig_path is NULL.
+
+
+2003-05-20
+
+       * src/codeconv.c
+         src/gtkshruler.c
+         src/news.c
+         src/procmsg.c
+         src/quote_fmt_parse.y
+         src/smtp.c: suppress warnings that gcc-3.3 issues.
+         src/stringtable.c: use string_entry_free().
+
+2003-05-19
+
+       * src/compose.c: compose_insert_sig(): fixed the bug that always
+         appended signature separator if signature file was not found.
+         compose_get_signature_str(): fixed the bug that caused crash if
+         signature file cannot be opened.
+
 2003-05-16
 
        * version 0.9.0