+2006-08-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
+ `nconc' and `consp'.
+
+2006-08-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
+ hash table to test whether a location is exists.
+
+2006-08-20 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
+ even if some error occurred.
+
+ * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
+ meaningless unwind-protect.
+
+ * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
+ start-number correctly.
+ * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
+ * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
+
+2006-08-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
+ (elmo-folder-initialize): Use it.
+ (elmo-global-flag-replace-referrer): New function.
+
+ * elmo.el (toplevel): Added autoload setting for
+ `elmo-global-flag-replace-referrer'.
+ (elmo-folder-rename): Rewrite the last change use
+ `elmo-global-flag-replace-referrer'.
+
+ * elmo-pipe.el (elmo-folder-rename): Call
+ `elmo-global-flag-replace-referrer'.
+
+2006-08-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo.el (elmo-folder-rename): Set meta data for global flags
+ follow the rename.
+
+2006-07-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
+ as 'not-loaded.
+ (elmo-folder-close): Ditto.
+ (elmo-filter-folder-number-list-loaded-p): New function.
+ (elmo-filter-folder-number-list): Check whether loaded or not.
+ (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
+ of `elmo-filter-folder-number-list-internal'.
+ (elmo-folder-delete-messages): Ditto.
+ (elmo-folder-length): Check whether number-list is loaded or not.
+
+2006-06-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
+ field `real field' into each element of list.
+ (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
+ (elmo-msgdb-message-entity-field): Ditto.
+ (modb-entity-ml-info-real-fields): New function.
+
+ * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
+
+ * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
+ `elmo-msgdb-extra-fields'.
+
+2006-05-30 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-passwd-alist-load): Move point to min
+ position before read.
+
+2006-05-15 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
+ (elmo-global-flags-initialize): Ditto.
+
+2006-05-14 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo-archive.el (toplevel): Don't require emu, std11
+ and elmo-localdir.
+
+ * elmo-localdir.el (elmo-message-file-name): Remove duplicate
+ definition.
+
+2006-05-07 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo.el (elmo-folder-confirm-appends): Display folder name.
+
+2006-04-29 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
+ literals.
+
+2006-04-21 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo-maildir.el (elmo-maildir-list-location): Reduce
+ `elmo-get-last-modification-time' call.
+
+2006-04-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
+ expression.
+ (elmo-maildir-set-mark): Ditto.
+ (elmo-maildir-delete-mark): Ditto.
+
+2006-03-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-collect-separators-internal): Add 2nd
+ optional argument `separators'.
+
+2006-02-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo.el (cache-changed): Abolish.
+ (status-changed): New signal.
+ (elmo-message-killed-p): New generic function and define for
+ elmo-folder.
+ (elmo-folder-recover-messages): Ditto.
+ (elmo-message-set-cached): Emit signal `status-changed' instead of
+ `cache-changed'.
+ (elmo-message-status): New macro.
+ (elmo-message-status-folder): Ditto.
+ (elmo-message-status-number): Ditto.
+ (elmo-message-status-set-flags): Ditto.
+ (elmo-message-status-set-killed): Ditto.
+ (elmo-message-status-flags): New function.
+ (elmo-message-status-cached-p): Ditto.
+ (elmo-message-status-killed-p): Ditto.
+
+ * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
+ `status-changed' instead of `cache-changed'.
+ (elmo-folder-recover-messages): Define.
+ (elmo-message-killed-p): Ditto.
+
+ * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
+ `status-changed' instead of `cache-changed'.
+
+ * elmo-multi.el (elmo-multi-connect-signals): Ditto.
+ (elmo-message-killed-p): Define.
+ (elmo-folder-recover-messages): Ditto.
+
+ * elmo-version.el (elmo-version): Up to 2.15.3.
+
+2006-02-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-signal.el (elmo-signal-bindings): Use cons to append
+ element into list.
+ (elmo-define-signal-handler): Add docstring.
+ (elmo-define-signal-filter): Ditto.
+
+ * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
+
+2006-02-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-flatten): Don't use recursive call.
+
+ * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
+ assignment.
+ (elmo-folder-message-make-temp-files): Use `number-to-string'
+ instead of `int-to-string'.
+
+2006-01-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-search.el (elmo-folder-delete-messages): Define.
+
+2006-01-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
+ customization type.
+ (elmo-mailing-list-count-spec-list): Ditto.
+
+ * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
+ for `list-id'.
+
+2006-01-22 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
+ handling.
+
+2006-01-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
+ (elmo-mailing-list-count-spec-list): Ditto.
+
+ * elmo-util.el (elmo-map-until-success): New function.
+ (elmo-string-match-substring): Ditto.
+ (elmo-find-list-match-value): Ditto.
+
+ * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
+ Removed.
+ (modb-entity-extract-ml-info-from-subject): Ditto.
+ (modb-entity-extract-ml-info-from-return-path): Ditto.
+ (modb-entity-extract-ml-info-from-delivered-to): Ditto.
+ (modb-entity-extract-ml-info-from-mailing-list): Ditto.
+ (modb-entity-extract-ml-info-from-mailman): Ditto.
+ (modb-entity-extract-mailing-list-info-functions): Ditto.
+ (modb-entity-extract-mailing-list-info): Rewrite with
+ `elmo-find-list-match-value'.
+
+2006-01-03 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-net.el (elmo-network-session-retry-count): New user option.
+ (elmo-network-session-buffer-name): New internal function.
+ (elmo-network-session-buffer-create): Ditto.
+ (elmo-network-open-session): Retry open network session
+ `elmo-network-session-retry-count' times.
+
+2005-12-16 Tetsurou Okazaki <okazaki@be.to>
+
+ * elmo-util.el (elmo-list-filter): Rewritten.
+
+2005-12-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-string-member): Allow symbol element in list.
+
+2005-11-26 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-search.el (elmo-make-search-engine): Use prefix
+ `elmo-search-' for require symbol instead of `else-'.
+ (elmo-search-engine-extprog): New class.
+ (elmo-search-engine-do-search): Remove nil from argument
+ list. Added argument pattern to evaluate element as function.
+ (elmo-search-engine-local-file): Derived from
+ `elmo-search-engine-extprog'.
+ (elmo-search-engine-create-message-entity): Check existance of file.
+ (elmo-search-engine-fetch-message): Ditto.
+ (elmo-search-namazu-index): Follow the API change.
+ (elmo-search-grep-target): Ditto.
+
+2005-11-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
+ characters of working buffer.
+
+ * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
+ Does not bind `default-mime-charset'.
+ (elmo-msgdb-create-message-entity-from-buffer): Removed
+ unnecessary local bind.
+
+ * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
+ function.
+ (modb-entity-extract-mailing-list-info-functions): Added it.
+
+2005-11-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
+ when number and message-id are non-nil.
+
+ * modb-standard.el (elmo-msgdb-append-entity): Ditto.
+
+ * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
+ conditional steatment.
+ (elmo-pop3-auth-apop): Likewise.
+ (elmo-network-authenticate-session): Likewise.
+
+2005-11-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-mime.el (elmo-mime-header-max-column): Set default value as
+ symbol `fill-column'.
+ (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
+ decode field value.
+
+ * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
+ (elmo-decoded-field-body): Ditto.
+
+2005-11-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
+ `tokens' to `params'.
+
+2005-10-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-split.el (elmo-split-subr): Disable multibyte characters of
+ working buffer.
+
+2005-09-24 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-search.el (elmo-search-namazu-index): Fixed the order to
+ decide index.
+
+2005-09-20 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-search.el (elmo-search-engine-alist): Define with defvar;
+ Set default value as nil.
+ (toplevel): Register search engines by
+ `elmo-search-register-engine' if there are not defined.
+
+ * elmo.el (autoload): Added autoload setting for
+ `elmo-search-register-engine'.
+
+2005-09-17 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo.el (toplevel): `[' is redefined as the prefix of the search
+ folder instead of nmz folder.
+ (elmo-nmz-default-index-path): Added obsolete variable setting.
+ (elmo-nmz-index-alias-alist): Ditto.
+ (elmo-nmz-use-drive-letter): Ditto.
+
+ * elmo-search.el (elmo-search-register-engine): New function.
+
+ * elmo-nmz.el: Removed.
+
+ * elmo-version.el (elmo-version): Up to 2.15.2.
+
+2005-09-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-search.el: New file.
+
+2005-09-02 Yoichi NAKAYAMA <yoichi@geiin.org>
+
+ * modb-entity.el (elmo-msgdb-message-match-condition): Add new
+ condition `larger' and `smaller'.
+
+2005-07-30 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-safe-filename): Rewrite to replace
+ `"' (double quote) into "_Q_".
+
+2005-07-18 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-net.el (elmo-net-quote-chars): Abolish.
+ (elmo-net-format-quoted): Ditto.
+
+2005-06-12 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo.el (elmo-get-folder-function): New variable.
+ (elmo-get-folder): New function.
+ (elmo-folder-rename): Call `elmo-make-folder' with specified
+ mime-charset.
+
+ * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
+ `elmo-make-folder'.
+ (elmo-split-subr): Ditto.
+
+ * elmo-multi.el (elmo-folder-initialize): Ditto.
+
+ * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
+
+ * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
+ (elmo-flag-get-folder): Ditto.
+
+ * elmo-filter.el (elmo-folder-initialize): Ditto.
+
+ * elmo-access.el (elmo-folder-initialize): Ditto.
+ (elmo-access-folder-update-children): Ditto.
+
+ * elmo-dop.el (elmo-dop-queue-flush): Ditto.
+ (elmo-dop-queue-flush): Ditto.
+ (elmo-folder-append-buffer-dop-delayed): Ditto.
+ (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
+ mime-charset.
+
+ * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
+ instead of `elmo-make-folder'.
+ (elmo-folder-rename): Ditto. Use `elmo-folder-rename' to
+ destination folder instead of send `elmo-folder-rename-internal'.
+
+ * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
+ slot of subfolder instead of create it.
+
+2005-06-10 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-collect-separators): New function.
+ (elmo-collect-separators-internal): Ditto.
+ (elmo-collect-trail-separators): Ditto.
+ (elmo-parse-separated-tokens): Ditto.
+ (elmo-parse-separated-tokens-internal): Ditto.
+ (elmo-quote-syntactical-element): Ditto.
+
+ * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
+ (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
+
+ * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
+ (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
+ (elmo-nntp-folder-list-subfolders): Quote a user name.
+
+ * elmo-net.el (elmo-net-folder-name-syntax): New constant.
+ (elmo-net-parse-network): Abolish.
+ (elmo-net-folder-set-parameters): New function.
+ (elmo-folder-initialize): Follow the above change.
+
+ * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
+ (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
+ (elmo-folder-list-subfolders): Use
+ `elmo-quote-syntactical-element' instead of
+ `elmo-net-format-quoted' to quote mailbox and user name.
+
+2005-06-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-token-valid-p): New function.
+ (elmo-parse-token): Add optional argument `requirement'.
+ (elmo-parse-prefixed-element): Likewise.
+
+ * elmo-net.el (elmo-net-quote-chars): Renamed from
+ `elmo-net-quote-chars-regexp'.
+ (elmo-net-format-quoted): Add optional argument `extra-chars'.
+
+ * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
+ by info document. Check token `uidl' is started an alphabet.
+
+ * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
+ by info document. Check token `user' is started an alphabet.
+
+ * elmo-imap4.el (elmo-folder-initialize): Ditto.
+ (elmo-folder-list-subfolders): Quote user.
+
+2005-06-05 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-quoted-specials-list): New constant.
+ (elmo-quoted-token): New function.
+
+ * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
+ (elmo-net-format-quoted): New function.
+ (elmo-net-parse-network): Ditto.
+ (elmo-folder-initialize): Use it.
+
+ * elmo-nntp.el (elmo-folder-initialize): Use
+ `elmo-net-parse-network' to parse network specification instead of
+ `elmo-folder-initialize#elmo-net'.
+
+ * elmo-pop3.el (elmo-folder-initialize): Ditto.
+
+ * elmo-imap4.el (elmo-folder-initialize): Ditto.
+ (elmo-folder-list-subfolders): Quote folder name by
+ `elmo-net-format-quoted'.
+
+2005-05-22 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
+ (elmo-folder-search): Use it.
+
+2005-04-13 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * modb-standard.el (modb-standard-loaded-message-id): Use
+ `elmo-msgdb-message-entity-field'.
+
+2005-04-11 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
+ without filename.
+
+2005-04-11 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * elmo-util.el (elmo-set-auto-coding): New function.
+ (elmo-object-load): Use it.
+
+2005-04-09 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
+ (elmo-time<): Define as alias of `elmo-time-less-p'.
+ (elmo-time-to-datevec): New function.
+
+ * elmo-date.el (elmo-time-to-days): New function.
+
+2005-04-08 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-map-recursive): Call `function' if `object'
+ is not cons cell.
+
+2005-04-07 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * modb-entity.el (modb-entity-encode-string-recursive): Fixed
+ parenthesis.
+
+ * elmo-util.el (elmo-map-recursive): New function.
+
+ * modb-entity.el (modb-entity-decode-string-recursive): Use it.
+ (modb-entity-encode-string-recursive): Ditto.
+
+2005-04-05 Yuuichi Teranishi <teranisi@gohome.org>
+
+ * elmo-maildir.el (elmo-maildir-sequence-number): New function.
+ (elmo-maildir-make-unique-string): Throw Emacs 18 away.
+ (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
+ compare sequence number when last modified time is nil.
+
+2005-04-03 Yuuichi Teranishi <teranisi@gohome.org>
+
+ * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
+
+ * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
+
+2005-04-01 Yuuichi Teranishi <teranisi@gohome.org>
+
+ * elmo-maildir.el (elmo-maildir-list-location): Sort by last
+ modification time of the file.
+
+2005-03-28 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-util.el (elmo-condition-optimize): Discriminated against
+ preserved fields, extra fields and the other weight.
+
+2005-03-27 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * modb-entity.el (initialize-instance): Define.
+ (modb-entity-handler-mime-charset): New internal function.
+ (modb-standard-entity-set-field): Use it.
+ (elmo-msgdb-message-entity-field): Ditto.
+ (elmo-msgdb-message-entity-field): Ditto.
+
+ * modb.el (elmo-msgdb-match-condition): Rewrite with
+ `elmo-condition-match'.
+ (elmo-msgdb-match-condition-primitive): New function.
+
+ * modb-entity.el (elmo-msgdb-message-match-condition): Removed
+ arguments `flags' and `numbers'.
+ (elmo-msgdb-match-condition-primitive): Abolished (merged to
+ `elmo-msgdb-message-match-condition').
+ (modb-buffer-entity-handler): New class.
+
+ * elmo.el (elmo-folder-search): Optimize condition to use
+ `elmo-condition-optimize'.
+ (elmo-message-buffer-match-condition): New function.
+ (elmo-message-match-condition): Use
+ `elmo-message-buffer-match-condition' instead of
+ `elmo-buffer-field-condition-match'.
+
+ * elmo-util.el (elmo-condition-match): New function.
+ (elmo-condition-optimize): Ditto.
+ (elmo-buffer-field-primitive-condition-match): Abolish.
+ (elmo-buffer-field-condition-match): Ditto.
+
+ * elmo-archive.el (elmo-archive-field-condition-match): Use
+ `elmo-message-buffer-match-condition' instead of
+ `elmo-buffer-field-condition-match'.
+
+2005-03-25 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+
+ * elmo-flag.el (elmo-global-flags-initialize): Check the
+ existence of the flag directory.
+
2005-03-23 Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
+ * elmo-access.el (elmo-folder-initialize): Call
+ `elmo-multi-connect-signals'.
+
* elmo-pipe.el (elmo-folder-close): Define.
* elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with