2005-03-25  Yuuichi Teranishi  <teranisi@gohome.org>

	* 2.14.0 is released.

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
	children folders.

	* elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
	with target folder.

2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-flag.el (elmo-global-flags-initialize): Don't include
	member of elmo-local-flags.

2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.14.0.

2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-synchronize): Ignore `mask' when
	`ignore-msgdb' is non-nil.

2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
	(elmo-condition-in-msgdb-p): Ditto.
	(elmo-file-field-primitive-condition-match): Ditto.
	(elmo-file-field-condition-match): Ditto.

	* elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.

2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-flag.el (elmo-folder-list-subfolders): Don't list from
	subdirectories here.
	(elmo-global-flags-initialize): New function.

	* elmo.el (toplevel): Added autoload setting for
	`elmo-global-flags-initialize'.

2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (message-number-changed): Define new signal.
	* elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
	message-number-changed signal.
	* elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
	* elmo-map.el (elmo-folder-pack-numbers): Ditto.
	Respect `elmo-pack-number-check-strict'.

2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-signal.el (elmo-connect-signal): Document.
	(elmo-emit-signal): Ditto.
	(elmo-emit-signal): It should pass source argument to filter and
	handler, not slot-source.

2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb.el (elmo-msgdb-update-entity): New API and define generic
	implement.

	* modb-standard.el (elmo-msgdb-update-entity): Define.

	* modb-entity.el (elmo-msgdb-message-entity-update-fields): New
	API and define generic implement.

	* elmo.el (update-overview): New singnal.

	* elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
	`elmo-msgdb-update-entity' and emit signal `update-overview'.
	(elmo-message-entity-parent): Define.

	* elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
	`update-overview'.

	* elmo-multi.el (elmo-multi-connect-signals): Ditto.

	* elmo-filter.el (elmo-filter-connect-signals): Ditto.

2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-synchronize): Sort the return value of
	`elmo-list-diff'.

	* elmo-util.el (elmo-list-diff): Don't care the order of the returned
	list.

2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-with-enable-multibyte): Don't bind
	`default-enable-multibyte-characters'.
	(elmo-object-load): Use `with-temp-buffer' instead of
	`elmo-set-work-buf'.
	(elmo-object-save): Ditto.
	(elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
	`elmo-set-work-buf'.
	(elmo-decoded-field-body): Ditto.

	* elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.

	* elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
	Use `with-temp-buffer' instead of `elmo-set-work-buf'.

	* elmo-version.el (elmo-version): Up to 2.13.3.

2005-02-27  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-util.el (elmo-list-diff): Fix the last change.
	Reverse order of result lists.

2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-standard.el (elmo-msgdb-set-flag): Use
	`elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
	(elmo-msgdb-unset-flag): Ditto.

	* elmo.el (elmo-strict-folder-diff): Don't use third argument of
	`elmo-list-diff'.

	* elmo-util.el (elmo-list-diff): Rewrite.
	(elmo-list-diff-nonsortable): New function.

2005-02-26  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-util.el (elmo-multibyte-buffer-name): Renamed from
	`elmo-multibypte-buffer-name'.  All referers are updated.

2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
	(elmo-mime-entity-fragment-p): New function.
	(mime-elmo-buffer-entity): Added slot `reassembled'.
	(elmo-message-mime-entity): Added 4th argument `reassemble'.
	(elmo-message-mime-entity-internal): New function (renamed from
	`elmo-message-mime-entity').
	(elmo-mime-inherit-field-list-from-enclosed): New constant.
	(elmo-mime-make-reassembled-mime-entity): New function.
	(elmo-message-reassembled-mime-entity): Ditto.
	(elmo-mime-collect-message/partial-pieces): Ditto.

2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-fetch-string): Disable multibyte.

	* elmo-util.el (elmo-multibypte-buffer-name): New constant.
	(elmo-with-enable-multibyte): New macro.

	* modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.

2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-filter-add-flag-count): Removed unused
	argument `number'.
	(elmo-filter-connect-signals): Follow the above change.

2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.

	* elmo-maildir.el (elmo-folder-append-messages): Fix the problem
	that only the first flag is used.

2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>

	* elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
	if available.

2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-signal.el: New file.

	* elmo.el (toplevel): Require elmo-signal.
	(flag-changing, flag-changed, cache-changed): New signal.
	(elmo-folder): Remove slog `handlers'.
	(elmo-message-set-cached): Use `elmo-emit-signal' instead of
	`elmo-folder-notify-event'.
	(elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
	(elmo-folder-unset-flag): Ditto.
	(elmo-event-handler): Abolish.
	(elmo-event-handler-flag-changed): Ditto.
	(elmo-event-handler-cache-changed): Ditto.
	(elmo-folder-add-handler): Ditto.
	(elmo-folder-remove-handler): Ditto.
	(elmo-folder-notify-event): Ditto.

	* elmo-pipe.el (toplevel): Require elmo-signal.
	(elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
	(elmo-pipe-connect-signals): New function.
	(elmo-message-fetch): Does not call `elmo-folder-notify-event'.
	(elmo-folder-set-flag): Ditto.
	(elmo-folder-unset-flag): Ditto.
	(elmo-message-set-cached): Ditto.

	* elmo-multi.el (toplevel): Require elmo-signal.
	(elmo-folder-initialize): Call `elmo-multi-connect-signals'.
	(elmo-multi-connect-signals): New function.
	(elmo-multi-map-numbers): Ditto.
	(elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
	(elmo-message-fetch): Ditto.
	(elmo-folder-set-flag): Ditto.
	(elmo-folder-unset-flag): Ditto.

	* elmo-filter.el (toplevel): Require elmo-signal.
	(elmo-folder-initialize): Call `elmo-filter-connect-signals'.
	(elmo-filter-connect-signals): New function.
	(elmo-filter-add-flag-count): Ditto.
	(elmo-message-fetch): Does not call
	`elmo-filter-folder-countup-message-flags' and
	`elmo-folder-notify-event'.
	(elmo-message-set-cached): Ditto.
	(elmo-folder-set-flag): Ditto.
	(elmo-folder-unset-flag): Ditto.

	* elmo-version.el (elmo-version): Up to 2.13.2.

2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
	`flags'.

2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-message-set-cached): Call
	`elmo-folder-notify-event' with event `cache-changed'.

	* elmo-multi.el (elmo-message-set-cached): Ditto.

	* elmo-pipe.el (elmo-message-set-cached): Ditto.

2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-folder-encache): Abolish.

2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
	(elmo-folder-next-message-number-dop): Return appropriate negative
	integer.

2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
	clearing pending operations.
	(elmo-folder-next-message-number-dop): Return appropriate negative
	integer.

2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (toplevel): Added autoload setting for `md5'.
	(elmo-msgdb-path-encode-threshold): New user option.
	(elmo-folder-msgdb-path): Encode msgdb path if its length is
	longer than `elmo-msgdb-path-encode-threshold'.

	* elmo-flag.el (elmo-global-mark-migrate): Use
	`elmo-folder-expand-msgdb-path' instead of
	`elmo-folder-msgdb-path'.

2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
	element of the difference is nil.

2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-maildir-separator): Added some OS types
	to the check logic of file systems which are weak in colon character.

2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-maildir.el (elmo-maildir-move-file): Simplify.

2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-maildir-move-file): New function.
	(elmo-folder-append-buffer): Use it.
	(elmo-folder-append-messages): Ditto.
	(These changes are based on Ron Isaacson's patch [wl-en: 01205])

	* elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
	(elmo-imap4-encode-folder-string): Call `utf7-encode'.

	* elmo-maildir.el (elmo-maildir-separator): New user option.
	(elmo-maildir-adjust-separator): New macro.
	(elmo-maildir-list-location): Use it.
	(elmo-maildir-update-current): Ditto.
	(elmo-maildir-set-mark): Ditto.
	(elmo-maildir-delete-mark): Ditto.
	(These changes are based on Hiroya Murata's patch [wl: 13437])

2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.

2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-flag.el (elmo-flag-valid-p): Simplify.
	(elmo-folder-list-subfolders): Copy `elmo-global-flags'.
	(elmo-folder-delete): Update `elmo-global-flag-folder-alist'.

2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
	Use `with-temp-buffer'.

2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-flag.el (elmo-folder-initialize): Fixed the last change.

	* elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
	`wl-read-search-condition').
	(elmo-read-search-condition-internal): Likewise.

	* elmo-flag.el (elmo-flag-char-regexp): New constant.
	(elmo-flag-valid-p): New function.
	(elmo-folder-initialize): Check flag name is valid.

2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
	delimiter to obtain root mailbox itself.

2005-01-25  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-net.el (elmo-network-session-idle-timeout): Fix customization
	type mismatch.

2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
	as t.

2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (toplevel): Require cl at compile.

	* elmo-nntp.el (toplevel): Ditto.

	* elmo-nmz.el (toplevel): Ditto.

	* elmo-multi.el (toplevel): Ditto.

	* elmo-file.el (toplevel): Ditto.

	* elmo-dop.el (toplevel): Ditto.

	* elmo-archive.el (toplevel): Likewise elmo and cl (at compile).

2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmimap.el (mmimap-make-mime-entity): Set children's top node number
	as nil.

	* elmo.el (elmo-message-fetch): Return t even when the output buffer
	size of elmo-message-fetch-internal is 0 byte.

2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-maildir.el (elmo-map-message-fetch): Fixed last change.

2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
	always plugged.

2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-maildir.el (elmo-map-message-fetch): Call
	`elmo-map-folder-set-flag'.

	* elmo.el (elmo-message-fetch-with-cache-process): Abolish.
	(elmo-message-fetch): Merge from
	`elmo-message-fetch-with-cache-process'.

	* elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
	(elmo-message-fetch): Define.

	* elmo-nntp.el (elmo-message-fetch): Renamed from
	`elmo-message-fetch-with-cache-process'.

	* elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
	(elmo-message-fetch): Define.

	* elmo-util.el (elmo-condition-parse-primitive): Downcase
	search-key.

	* elmo-shimbun.el (shimbun-mua-search-id): Use
	`elmo-message-entity' instead of `elmo-msgdb-message-entity'.
	(elmo-shimbun-folder-shimbun-header): Ditto.
	(elmo-shimbun-get-headers): Ditto.
	(elmo-shimbun-update-overview): Ditto.

	* elmo-pipe.el (elmo-folder-detach-messages): Define.

	* elmo-net.el (elmo-folder-list-messages-unplugged): Use
	`elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.

2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-fetch): Unset unread flag on server when
	message is cached.
	(elmo-message-fetch-string): Fixed argument.

2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-fetch): Removed argument `outbuf' and
	exchange order of arguments `section' and `unread'.
	(elmo-message-encache): Follow the API change.
	(elmo-message-match-condition): Ditto.
	(elmo-generic-folder-append-messages): Ditto.
	(elmo-message-fetch-string): New function.

	* elmo-split.el (elmo-split-subr): Ditto.

	* elmo-spam.el (elmo-spam-message-fetch): Ditto.

	* elmo-pipe.el (elmo-message-fetch): Ditto.

	* elmo-multi.el (elmo-message-fetch): Ditto.

	* elmo-mime.el (elmo-message-mime-entity): Ditto.

	* elmo-flag.el (elmo-global-flag-set-internal): Ditto.

	* elmo-filter.el (elmo-message-fetch): Ditto.

	* elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.

	* elmo-imap4.el (mime-imap-location-section-body): Use
	`elmo-message-fetch-string' instead of `elmo-message-fetch' and
	follow the API change.

2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-access.el: New file.

	* elmo-null.el: Ditto.

	* elmo-internal.el (elmo-internal-folder-list): Added `null'.

2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-net.el (elmo-network-session-idle-timeout): New option.
	(elmo-network-session): New attribute `last-accessed'.
	(elmo-network-get-session): Discard network cache if elapsed time
	since last-accessed is larger than elmo-network-session-idle-timeout.

2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
	and added `number', `require-entireness'.
	(elmo-find-fetch-strategy): Rewrite.
	(elmo-message-fetch): Unset `unread' flag when argument unread is
	non-nil.

	* elmo-spam.el (elmo-spam-message-fetch): Follow the API change.

	* elmo-multi.el (elmo-find-fetch-strategy): Ditto.
	(elmo-message-fetch): Notify event `flag-changed'.

	* elmo-pipe.el: Likewise.

	* elmo-mime.el (elmo-mime-entity): New class.
	(elmo-mime-entity-display-p): New generic function.
	(elmo-mime-entity-display): Ditto.
	(elmo-mime-entity-display-as-is): Ditto.
	(mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
	elmo-mime-entity.
	(elmo-make-mime-message-location): Removed.
	(elmo-mime-message-display): Ditto.
	(elmo-mime-display-as-is): Ditto.
	(elmo-message-mime-entity): New function.

	* elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.

	* elmo-filter.el (elmo-find-fetch-strategy): Follow the API
	change.
	(elmo-message-fetch): Re-count flagged message number and notify
	event `flag-changed'.

	* elmo-version.el (elmo-version): Up to 2.13.1.

2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-message-field): Define.
	(elmo-message-set-field): Ditto.

2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-set-cached): Call
	`elmo-folder-notify-event' with cache-changed.
	(elmo-event-handler-cache-changed): New generic function.

2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
	instead of elmo-add-name-to-file.
	(elmo-folder-append-messages): Ditto.

2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-folder-update-threshold): Add nil to range.

2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.13.0.

	* elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
	`auto'.

	* modb-standard.el (modb-standard-economize-entity-size): Changed
	default value to `t'.

	* elmo-vars.el (elmo-msgdb-default-type): Changed default value to
	`standard'.

	* elmo-imap4.el (elmo-network-initialize-session): Erase buffer
	after parsing greeting string.

2004-11-23  Daishi Kato <daishi@axlight.com>

	* elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
	New user option.
	(elmo-spam-spamoracle-call): Use it.

2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-message-accessible-p): Message in dop spool
	is accessible.

2004-11-23  Daishi Kato <daishi@axlight.com>

	* elsp-spamoracle.el: New file.

2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-flags-for-append): New function.
	(elmo-generic-folder-append-messages): Use it.

	* elmo-split.el (elmo-split-subr): Ditto.

	* elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
	`flags' and use elmo-folder-append-buffer instead of
	write-region-as-binary.
	(elmo-dop-filter-pending-messages): New function.
	(elmo-folder-append-buffer-dop): Call
	elmo-dop-spool-folder-append-buffer with `flag'.
	(elmo-folder-set-flag-dop): Filter messages by
	elmo-dop-filter-pending-messages.
	(elmo-folder-unset-flag-dop): Ditto.
	(elmo-folder-append-buffer-dop-delayed): Use
	elmo-message-flags-for-append to get flags of the message and
	simplify.

2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.

2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder): Added handlers slot.
	(elmo-event-handler): New class.
	(elmo-event-handler-flag-changed): New API.
	(elmo-folder-add-handler): New function.
	(elmo-folder-remove-handler): Ditto.
	(elmo-folder-notify-event): Ditto.
	(elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
	`flag-changed'.
	(elmo-folder-unset-flag): Ditto.

	* elmo-pipe.el (elmo-folder-set-flag): Ditto.
	(elmo-folder-unset-flag): Ditto.

	* elmo-multi.el (elmo-folder-set-flag): Ditto.
	(elmo-folder-unset-flag): Ditto.

	* elmo-filter.el (elmo-folder-set-flag): Ditto.
	(elmo-folder-unset-flag): Ditto.

	* elmo-version.el (elmo-version): Up to 2.11.33.

2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.

2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-multi.el (elmo-folder-unset-flag): Ignore errors.

	* elmo-flag.el (elmo-folder-unset-flag): Define.
	(elmo-global-flag-detach): Do process when the flag is not target
	flag.

2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
	variable.
	(elmo-msgdb-create-message-entity-from-buffer): Use it.

2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-filter-folder-copy-flag-count): New
	function.
	(elmo-folder-delete-messages): Detach messages before delete
	messages from target folder.
	(elmo-folder-detach-messages): Set updated number-list to slot.

2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-folder-detach-messages): Always return t.

2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-generic-folder-commit): Fixed parenthesis.

2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-delete-messages-internal): New API (for
	internal use only).
	(elmo-generic-folder-commit): Save `killed-list' even if msgdb is
	not modified.
	(elmo-folder-delete-messages): Define.
	(elmo-folder-move-messages): Don't call
	`elmo-folder-detach-messages'.
	(elmo-folder-synchronize): Rewrite.
	(elmo-folder-detach-messages): Delete numbers from `killed-list'.

	* elmo-util.el (elmo-last): New function.
	(elmo-set-list): Ditto.
	(elmo-number-set-delete-list): Ditto.
	(elmo-number-set-delete): Ditto.

	* elmo-shimbun.el (elmo-folder-delete-messages): Define.

	* elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
	`elmo-folder-delete-messages' and don't delete location map.
	(elmo-folder-detach-messages): Define.

	* elmo-imap4.el (elmo-folder-delete): Use
	`elmo-folder-delete-messages-internal' instead of
	`elmo-folder-delete-messages'.

	* elmo-filter.el (elmo-folder-delete-messages): Call
	`elmo-folder-detach-messages'.
	(elmo-folder-detach-messages): Don't call
	`elmo-folder-detach-messages' for target folder.

	* elmo-cache.el (elmo-map-folder-delete-messages): Return t when
	message deletion is succeeded.

	* elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.

	* elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
	from `elmo-folder-delete-messages'.

	* elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.

	* elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.

	* elmo-net.el (elmo-folder-delete-messages-internal): Ditto.

	* elmo-version.el (elmo-version): Up to 2.11.32.

2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
	(elmo-global-flag-list): Added obsolete variable setting.

	* elmo-vars.el (elmo-preserved-flags): Fixed docstring.

	* elmo-mime.el (elmo-mime-display-header-analysis): New variable.
	(elmo-mime-insert-header-from-buffer): Don't decode header content when
	`elmo-mime-display-header-analysis' is nil.

	* elmo-flag.el (elmo-global-flags): Renamed from
	`elmo-global-flag-list' (All other related portions are changed).
	(elmo-local-flags): New variable.
	(elmo-local-flag-p): New function.
	(elmo-global-flag-set-internal): Cause an error when flag is not
	global.

2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-concat-path): Treat empty path.

2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
	field-or-fields).
	(elmo-split-address-match): Ditto.
	(elmo-split-equal): Ditto.
	(elmo-split-match): Ditto.

2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
	(elmo-generic-folder-append-messages): If src message exists but
	has no flag, pass (read) for the FLAG argument of
	`elmo-folder-append-buffer'. Otherwise, pass nil.

	* elmo-split.el (elmo-split-subr): Likewise.

	* elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.

	* elmo-multi.el (elmo-message-flags): Ditto.

	* elmo-filter.el (elmo-message-flags): Ditto.

	* elmo.el (elmo-folder-append-buffer): Fix docstring.
	(elmo-generic-folder-append-messages): If elmo-message-flags return nil,
	pass (read) for the FLAG argument of elmo-folder-append-buffer.
	
2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-split.el (elmo-split-rule): Update comment.
	(elmo-split-address-equal): Allow 2nd argument to be a list.
	(elmo-split-address-match): Ditto.
	(elmo-split-equal): Ditto.
	(elmo-split-match): Ditto.

2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-append-buffer): Fix docstring.
	(elmo-folder-append-msgdb): Don't treat `read'.
	(elmo-message-flags): Don't return `read'.

	* elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
	(elmo-folder-unset-read-delayed): Ditto.

	* elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.

2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
	deletion.

2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
	header.

2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
	here.
	(elmo-msgdb-save): Bind inhibit-quit.
	(modb-standard-message-entity): Ditto.

2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-database.el: No need to require elmo-msgdb.

2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
	instead of `elmo-list-subdirectories'.

2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
	group entry.
	(elmo-folder-exists-p): "[" is empty.
	(elmo-folder-list-subfolders): Define.
	(elmo-folder-have-subfolder-p): Ditto.

2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.

2004-09-14  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-filter.el (elmo-folder-local-p): Define.

2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (modb-standard-loaded-message-id): Return nil
	when entity is garbaged.
	(modb-standard-save-entity-1): Don't modify the original entity.

2004-09-13  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.

2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-strict-folder-diff): Use
	`elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.

2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb.el (elmo-msgdb-flag-available-p): New generic function.
	(elmo-msgdb-message-number): Ditto.
	(elmo-msgdb-message-field): Ditto.

	* modb-standard.el (modb-standard-economize-entity-size): New user
	option.
	(modb-standard-loaded-message-id): New inline function.
	(modb-standard-load-entity): Use it.
	(modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
	throw message-id string away.
	(elmo-msgdb-flag-available-p): Define.
	(elmo-msgdb-message-number): Ditto.
	(elmo-msgdb-message-field): Ditto.

	* modb-legacy.el (modb-legacy-flag-list): Fix typo
	(suppoted -> supported).
	(modb-legacy-supported-flag-p): Ditto.
	(elmo-msgdb-set-flag): Ditto.
	(elmo-msgdb-unset-flag): Ditto.
	(elmo-msgdb-flag-available-p): Define.

	* modb-entity.el (elmo-message-entity-handler): If CAR element of entity
	is `t', treat it as legacy entity.
	
	* elmo.el (elmo-message-flag-available-p): New generic function.
	(elmo-message-number): Ditto.
	(elmo-message-field): Use `elmo-msgdb-message-field'.

	* elmo-vars.el (elmo-preserved-flags): Added `forwarded'.

	* elmo-pipe.el (elmo-message-flag-available-p): Define.
	(elmo-message-number): Ditto.

	* elmo-multi.el (elmo-message-number): Define.
	(elmo-message-flag-available-p): Ditto.

	* elmo-filter.el (elmo-message-flag-available-p): Define.
	(elmo-message-number): Ditto.

	* elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
	(elmo-folder-initialize): Load `max-number'.
	(elmo-folder-commit): Save it.
	(elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
	(elmo-global-flag-set-internal): Set up max-number slot.

2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.11.31.

2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
	unibyte string of the current buffer for the argument of `md5'
	(Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).

2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-legacy.el (modb-legacy-flag-list): New constant.
	(modb-legacy-suppoted-flag-p): New internal function.
	(elmo-msgdb-set-flag): Cause error when `flag' is not supported.
	(elmo-msgdb-unset-flag): Ditto.

2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-make-folder): Remove text properties for prefix.

	* elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
	from msgdb.

2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-multi.el (elmo-folder-count-flags): Changed return value
	(follow the API change).

	* elmo-filter.el (elmo-folder-count-flags): Ditto.

2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-standard.el (modb-standard-digest-flags): Abolish.
	(elmo-msgdb-list-flagged): Use elmo-digest-flags instead.

	* elmo-vars.el (elmo-digest-flags): New variable.
	(elmo-preserved-flags): Moved from elmo-flag.el.

	* elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
	(elmo-imap4-flag-to-imap-criteria): Ditto.
	(elmo-imap4-folder-list-flagged): Use it.

	* elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.

	* elmo.el (elmo-folder-count-flags): Changed return value.

	* elmo-flag.el (elmo-preserved-flags): New variable.
	(elmo-get-global-flags): Use it.

	* modb-standard.el (modb-standard-digest-flags): New variable.
	(elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
	Changed behavior of `any'.

	* elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
	which are defined the Internet draft
	(draft-melnikov-imap-keywords-03.txt).
	(elmo-imap4-flags-to-imap): New function.
	(elmo-folder-append-buffer): Use it.

	* modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
	in the docstring.

	* utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
	avoid the bug of Emacs 21.3.

2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* utf7.el (utf7-utf-16-coding-system): Avoid error when the
	function find-coding-system does not exist.

2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-condition-parse-search-value): Fixed atom
	parsing.

2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
	response codes.

2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
	(elmo-network-close-session): Follow the changes in
	`elmo-pop3-read-response'.
	(elmo-pop3-auth-user): Ditto.
	(elmo-pop3-auth-apop): Ditto.
	(elmo-network-initialize-session): Ditto.
	(elmo-network-authenticate-session): Ditto.
	(elmo-network-setup-session): Ditto.
	(elmo-folder-status): Ditto.
	(elmo-message-fetch-plugged): Ditto.
	(elmo-pop3-delete-msg): Ditto.

2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
	on failure.

2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
	style.
	(elmo-bind-directory): Ditto.

2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-folder-append-messages): Note on return value.
	* elmo-archive.el (elmo-folder-append-messages): Don't return
	message numbers which could not be appended.

2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-message-fetch-threshold): Add nil to its range.

2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-version.el (elmo-version): Up to 2.11.30.

2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-synchronize): Add 5th optional argument
	`mask'.

	* elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.

	* elmo-multi.el (elmo-folder-synchronize): Likewise.
	(elmo-multi-split-numbers): Add elmo-folder object into each
	element of return value at first.
	(elmo-folder-delete-messages): Follow the above change.
	(elmo-folder-detach-messages): Ditto.

	* elmo-filter.el (elmo-folder-synchronize): Minimize message
	number which is synchronized in target folder.

2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
	Change default value to symbol `all'.
	(elmo-map-message-fetch): Change condition to update overview
	follow the above.

2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-shimbun.el (elmo-map-message-fetch): Change default
	behavior to update overview.
	(elmo-shimbun-update-overview-folder-list): Note it.

2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (modb-standard-message-entity): Avoid infinite
	recursive call.

2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-spam.el (elmo-spam-register-good-messages): Don't call
	buffer-disable-undo, it is unnecessary.
	(elmo-spam-register-good-messages): Ditto.

	* elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
	Ditto.

	* elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.

2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-set-buffer-multibyte): Abolish.
	(elmo-set-work-buf): Use set-buffer-multibyte instead of
	elmo-set-buffer-multibyte.
	(elmo-object-load): Ditto.
	(elmo-save-buffer): Ditto.
	(elmo-delete-char): Ditto.
	(elmo-file-field-primitive-condition-match): Ditto.
	(elmo-mime-string): Ditto.

	* elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
	(elmo-archive-field-condition-match): Ditto.

	* elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.

	* elmo-net.el (elmo-network-initialize-session-buffer): Ditto.

	* elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
	(elmo-nntp-msgdb-create-message): Ditto.

	* elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.

	* elmo.el (elmo-message-match-condition): Ditto.
	(elmo-message-match-condition): Ditto.

	* modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
	Ditto.

	* elmo-version.el (elmo-version): Up to 2.11.29.

	* elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
	(elsp-header): New backend.

	* elmo-util.el (elmo-decoded-field-body): New function.

2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-version.el (elmo-version): Up to 2.11.28.

2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el: Rewrite.

	* elmo-version.el (elmo-version): Up to 2.11.27.

2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
	msgdb path for the localdir folder with absolute path.

	* utf7.el: Synch up with latest gnus/utf7.el;
	Modified for latest Emacs.

2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
	shimbun backend couldn't open.

2004-04-25  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
	(elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
	when a destination folder is a filter folder.

2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-flags): Add optional argument `msgid'.
	(elmo-generic-folder-append-messages): Call elmo-message-flags
	with argument `msgid'.

	* elmo-split.el (elmo-split-subr): Ditto.

	* elmo-pipe.el (elmo-message-flags): Follow the API change.

	* elmo-multi.el (elmo-message-flags): Ditto.

2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder): Add new slot `flag-table'.
	(elmo-folder-flag-table): New API.
	(elmo-folder-close-flag-table): Ditto.
	(elmo-folder-preserve-flags): New function.
	(elmo-generic-folder-append-messages): Use
	`elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
	Flag of a non-registered message, it sets to nil.
	Does not set flag to flag-table.

	* elmo-maildir.el (elmo-folder-append-buffer): Use
	`elmo-folder-preserve-flags'.
	(elmo-folder-append-messages): Use `elmo-folder-flag-table' and
	`elmo-folder-close-flag-table'.

	* elmo-archive.el (elmo-folder-append-buffer): Fix interface.
	(elmo-archive-folder-append-buffer): Use
	`elmo-folder-preserve-flags'.

	* elmo-cache.el (elmo-folder-append-buffer): Ditto.

	* elmo-imap4.el (elmo-folder-append-buffer): Ditto.

	* elmo-localdir.el (elmo-folder-append-buffer): Ditto.
	(elmo-folder-append-messages): Use `elmo-folder-flag-table' and
	`elmo-folder-close-flag-table'.

	* elmo-version.el (elmo-version): Up to 2.11.26.

2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-vars.el (elmo-network-stream-type-alist): Add direct.

	* elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
	md5's 4th and 5th argument (non-existent in flim one).

2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-split.el (elmo-split-subr): Flag of a non-registered
	message, It sets to nil.

2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-list-messages): Merge lists only if both
	list is non-nil.

2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>

	* elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.

	* elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.

	* elmo-util.el (elmo-uniq-sorted-list): New function.
	(elmo-make-number-list): Ditto.
	(elmo-number-set-to-number-list): Use elmo-make-number-list
	and don't use nreverse.

2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-version.el (elmo-version): Up to 2.11.25.

2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
	field not exists in message, Use md5 message digest of header.

2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-folder-append-buffer): Add note on return value.
	* elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
	* elmo-localdir.el (elmo-folder-append-buffer): Ditto.
	* elmo-split.el (elmo-split-subr): Check return value of
	elmo-folder-append-buffer.

	* elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
	* elmo-maildir.el (elmo-folder-append-buffer): Ditto.

	* elmo-cache.el (elmo-folder-append-buffer): Check existence of
	message-id.

2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-split.el (elmo-split-subr): Append message with flag.

	* elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
	* elmo-flag.el (elmo-folder-append-buffer): Ditto.
	* elmo-maildir.el (elmo-folder-append-buffer): Ditto.

2004-04-03  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
	* elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
	* elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.

2004-03-29  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
	with a function call of `process-buffer'.  All callers are updated.
	(elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
	Remove redundant `set-buffer' in a while loop.

2004-03-28  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
	calls.

2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
	elsp-spamfilter-register-buffer-internal with current buffer.
	(elmo-spam-register-spam-buffer): Ditto.
	(elmo-spam-register-good-buffer): Ditto.

2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>

	* elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
	if it is not contained in the response(A workaround for courier-imap).

2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
	parenthesis.

2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
	range.

2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (elmo-msgdb-list-flagged): Use append instead
	of nconc.

	* modb-entity.el (elmo-msgdb-match-condition-primitive): Added
	argument handler.
	(elmo-msgdb-message-match-condition): Follow the change above.

2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-flag.el (elmo-folder-initialize): Complete abbreviated
	folder name.

2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.

2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-kill-messages): Fix to update killed list.

2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-file.el (elmo-file-find): Fixed the problem when file is
	not found.

2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-file.el (elmo-file-find): Use expand-file-name for return
	value.
	(elmo-file-command-argument): Undo last change for cygwin.
	(elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
	Don't return nil.
	(elmo-map-message-fetch): Use elmo-file-detect-content-type.

2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-file.el (elmo-file-command-argument): Fixed problem when a
	value returned from elmo-file-find is nil.

2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
	to elmo-vars.el.

	* elmo.el (elmo-message-match-condition): Use elmo-message-fetch
	instead of insert-file-contents-as-binary.
	(elmo-message-set-field): New generic function.

	* elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
	behavior change on `split-string'.

	* elmo-file.el (elmo-file-find): New function.
	(elmo-file-command): New user option.
	(elmo-file-command-argument): Ditto.
	(elmo-file-fetch-max-size): Ditto.
	(elmo-file-detect-format): New function.
	(elmo-map-message-fetch): Use elmo-file-fetch-max-size;
	Use elmo-file-detect-format.
	(elmo-map-folder-list-message-locations): Don't treat directories.

2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-util.el (elmo-string-partial-p): Removed unused function.
	(elmo-passwd-alist-clear): Shred password before clear.
	(elmo-remove-passwd): Remove all mached pair.

2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-folder-synchronize): Fix description of the return
	value.

2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-fetch-bodystructure): New method.
	(elmo-message-fetch-bodystructure): Define default.

	* elmo-imap4.el (mime-imap-location-bodystructure): Call
	elmo-message-fetch-bodystructure.
	(elmo-message-fetch-bodystructure): Define.

	* elmo-filter.el (elmo-message-fetch-bodystructure): Define.

2004-02-15  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-filter.el (elmo-message-folder): Define.

2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-fetch-with-cache-process): Don't call
	elmo-delete-cr-buffer.

	* elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.

	* elmo-pop3.el (elmo-message-fetch-plugged): Ditto.

	* elmo-nntp.el (elmo-nntp-read-body): Ditto.

	* elmo-file.el (elmo-map-message-fetch): Decode body only when content
	type seems to be a text.

2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
	(elmo-spam-register-good-buffer): Ditto.
	(elmo-spam-spamassassin-register-messages): Ditto.

	* elmo-util.el (elmo-string-member-ignore-case): Define with
	static-cond.

2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-type): Undo last change.

	* slp.el (slp-exec-wait): Avoid byte-compile warnings.

	* elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
	warnings.

	* elmo-file.el: New file.
	
	* modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.

	* elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
	variable.
	(elmo-spam-spamassassin-register-messages): New inline function.
	(elmo-spam-register-spam-messages): Define.
	(elmo-spam-register-good-messages): Ditto.

	* elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
	Fixed typo.

	* elmo.el (toplevel): Added autoload setting for
	`elmo-get-global-flags'.
	(elmo-message-has-global-flag-p): New function.
	(elmo-message-set-global-flags): Ditto.
	(elmo-folder-type): Improvement for name: format.

	* elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
	availability of keyword flags.
	(elmo-imap4-folder-list-flagged): Treat keyword flags.
	(elmo-folder-list-flagged-plugged): Renamed from
	elmo-folder-list-flagged-unplugged.
	(elmo-imap4-set-flag): If "\*" is treated as permanent flag,
	accept any flag as keyword flag.
	(elmo-folder-set-flag-plugged): Accept keyword flags.
	(toplevel): Added autoload setting for `elmo-get-global-flags'.

	* elmo-flag.el (elmo-get-global-flags): New function.

	* elmo-filter.el (elmo-folder-diff): Fix total number for filter
	folders.

	* elmo-version.el (elmo-version): Up to 2.11.24.

2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
	elmo-multiple-field-body instead of std11-field-body to check all
	headers.

2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-util.el (elmo-cache-expire): Completion require match "age"
	or "size".

2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-get-hash-val): Check symbol is bound if
	unintern is unbound.

2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
	Protect from infinite loop.

2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-bogofilter.el
	(elmo-spam-bogofilter-max-messages-per-process): New user option.
	(elmo-spam-bogofilter-register-messages): New internal function.
	(elmo-spam-register-spam-messages): Define.
	(elmo-spam-register-good-messages): Ditto.

2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
	Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
	(elmo-spam-bogofilter-call): Fixed the last change.
	(elmo-spam-bogofilter-arguments): Ditto.

	* elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
	Follow the options change of latest bogofilter.

	* elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
	(elmo-spam-bogofilter-good-switch): Ditto.
	(elmo-spam-bogofilter-arguments-alist): New user option.
	(elmo-spam-bogofilter-debug): Ditto.
	(elmo-spam-bogofilter-call): Renamed from
	`elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
	is non-nil, insert output in buffer for debug.
	(elmo-spam-bogofilter-arguments): New macro.
	(elmo-spam-buffer-spam-p): Use it.
	(elsp-bogofilter-register-buffer): Ditto.

2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
	regexp.

2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
	value as "ruby".
	(elmo-spam-bsfilter-shell-switch): Set default value as nil.
	(elmo-spam-bsfilter-program): Set default value as full path for
	`bsfilter'.
	(elmo-spam-bsfilter-debug): New user option.
	(elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
	non-nil, insert output in buffer for debug. Fix treating of
	argument.

2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
	`elmo-maildir-flag-specs' element instead of one.
	(elmo-map-folder-unset-flag): Ditto.
	(Reported by Ken Makimura <macky@astem.or.jp>)

	* elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
	(elmo-folder-unset-flag-plugged): Ditto.

2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-nntp.el (elmo-folder-list-flagged): Return a list according
	to `reads' slot only if `in-msgdb' is nil.

2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
	and complement argument list.

2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
	instead of elmo-folder-list-flagged.

2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.

	* elsp-bsfilter.el: New file.

	* elmo-pipe.el (elmo-folder-list-unreads,
	elmo-folder-list-answereds,
	elmo-folder-list-importants,
	elmo-folder-flag-as-important,
	elmo-folder-unflag-important,
	elmo-folder-flag-as-read,
	elmo-folder-unflag-read,
	elmo-folder-flag-as-answered,
	elmo-folder-unflag-answered): Remove.
	(elmo-folder-set-flag): Define.
	(elmo-folder-unset-flag): Ditto.

	* elmo-nntp.el (elmo-folder-flag-as-read): Remove.
	(elmo-folder-set-flag): Define.
	(elmo-folder-unset-flag): Ditto.
	(elmo-folder-list-unreads): Remove.
	(elmo-folder-list-flagged): Define.

	* elmo-net.el (elmo-folder-list-flagged-internal): Define.
	(elmo-folder-list-unreads,
	elmo-folder-list-importants,
	elmo-folder-list-answereds,
	elmo-folder-list-unreads-plugged,
	elmo-folder-list-importants-plugged,
	elmo-folder-list-answereds-plugged): Remove.
	(elmo-folder-list-flagged-plugged): New method.
	(elmo-folder-unflag-important,
	elmo-folder-flag-as-important,
	elmo-folder-unflag-read,
	elmo-folder-flag-as-read,
	elmo-folder-unflag-answered,
	elmo-folder-flag-as-answered,
	elmo-folder-flag-as-read-unplugged,
	elmo-folder-unflag-read-unplugged,
	elmo-folder-flag-as-important-unplugged,
	elmo-folder-unflag-important-unplugged,
	elmo-folder-flag-as-answered-unplugged,
	elmo-folder-unflag-answered-unplugged): Remove.
	(elmo-folder-set-flag): Define.
	(elmo-folder-unset-flag): Ditto.
	(elmo-folder-set-flag-unplugged): Ditto.
	(elmo-folder-unset-flag-unplugged): Ditto.

	* elmo-multi.el (elmo-folder-list-unreads,
	elmo-folder-list-answereds,
	elmo-folder-list-importants,
	elmo-folder-flag-as-important,
	elmo-folder-unflag-important,
	elmo-folder-flag-as-read,
	elmo-folder-unflag-read,
	elmo-folder-flag-as-answered,
	elmo-folder-unflag-answered): Remove.
	(elmo-folder-set-flag): Define.
	(elmo-folder-unset-flag): Ditto.

	* elmo-map.el (elmo-map-folder-unflag-important,
	elmo-map-folder-flag-as-important,
	elmo-map-folder-unflag-read,
	elmo-map-folder-flag-as-read,
	elmo-map-folder-unflag-answered,
	elmo-map-folder-flag-as-answered): Remove.
	(elmo-map-folder-set-flag): New method.
	(elmo-map-folder-unset-flag): Ditto.
	(elmo-map-folder-list-unreads,
	elmo-map-folder-list-importants,
	elmo-map-folder-list-answereds): Remove.
	(elmo-folder-list-flagged-internal): Define.
	(elmo-map-folder-list-flagged): New method.

	* elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
	(elmo-map-folder-list-unreads,
	elmo-map-folder-list-importants,
	elmo-map-folder-list-flagged): Remove.
	(elmo-map-folder-list-flagged): Define.
	(elmo-map-folder-flag-as-important,
	elmo-map-folder-unflag-important,
	elmo-map-folder-flag-as-read,
	elmo-map-folder-unflag-read,
	elmo-map-folder-flag-as-answered,
	elmo-map-folder-unflag-answered): Remove.
	(elmo-maildir-set-mark-messages): New internal function.
	(elmo-map-folder-set-flag): Define.
	(elmo-map-folder-unset-flag): Ditto.

	* elmo.el (toplevel): Added autoload setting for
	`elmo-folder-list-global-flag-messages'.
	(elmo-folder-list-unreads,
	elmo-folder-list-importants,
	elmo-folder-list-answereds): Remove.
	(elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
	Return a list whitch merged with messages have global flag.
	(elmo-folder-list-flagged-internal): New method.
	(elmo-folder-unflag-important,
	elmo-folder-flag-as-important,
	elmo-folder-unflag-read,
	elmo-folder-flag-as-read,
	elmo-folder-unflag-answered,
	elmo-folder-flag-as-answered): Remove.
	(elmo-folder-set-flag): New method.
	(elmo-folder-unset-flag): Ditto.
	(elmo-message-set-flag):Use `elmo-folder-set-flag'.
	(elmo-message-unset-flag):Use `elmo-folder-unset-flag'.

	* elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
	(elmo-folder-list-unreads-plugged,
	elmo-folder-list-importants-plugged,
	elmo-folder-list-answereds-plugged,
	elmo-folder-list-flagged-unplugged,
	elmo-folder-unflag-important-plugged,
	elmo-folder-flag-as-important-plugged,
	elmo-folder-unflag-read-plugged,
	elmo-folder-flag-as-read-plugged,
	elmo-folder-unflag-answered-plugged,
	elmo-folder-flag-as-answered-plugged): Remove.
	(elmo-folder-set-flag-plugged,
	elmo-folder-unset-flag-plugged): Define.

	* elmo-flag.el (elmo-folder-initialize): Register to
	`elmo-global-flag-list' if flag is not global.
	(elmo-folder-append-messages): Set flag to source messages.

	* elmo-filter.el (elmo-filter-folder-list-unreads,
	elmo-folder-list-unreads,
	elmo-filter-folder-list-importants,
	elmo-folder-list-importants,
	elmo-folder-flag-as-read,
	elmo-folder-unflag-read,
	elmo-folder-flag-as-important,
	elmo-folder-unflag-important,
	elmo-folder-flag-as-answered,
	elmo-folder-unflag-answered): Remove.
	(elmo-folder-set-flag): Define.
	(elmo-folder-unset-flag): Ditto.

	* elmo-dop.el (elmo-folder-flag-as-read-dop,
	elmo-folder-unflag-read-dop,
	elmo-folder-flag-as-important-dop,
	elmo-folder-unflag-important-dop,
	elmo-folder-flag-as-answered-dop,
	elmo-folder-unflag-answered-dop): Remove.
	(elmo-folder-set-flag-dop,
	elmo-folder-unset-flag-dop,
	elmo-folder-set-important-delayed,
	elmo-folder-unset-important-delayed,
	elmo-folder-set-read-delayed,
	elmo-folder-unset-read-delayed,
	elmo-folder-set-answered-delayed,
	elmo-folder-unset-answered-delayed): New function.
	(elmo-dop-queue-merge-method-list): Follow the above chagned.
	(elmo-dop-queue-method-name-alist): Ditto.

	* elmo-version.el (elmo-version): Up to 2.11.23.

2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.

	* elsp-sa.el: New file.

2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (modb-standard-message-entity): New function.
	(elmo-msgdb-message-entity): Use it.

2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
	behavior when one-level is nil.

	* elmo-flag.el (elmo-folder-list-subfolders): Defined.

	* elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.

2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
	get max number.
	(elmo-generic-folder-diff): Ditto.

	* elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
	(elmo-folder-update-number): Ditto.

	* elmo-dop.el (elmo-folder-status-dop): Ditto.
	(elmo-folder-next-message-number-dop): Ditto.

2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-folder-msgdb-create): Use
	`elmo-message-entity' and `elmo-message-flags' instead of
	`elmo-msgdb-message-entity' and `elmo-msgdb-flags'.

2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-spam.el (elmo-spam-processor): Added 3rd argument
	`if-exists'.

2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-multi.el (elmo-folder-newsgroups): Simplify.

	* elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.

	* elmo-filter.el (elmo-folder-get-primitive-list): Fixed.

2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-version.el (elmo-version): Up to 2.11.22.

2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (elmo-msgdb-delete-messages): Always return t.

2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (elmo-msgdb-delete-messages): Dose not process
	if the message dose not exist.

2003-11-18  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-version.el (elmo-version): Up to 2.11.21.

2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (toplevel): Don't require mime.

2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-bogofilter.el (toplevel): Don't require path-util.
	(elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
	(elmo-spam-bogofilter-header): Abolish.
	(elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
	(elmo-spam-bogofilter-args): New user option.
	(elsp-bogofilter-call-bogofilter): New internal function.
	(elmo-spam-buffer-spam-p): Use it.
	(elsp-bogofilter-register-buffer): Renamed from
	`elmo-spam-bogofilter-register-buffer';
	Use `elsp-bogofilter-call-bogofilter'.
	(elmo-spam-register-spam-buffer): Follow the change above.
	(elmo-spam-register-good-buffer): Ditto.

2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (elmo-msgdb-append-entity): If entity or
	message-id is nil do nothing.

2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
	Revival.
	(elmo-imap4-session): Removed use-flag slot.
	(elmo-imap4-session-select-mailbox): Undo last change.
	(elmo-folder-use-flag-p): Use
	elmo-imap4-disuse-server-flag-mailbox-regexp.

2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
	(elmo-imap4-session-select-mailbox): Set it up.
	(elmo-folder-use-flag-p): Return value of use-flag slot.

2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
	message-id is nil.
	(Reported by MAKINO Takashi <makino@digitalway.co.jp>)

	* modb-entity.el (elmo-message-entity-handler): Likewise.

2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (toplevel): Remove setting of autoloding for
	elmo-global-flag-initialize.
	(elmo-init): Don't call elmo-global-flag-initialize.
	(toplevel): Added autoload setting for elmo-global-mark-migrate.

	* elmo-flag.el (elmo-global-flag-initialize): Abolish.
	(elmo-global-mark-migrate): Don't call it.
	(elmo-global-mark-upgrade): Ditto.

2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
	(elmo-folder-initialize): Raise a warning when obsolete folder is used.

	* elmo-vars.el (elmo-init-hook): New user option.

	* elmo.el (elmo-init): Run the elmo-init-hook.

	* elmo-flag.el (elmo-global-mark-migrate): New function.

2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (elmo-msgdb-set-flag): Simplify;
	Undo last change (move to elmo-msgdb-unset-flag).
	(elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
	flag is unset.

2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
	read flag is set.
	(elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
	(elmo-msgdb-unset-flag): Ditto.

2003-11-05  Andreas Fuchs <asf@boinkor.net>

	* elmo-split.el (elmo-split): Return split message count.

2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
	is nil.

2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-unflag-important): Call
	`elmo-global-flag-detach' with 4th argument delete-if-none that is
	a symbol `always'.

	* elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
	before unset flag.
	(elmo-global-flag-detach): Delete the message from flag folder, if
	`delete-if-none' is a symbol `always'.

2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
	`elmo-spam-spamfilter-decode-buffer'.
	(elsp-spamfilter-register-buffer-internal): New internal function.
	(elmo-spam-buffer-spam-p): Use it; Follow the API change.
	(elmo-spam-register-spam-buffer): Ditto.
	(elmo-spam-register-good-buffer): Ditto.

	* elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
	change.
	(elmo-spam-bogofilter-register-buffer): Added argument `restore'.
	(elmo-spam-register-spam-buffer): Follow the API change.
	(elmo-spam-register-good-buffer): Ditto.

	* elmo-split.el (toplevel): Require elmo-spam when copmile.
	(elmo-split-spam-p): Added argument plist; Call
	`elmo-spam-buffer-spam-p' with new argument register.

	* elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
	`register'.
	(elmo-spam-message-spam-p): Ditto.
	(elmo-spam-register-spam-buffer): Added optional argument
	`restore'.
	(elmo-spam-register-good-buffer): Ditto.
	(elmo-spam-register-spam-messages): Ditto.
	(elmo-spam-register-good-messages): Ditto.

2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
	register into good corpus.
	(elmo-spam-register-good-buffer): Fixed to register into bad
	corpus.

2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-version.el (elmo-version): Up to 2.11.20.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
	change.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
	flag without depending on \Recent flag.

2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
	(elmo-spam-modified-p): Defined.
	(elmo-spam-save-status): Set `modified' slot to nil.
	(elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
	(elmo-spam-register-good-buffer): Ditto.

	* elmo-spam.el (elmo-spam-modified-p): New API.

2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
	duplicate definition.

	* elmo-util.el (elmo-unfold-field-body): New function.
	(elmo-msgdb-get-message-id-from-buffer): Use it.

	* modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
	Fixed the last change; Use elmo-unfold-field-body.

2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
	Unfold date value.

2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-spam.el (elmo-spam-save-status): New API.

	* elsp-spamfilter.el: New file.

2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-split.el (toplevel): Add `elmo-spam-processor' args.

2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-split.el (elmo-split-spam-p): New function.

	* elmo-spam.el: New file.

	* elsp-bogofilter.el: Ditto.

2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-next-message-number): New API.
	(elmo-folder-next-message-number): Define.
	(elmo-message-field): Don't check folder length.

	* elmo-net.el (elmo-folder-next-message-number): Define.
	(elmo-folder-next-message-number-unplugged): Define.

	* elmo-map.el (elmo-folder-next-message-number): Define.
	(elmo-folder-delete-messages): Clear hash value.

	* elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.

	* elmo-dop.el (elmo-folder-next-message-number-dop): New function.
	(elmo-folder-delete-messages-dop-delayed): Always return t.

	* elmo-version.el (elmo-version): Up to 2.11.19.

2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
	change.

	* modb-legacy.el (elmo-msgdb-append-entity): Registered an
	identical cons cell into the mark-alist and the hash table.

2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
	elmo-folder-list-messages with argument `visible-only' as t.

	* elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
	(elmo-folder-msgdb-create): Check the target folder.

2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
	`permanentflag'	instead of `flags'.
	(elmo-folder-open): Ditto.
	(elmo-imap4-set-flag): Treat \Deleted flag as an exception.
	(elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
	(elmo-folder-use-flag-p): Always return t.
	(elmo-imap4-session-select-mailbox): Use value of `flags' if
	`permanentflags' does not exist.
	(elmo-folder-open): Ditto.

2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
	is nil.
	* modb-standard.el (elmo-msgdb-message-entity): Ditto.

	* elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
	(elmo-imap4-session-select-mailbox): Set it according to the SELECT
	response.
	(elmo-folder-open): Ditto.
	(elmo-imap4-set-flag): Send store flag command only when the `flags'
	slot of the session includes the flag.
	(elmo-imap4-session-flag-available-p): New function.
	(elmo-imap4-folder-list-flagged): Ditto.
	(elmo-folder-list-unreads-plugged): Use it.
	(elmo-folder-list-importants-plugged): Ditto.
	(elmo-folder-list-answereds-plugged): Ditto.
	(elmo-imap4-search-internal-primitive): Ditto.
	(elmo-imap4-folder-list-any-plugged,
	elmo-imap4-folder-list-digest-plugged): Abolish.

	* elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
	if numbers is nil.

2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-util.el (toplevel): Require emu for char-list-to-string.

2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-get-hash-val): Simplify.
	(elmo-set-hash-val): Rewrite.

2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-list-messages): Append killed messages into
	result if `visible-only' is nil and `in-msgdb' is non-nil.

	* elmo-util.el (elmo-uniq-list): Added optional argument
	`delete-function'.

	* modb.el (elmo-msgdb-flag-count): New API.

	* modb-standard.el (modb-standard): Added slot flag-count.
	(modb-standard-countup-flags): New function.
	(modb-standard-load-flag): Call it.
	(elmo-msgdb-append): Ditto.
	(elmo-msgdb-clear): Clear slot flag-count.
	(elmo-msgdb-set-flag): Call modb-standard-countup-flags.
	(elmo-msgdb-unset-flag): Treat `all' flag and call
	modb-standard-countup-flags.
	(elmo-msgdb-flag-count): Define.
	(elmo-msgdb-append-entity): Call modb-standard-countup-flags.
	(elmo-msgdb-delete-messages): Ditto.

	* modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
	(elmo-msgdb-flag-count): Define.

	* elmo.el (elmo-folder-list-messages): Undo last change.
	(elmo-folder-count-flags): Use elmo-msgdb-flag-count.
	(elmo-folder-kill-messages): Unset all flags to numbers.

	* elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
	elmo-folder-kill-messages.

	* elmo-nntp.el (elmo-folder-delete-messages): Ditto.
	(elmo-nntp-folder-delete-messages): Abolish.

	* elmo-version.el (elmo-version): Up to 2.11.18.

2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-kill-messages-before): Abolish.
	(elmo-folder-kill-messages-range): New function.
	(elmo-folder-synchronize): Use elmo-folder-kill-messages-range
	instead of elmo-folder-kill-messages-before.

2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
	elmo-imap4-current-msgdb to decide entity handler.

2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-dop.el (elmo-dop-msgdb): Rewrite.

	* modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
	inline function.
	(elmo-msgdb-overview-entity-get-number-internal): Ditto.
	(elmo-msgdb-overview-entity-set-number,
	elmo-msgdb-overview-entity-get-references,
	elmo-msgdb-overview-entity-set-references,
	elmo-msgdb-overview-entity-get-from-no-decode,
	elmo-msgdb-overview-entity-get-from,
	elmo-msgdb-overview-entity-set-from,
	elmo-msgdb-overview-entity-get-subject,
	elmo-msgdb-overview-entity-get-subject-no-decode,
	elmo-msgdb-overview-entity-set-subject,
	elmo-msgdb-overview-entity-get-date,
	elmo-msgdb-overview-entity-set-date,
	elmo-msgdb-overview-entity-get-to,
	elmo-msgdb-overview-entity-get-cc,
	elmo-msgdb-overview-entity-get-size,
	elmo-msgdb-overview-entity-set-size,
	elmo-msgdb-overview-entity-get-extra,
	elmo-msgdb-overview-entity-set-extra,
	elmo-msgdb-overview-entity-get-extra-field,
	elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
	(elmo-msgdb-make-index): Use
	`elmo-msgdb-overview-entity-get-number-internal'.
	(elmo-msgdb-clear-index): Ditto.
	(elmo-msgdb-append-entity): Ditto;
	Use `elmo-msgdb-overview-entity-get-id-internal'.

	* elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
	elmo-msgdb-overview-entity-set-number,
	elmo-msgdb-overview-entity-get-references,
	elmo-msgdb-overview-entity-set-references,
	elmo-msgdb-overview-entity-get-from-no-decode,
	elmo-msgdb-overview-entity-get-from,
	elmo-msgdb-overview-entity-set-from,
	elmo-msgdb-overview-entity-get-subject,
	elmo-msgdb-overview-entity-get-subject-no-decode,
	elmo-msgdb-overview-entity-set-subject,
	elmo-msgdb-overview-entity-get-date,
	elmo-msgdb-overview-entity-set-date,
	elmo-msgdb-overview-entity-get-to,
	elmo-msgdb-overview-entity-get-cc,
	elmo-msgdb-overview-entity-get-size,
	elmo-msgdb-overview-entity-set-size,
	elmo-msgdb-overview-entity-get-extra,
	elmo-msgdb-overview-entity-set-extra,
	elmo-msgdb-overview-entity-get-extra-field,
	elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
	and rewrote for backward compatibility.

2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-entity-number,
	elmo-message-entity-set-number,
	elmo-message-entity-field,
	elmo-message-entity-set-field): Moved to elmo-msgdb.el.

	* elmo-msgdb.el (elmo-message-entity-number,
	elmo-message-entity-set-number,
	elmo-message-entity-field,
	elmo-message-entity-set-field): Moved from elmo.el.

2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (toplevel): Changed definition orders.

2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb.el (elmo-msgdb-search): New API .
	(elmo-msgdb-match-condition): Ditto.

	* modb-standard.el (elmo-msgdb-search): Define.

	* modb-legacy.el (elmo-msgdb-search): Ditto.

	* modb-entity.el (elmo-msgdb-message-match-condition): Renamed
	from elmo-msgdb-match-condition-internal.

	* elmo.el (elmo-folder-search-fast): Abolish.
	(elmo-folder-search): Use elmo-msgdb-search and
	elmo-with-progress-display.

	* elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
	as msgdb API.

	* elmo.el (elmo-folder): Remove slot message-modified and
	flag-modified.
	(elmo-folder-set-message-modified): Abolish.
	(elmo-generic-folder-commit): Follow the change above.
	(elmo-folder-synchronize): Ditto.

	* elmo-pipe.el (elmo-folder-set-message-modified): Abolish.

	* elmo-multi.el (elmo-folder-set-message-modified): Ditto.

	* elmo-filter.el (elmo-folder-set-message-modified): Ditto.

2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb-standard.el (modb-standard-make-message-entity,
	elmo-msgdb-make-message-entity,
	elmo-msgdb-create-message-entity-from-buffer,
	elmo-msgdb-message-entity-number,
	elmo-msgdb-message-entity-set-number,
	elmo-msgdb-message-entity-field,
	elmo-msgdb-message-entity-set-field,
	elmo-msgdb-copy-message-entity,
	elmo-msgdb-match-condition-internal): Remove.

	* modb-entity.el: New file (again).

	* modb.el (toplevel): Require modb-entity.
	(elmo-msgdb-message-entity-handler): New method.

	* modb-standard.el (modb-standard-entity-id): Use
	elmo-message-entity-handler.
	(modb-standard-load-entity): Ditto.
	(elmo-msgdb-append-entity): Ditto.
	(elmo-msgdb-create-message-entity-from-buffer): Ditto.

	* modb-legacy.el (elmo-msgdb-get-decoded-cache,
	elmo-msgdb-decoded-cache-hashtb,
	(modb-legacy-make-message-entity,
	elmo-msgdb-make-message-entity,
	elmo-msgdb-create-message-entity-from-buffer,
	elmo-msgdb-message-entity-number,
	elmo-msgdb-message-entity-set-number,
	elmo-msgdb-message-entity-field,
	elmo-msgdb-message-entity-set-field,
	elmo-msgdb-copy-message-entity,
	elmo-msgdb-match-condition-internal,
	elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.

	* elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
	(elmo-message-entity-set-number): Ditto.
	(elmo-message-entity-field): Ditto.
	(elmo-message-entity-set-field): Ditto.

	* elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.

	* elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.

	* elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
	(elmo-nntp-msgdb-create-message): Ditto.

	* elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
	(elmo-folder-msgdb-create): Add unread flag.

	* elmo-maildir.el (elmo-folder-msgdb-create): Ditto.

	* elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.

	* elmo-cache.el (elmo-folder-msgdb-create): Ditto.

	* elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
	elmo-msgdb-messge-entity-handler.
	* elmo-version.el (elmo-version): Up to 2.11.17.

2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
	change.

2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-field): Use elmo-message-entity-field.

	* elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
	(elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
	(elmo-msgdb-flag-table): Ditto.
	(elmo-msgdb-sort-by-date): Ditto.

	* modb.el (elmo-msgdb-create-message-entity-from-file): Define.

	* modb-standard.el (toplevel): Require mime.
	(modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
	(modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
	elmo-msgdb-message-entity-number.
	(elmo-msgdb-append-entity): Ditto.
	(elmo-msgdb-create-message-entity-from-file): Remove.
	(elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
	corresponds to the entity.
	(elmo-msgdb-message-entity-number): Do nothing currently.
	(elmo-msgdb-message-entity-field): Ditto.
	(elmo-msgdb-message-entity-set-field): Ditto.
	(elmo-msgdb-copy-message-entity): Ditto.
	(elmo-msgdb-match-condition-internal): Ditto.

	* modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
	elmo-util.el.
	(elmo-msgdb-create-message-entity-from-file): Remove.

	* elmo-util.el (elmo-msgdb-insert-file-header): Moved from
	modb-legacy.el.
	(elmo-multiple-field-body): Moved from elmo-msgdb.el.

	* elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.

2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb.el (elmo-msgdb-make-message-entity): Define simple one.
	(elmo-msgdb-message-entity-field): Ditto.
	(elmo-msgdb-message-entity-number): Ditto.

2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
	Fixed how to set extra field into entity.
	(elmo-msgdb-message-entity-set-field): Fixed mistake string for
	symbol.

	* modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
	Fixed how to set extra field into entity.
	(elmo-msgdb-message-entity-set-field): Fixed mistake string for
	symbol.

2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* modb.el (elmo-message-entity-db): New function.
	(elmo-msgdb-make-message-entity): New API.
	(elmo-msgdb-message-entity-number): Ditto.
	(elmo-msgdb-message-entity-set-number): Ditto.
	(elmo-msgdb-message-entity-field): Ditto.
	(elmo-msgdb-message-entity-set-field): Ditto.
	(elmo-msgdb-copy-message-entity): Ditto.
	(elmo-msgdb-create-message-entity-from-file): Ditto.
	(elmo-msgdb-create-message-entity-from-buffer): Ditto.
	(elmo-msgdb-match-condition-internal): Ditto.

	* modb-standard.el (modb-legacy): Require modb-legacy.
	(modb-standard-make-message-entity): New inline function.
	(elmo-msgdb-make-message-entity): Define.
	(elmo-msgdb-create-message-entity-from-file): Ditto.
	(elmo-msgdb-create-message-entity-from-buffer): Ditto.
	(elmo-msgdb-message-entity-field): Ditto.
	(elmo-msgdb-message-entity-set-field): Ditto.
	(elmo-msgdb-copy-message-entity): Ditto.
	(elmo-msgdb-match-condition-internal): Ditto.

	* modb-legacy.el: Don't require modb-entity.
	(elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
	(elmo-msgdb-match-condition-primitive): Ditto.
	(elmo-msgdb-get-decoded-cache): Ditto.
	(elmo-msgdb-overview-entity-get-id): Ditto.
	(elmo-msgdb-overview-entity-get-number): Ditto.
	(elmo-msgdb-overview-entity-set-number): Ditto.
	(elmo-msgdb-overview-entity-get-references): Ditto.
	(elmo-msgdb-overview-entity-set-references): Ditto.
	(elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
	(elmo-msgdb-overview-entity-get-from): Ditto.
	(elmo-msgdb-overview-entity-set-from): Ditto.
	(elmo-msgdb-overview-entity-get-subject): Ditto.
	(elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
	(elmo-msgdb-overview-entity-set-subject): Ditto.
	(elmo-msgdb-overview-entity-get-date): Ditto.
	(elmo-msgdb-overview-entity-set-date): Ditto.
	(elmo-msgdb-overview-entity-get-to): Ditto.
	(elmo-msgdb-overview-entity-get-cc): Ditto.
	(elmo-msgdb-overview-entity-get-size): Ditto.
	(elmo-msgdb-overview-entity-set-size): Ditto.
	(elmo-msgdb-overview-entity-get-extra): Ditto.
	(elmo-msgdb-overview-entity-set-extra): Ditto.
	(elmo-msgdb-overview-entity-get-extra-field): Ditto.
	(elmo-msgdb-overview-entity-set-extra-field): Ditto.
	(elmo-msgdb-number-load): Ditto.
	(elmo-msgdb-overview-load): Ditto.
	(elmo-msgdb-mark-load): Ditto.
	(elmo-msgdb-number-save): Ditto.
	(elmo-msgdb-mark-save): Ditto.
	(elmo-msgdb-overview-save): Ditto.
	(modb-legacy-make-message-entity): New inline function.
	(elmo-msgdb-insert-file-header): Ditto.
	(elmo-msgdb-make-message-entity): Define.
	(elmo-msgdb-create-message-entity-from-file): Ditto.
	(elmo-msgdb-create-message-entity-from-buffer): Ditto.
	(elmo-msgdb-message-entity-number): Ditto.
	(elmo-msgdb-message-entity-set-number): Ditto.
	(elmo-msgdb-message-entity-field): Ditto.
	(elmo-msgdb-message-entity-set-field): Ditto.
	(elmo-msgdb-copy-message-entity): Ditto.
	(elmo-msgdb-match-condition-internal): Ditto.

	* elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
	(elmo-message-copy-entity): Rewrite.
	(elmo-message-entity-number): Ditto.
	(elmo-message-entity-set-number): Ditto.
	(elmo-message-entity-field): Use elmo-message-entity-db.
	(elmo-message-entity-set-field): Ditto.
	(elmo-message-field): Rewrite.

	* elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
	elmo-msgdb.el
	(elmo-msgdb-get-message-id-from-buffer): Ditto.

	* elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
	elmo-message-entity-field.
	(elmo-shimbun-folder-shimbun-header): Ditto.
	(elmo-shimbun-entity-to-header): Ditto.
	(elmo-folder-msgdb-create): Ditto.
	(elmo-shimbun-msgdb-create-entity): Ditto;
	Use elmo-msgdb-create-message-entity-from-buffer.
	(elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
	(elmo-map-folder-list-message-locations): elmo-message-entity-field.

	* elmo-sendlog.el (elmo-folder-msgdb-create): Use
	elmo-msgdb-create-message-entity-from-file and 
	elmo-message-entity-field.

	* elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
	elmo-message-entity-number.
	(elmo-pop3-msgdb-create-message): Use
	elmo-msgdb-create-message-entity-from-buffer,
	elmo-message-entity-set-field, elmo-message-entity-number and
	elmo-message-entity-set-number.

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
	the API change in elmo-msgdb-make-message-entity.
	(elmo-nntp-msgdb-create-message): Use
	elmo-msgdb-create-message-entity-from-buffer.

	* elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
	elmo-message-entity-field and
	elmo-msgdb-create-message-entity-from-file.

	* elmo-msgdb.el (toplevel): Don't require modb-entity.
	(elmo-msgdb-get-field): Abolish.
	(elmo-msgdb-get-number): Rewrite.
	(elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
	(elmo-msgdb-flag-table): Ditto.
	(elmo-msgdb-get-last-message-id,
	elmo-msgdb-number-load, elmo-msgdb-overview-load,
	elmo-msgdb-mark-load, elmo-msgdb-number-save,
	elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
	(elmo-msgdb-create-overview-from-buffer,
	elmo-msgdb-overview-get-parent-entity): Abolish.

	* elmo-mime.el (elmo-mime-display-as-is): Use
	elmo-message-entity-field.

	* elmo-map.el (elmo-folder-pack-numbers): Use
	elmo-message-entity-set-number.

	* elmo-maildir.el (elmo-folder-msgdb-create): 
	elmo-msgdb-create-message-entity-from-file instead of
	elmo-msgdb-create-overview-entity-from-file.

	* elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
	msgdb.
	(elmo-folder-msgdb-create): Use elmo-message-entity-field.
	(elmo-folder-pack-numbers): Use elmo-message-entity-set-number.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
	elmo-messge-entity-field and elmo-message-entity-number.
	(elmo-imap4-fetch-callback-1): Call
	elmo-msgdb-create-message-entity-from-buffer instead of
	elmo-msgdb-create-overview-from-buffer.	
	(elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
	(elmo-find-fetch-strategy): Likewise.

	* elmo-flag.el (elmo-folder-msgdb-create): Call 
	elmo-localdir-msgdb-create-entity with argument msgdb.

	* elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
	and elmo-message-entity-set-number.

	* elmo-cache.el (elmo-folder-msgdb-create): Use
	elmo-message-entity-field.
	(elmo-folder-msgdb-create): Call
	elmo-msgdb-create-message-entity-from-file instead of
	elmo-msgdb-create-overview-entity-from-file.

	* elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
	argument msgdb; Call elmo-msgdb-create-message-from-buffer
	instead of elmo-msgdb-create-overview-from-buffer.
	(elmo-archive-msgdb-create-entity): Ditto.
	(elmo-archive-msgdb-create-as-numlist-subr1): Use
	elmo-message-entity-field.
	(elmo-archive-parse-mmdf): Ditto.

	* modb-entity.el: Removed.

	* elmo-version.el (elmo-version): Up to 2.11.16.

2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-map.el (elmo-folder-unflag-answered): Added optional argument
	`is-local'.
	(elmo-folder-flag-as-answered): Ditto.

2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb-standard.el: New file.

	* elmo.el (elmo-folder-clear): Reconstruct msgdb if
	elmo-msgdb-convert-type is `sync'.

	* elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
	(elmo-msgdb-convert-type): New user option.

	* elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
	(elmo-load-msgdb): Auto detect saved type.

	* elmo-version.el (elmo-version): Up to 2.11.15.

2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-flag.el (elmo-folder-list-global-flag-messages): New function.

	* elmo.el (elmo-folder-delete-messages): Added notice in docstring.
	(elmo-folder-move-messages): Call elmo-global-flag-detach-messages
	with argument `delete-if-none' when dst-folder is 'null.

	* elmo-flag.el (elmo-folder-append-messages): Defined.
	(elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.

2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").

2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
	(elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
	(elmo-folder-commit): Ditto.

2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-flag.el: New file.

	* elmo-mark.el: Removed.

	* modb-legacy.el (modb-legacy-new-mark,
	modb-legacy-unread-uncached-mark,
	modb-legacy-unread-cached-mark,
	modb-legacy-read-uncached-mark,
	modb-legacy-answered-cached-mark,
	modb-legacy-answered-uncached-mark,
	modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
	All other related portions are changed.

	* elmo.el (luna-define-class): Changed mark-modified to flag-modified.
	(elmo-folder-list-messages-with-global-mark): Abolish.
	(elmo-folder-unflag-important): Renamed from `mark' to `flag'.
	(elmo-folder-flag-as-important): Ditto.
	(elmo-folder-unflag-read): Ditto.
	(elmo-folder-flag-as-read): Ditto.
	(elmo-folder-unflag-answered): Ditto.
	(elmo-folder-flag-as-answered): Ditto.
	(elmo-message-encache): Return the cache path.
	(elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
	(elmo-message-set-flag): Transitional implementation.
	(elmo-message-unset-flag): Ditto.
	(elmo-folder-unflag-important): Call elmo-global-flag-detach.
	(elmo-folder-flag-as-important): Call elmo-global-flag-set.
	(elmo-init): Call elmo-global-flag-initialize.
	(toplevel): Added autoload settings for elmo-flag.

	* elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.

	* elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
	(elmo-file-cache-delete): Don't treat global-mark.

	* elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.

	* elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.

	* elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
	`elmo-global-flags-set'.

	* elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
	`flag'.
	(elmo-folder-unflag-read): Ditto.
	(elmo-folder-unflag-important): Ditto.
	(elmo-folder-flag-as-important): Ditto.
	(elmo-folder-unflag-answered): Ditto.
	(elmo-folder-flag-as-answered): Ditto.

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
	`elmo-global-flags-set'.
	(elmo-folder-flag-as-read): Renamed from `mark' to `flag'.

	* elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.

	* elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
	`flag'.
	(elmo-folder-flag-as-important): Ditto.
	(elmo-folder-unflag-important): Ditto.
	(elmo-folder-flag-as-important): Ditto.
	(elmo-folder-unflag-read): Ditto.
	(elmo-folder-flag-as-read): Ditto.
	(elmo-folder-unflag-answered): Ditto.
	(elmo-folder-flag-as-answered): Ditto.

	* elmo-multi.el (elmo-folder-list-importants): Don't call
	elmo-folder-list-messages-with-global-mark.
	(elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
	(elmo-folder-unflag-important): Ditto.
	(elmo-folder-flag-as-read): Ditto.
	(elmo-folder-unflag-read): Ditto.
	(elmo-folder-flag-as-answered): Ditto.
	(elmo-folder-unflag-answered): Ditto.

	* elmo-msgdb.el (elmo-msgdb-new-mark,
	elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
	elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
	elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
	(Moved to modb-legacy.el).
	(elmo-flag-table-get): Treat important flag too.

	* elmo-map.el (elmo-map-folder-unflag-important): Renamed from
	`mark' to `flag'.
	(elmo-map-folder-flag-as-important): Ditto.
	(elmo-map-folder-unflag-read): Ditto.
	(elmo-map-folder-flag-as-read): Ditto.
	(elmo-map-folder-unflag-answered): Ditto.
	(elmo-map-folder-flag-as-answered): Ditto.
	(elmo-folder-unflag-important): Ditto.
	(elmo-folder-flag-as-important): Ditto.
	(elmo-folder-unflag-read): Ditto.
	(elmo-folder-flag-as-read): Ditto.
	(elmo-folder-unflag-answered): Ditto.
	(elmo-folder-flag-as-answered): Ditto.

	* elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
	(elmo-map-folder-flag-as-important): Renamed from `mark' to
	`flag'.
	(elmo-map-folder-unflag-important): Ditto.
	(elmo-map-folder-flag-as-read): Ditto.
	(elmo-map-folder-unflag-read): Ditto.
	(elmo-map-folder-flag-as-answered): Ditto.
	(elmo-map-folder-unflag-answered): Ditto.

	* elmo-localdir.el (elmo-folder-msgdb-create): Call
	`elmo-global-flags-set'.
	(elmo-global-flags-set): Added autoload setting.

	* elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
	`flag'.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
	`elmo-msgdb-global-mark-set'.
	(elmo-folder-msgdb-create-plugged): Changed callback-data structure;
	Call `elmo-global-flags-set'.
	(elmo-folder-unflag-important-plugged): Renamed from `mark' to
	`flag'.
	(elmo-folder-flag-as-important-plugged): Ditto.
	(elmo-folder-unflag-read-plugged): Ditto.
	(elmo-folder-flag-as-read-plugged): Ditto.
	(elmo-folder-unflag-answered-plugged): Ditto.
	(elmo-folder-flag-as-answered-plugged): Ditto.
	(elmo-global-flags-set): Added autoload setting.

	* elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
	`flag'.
	(elmo-folder-unflag-read): Ditto.
	(elmo-folder-flag-as-important): Ditto.
	(elmo-folder-unflag-important): Ditto.
	(elmo-folder-flag-as-answered): Ditto.
	(elmo-folder-unflag-answered): Ditto.

	* elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
	change of `mark'->`flag'.
	(elmo-dop-queue-method-name-alist): Ditto.
	(elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
	(elmo-folder-unflag-read-dop): Ditto.
	(elmo-folder-flag-as-important-dop): Ditto.
	(elmo-folder-unflag-important-dop): Ditto.
	(elmo-folder-flag-as-answered-dop): Ditto.
	(elmo-folder-unflag-answered-dop): Ditto.

	* elmo-cache.el (elmo-folder-msgdb-create): Call
	`elmo-global-flags-set'.

	* elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
	Call `elmo-global-flags-set'.
	(elmo-archive-msgdb-create-as-numlist-subr2): Call
	elmo-archive-parse-mmdf with argument `folder'.
	(elmo-archive-parse-mmdf): Added argument `folder';
	Call `elmo-global-flags-set'.

	* elmo-version.el (elmo-version): Up to 2.11.14.

2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb.el (elmo-msgdb-length): Define.

	* elmo.el (elmo-make-folder): Fixed.
	(elmo-generic-folder-append-messages): Follow the API change.

	* elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
	API change.

2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* modb.el: New file.

	* modb-entity.el: Ditto.

	* modb-legacy.el: Ditto.

	* elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
	(elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
	of `elmo-msgdb-overview-get-entity'.
	(elmo-msgdb-get-field): Ditto.
	(elmo-msgdb-merge): Moved to `elmo.el'.
	(elmo-msgdb-length): Removed; redefine as modb method.
	(elmo-msgdb-change-mark): Abolish.
	(elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
	(elmo-msgdb-match-condition): Don't use mark.
	(elmo-msgdb-overview-get-entity): Abolish.
	Split modb part into `modb*.el'.

	* elmo-vars.el (elmo-msgdb-default-type): New user option.

	* elmo-shimbun.el (shimbun-mua-search-id): Use
	`elmo-msgdb-message-entity' instead of
	`elmo-msgdb-overview-get-entity'.
	(elmo-shimbun-folder-shimbun-header): Ditto.
	(elmo-shimbun-get-headers): Ditto.
	(elmo-shimbun-update-overview): Ditto.

	* elmo-mime.el (elmo-mime-display-as-is): Ditto.

	* elmo-filter.el (elmo-folder-msgdb-create): Ditto.

	* elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
	(elmo-msgdb-merge): Moved from `elmo-msgdb.el'.

	* elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
	`elmo-msgdb-mark-to-flags'.

	* elmo-map.el (elmo-folder-pack-numbers): Don't use
	`elmo-msgdb-set-path'.

	* elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
 
	* elmo-version.el (elmo-version): Up to 2.11.13.

	* elmo.el (elmo-generic-folder-commit): Don't load msgdb.

	* elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
	of mark.

2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
	mismatch.

2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
	instead of `elmo-msgdb-get-cached'.
	(elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.

	* elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
	(elmo-msgdb-set-cached): Ditto.
	(elmo-msgdb-set-flag): Rewrite.
	(elmo-msgdb-unset-flag): Ditto.

	* elmo-msgdb.el: Rewrite with luna.

	* elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
	(elmo-folder-msgdb): Follow the change above.
	(elmo-generic-folder-commit): Use `elmo-msgdb-save'.
	(elmo-folder-unmark-important): Follow the API change.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-answered): Ditto.
	(elmo-folder-mark-as-answered): Ditto.
	(elmo-folder-clear): Likewise.

	* elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
	instead of `elmo-msgdb-load' (renamed).

	* elmo-version.el (elmo-version): Up to 2.11.12.

2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-generic-folder-append-messages): Follow the API
	change.
	(elmo-message-mark): Abolish.
	(elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
	instead of `elmo-msgdb-change-mark'.

	* elmo-pipe.el (elmo-message-mark): Abolish.

	* elmo-multi.el (elmo-message-mark): Ditto.

	* elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
	(elmo-msgdb-unread-uncached-mark): Ditto.
	(elmo-msgdb-unread-cached-mark): Ditto.
	(elmo-msgdb-read-uncached-mark): Ditto.
	(elmo-msgdb-answered-cached-mark): Ditto.
	(elmo-msgdb-answered-uncached-mark): Ditto.
	(elmo-msgdb-important-mark): Ditto.
	(elmo-msgdb-flags-to-mark): Remove arguments `cached' and
	`use-cache'.
	(elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
	`flags'.
	(elmo-flag-table-load): Changed flag to list of flag.
	(elmo-flag-table-set): If flags is nil, set read flag.
	(elmo-flag-table-get): Return derived flags from global mark,
	cache status and saved flags.
	(elmo-msgdb-flag-table): Follow the change above.
	(elmo-msgdb-out-of-date-messages): New function.

	* elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.

	* elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.

	* elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
	(elmo-nntp-msgdb-create-message): Ditto.

	* elmo-map.el (elmo-folder-pack-numbers): Ditto.

	* elmo-maildir.el (elmo-maildir-list-location): Treat flags as
	independent.
	(elmo-folder-msgdb-create): Follow the API change.

	* elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
	(elmo-folder-append-messages): Ditto.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
	(elmo-folder-append-buffer): Ditto.

	* elmo-filter.el (elmo-folder-msgdb-create): Ditto.

	* elmo-cache.el (elmo-folder-msgdb-create): Ditto.

	* elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
	(elmo-archive-parse-mmdf): Ditto.

	* elmo-version.el (elmo-version): Up to 2.11.11.

2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
	`elmo-msgdb-mark'.

	* elmo-util.el (elmo-with-progress-display): Fixed edebug spec.

	* elmo-pipe.el (elmo-message-flags): Defined.

	* elmo-multi.el (elmo-message-flags): Ditto.

2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
	`elmo-msgdb-delete-msgs'.

	* elmo.el (elmo-folder-count-flags): Don't use
	`elmo-msgdb-get-mark-alist'.
	(elmo-folder-detach-messages): Follow the API change.

	* elmo.el (elmo-folder-list-messages): Append killed messages into
	result if `visible-only' is nil.

	* elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
	canceled messages.
	(elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
	(elmo-folder-update-number): Likewise.

	* elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
	(elmo-pop3-sort-msgdb-by-original-number): Use
	`elmo-msgdb-sort-entities'.

	* elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
	(elmo-msgdb-sort-by-date): Use it.
	(elmo-msgdb-overview-sort-by-date): Abolish.

	* elmo-dop.el (elmo-folder-status-dop): Fixed.

	* elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
	(elmo-msgdb-flags): New function.
	(elmo-msgdb-merge): Use elmo-msgdb-append.

	* elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
	change.

	* elmo-map.el (elmo-folder-pack-numbers): Ditto.

	* elmo-dop.el (elmo-folder-status-dop): Use
	elmo-folder-list-messages instead of elmo-msgdb-list-messages.

2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-map.el (elmo-folder-pack-numbers): Rewrite.

	* elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.

	* elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.

	* elmo-util.el (elmo-with-progress-display): New macro.

	* elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.

2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
	`elmo-folder-list-message-entities' instead of
	`elmo-msgdb-get-overview'.
	(elmo-map-folder-list-message-locations): Ditto.

	* elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
	methods instead of treat directly).
	(elmo-msgdb-clear): Ditto.
	(elmo-msgdb-delete-msgs): Ditto.
	(elmo-msgdb-sort-by-date): Ditto.

	* elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
	local variables.
	(elmo-nntp-folder-msgdb-create): Follow the API change.

	* elmo-version.el (elmo-version): Up to 2.11.10.

2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
	(elmo-msgdb-flags-to-mark): Ditto.
	(elmo-msgdb-append-entity): Ditto.

	* elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
	Use `elmo-msgdb-append-entity' instead of construct msgdb.
	(elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
	(elmo-archive-parse-mmdf): Ditto.

	* elmo-cache.el (elmo-folder-msgdb-create): Ditto.

	* elmo-filter.el (elmo-folder-msgdb-create): Ditto.

	* elmo-localdir.el (elmo-folder-msgdb-create): Ditto.

	* elmo-maildir.el (elmo-folder-msgdb-create): Ditto.

	* elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.

	* elmo-nmz.el (elmo-folder-msgdb-create): Ditto.

	* elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.

	* elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
	(elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
	to empty msgdb.

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
	`elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
	instead of directly construction.
	(elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
	instead of construct msgdb.

	* elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
	`elmo-msgdb-set-overview' instead of reconstruct msgdb.
	(elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
	instead of construct msgdb.

2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
	when field is from or subject.

2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-multi.el (elmo-message-entity-parent): Define.
	(elmo-folder-search): Rewrite.

2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-multi.el (elmo-message-cached-p): Define.

	* elmo.el (elmo-message-cached-p): New method.
	(elmo-message-accessible-p): Use it instead of msgdb API directly.
	(elmo-message-flags): New method.
	(elmo-message-flagged-p): New function.

	* elmo-version.el (elmo-version): Up to 2.11.9.

2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-version.el (elmo-version): Up to 2.11.8.

	* elmo.el (elmo-folder-move-messages): Removed unused arguments.

	* elmo-pipe.el (elmo-pipe-drain): Follow the change above.

2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-detach-messages): Undo last change.

2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.

	* elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
	only when src folder type is pop3.

2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-make-index): Use
	elmo-msgdb-overview-entity-get-number instead of
	elmo-message-entity-number.

2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-version.el (elmo-version): Up to 2.11.7.

2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
	function.

	* elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
	(elmo-msgdb-merge): New function.
	(elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
	(elmo-msgdb-make-index): Rewrite.

	* elmo-version.el (elmo-version): Up to 2.11.6.

	* elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
	use it as a the path for loading message entities.

	* elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.

2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-filter.el (elmo-folder-set-message-modified): Set 
	message-modified slot of itself if it does not require target msgdb.

	* elmo-mime.el (elmo-mime-message-display): Display message entirely
	if folder length is zero.
	(elmo-mime-display-as-is): Ditto.

	* elmo-filter.el (elmo-folder-set-message-modified): Define.

	* elmo-multi.el (elmo-folder-set-message-modified): Ditto.

2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-set-message-modified): New method.
	(elmo-generic-folder-commit): Use it.
	(elmo-folder-synchronize): Ditto.

	* elmo-pipe.el (elmo-folder-set-message-modified): Define.
	(elmo-folder-commit): Remove duplicate definition.

2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-list-message-entities): Ignore killed-list.

2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
	(elmo-strict-folder-diff): Ditto.
	(elmo-folder-set-info-max-by-numdb): Simplify.

	* elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
	elmo-msgdb-list-messages.

	* elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
	(elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.

2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-list-messages): Treat killed-list only when
	visible-only is non-nil.
	(elmo-folder-confirm-appends): Changed message.
	(elmo-folder-synchronize): Added argument disable-killed.

	* elmo-multi.el (elmo-folder-synchronize): Added argument
	disable-killed.

	* elmo-pipe.el (elmo-folder-synchronize): Ditto.

	* elmo-version.el (elmo-version): Up to 2.11.5.

	* elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
	elmo-list-filter.

	* elmo-util.el (elmo-list-filter): Simplify.

	* elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
	(elmo-folder-set-info-max-by-numdb): Changed argument to number list.
	(elmo-generic-folder-diff): Abolish argument.
	(elmo-msgdb-load): Don't use number-alist.

	* elmo-filter.el (elmo-folder-diff): Abolish argument.

	* elmo-pipe.el (elmo-folder-diff): Ditto.

	* elmo-nmz.el (elmo-folder-diff): Ditto.

	* elmo-net.el (elmo-folder-diff): Ditto.

	* elmo-maildir.el (elmo-folder-diff): Ditto.

	* elmo-imap4.el (elmo-folder-diff-async): Ditto.

	* elmo-multi.el (elmo-folder-diff): Ditto
	(elmo-multi-folder-diff): Rewrite.

2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-folder-msgdb): Define.

2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-set-cached): Define as a method.

	* elmo-pipe.el (elmo-message-set-cached): Define.
	(elmo-find-fetch-strategy): Ditto.

	* elmo-multi.el (elmo-message-set-cached): Define.
	(elmo-find-fetch-strategy): Rewrite.

	* elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.

	* elmo-pipe.el (elmo-message-folder): Fixed definition.

2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
	instead of number-alist.

	* elmo-localdir.el (elmo-folder-append-messages): Don't refer
	mark nor message-id when msgdb of source folder is not loaded.

	* elmo.el (elmo-generic-folder-append-messages): Ditto.

	* elmo-maildir.el (elmo-folder-append-messages): Ditto.

2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-length): Don't require msgdb.

2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-mark): Cause an error when empty folder.
	(elmo-message-field): Ditto.

	* elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
	(elmo-map-folder-list-message-locations): Setup `answered-locations'
	slot.
	(elmo-map-folder-list-answereds): Define.
	(elmo-maildir-list-location): Treat 'R' info.
	(elmo-folder-msgdb-create): Treat flag-table.
	(elmo-folder-append-messages): Save flag-table.

2002-05-05  David Smith <ultrasoul@ultrasoul.com>

	* elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
	Use SELECT when	elmo-imap4-use-select-to-update-status is t.

2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-generic-folder-append-messages): Fixed last change.

	* elmo-localdir.el (elmo-folder-append-messages): Set flag as
	'read when mark is null.

2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.11.4.

2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-folder-unmark-answered): Define.
	(elmo-folder-mark-as-answered): Ditto.

2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
	(elmo-pop3-get-session): Make msgdb directory after session.
	(elmo-folder-exists-p): Check exactly at the first time even when the
	elmo-pop3-exists-exactly is nil.

	* elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
	(elmo-folder-list-messages): Define instead of
	elmo-folder-list-messages-internal.
	(elmo-folder-check): Check destination folder.
	(elmo-folder-synchronize): Drain the pipe.

	* elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
	when msgdb is not loaded.

	* elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.

	* elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
	(elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
	messages.

	* elmo.el (elmo-folder-kill-messages-before): New function.
	(elmo-folder-kill-messages): Ditto.
	(elmo-folder-synchronize): Use elmo-folder-kill-messages-before.

	* elmo-imap4.el (elmo-folder-list-messages-plugged): 
	Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
	killed not by synchronize (e.g. scoring).

2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-search-fast): Return t if condition is not
	treated.
	(elmo-folder-search): Follow the change above.

	* elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
	into the candidates of search field.

2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
	(elmo-msgdb-unset-flag): Ditto.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.

2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
	(elmo-folder-commit): Define.
	(elmo-folder-synchronize): Ditto.
	(elmo-folder-list-flagged): Ditto.
	(elmo-folder-commit): Ditto.
	(elmo-folder-length): Ditto.
	(elmo-folder-count-flags): Ditto.
	(elmo-message-mark): Ditto.
	(elmo-message-field): Ditto.
	(elmo-message-entity): Ditto.
	(elmo-message-folder): Ditto.

2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-field): Define as a method.

	* elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
	(elmo-message-field): Define.

	* elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
	(elmo-folder-list-importants): Ditto.
	(elmo-folder-list-answereds): Ditto.

	* elmo-multi.el (elmo-folder-mark-as-important): Remove :before
	qualifier.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-answered): Ditto.
	(elmo-folder-unmark-answered): Ditto.
	(elmo-folder-list-flagged): Define.
	(elmo-folder-commit): Ditto.
	(elmo-folder-length): Ditto.
	(elmo-folder-count-flags): Ditto.

2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-detach-messages): New method.
	(elmo-folder-move-messages): Use it.
	(elmo-folder-synchronize): Ditto.

	* elmo-multi.el (elmo-folder-detach-messages): Define.

	* elmo.el (elmo-message-copy-entity): New function.
	(elmo-message-entity-set-number): Ditto.
	(elmo-message-mark): Define as method.

	* elmo-multi.el (elmo-multi-real-folder-number): Changed position.
	(elmo-folder-synchronize): Return 0 (Should be reconsider).
	(elmo-message-entity): Fixed last change.
	(elmo-message-mark): Define.
	(elmo-folder-msgdb-create): Abolish.
	(elmo-multi-folder-append-msgdb): Ditto.
	(elmo-multi-folder-diff): Fixed.
	(elmo-multi-split-number-alist): Removed.
	(elmo-multi-split-mark-alist): Removed.
	(elmo-folder-list-messages): Define.
	(elmo-folder-list-messages-internal): Removed.

	* elmo-localdir.el (elmo-folder-append-messages): Treat flags for
	local file messages.
	(elmo-folder-msgdb-create): Fixed read mark.

2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-generic-folder-append-messages): Set flag as nil
	if mark is nil.

2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-list-message-entities): Define as inline
	function.
	(elmo-folder-messages): Abolish.

	* elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
	folder.
	(elmo-folder-synchronize): Define.
	(elmo-message-entity): Define.

2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
	elmo-imap4-session-select-mailbox.

	* elmo.el (elmo-folder-move-messages): Don't display any message.

	* elmo-imap4.el (elmo-imap4-send-command): Accept process output when
	parsing.
	(elmo-imap4-session-check): Don't wait CHECK response.
	(elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.

2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.

2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
	API.
	* elmo-nntp.el (elmo-folder-process-crosspost): Ditto.


	* elmo.el (elmo-folder-process-crosspost): Remove optional argument.
	(elmo-folder-list-message-entities): Added argument in-msgdb and
	numbers.
	(elmo-folder-synchronize): Define as a method.

	* elmo-nntp.el (elmo-folder-initialize): Don't use
	elmo-nntp-default-user if zero-length username is specified
	explicitly.

2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
	server name in case with username.
	(XXX: this is ad-hoc fix against username includes "@", it
	should be solved fundamentally)

2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-nntp.el (elmo-nntp-debug): New function.
	(elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
	(elmo-network-authenticate-session): Hide auth-info from the log.

	* elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
	user name if it is equal to elmo-nntp-default-user.

2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
	instead of shimbun-server-internal;
	Use shimbun-current-group instead of shimbun-current-group-internal.
	(elmo-folder-plugged-p): Use shimbun-server instead of
	shimbun-server-internal.
	(elmo-folder-set-plugged): Ditto.
	(elmo-net-port-info): Ditto.
	(elmo-folder-check): Ditto.
	(elmo-folder-expand-msgdb-path): Ditto.
	(elmo-folder-list-subfolders): Ditto.

2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
	Convert field-name to lower case.
	(elmo-msgdb-overview-entity-set-extra-field): Ditto.

2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
	`message' and `error' take format string.

2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.

2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
	recursive call (can't byte compile on emacs 20.7).

2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-list-messages): Redefine as a luna method.
	(elmo-folder-list-message-entities): New API.
	(elmo-message-entity): Ditto.
	(elmo-message-entity-parent): Ditto.
	(elmo-folder-do-each-message-entity): Ditto.
	(elmo-message-entity-number): Ditto.
	(elmo-message-entity-field): Ditto.
	(elmo-message-entity-set-field): Ditto.
	(elmo-folder-count-flags): Ditto.
	(elmo-folder-length): Ditto.

	* elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
	not.

	* elmo-msgdb.el (elmo-msgdb-list-messages): New function.
	(elmo-msgdb-count-marks): Abolish.
	(elmo-msgdb-make-entity): Ditto.
	(elmo-msgdb-do-each-entity): Ditto.
	(elmo-msgdb-message-entity): New inline function.
	(elmo-msgdb-message-entity-field): Ditto.
	(elmo-msgdb-message-entity-set-field): Ditto.
	(elmo-msgdb-make-message-entity): New function.

2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-append-buffer): Changed argument from unread 
	to flag. (All other related portions are changed.)
	(elmo-folder-msgdb-create): Likewise.
	(elmo-generic-folder-append-messages): Use flag-table instead of
	seen-list.
	(elmo-folder-move-messages): Removed redundant process.
	(elmo-folder-synchronize): Likewise.

	* elmo-msgdb.el (elmo-flag-table-get): New function.
	(elmo-flag-table-save): Fixed.
	(elmo-msgdb-length): New inline function.
	(elmo-msgdb-flag-table): New function.
	(elmo-msgdb-mark): Add optional argument new.
	(elmo-msgdb-add-msgs-to-seen-list): Abolish.
	(elmo-msgdb-seen-list): Ditto.
	(elmo-msgdb-add-msgs-to-seen-list): Ditto.


2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-set-mark): Abolish.
	(elmo-folder-unmark-important): Added optional argument `ignore-flag'.
	(All related portions are changed.)

	* elmo-msgdb.el (toplevel): Added comment.
	(elmo-load-msgdb): Added 4th element `path'.
	(elmo-msgdb-append): Follow the change above.
	(elmo-msgdb-clear): Ditto.
	(elmo-msgdb-delete-msgs): Ditto.
	(elmo-msgdb-get-path): New inline function.
	(elmo-msgdb-set-path): Ditto.
	(elmo-flag-table-filename): New variable.
	(elmo-flag-table-load): New function.
	(elmo-flag-table-set): Ditto.
	(elmo-flag-table-save): Ditto.
	(elmo-msgdb-get-field-value): Abolish.
	(elmo-msgdb-overview-get-entity-by-number): Ditto.

2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>

	* elmo.el (elmo-folder-delete): Confirm deletion here, return t if
	the folder has been deleted successfully.
	* elmo-imap4.el (elmo-folder-delete): Ditto.
	* elmo-archive.el (elmo-folder-delete): Ditto.
	* elmo-localdir.el (elmo-folder-delete): Ditto.
	* elmo-maildir.el (elmo-folder-delete): Ditto.

2003-03-27  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-util.el (elmo-string-member-ignore-case): New function.
	* elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
	(elmo-imap4-fetch-callback-1-subr): Likewise.

2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>

	* elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
	the case of the name attribute "\Noselect".

2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo.el (elmo-folder-rename-internal): New method to cause error.

	* elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
	flist, is not always a member of onum-alist.

2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-version.el (elmo-version): Up to 2.11.3.

2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-maildir.el (elmo-folder-rename-internal): New method,
	copied from localdir's one.

	* elmo-pipe.el (elmo-folder-rename): New method, rename
	destination folder with leaving source folder as it is.

2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>

	* elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
	replace-regexp.

2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-version.el (elmo-version): Up to 2.11.2.

2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-shimbun.el (elmo-folder-initialize): Do not call
	shimbun-open in case of "@".
	(elmo-folder-open-internal): Cope with shimbun = nil case.
	(elmo-folder-plugged-p): Ditto.
	(elmo-folder-list-subfolders): Make list for "@/" group.

2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
	mailbox (e.g. for %~/something).

2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
	Replace nested conditional with guard clauses.

2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* pldap.el (ldap-search-basic): Don't treat exit status 32 as an
	error [wl:11327].

	* elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
	print-depth.

2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-archive.el (elmo-folder-rename-internal): Referctoring;
	Replace nested conditional with guard clauses.

2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-util.el (elmo-object-save): Bind print-level, print-length.
	(elmo-passwd-alist-save): Ditto.
	* elmo-database.el (elmo-database-msgid-put): Bind print-length.

2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
	dir-name only if it is absolute path.
	(TODO: distinguish +/something and +something)

2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
	path for "+~/something".

2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
	as non-directory, cause error before rename-file.
	* elmo-archive.el (elmo-folder-rename-internal): Create directory
	apropriately, mimic localdir's one.
	Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.

2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>

	* elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.

2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.

	* elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
	
	* elmo-util.el (elmo-file-cache-delete): Check whether the cache file
	is included in the global-mark or not.

2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* utf7.el (toplevel): Avoid error when the function
	find-coding-system does not exist.

2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-nntp.el (elmo-folder-search): Body search is to search from
	cache even if the folder is plugged.
	(elmo-nntp-search-primitive): Do nothing when body search is
	invoked (although it is not used by the change above).
	* elmo-multi.el (elmo-folder-search): Don't ignore error anymore.

2002-12-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-version.el (elmo-version): Up to 2.11.1.

2002-12-10  Kenichi OKADA  <okada@opaopa.org>

	* elmo-archive.el: Specify charset.

2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
	process	buffer lives or not.

	* elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
	while flushing queues (It causes infinite loop).

2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.

2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* utf7.el (toplevel): Check the ucs features dynamically.
	(Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)

	* elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
	folder is creatabe or not if it already exists.

2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.

	* elmo-multi.el (elmo-folder-search): Ignore errors while search.

	* elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
	(elmo-imap4-read-response): Take care of garbage response.

2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
	just return nil instead of error.

2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
	search-key is "body".

2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
	of elmo-string-matched-assoc to use match-data.
	(Thanks to Mito <mito@mxa.nes.nec.co.jp>)

2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-split.el (elmo-split->): New function.
	(elmo-split-<): Ditto.

2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
	workaround for invalid message-id.

2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
	return normal pop3 session or pop3 biff session.

2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-maildir-update-current): Don't append
	info part to the cur files when the new files already have it.
	(Adviced by Jared Rhine <jared@wordzoo.com>)

2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-split.el (elmo-split-default-action): New variable.
	(elmo-split-subr): Use it if all other conditions are passed.
	Extend `fname' and rename it as `action'. (implemented
	Teranishi-san's idea in [wl:10800])

2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
	* elmo-util.el: Ditto.

2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-accessible-p): Renamed from
	elmo-message-cached-p and rewritten.

2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-list-flagged): New generic function.
	(elmo-folder-list-importants): New implementation.
	(elmo-folder-list-answereds): Ditto.
	(elmo-folder-search-fast):  Use 'flag' instead of 'mark';
	Added 'digest'.
	(elmo-message-cached-p): New function.
	(elmo-message-set-flag): Ditto (no content).
	(elmo-message-unset-flag): Ditto.
	(elmo-folder-list-messages-mark-match): Abolish.

	* elmo-util.el (elmo-regexp-opt): New function.

	* elmo-msgdb.el (elmo-msgdb-get-cached): New function.
	(elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
	Added 'digest'.
	(elmo-msgdb-list-flagged): New function.

	* elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
	(elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
	Added 'digest'.

	* elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.

2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.11.0.

2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-set-flag): Use
	`elmo-file-cache-exists-p'; use proper mark that depends on
	`use-cache'.
	(elmo-msgdb-unset-flag): Ditto.
	(elmo-msgdb-set-cached): Ditto. added argument `use-cache'.

	* elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
	with 4th argument `use-cache'.

2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-unmark-important): Follow the changes above.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-answered): Ditto.
	(elmo-folder-mark-as-answered): Ditto.

	* elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
	message status.
	(elmo-msgdb-mark): Likewise.
	(elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
	(elmo-msgdb-unset-flag): Likewise.

	* elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.

2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-folder-diff): Fixed condition checking
	`last:' filter.

2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
	set spool-length to 0.

2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
	(elmo-dop-queue-flush): Fixed last change.

2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-folder-list-unreads): Call generic method
	if require-msgdb slot is nil.
	(elmo-folder-list-importants): Likewise.

2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-set-cached): Set mark-modified slot if
	mark is changed.

	* elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
	(elmo-msgdb-set-cached): Undo last change; return non-nil if mark
	is changed.

2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.

2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.

	* elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.

2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
	(elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.

2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo.el: Add autoload setting for elmo-nntp-post, fix against
	the problem reported by Sean Rima [wl-en:180].

2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.

	* elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.

	* elmo-filter.el (elmo-folder-unmark-read): Ditto.

	* elmo-map.el (elmo-folder-unmark-read): Ditto.

	* elmo-multi.el (elmo-folder-unmark-read): Ditto.

	* elmo-net.el (elmo-folder-unmark-read): Ditto.

	* elmo-pipe.el (elmo-folder-unmark-read): Ditto.

2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
	status number.

2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
	(elmo-folder-mark-as-read): Follow the API change.
	(elmo-message-set-cached): New function.

	* elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.

	* elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.

	* elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-answered): Ditto.
	(elmo-folder-mark-as-answered): Ditto.

	* elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
	(elmo-folder-unmark-important): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-answered): Ditto.
	(elmo-folder-unmark-answered): Ditto.

	* elmo-mark.el (toplevel): Removed some mark method definitions.

	* elmo-map.el (elmo-map-folder-unmark-answered): New method.
	(elmo-map-folder-mark-as-answered): Ditto.
	(elmo-folder-unmark-important): Add :before qualifier.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-answered): Define.
	(elmo-folder-mark-as-answered): Ditto.

	* elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
	(elmo-map-folder-unmark-answered): Ditto.

	* elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.

	* elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-answered): Ditto.
	(elmo-folder-mark-as-answered): Ditto.

	* elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
	`mark'; evaluate mark condition.
	(elmo-msgdb-match-condition-internal): New function.
	(elmo-msgdb-match-condition): Call it; changed argument.

	* elmo.el (elmo-folder-search): Follow the API change on
	`elmo-msgdb-match-condition'.

2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
	original mark is non-nil.

2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
	(elmo-map-folder-list-answereds): New method.
	(elmo-folder-list-unreads): Add :around qualifier.
	(elmo-folder-list-importants): Ditto.
	(elmo-folder-list-answereds): Ditto.

2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-mark): New inline function.

	* elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
	method if msgdb is not required.
	(elmo-filter-folder-list-importants): Don't treat global-mark.

	* elmo.el (elmo-folder-list-importants): Ditto.

	* elmo-net.el (elmo-folder-list-importants): Ditto.

	* elmo-map.el (elmo-folder-list-importants): Ditto.

	* elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
	(elmo-imap4-folder-list-any-plugged): New function.
	(elmo-imap4-search-internal-primitive): Use it.

	* elmo-filter.el (elmo-folder-check): Synchronize original folder
	only when require-msgdb slot is non-nil.
	(elmo-folder-close): Clear target folder's msgdb.

2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
	(elmo-pop3-msgdb-create-by-header): Ditto.
	(elmo-pop3-msgdb-create-message): Ditto.

	* elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.

	* elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.

	* elmo-nmz.el (elmo-folder-msgdb-create): Ditto.

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
	(elmo-folder-msgdb-create): Ditto.
	(elmo-nntp-folder-msgdb-create): Ditto.
	(elmo-nntp-msgdb-create-by-header): Ditto.
	(elmo-nntp-msgdb-create-message): Ditto.
	(elmo-folder-list-unreads): Define.

	* elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
	(elmo-folder-append-messages): Ditto.
	(elmo-folder-list-unreads): Define.
	(elmo-folder-list-importants): Ditto.
	(elmo-folder-list-answereds): Ditto.

	* elmo-net.el (elmo-folder-list-unreads): Define.
	(elmo-folder-list-importants): Ditto.
	(elmo-folder-list-answereds): Ditto.
	(elmo-folder-list-answereds-plugged): Ditto.
	(elmo-folder-msgdb-create): Follow the API change.
	(elmo-folder-msgdb-create-unplugged): Ditto.
	(elmo-folder-unmark-answered): Define.
	(elmo-folder-mark-as-answered-unplugged): Ditto.
	(elmo-folder-unmark-answered-unplugged): Ditto.

	* elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
	(elmo-msgdb-unread-uncached-mark): Ditto.
	(elmo-msgdb-unread-cached-mark): Ditto.
	(elmo-msgdb-read-uncached-mark): Ditto.
	(elmo-msgdb-answered-cached-mark): Ditto.
	(elmo-msgdb-answered-uncached-mark): Ditto.
	(elmo-msgdb-important-mark): Ditto.
	(elmo-msgdb-set-mark): Rewrite.
	(elmo-msgdb-count-marks): Rewrite.
	(elmo-msgdb-mark-alist-set): Abolish.
	(elmo-msgdb-seen-list): Removed argument `seen-marks'.
	(elmo-msgdb-add-msgs-to-seen-list): Likewise.

	* elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
	(elmo-folder-close): Define.
	(elmo-folder-msgdb-create): Follow the API change.
	(elmo-folder-list-unreads): Rewrite.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-important): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-answered): Define.
	(elmo-folder-unmark-answered): Ditto.

	* elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
	(elmo-folder-append-messages): Ditto.

	* elmo-mark.el (elmo-folder-msgdb-create): Ditto.

	* elmo-map.el (elmo-folder-list-unreads): Ditto.
	(elmo-folder-list-importants): Ditto.

	* elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
	(elmo-folder-append-messages): Ditto.

	* elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
	change.
	(elmo-folder-msgdb-create-plugged): Ditto.
	(elmo-folder-append-messages): Ditto.
	(elmo-folder-list-answereds-plugged): Define.
	(elmo-imap4-search-internal-primitive): Add `mark' processing.
	(elmo-folder-unmark-answered-plugged): Define.
	(elmo-folder-mark-as-answered-plugged): Ditto.
	(elmo-folder-search-requires-msgdb-p): Ditto.

	* elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
	(elmo-folder-initialize): Set it.
	(elmo-folder-msgdb): Define.
	(elmo-folder-check): Call elmo-folder-synchronize.
	(elmo-folder-close): Define.
	(elmo-folder-commit): Ditto.
	(elmo-folder-msgdb-create): Rewrite.
	(elmo-folder-list-unreads): Ditto.
	(elmo-folder-list-importants): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-important): Ditto.
	(elmo-folder-mark-as-answered): Define.
	(elmo-folder-unmark-answered): Ditto.

	* elmo-dop.el (elmo-dop-queue-merge-method-list): Added
	elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
	(elmo-dop-queue-method-name-alist): Likewise.
	(elmo-folder-mark-as-answered-dop): New inline function.
	(elmo-folder-unmark-answered-dop): Ditto.
	(elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.

	* elmo-archive.el (elmo-folder-append-messages): Follow the API change.
	(elmo-folder-msgdb-create): Ditto.
	(elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
	(elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
	(elmo-archive-parse-mmdf): Ditto.

	* elmo-cache.el (elmo-folder-msgdb-create): Ditto.
	(elmo-folder-list-unreads-internal): Ditto.

	* elmo.el (elmo-folder-msgdb): Define as generic function.
	(elmo-folder-list-messages): Added argument `in-msgdb'.
	(elmo-folder-list-unreads): Define as generic function.
	(elmo-folder-list-importants): Ditto.
	(elmo-folder-list-answereds): Ditto.
	(elmo-folder-list-messages-with-global-mark): New function.
	(elmo-folder-msgdb-create): Removed mark arguments.
	(elmo-folder-unmark-answered): New generic function.
	(elmo-folder-mark-as-answered): Ditto.
	(elmo-folder-append-messages): Removed argunment `unread-marks'
	(elmo-folder-list-unreads-internal): Abolish.
	(elmo-folder-list-importants-internal): Ditto.
	(elmo-folder-search-requires-msgdb-p): New generic function.
	(elmo-folder-search-requires-msgdb-p-internal): New function.
	(elmo-generic-folder-open): Call elmo-folder-msgdb instead of
	elmo-msgdb-load.
	(elmo-folder-search-fast): Added key 'mark'.
	(elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
	instead of unread-marks argument.
	(elmo-folder-move-messages): Removed argunment `unread-marks'
	(elmo-folder-unmark-important): Define.
	(elmo-folder-mark-as-important): Ditto.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-mark-as-read): Ditto.
	(elmo-folder-unmark-answered): Ditto.
	(elmo-folder-mark-as-answered): Ditto.
	(elmo-folder-replace-marks): Abolish.
	(elmo-generic-folder-append-msgdb): Append msgdb before checking
	duplicates.
	(elmo-folder-synchronize): Removed mark arguments;
	return crosspost only number.

2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
	Remove redundunt connectivity check.

2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
	as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])

2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* pldap.el (ldap-decode-string): Return string as-is if
	`ldap-coding-system' is nil.
	(ldap-encode-string): Ditto.
	(ldap-search-entries): Encode filter string with `ldap-encode-string'.
	(ldap-default-host): Fixed docstring.

2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-warning): Define as a macro which uses
	`display-warning' if it is defined as a function.

	* elmo-split.el (elmo-split-fetch-decoded-field): New function.
	(elmo-split-equal): Use it.
	(elmo-split-match): Ditto.
	(elmo-split-message-entity): New buffer-local variable.
	(elmo-split-subr): Set it.

	* elmo-version.el (elmo-version): Up to 2.9.15.

2002-08-18  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-initialize-session):
	Check capability after starttls.

2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-list-delete): Added optional argument
	DELETE-FUNCTION.

	* elmo-vars.el (elmo-imap4-default-mailbox): Abolished.

	* elmo-util.el (elmo-warning): Ignore errors while recenter.

	* elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.

	* elmo-imap4.el (elmo-folder-initialize): Don't use
	elmo-imap4-default-mailbox.

2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-split.el (toplevel): Use `product-provide'.
	(elmo-split): Checkdoc.

2002-07-21  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
	Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
	the function `elmo-imap4-debug-1'.

2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-split.el (elmo-split): Moved to run hooks and to show
	message from elmo-split-subr.
	(elmo-split-subr): Follow the change above.

	* elmo-split.el (elmo-split-subr): New function (renamed from
	elmo-split-subr).
	(elmo-split): Changed to call elmo-split-subr by element of
	elmo-split-folder.
	(elmo-split-folder): Changed customization type to choice.

2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-split.el (elmo-split-and): Fixed condition.

2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-split.el: New file.
	(elmo-split): Fixed logic.
	Display "Test:" instead of "Folder:" when reharsal.

	* elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
	explicitly.

	* elmo-version.el (elmo-version): Up to 2.9.14.

	* elmo-util.el (elmo-expand-newtext): New function (renamed from
	wl-expand-newtext).

2002-06-10  Kenichi Sato <ksato@sonycom.com>

	* elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
	message with no message-id field.

2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.9.13.

	* elmo-dop.el (elmo-folder-status-dop): Fix.

2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.

	* elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
	changing default value of default-mime-charset.
	(elmo-msgdb-create-overview-from-buffer): Remove TAB character.

	* elmo-imap4.el (elmo-folder-open): Fixed NO response check.

	* elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
	(elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
	instead of elmo-dop-queue-method-name-alist to check merging queue.
	(elmo-folder-delete-messages-dop): Delete from queue if negative
	message number.
	(elmo-folder-append-buffer-dop-delayed): Treat as success if queue
	file is already removed.

2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>

	* elmo-vars.el: Bind colon keywords for old Emacsen.

2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
	against non-exsisting charset.

2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-mime-string): Eliminate needless binding;
	Use eword-decode-and-unfold-unstructured-field-body.

	* elmo-msgdb.el (elmo-msgdb-make-entity): New function.
	(elmo-msgdb-create-overview-from-buffer): Use document charset if
	exists to decode raw subject string.
	(toplevel): Require 'mime.

	* elmo-version.el (elmo-version): Up to 2.9.12.

2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
	(elmo-msgdb-set-mark): Ditto.

	* elmo-version.el (elmo-version): Up to 2.9.11.

2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-delete-match-files): New function.

	* elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
	instead of elmo-delete-directory.

	* elmo-shimbun.el (elmo-shimbun-get-headers): Bind
	elmo-hash-minimun-size as 63.

	* elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
	elmo-diff-unread is nil.

	* elmo-imap4.el (elmo-folder-open): Fix.

	* elmo.el (elmo-message-mark): Rewrite.
	(elmo-message-field): Ditto.
	(elmo-message-set-mark): Ditto.
	(elmo-folder-replace-marks): New function.
	(elmo-generic-folder-append-msgdb): Removed third argument for
	elmo-msgdb-append.
	(elmo-folder-synchronize): Use elmo-msgdb-seen-list.
	(elmo-msgdb-load): New implementation.

	* elmo-vars.el (elmo-use-overview-hashtb): Removed.

	* elmo-util.el (elmo-list-insert): New implementation.

	* elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
	argument for elmo-msgdb-append.
	

	* elmo-msgdb.el	(elmo-load-msgdb): New function.
	(elmo-make-msgdb): Ditto.
	(elmo-msgdb-get-index): New inline function.
	(elmo-msgdb-set-index): Ditto.
	(elmo-msgdb-get-entity-hashtb): Ditto.
	(elmo-msgdb-get-mark-hashtb): Ditto.
	(elmo-msgdb-get-mark): Ditto.
	(elmo-msgdb-set-mark): Ditto.
	(elmo-msgdb-count-marks): Ditto.
	(elmo-msgdb-get-number): Ditto.
	(elmo-msgdb-get-field): Ditto.
	(elmo-msgdb-seen-list): Ditto.
	(elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
	(elmo-msgdb-delete-msgs): Follow the changes above.
	(elmo-msgdb-overview-get-entity): Ditto.
	(elmo-msgdb-add-msgs-to-seen-list): Ditto.
	(elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
	and rewritten.
	(elmo-msgdb-make-index): Likewise.
	(elmo-msgdb-append): Removed third argument.
	(elmo-msgdb-clear): Clear index as nil.
	(elmo-folder-set-info-hashtb): Removed.
	(elmo-folder-set-info-max-by-numdb): Ditto.
	(elmo-folder-info-make-hashtb): Ditto.

	* elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.

	* elmo-map.el (elmo-folder-pack-number): Ditto.

2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.9.10.

	* elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.

	* elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.

2002-04-26  Kenichi OKADA  <okada@opaopa.org>

	* elmo-utils.el (elmo-make-directory): Add option.
	Default file mode is 700.

2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-folder-local-p): Defined.

2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
	mime-charset.

	* elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
	and "smaller".

2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
	(elmo-shimbun-folder-entity-hash): New function.
	(elmo-shimbun-folder-shimbun-header): Ditto.
	(elmo-shimbun-entity-to-header): Ditto.
	(elmo-shimbun-msgdb-to-headers): Removed.
	(elmo-shimbun-folder-setup): Ditto.
	(elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
	for hash key.
	(elmo-shimbun-get-headers): Set new headers only to slot. Don't
	call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
	Removed useless local bind.
	(elmo-folder-open-internal): Don't call
	`elmo-shimbun-folder-setup'.
	(elmo-folder-close-internal): Clear entity-hash slot.
	(elmo-folder-clear): Ditto.
	(elmo-shimbun-msgdb-create-entity): Use
	`elmo-shimbun-folder-shimbun-header'.
	(elmo-map-message-fetch): Ditto.
	(elmo-shimbun-update-overview): Use overview entity instead of
	shimbun header to lookup id by references.
	(elmo-map-folder-list-message-locations): Use not only headers but
	also overviews to list locations.

2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
	msgdb path.

	* elmo-pop3.el (elmo-folder-exists-p): Ditto.

2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-util.el (elmo-read-search-condition-internal): Give default
	value for date.

2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>

	* elmo-util.el (elmo-condition-parse-search-value): Accept
	YYYY-MM-DD format to search.
	* elmo-date.el (elmo-date-get-datevec): Likewise.

2002-04-04  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
	debugging code.

2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-creatable-p): Changed default value to nil
	from t.

	* elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.

	* elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
	case from `elmo-folder-exists-p'.
	(elmo-folder-exists-p): Removed.
	(elmo-folder-creatable-p) Ditto.

	* elmo-net.el (elmo-folder-create): Defined.
	(elmo-folder-create-unplugged): New function.
	(elmo-folder-exists-p): Changed default value to nil from t.

	* elmo-imap4.el (elmo-folder-creatable-p): Defined.
	(elmo-folder-create-plugged): Renamed from `elmo-folder-create'.

	* elmo-dop.el (elmo-folder-create-dop): Renamed from
	`elmo-create-folder-dop' and append queue
	'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
	(elmo-folder-create-dop-delayed): New function.

	* elmo-cache.el (elmo-folder-creatable-p): Ditto.

	* elmo-shimbun.el (elmo-folder-creatable-p): Ditto.

	* elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
	(elmo-folder-writable-p) : Ditto.

	* elmo-version.el (elmo-version): Up to 2.9.9.

2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo.el (elmo-find-fetch-strategy): Don't use file cache when
	`elmo-message-use-cache-p' returns nil.
	* elmo-mime.el (elmo-mime-display-as-is): Ditto.
	(ignore cache file and refer the substance in local folders)

2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-version.el (elmo-version): Up to 2.9.8.

2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.9.7.

	* elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.

2002-02-18  Daiki Ueno  <ueno@unixuser.org>

	* elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.

2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
	from --early.
	(elmo-map-folder-list-message-locations): Reverse location list.

2002-02-01  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.

2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
	as a key.
	(elmo-nntp-folder-list-subfolders): Follow the change above.

2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>

	* elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
	name if authentication type is specified.

2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-default-imap4-stream-type): Define as obsolete
	variable.
	(elmo-default-nntp-stream-type): Ditto.
	(elmo-default-pop3-stream-type): Ditto.

2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>

	* elmo.el (elmo-generic-folder-append-messages): Disable multibyte.

2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-localnews.el (elmo-localnews-folder-path): Moved from
	elmo-vars.el.
	* elmo-maildir.el (elmo-maildir-folder-path): Ditto.

	* elmo-vars.el (elmo-localnews-folder-path): Removed.
	(elmo-maildir-folder-path): Ditto.
	(elmo-maildir-list): Ditto (abolished).

2002-01-23  Kenichi OKADA  <okada@opaopa.org>

	* elmo-version.el (elmo-version): Up to 2.9.6.

2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-vars.el (elmo-localnews-folder-path): Make customizable.
	(elmo-maildir-folder-path): Ditto.
	(elmo-msgdb-directory): Ditto.
	(elmo-passwd-life-time): Ditto.
	(elmo-msgdb-extra-fields): Ditto.
	(elmo-enable-disconnected-operation): Ditto.

2002-01-22  Kenichi OKADA  <okada@opaopa.org>

	* elmo-vars.el (elmo-imap4-default-authenticate-type): Give
	other choices.
	(elmo-pop3-default-authenticate-type): Ditto.

2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-vars.el (elmo-imap4-default-authenticate-type): Give
	choices for custom.
	(elmo-pop3-default-authenticate-type): Ditto.

2002-01-22  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-folder-rename-internal): Change current
	mailbox to new-folder.

2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
	less than new, set new as unread.

	* elmo-util.el (elmo-string): Don't put text-property if nil.

2002-01-21  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
	* elmo-nntp.el (elmo-folder-list-subfolders): Ditto.

2002-01-21  Kenichi OKADA  <okada@opaopa.org>

	* elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
	is nil on `completing-read'.

2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
	for namespace part.
	(elmo-imap4-parse-namespace-subr): Ditto.
	(elmo-folder-list-subfolders): Append a delimiter when the specified
	folder path is a root with namespace and does not end with delimiter.

2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-search-fast): Moved upwards rather than it
	was used.

2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-util.el (elmo-save-buffer): The first argument of message
	is a format control string.

2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
	`elmo-folder-diff').
	(elmo-diff-unread): Likewise.

2002-01-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
	is t on `completing-read'.

2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
	method of target folder with self mark-alist if MARK-ALIST is nil.

2002-01-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-version.el (elmo-version): Up to 2.9.5.

2002-01-17  Kenichi OKADA  <okada@opaopa.org>

	* elmo-dop.el (elmo-dop-queue-merge): Implement.
	(elmo-dop-merge-funcs): Remove.

2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-file-cache-delete): Fixed last change;
	Return t if PATH is directory, too.
	Use `dolist' instead of while loop.

2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-util.el (elmo-file-cache-delete): Return t if a cache file
	is deleted.

2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-net.el (elmo-folder-list-messages-plugged): Changed default
	return value to t.
	(elmo-folder-list-messages-unplugged): Return t if
	elmo-enable-disconnected-operation is nil.

	* elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
	`elmo-folder-list-messages-internal'.

2002-01-07  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
	Change to looking-at `[23][0-9]+'.
	(elmo-network-initialize-session): Use 'error-msg'
	* elmo-net.el (elmo-network-open-session): Set unplugged
	if elmo-network-initialize-session returns 'elmo-open-err.

2002-01-07  Kenichi OKADA  <okada@opaopa.org>

	* elmo-version.el (elmo-version): Up to 2.9.4.

2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
	`elmo-folder-list-messages-internal'.

2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-search): Defined. Fixed docstring.
	(elmo-message-match-condition): New method.
	(elmo-folder-search-fast): New inline function.
	(elmo-msgdb-search): Removed.

	* elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
	target folder if it is unplugged.
	(elmo-folder-list-messages-internal): Return t if target folder is
	unplugged and itself is persistent; In this case, use list be
	searched already.

	* elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
	(elmo-msgdb-search-internal-primitive): Ditto.
	(elmo-msgdb-match-condition): New function.
	(elmo-msgdb-match-condition-primitive): Ditto.

	* elmo-util.el (elmo-filter-condition-p): New macro.

	* elmo-cache.el (elmo-folder-search): Removed.

	* elmo-localdir.el (elmo-folder-search): Ditto.

	* elmo-maildir.el (elmo-folder-search): Ditto.

	* elmo-mark.el (elmo-folder-search): Ditto.

	* elmo-nmz.el (elmo-folder-search): Ditto.

	* elmo-sendlog.el (elmo-folder-search): Ditto.

	* elmo-shimbun.el (elmo-folder-search): Ditto.

	* elmo-imap4.el (elmo-folder-search): Call method of parent class
	if folder is unplugged.

	* elmo-nntp.el (elmo-folder-search): Likewise.
	(elmo-nntp-search-internal): New function.

	* elmo-version.el (elmo-version): Up to 2.9.3.

2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.

2001-12-27  Tetsurou Okazaki  <okazaki@be.to>

	* elmo-vars.el (elmo-nntp-default-user): Customization Type fix.

2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>

	* elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.

2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
	(elmo-map-folder-list-message-locations): Do drive letter conversion
	on Windows environment.
	(elmo-nmz-msgdb-create-entity): Use expand-file-name.
	(elmo-map-message-fetch): Ditto.

2001-12-27  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
	(elmo-network-initialize-session): Ditto.

2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.

	* elmo-pop3.el (elmo-message-fetch-plugged): Ditto.

	* elmo-util.el (elmo-progress-clear): Ditto.

	* elmo-date.el (elmo-date-get-datevec): Fix timezone of
	`DD-Mon-YYYY' type date.

2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
	`elmo-date-make-sortable-string' instead of
	`timezone-make-date-sortable'.

	* elmo-date.el (elmo-date-make-sortable-string): Use
	`timezone-make-time-string'.

2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-synchronize): Delete important messages too.

	* elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
	`since'; Fix timezone.

	* elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.

	* elmo-nntp.el (elmo-nntp-search-primitive): Likewise.

2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-fetch-with-cache-process): Rewrite.

2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-generic-folder-append-messages): Make
	fetch-strategy with `use-cache' as 'maybe. Check return value of
	`elmo-message-fetch'.
	(elmo-message-fetch): Return return value of
	`elmo-message-fetch-with-cache-process'.
	(elmo-message-fetch-with-cache-process): Return non-nil if
	fetching was succeed. Load cache when fetching was failed and
	fetch-strategy-use-cache is 'maybe.

	* elmo-util.el (elmo-file-cache-load): New function.

	* elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
	defun.

	* elmo-archive.el (elmo-archive-message-fetch-internal): Return
	non-nil if fetching was succeed.

	* elmo-imap4.el (elmo-imap4-message-fetch): Likewise.

	* elmo-nmz.el (elmo-map-message-fetch): Likewise.

	* elmo-nntp.el (elmo-nntp-read-body): Likewise.
	(elmo-message-fetch-with-cache-process): Likwise.

	* elmo-pop3.el (elmo-pop3-read-body): Likewise.

	* elmo-shimbun.el (elmo-map-message-fetch): Likewise.

	* elmo-version.el (elmo-version): Up to 2.9.2.

2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-delete): Delete msgdb path.

	* elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.

	* elmo-maildir.el (elmo-folder-delete): Ditto.

	* elmo-localdir.el (elmo-folder-delete): Ditto.

	* elmo-imap4.el (elmo-folder-delete): Ditto.

2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (luna-define-class): Added `biff' slot.

	* elmo-pop3.el (elmo-pop3-debug): Split biff log.
	(elmo-pop3-debug-inhibit-logging): Abolished.
	(elmo-network-close-session): Eliminated needless let.
	(elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
	(elmo-pop3-send-command): Added `no-log' argument.
	(elmo-pop3-process-filter): Use `with-current-buffer'.
	(elmo-pop3-auth-user): Set `no-log' argument; Delete process
	if login failure.
	(elmo-pop3-auth-apop): Likewise.
	(elmo-network-authenticate-session): Likewise.

	* elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
	if biff folder.

	* elmo-net.el (elmo-network-session-password-key): Use class symbol
	string to determine protocol.
	(elmo-network-session-name-prefix): Abolished.
	(elmo-network-session-cache-key): Follow the change above.
	(elmo-network-open-session): Ditto.

	* elmo-imap4.el (elmo-imap4-send-command): Modified error message.
	(elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.

	* elmo-version.el (elmo-version): Up to 2.9.1.

	* elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
	unmatch condition checking.

	* elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
	condition.

2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo.el (elmo-folder-confirm-appends): Fixed docstring.

2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
	test for while loop to execute at least one SEARCH command.

2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.9.0.

2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
	(elmo-archive-folder-path): Define.
	(elmo-folder-initialize): Setup `dir-name' slot.
	(elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
	Use `dir-name' as prefix of each subfolders.
	(Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)

2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
	(elmo-pipe-folder-list-target-messages): New internal function.
	(elmo-pipe-drain): Use new argument `ignore-list' instead of
	`killed-list'.
	(elmo-pipe-folder-copied-list-load): New function.
	(elmo-pipe-folder-copied-list-save): Ditto.
	(elmo-folder-open-internal): Follow the change above.
	(elmo-folder-status): Fixed for copy.

2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-folder-creatable-p): Define.

2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-localdir.el (elmo-folder-message-make-temp-files): Use
	elmo-copy-file instead of elmo-add-name-to-file.

	* elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.

	* elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
	"file://..." index.

	* elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
	of accept-process-output as 1.
	(elmo-pop3-read-contents): Ditto.
	(elmo-pop3-read-body): Ditto.

2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-version.el (product-version-as-string): Remove define.

2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
	(elmo-imap4-copy-messages): Chop number set using
	`elmo-imap4-number-set-chop-length'.
	(elmo-imap4-set-flag): Ditto.
	(elmo-imap4-search-internal-primitive): Ditto.

2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo.el (elmo-folder-make-temporary-directory): Renamed from
	`elmo-folder-make-temp-dir'

	* elmo-vars.el (elmo-cache-directory): New variable.
	(elmo-cache-dir): Abolished.
	(elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.

	* elmo-version.el (elmo-version): Up to 2.7.7.

2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
	defcustom; Set default value as t.

2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
	(ldap-search-program-arguments): Changed default value.
	(ldap-search-basic): Accept exit status 4.
	(ldap/field-body): Parse options.
	(ldap/collect-field): Ditto.
	(According to the advise from Mito <mito@mxa.nes.nec.co.jp>)

	* elmo-imap4.el (elmo-imap4-process-bye): New function.
	(elmo-imap4-send-command): Call elmo-imap4-process-bye.
	(elmo-imap4-accept-ok): Ditto.
	(elmo-imap4-session-select-mailbox): If argument `no-error' equals to
	'notify-bye, only BYE error is reported.
	(elmo-folder-exists-p-plugged): Set no-error argument of
	`elmo-imap4-session-select-mailbox' as 'notify-bye.

	* elmo.el (elmo-imap4-bye-error): Changed message.

	* elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
	(elmo-dop-queue-flush): Don't append to the dop-queue while flushing
	queues (It causes infinite loop).

2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
	(RECENT UNSEEN MESSAGES) extension.

2001-12-07  Mito <mito@mxa.nes.nec.co.jp>

	* elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
	Check number of overview fields.

2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-confirm-appends): Changed message.
	(elmo-folder-confirm-appends): Ditto.

	* elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
	`with-temp-buffer'.
	(According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)

2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>

	* elmo.el (elmo-folder-confirm-appends): Check whether the value
	of elmo-folder-update-threshold is nil, which can be set by
	wl-summary-update-confirm-threshold.

2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
	(elmo-nmz-index-alias-alist): Ditto.
	(elmo-map-folder-list-message-locations): Follow the change above.

2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-filter.el (elmo-folder-list-subfolders): Defined.

	* elmo-archive.el (elmo-archive-call-process): Ignore nemacs.

	* elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.

	* elmo-util.el (elmo-read): Ditto.
	(elmo-display-error): Ditto.

	* elmo-vars.el (elmo-date-match): Ditto.

	* pldap.el (ldap-coding-system): Ditto.

	* elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
	`elmo-inhibit-number-mapping' as nil.

2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>

	* elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
	space delimiter for list response.

2001-12-02  Kenichi OKADA  <okada@opaopa.org>

	* elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.

2001-12-02  Kenichi OKADA  <okada@opaopa.org>

	* elmo-sendlog.el (elmo-folder-delete-messages): Added.
	(elmo-map-message-fetch): Fix.
	* elmo-map.el (elmo-folder-status): Fix for killed.

2001-12-02  Kenichi OKADA  <okada@opaopa.org>

	* elmo-sendlog.el: New file.
	* elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.

2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* acap.el (acap-logging-out): New buffer local variable.
	(acap-close): Set it.
	(acap-wait-for-response): If acap-logging-out is non-nil, don't cause
	an error.

2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* acap.el (acap-response-bye-p): New function.
	(acap-response-bye-message): Ditto.
	(acap-wait-for-response): If bye response is received, cause an error.
	(acap-parse-response): Make bye response when 'Bye' is received.

2001-11-23  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pipe.el (elmo-pipe-drain): Load killed-list.

2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-copy-file): Added argument
	`ok-if-already-exists'.
	(elmo-copy-file): Fixed typo.

2001-11-21  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pipe.el (elmo-pipe-drain): Load killed-list.

2001-11-21  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pipe.el (elmo-pipe-drain): Save killed-list.

2001-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pipe.el (elmo-pipe-drain): Append copied messages
	to killed-list.

2001-11-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pipe.el (elmo-pipe-folder): Add `copy'.
	(elmo-folder-initialize): Fix for `copy'.
	(elmo-pipe-drain): Ditto.
	(elmo-folder-open-internal): Ditto.
	(elmo-folder-newsgroups): Fix.

2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
	for each message.

	* elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
	recent value is returned from imap folder.

	* elmo.el (elmo-folder-newsgroups): New generic function.

	* elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
	(elmo-folder-initialize): Set it.
	(elmo-folder-expand-msgdb-path): Use it.
	(elmo-folder-newsgroups): Define.

	* elmo-filter.el (elmo-folder-newsgroups): Define.

	* elmo-pipe.el (elmo-folder-newsgroups): Ditto.

	* elmo-nntp.el (elmo-folder-newsgroups): Ditto.

	* elmo-multi.el (elmo-folder-newsgroups): Ditto.

2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
	user option.
	(elmo-shimbun-header-extra-field): New inline function.
	(elmo-shimbun-header-set-extra-field): Ditto.
	(elmo-shimbun-folder-header-hash-setup): Ditto.
	(elmo-shimbun-update-overview): Ditto.
	(elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
	(elmo-shimbun-folder-setup): Use
	`elmo-shimbun-folder-header-hash-setup' to be setup hash table.
	(elmo-shimbun-get-headers): Ditto.
	(elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
	Insert `X-Shimbun-Id:' header if extra field is set.
	(elmo-map-folder-list-message-locations): Return `x-shimbun-id'
	field's value instead of `shimbun-header-id'.

	* elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
	inline function.
	(elmo-msgdb-overview-entity-set-date): Ditto.
	(elmo-msgdb-overview-entity-set-extra-field): Ditto.

2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmimap.el (mmimap-entity-section): Changed body node number from
	"0" to "1".

2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
	`elmo-folder-delete-messages'.

	* elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
	(elmo-folder-initialize): Changed to expand alias into index path.

	* elmo-mime.el (elmo-mime-insert-sorted-header): Call
	`elmo-mime-insert-header-from-buffer' with 6th arg
	`sorted-fields'.

2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmimap.el (mmimap-entity-section): If node-id is nil, return "0".

	* elmo.el (elmo-diff-new): New inline function.
	(elmo-diff-unread): Ditto.
	(elmo-diff-all): Ditto.

	* elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
	value from responseb.
	(elmo-imap4-folder-diff-plugged): Ditto.
	(elmo-imap4-server-diff-async): Added recent argument.
	(elmo-server-diff-async): Ditto.
	(elmo-imap4-folder-diff-plugged): Ditto.

	* elmo-version.el (elmo-version): Up to 2.7.6.

2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
	in quoted-stirng.

2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-folder-initialize): Rewrite.

	* elmo-imap4.el (elmo-folder-initialize): Ditto.

	* elmo-nntp.el (elmo-folder-initialize): Ditto.

	* elmo-multi.el (elmo-folder-initialize): Ditto.

	* elmo-util.el (elmo-parse-token): New function.
	(elmo-parse-prefixed-element): Ditto.

2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
	delete process.
	(elmo-imap4-accept-ok): Ditto.

2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* mmimap.el (mime-imap-entity-header-string): Don't check first
	element of node-id is `0' (Follow last change).

2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* mmimap.el (mmimap-make-mime-entity): Fixed problem to be
	assigned irregular node-id to nested multipart section.
	(initialize-instance): Followed above change.

2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
	`shimbun-open-group' (Moved to `elmo-folder-open-internal').
	(elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
	`elmo-shimbun-get-headers');
	Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
	visible article on summary exists in headers).
	(elmo-map-message-fetch): Cause an error when folder is unplugged.

2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
	definition.

2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.

2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
	header separator into loop condition.

2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
	Return duplicate folder if it has subfolder.

2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-make-folder): Add folder name error check.

	* elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
	(elmo-nntp-encode-group-string): New inline function.
	(elmo-nntp-decode-group-string): Ditto.
	(elmo-folder-initialize): Use elmo-nntp-encode-group-string.
	(elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
	Use `not' instead of `null';
	Use elmo-nntp-decode-group-string.

	* elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.

	* elmo-version.el (elmo-version): Up to 2.7.5.

2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
	Hide progress gauge if `elmo-folder-move-messages' exits
	nonlocally.

2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-folder-initialize): Use
	`elmo-imap4-encode-folder-string' for folder name.

2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-move-messages): Removed arguments `all' and
	`done'.

2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-progress-counter-alist): New internal
	variable.
	(elmo-progress-counter-value): New macro.
	(elmo-progress-counter-all-value): Ditto.
	(elmo-progress-counter-format): Ditto.
	(elmo-progress-counter-set-value): Ditto.
	(elmo-progress-set): New function.
	(elmo-progress-clear): Ditto.
	(elmo-progress-notify): Ditto.

	* elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
	counter.

	* elmo.el (elmo-generic-folder-append-messages): Call
	`elmo-progress-notify'.
	(elmo-folder-move-messages): Don't call `elmo-display-progress'.

	* elmo-archive.el (elmo-folder-append-messages): Call
	`elmo-progress-notify'.

	* elmo-imap4.el (elmo-folder-append-messages): Ditto.

	* elmo-localdir.el (elmo-folder-append-messages): Ditto.

	* elmo-maildir.el (elmo-folder-append-messages): Ditto.

2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
	'Create'.
	(elmo-message-encache-dop): Added argument `read'.

	* elmo-shimbun.el (elmo-message-encache): Ditto.

	* elmo-net.el (elmo-message-encache): Ditto.

	* elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
	(elmo-imap4-fetch-callback-1-subr): Save important message numbers to
	elmo-imap4-seen-messages.
	(elmo-folder-msgdb-create-plugged): Initialize
	elmo-imap4-seen-messages;
	Set seen mark on elmo-imap4-seen-messages.

	* elmo-pipe.el (elmo-folder-message-file-p): Define.

	* elmo.el (elmo-generic-folder-append-messages): Check return value of
	elmo-folder-append-buffer.
	(elmo-folder-encache): Added optional argument `read'.
	(elmo-message-encache): Ditto.

	* elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.

	* elmo-localdir.el (elmo-folder-append-buffer): Ditto.

	* elmo-archive.el (elmo-archive-folder-append-buffer): Return t
	if append buffer content succeds.

2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
	elmo-display-progress.

	* elmo-mime.el (elmo-mime-message-display): Added argument keymap;
	Set 4th argument of mime-display-message.
	(elmo-mime-display-as-is): Ditto.

2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nmz.el (toplevel): Require 'mime-edit.
	(elmo-nmz-content-type-alist): Abolished.
	(elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
	content is not a message.
	(elmo-map-message-fetch): Changed behavior exept for message content;
	Detect mime-charset automatically, Use `mime-find-file-type' to detect
	content-type, Add From: and Subject: field.

2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
	(elmo-map-message-fetch): Add `Content-Type' field if contents is
	not a message.

2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-writable-p): Changed default value to nil.
	(elmo-folder-move-messages): Check `elmo-folder-writable-p'.

	* elmo-archive.el (elmo-folder-writable-p): Defined.

	* elmo-cache.el (elmo-folder-writable-p): Ditto.

	* elmo-filter.el (elmo-folder-writable-p): Ditto.

	* elmo-imap4.el (elmo-folder-writable-p): Ditto.

	* elmo-localdir.el (elmo-folder-writable-p): Ditto.

	* elmo-maildir.el (elmo-folder-writable-p): Ditto.

	* elmo-mark.el (elmo-folder-writable-p): Ditto.

	* elmo-pipe.el (elmo-folder-writable-p): Ditto.

	* elmo-nntp.el (elmo-folder-writable-p): Eliminated.

2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-address-quote-specials): New function;
	Renamed from `wl-address-quote-specials'.

2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-version.el (elmo-version): Up to 2.7.4.

2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-quit): Call `elmo-dop-queue-save'.

2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>

	* acap.el (acap-read-passphrase): Always autoload ange-ftp for
	both compile-time and run-time to avoid byte-compile warning.

2001-09-13  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.

2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
	option.
	(elmo-mime-display-as-is-internal): Use it.

	* acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
	if `read-passwd' is not defined.

2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-list-location): Sort locations
	by original number.
	(elmo-folder-status): Call `elmo-folder-open-internal';
	Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
	(elmo-folder-close-internal): Set location-alist as nil.
	(elmo-folder-clear): Define.
	(elmo-folder-check): Don't set location-alist as nil.

	* elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.

2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
	(Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)

	* mmimap.el (mime-imap-entity::requested): New slot.
	(mime-imap-location-fetch-entity-p): New generic function.
	(mime-decode-parameters): Define using `defun-maybe'.
	(mmimap-make-mime-entity): Use `make-mime-content-type' to make
	content-type structure.
	(mime-entity-body): Return empty body if
	`mime-imap-location-fetch-entity-p' returns nil in the first request.

	* elmo.el (elmo-message-displaying): New variable.

	* elmo-mime.el (elmo-mime-message-display): Bind
	elmo-message-displaying as t.

	* elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.

2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>

	* acap.el (acap-open): erase buffer before starting network process.
	(acap-store): Rewrite.

2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-default-mailbox,
	elmo-imap4-default-server
	elmo-imap4-default-authenticate-type,
	elmo-imap4-default-user,
	elmo-imap4-default-port,
	elmo-imap4-default-stream-type,
	elmo-imap4-stream-type-alist): Moved to elmo-vars.el.

	* elmo-pop3.el (elmo-pop3-default-user,
	elmo-pop3-default-server,
	elmo-pop3-default-authenticate-type,
	elmo-pop3-default-port,
	elmo-pop3-default-stream-type,
	elmo-pop3-stream-type-alist): Ditto.

	* elmo-nntp.el (elmo-nntp-default-server,
	elmo-nntp-default-user,
	elmo-nntp-default-port,
	elmo-nntp-default-stream-type,
	elmo-nntp-stream-type-alist): Ditto.

	* elmo-vars.el: Follow changes above.
	(elmo-setting): New custom group; added 'elmo-setting group to
	above variables.

	* elmo-version.el (elmo-version): Up to 2.7.3.

	* acap.el (acap-parse-response): Don't delete process when BYE
	response (It causes hang-up on slow network environment).
	(toplevel): Added comment.

2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* slp.el (slp-exec-wait): Use `slp-program-arguments'.

	* acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
	parsing NIL.
	(acap-parse-return-metadata): Ditto.

	* slp.el: New file.
	(toplevel): Fixed typo.

	* acap.el: New file.
	(acap-network-stream-open): Show "Connecting..." message.
	(acap-parse-response): Fixed problem for BYE untagged response.
	(acap-open): Changed argument (Use `acap-default-user' if user is nil).
	(toplevel): Added tiny comments.

2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>

	* elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
	space delimiter for uidl response.

2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-vars.el (elmo-use-semi): Eliminated.

	* elmo-util.el (elmo-string-assoc-all): New function.

2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-mime.el (elmo-mime-display-as-is-internal): Put text
	property 'mime-preview-situation for `mime-preview-quit'.

2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-fetch-with-cache-process): Call
	elmo-message-fetch-internal instead of causing an error when fetch
	strategy is 'entire but only 'section cache is available.

2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.7.2.

	* elmo.el (elmo-generic-folder-append-messages): Make
	fetch-strategy with `use-cache'.

	* elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
	(elmo-dop-queue-method-name): New macro.

2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-archive.el (elmo-archive-get-archive-name): Fixed
	unbalanced parenthesis.

2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>

	* elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.

2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
	(Advised by YAMASHITA Junji <ysjj@unixuser.org>.)

2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
	local variables.

2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
	(elmo-message-use-cache-p): Define.
	(elmo-folder-msgdb-create): Treat cache.

2001-07-28  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-network-initialize-session): Call
	`elmo-nntp-send-mode-reader'.
	(elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.

2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
	alist.
	(elmo-folder-initialize): Use elmo-string-matched-assoc instead of
	assoc.

	* elmo-net.el (elmo-network-get-session): Set stream-type argument
	for `elmo-plugged-p'.
	(elmo-open-network-stream): Fixed stream-type argument.

2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
	unknown archive type is specified.

2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-folder-open-internal): Fixed.

	* elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
	while loading msgdb.

	* elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
	(elmo-folder-open-internal): Rewrite.

2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-display-as-is-internal):
	Adjust buffer-multibyte status.

2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
	of elmo-condition-find-key.

	* elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
	(elmo-condition-in-msgdb-p): Ditto.
	(elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
	argument.

2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pipe.el (elmo-folder-pack-numbers): Define.

2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-find-next-line): Fixed
	label for elmo-display-progress.

2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-clear): New method.
	(elmo-folder-clear): Define.
	(elmo-folder-synchronize): Call `elmo-folder-clear'.

	* elmo-shimbun.el (elmo-folder-check): Rewrite.
	(elmo-folder-clear): Define.

	* elmo-map.el (elmo-folder-clear): Define.

	* elmo-version.el (elmo-version): Up to 2.7.1.

2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-synchronize): Return list of nil when no
	updates.

2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-generic-folder-append-messages): Fixed logic.
	(Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)

2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.

	* elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
	and re-written.

	* elmo-imap4.el (elmo-folder-initialize): Use
	elmo-get-network-stream-type.

	* elmo-nntp.el (elmo-folder-initialize): Ditto.

	* elmo-pop3.el (elmo-folder-initialize): Ditto.

2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-encache): Set unread argument for
	elmo-message-fetch.

	* elmo-shimbun.el (elmo-dop): Require 'elmo-dop.

	* elmo.el (elmo-net-port-info): New method.

	* elmo-shimbun.el (elmo-net-port-info): Define.
	(elmo-message-encache): Ditto.

	* elmo-net.el (elmo-net-port-info): Define as method.

	* elmo.el (elmo-generic-folder-append-messages): Find cache file in
	unplugged status when elmo-enable-disconnected-operation is t.

	* elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
	of spool folder before checking new number.

2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
	(elmo-network-setup-session): Ditto.
	(elmo-message-fetch-plugged): Ditto.
	(elmo-pop3-send-command): Don't call elmo-pop3-lock.
	(elmo-network-initialize-session): Ditto.
	(elmo-pop3-read-response): Abolish 3rd argument.
	(elmo-pop3-read-response): Don't call elmo-pop3-unlock.
	(elmo-pop3-read-contents): Ditto.
	(elmo-pop3-read-body): Ditto.
	(elmo-folder-status): Call elmo-folder-close.
	(elmo-pop3-lock): Abolish.
	(elmo-pop3-unlock): Ditto.
	(elmo-pop3-locked-p): Ditto.
	(elmo-folder-check): Don't call elmo-pop3-locked-p.

2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.7.0.

	* elmo-pop3.el (elmo-pop3-debug): New variable.
	(elmo-pop3-debug-inhibit-logging): Ditto.
	(elmo-pop3-debug): New function.
	(elmo-pop3-send-command): Call elmo-pop3-debug.
	(elmo-pop3-read-response): Added keep-lock optional argument;
	Don't unlock if keep-lock is non-nil.
	(elmo-pop3-process-filter): Call elmo-pop3-debug.
	(elmo-network-authenticate-session): Bind
	elmo-pop3-debug-inhibit-logging as t.
	(elmo-network-setup-session): Call elmo-pop3-read-response with
	keep-lock argument.
	(elmo-pop3-read-msg): Ditto.
	(elmo-pop3-locked-p): Call elmo-pop3-debug.
	(elmo-pop3-read-body): Call elmo-pop3-unlock.
	(elmo-network-initialize-session): Call elmo-pop3-lock.
	(elmo-folder-close-internal): Don't clear location-alist slot.
	(elmo-folder-check): Clear location-alist slot.

2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
	(elmo-pop3-send-command): Call elmo-pop3-lock.
	(elmo-pop3-read-response): Call elmo-pop3-unlock.
	(elmo-pop3-read-contents): Ditto.
	(elmo-pop3-lock): New function.
	(elmo-pop3-unlock): Ditto.
	(elmo-pop3-locked-p): Ditto.
	(elmo-folder-check): Don't delete process if elmo-pop3-locked-p
	returns t.

2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.

	* elmo-util.el (elmo-file-field-primitive-condition-match):
	New inline function (Don't fetch file content if "first" or "last").
	(elmo-file-field-condition-match): Use
	elmo-file-field-primitive-condition-match.

	* elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
	"first".

	* elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
	(elmo-message-fetch-plugged): Fixed.

	* elmo-imap4.el (elmo-imap4-find-next-line): Ditto.

2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-move-messages): Bind
	elmo-inhibit-display-retrieval-progress as t while moving messages.

	* elmo-vars.el (elmo-display-retrieval-progress-threshold):
	New variable.
	(elmo-inhibit-display-retrieval-progress): Ditto.

	* elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
	for retrieval progress;
	Don't display progress when total buffer size is smaller than
	elmo-display-retrieval-progress-threshold.
	(elmo-message-fetch-plugged): Don't display progress when
	elmo-inhibit-display-retrieval-progress is non-nil.

	* elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
	for retrieval progress;
	Don't display progress when literal size is smaller than
	elmo-display-retrieval-progress-threshold.
	(elmo-imap4-message-fetch): Don't display progress when
	elmo-inhibit-display-retrieval-progress is non-nil.

2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
	(elmo-imap4-find-next-line): Display progress whille literal fetching.
	(elmo-imap4-message-fetch): Likewise.

	* elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
	(elmo-shimbun-index-range-alist): Ditto.
	(elmo-shimbun-use-entire-index): Abolish.
	(shimbun-mua-use-entire-index): Ditto.
	(elmo-shimbun-folder): Added new slot `range'.
	(elmo-folder-initialize): Setup slot `range'.

2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
	(elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
	(elmo-shimbun-get-headers): Use return value of
	`shimbun-article-expiration-days'.
	(elmo-folder-close-internal): Clean up last-check slot.

	* elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
	(elmo-pop3-total-size): New variable.
	(elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.

	* elmo.el (elmo-folder-reserve-status-p): New method.

	* elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
	(elmo-shimbun-use-entire-index): New user option.
	(shimbun-elmo-mua): New class.
	(shimbun-mua-search-id): Define.
	(shimbun-mua-use-entire-index): Ditto.
	(elmo-shimbun-folder:last-check): New slot.
	(elmo-shimbun-headers-cache-header-list): Abolish.
	(elmo-shimbun-headers-cache-set-header-list): Ditto.
	(elmo-shimbun-headers-cache-header-hash): Ditto.
	(elmo-shimbun-headers-cache-set-header-hash): Ditto.
	(elmo-shimbun-headers-cache-last-check): Ditto.
	(elmo-shimbun-headers-cache-set-last-check): Ditto.
	(elmo-shimbun-headers-check-p): Rewrite.
	(elmo-shimbun-msgdb-to-headers): New function.
	(elmo-shimbun-get-headers): Rewrite.
	(elmo-folder-initialize): Set 1st argument of `shimbun-open'.
	(elmo-folder-open-internal): Get headers only if
	`elmo-shimbun-headers-check-p' is non-nil.
	(elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
	is non-nil.
	(elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
	(elmo-quit): Removed.

	* elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
	function.
	(elmo-msgdb-overview-entity-set-extra): Ditto.
	(elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.

	* elmo-map.el (elmo-folder-status): Don't call
	elmo-folder-close-internal if `elmo-folder-reserve-status-p'
	is non-nil.

2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
	of `elmo-msgdb-search-internal-primitive' when condition's car is
	`and' or `or'.

2001-05-23  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.

2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-folder-open-internal): Check plugged before
	call `elmo-pipe-drain'.

2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
	typo. (elmo-cache-folder -> elmo-mark-folder)

2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-net.el (elmo-message-fetch-unplugged): Don't call
	`elmo-message-fetch'.

2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-net.el (elmo-message-encache): Fixed typo.
	(elmo-message-fetch-unplugged): Changed call
	`elmo-message-fetch-internal' without argument `outbuf'.

2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-encache): Define as generic function.
	(elmo-message-fetch-field): New generic function.
	(elmo-message-fetch-with-cache-process): Cause an error when
	fetch strategy is 'entire but only 'section cache is available.
	(toplevel): Fixed nmz folder definition.

	* elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
	(elmo-msgdb-resume-list-filename): Ditto.
	(elmo-queue-filename): Ditto.
	(elmo-enable-disconnected-operation): Changed default value to t.

	* elmo-util.el (elmo-cache-path-section-p): New function.
	(elmo-file-cache-get): Use it.
	(elmo-dop-queue-filename): Moved from elmo-dop.el.
	(elmo-dop-queue-load): Moved from elmo-msgdb.el.
	(elmo-dop-queue-save): Ditto.

	* elmo-net.el (elmo-folder-status-unplugged): Call
	elmo-folder-status-dop.
	(elmo-folder-list-messages-unplugged): Implemented.
	(elmo-folder-delete-messages-unplugged): Define.
	(elmo-folder-msgdb-create): Define.
	(elmo-folder-msgdb-create-unplugged): Define.
	(elmo-folder-mark-as-read-unplugged): Ditto.
	(elmo-folder-unmark-read-unplugged): Ditto.
	(elmo-folder-mark-as-important-unplugged): Ditto.
	(elmo-folder-unmark-important-unplugged): Ditto.
	(elmo-message-encache): Ditto.

	* elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
	(elmo-dop-queue-save): Ditto.

	* elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
	`elmo-folder-msgdb-create'.
	(elmo-folder-append-buffer): Implemented unplugged operation.
	(elmo-folder-append-messages): Call parent method in unplugged status.
	(elmo-message-fetch-unplugged): Removed definition.
	(elmo-message-fetch-field): Implemented.

	* elmo-dop.el (toplevel): Require 'elmo-localdir.
	(elmo-dop-folder): Removed variable definition.
	(elmo-dop-queue-append): Changed argument `fname' to `folder'.
	(elmo-dop-queue-flush): Implemented.
	(elmo-dop-queue-merge): Removed definition (TODO).
	(elmo-dop-spool-folder): New function.
	(elmo-dop-spool-folder-append-buffer): Ditto.
	(elmo-dop-spool-folder-list-messages): Ditto.
	(elmo-dop-list-deleting-messages): Ditto.
	(elmo-folder-append-buffer-dop): Ditto.
	(elmo-folder-delete-messages-dop): Ditto.
	(elmo-message-encache-dop): New inline function.
	(elmo-create-folder-dop): Ditto.
	(elmo-folder-mark-as-read-dop): Ditto.
	(elmo-folder-unmark-read-dop): Ditto.
	(elmo-folder-mark-as-important-dop): Ditto.
	(elmo-folder-unmark-important-dop): Ditto.
	(elmo-folder-status-dop): Fixed.
	(elmo-folder-append-buffer-dop-delayed): New function.
	(elmo-folder-delete-messages-dop-delayed): Ditto.
	(elmo-dop-msgdb): Ditto.

2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-localdir.el (elmo-folder-pack-numbers): Fixed.

2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-move-messages): Fixed problem when
	`dst-folder' is 'null.

2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
	instead of current mark.

	* elmo-multi.el (elmo-folder-list-importants-internal): No
	operation if importants is not list.

	* elmo-filter.el (elmo-filter-folder-list-importants-internal):
	Return t if importants is not list.

	* elmo-map.el (elmo-map-folder-list-importants): Define.
	(elmo-folder-list-importants-internal): Check return value of
	`elmo-map-folder-list-importants-internal'.

	* elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.

	* elmo-mark.el (elmo-folder-list-importants-internal): Ditto.

	* elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.

	* elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.

2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-message-fetch-confirm): Fixed docstring.
	(Patch is provided by <kita@coe.nttdata.co.jp>).

2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-synchronize): Don't check important mark in
	mark folder.

2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-message-fetch): Define.
	(elmo-message-fetch-with-cache-process): New generic method.
	(elmo-message-fetch-internal): New generic method.
	(elmo-folder-synchronize):

	* elmo-archive.el (elmo-message-fetch-internal): Define.
	(elmo-message-fetch): Eliminated.

	* elmo-localdir.el (elmo-message-fetch-internal): Define.
	(elmo-message-fetch): Eliminated.

	* elmo-map.el (elmo-map-message-fetch): Eliminated optional
	argument OUTBUF.
	(elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').

	* elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
	(elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.

	* elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
	(elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.

	* elmo-maildir.el (elmo-map-message-fetch): Rewrite.

	* elmo-nmz.el (elmo-map-message-fetch): Ditto.

	* elmo-shimbun.el (elmo-map-message-fetch): Ditto.

	* elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
	(elmo-message-fetch-unplugged): New generic method.
	(elmo-message-fetch-internal): Remove cache process (Renamed from
	`elmo-message-fetch').

	* elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
	(elmo-message-fetch): Eliminated.
	(elmo-message-fetch-unplugged): Ditto.

	* elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.

2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
	of `to-be-deleted' from number-alist to number-list.

2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
	(elmo-folder-mark-as-important): Ditto.

2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder): Added process-duplicates slot.

	* elmo-pipe.el (elmo-folder-mark-as-read): Define.
	(elmo-folder-unmark-read): Ditto.
	(elmo-folder-unmark-important): Ditto.
	(elmo-folder-mark-as-important): Ditto.

	* elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
	duplicated message processing.

	* elmo.el (elmo-generic-folder-append-msgdb): Ditto.

2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-list-subdirectories-1): New function.
	(elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
	(elmo-mapcar-list-of-list): New function.

	* elmo-archive.el (elmo-archive-folder-list-subfolders): Use
	`elmo-mapcar-list-of-list' instead of `mapcar'.

	* elmo-localdir.el (elmo-folder-list-subfolders): Ditto.

	* elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
	`elmo-have-link-count'. Return the fully qualified folder name.

2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
	(elmo-shimbun-headers-cache): New internal variable.
	(elmo-shimbun-headers-cache-header-list): New inline function.
	(elmo-shimbun-headers-cache-set-header-list): Ditto.
	(elmo-shimbun-headers-cache-header-hash): Ditto.
	(elmo-shimbun-headers-cache-set-header-hash): Ditto.
	(elmo-shimbun-headers-cache-last-check): Ditto.
	(elmo-shimbun-headers-cache-set-last-check): Ditto.
	(elmo-shimbun-lapse-seconds): Ditto.
	(elmo-shimbun-headers-cache-check-p): Ditto.
	(elmo-shimbun-get-headers): New function.
	(elmo-folder-open-internal): Call it.
	(elmo-quit): Define (Clear headers-cache).

2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).

	* elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
	(elmo-msgdb-flist-save): Ditto.

	* elmo-shimbun.el (elmo-folder-list-subfolders):
	Use `shimbun-groups' instead of `shimbun-groups-internal'.
	(elmo-folder-exists-p): Ditto.

	* elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
	argument for `shimbun-header-insert'.

2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
	at first time.

	* elmo-util.el (toplevel): Require 'mcharset and 'pces.
	(With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')

2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
	(elmo-folder-plugged-p): Define.
	(elmo-folder-set-plugged): Ditto.
	(elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
	(elmo-folder-list-messages-internal): Return t if unplugged.
	(elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".

	* elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
	when elmo-folder-list-messages-internal method of children returns t.

	* elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
	pair is nil.
	(elmo-folder-open-internal): Don't update if unplugged status.

2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-synchronize): Fixed problem when there's no
	new message.

2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-file-cache-save): Ignore errors.

	* elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
	saving.

2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-synchronize): Added optional no-check argument.

	* elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
	(elmo-folder-open-internal): Set up headers slot.
	(elmo-folder-check): Call elmo-folder-close-internal and
	elmo-folder-open-internal.
	(elmo-folder-close-internal): Clean up headers slot.

2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-archive.el (elmo-archive-folder-list-subfolders): Match
	exactly folder list.
	(elmo-folder-append-messages): Fixed append archive with prefix.

	* elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
	make temp files with start-number.

	* elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.

2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
	argument `visible-only'.
	(elmo-generic-folder-append-messages): Fixed condition. Use `unless'
	instead of `if'.

	* elmo-pop3.el (elmo-folder-open-internal): Check
	`elmo-inhibit-number-mapping' is non-nil.

	* elmo-pipe.el (elmo-folder-status): Fixed.

2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-dop-queue-flush): Added autload setting.

	* elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
	(elmo-folder-open-internal): Setup `header-hash' slot.
	(elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
	information.
	(elmo-map-message-fetch): Ditto.

2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>

	* shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
	sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
	sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
	sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.

	* elmo-util.el (elmo-resque-obsolete-variable): Fix.

2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* sb-airs.el: Added footer.

	* shimbun.el (shimbun-article): Define as luna-method.

	* sb-tcup.el: New file.

	* sb-airs.el (toplevel): Require 'sb-mhonarc.
	(According to the report from ABE Yasushi <yasushi@indigo.co.jp>)

2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
	(shimbun-get-headers): Ditto.

	* elmo.el: Moved obsolete variable definitions from
	elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.

	* sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
	groups.

	* shimbun.el: New file.

	* elmo-shimbun.el: New file.

	* sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
	sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
	sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
	sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.

2001-03-27  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
	hierarchy is t.

2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-msgdb): Define as macro.
	(elmo-folder-open): Added argument `load-msgdb'.
	(elmo-generic-folder-open): Ditto.
	(elmo-folder-encache): New function.

	* elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.

	* elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.

	* elmo-msgdb.el (elmo-msgdb-delete-msgs):
	Eliminated argument FOLDER and added argument MSGDB.
	(elmo-dop-queue-load): Moved from elmo-dop.el.
	(elmo-dop-queue-save): Ditto.

	* elmo-map.el (elmo-map-folder-update-locations): Sort by number.

	* elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.

	* elmo-filter.el (elmo-filter-folder-list-unreads-internal):
	Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
	(elmo-filter-folder-list-importants-internal): Ditto.

	* elmo-map.el (elmo-folder-pack-number): Ditto.

	* elmo-mime.el (elmo-mime-message-display): Ditto.

	* elmo.el (elmo-generic-folder-commit): Ditto.
	(elmo-folder-list-unreads): Ditto.
	(elmo-folder-list-importants): Ditto.
	(elmo-generic-folder-commit): Ditto.
	(elmo-message-set-mark): Ditto.
	(elmo-generic-folder-append-msgdb): Ditto.
	(elmo-folder-synchronize): Ditto.
	(elmo-folder-messages): Ditto.
	(elmo-init): Call elmo-dop-queue-load.
	(elmo-folder-list-messages): Ditto.

	* elmo-nntp.el (elmo-folder-update-number): Ditto.
	(elmo-nntp-folder-process-crosspost): Ditto.
	(elmo-folder-list-unreads-internal): Ditto.

	* elmo-dop.el: Removed old functions.

2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
	`folder' to `msgdb'.

2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
	`mime-decode-parameters' instead of `mime-decode-parameter-plist'.

	* elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
	case-fold-search.

2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
	defined.

	* mmimap.el (toplevel): Require 'mime-parse and 'static.
	(mmimap-parse-parameters-from-list): Define as alias for
	`mime-decode-parameter-plist' if it is defined as function.
	(mmimap-make-mime-entity): Added argument `number'.
	(initialize-instance): Set `number' argument of mmimap-make-mime-entity
	as 0.
	(mime-imap-entity-header-string): Arrange node-id for rfc2060 section.

	* elmo.el (elmo-folder-have-subfolder-p): New generic function.

	* elmo-mark.el (elmo-folder-have-subfolder-p): Define.

	* elmo-internal.el (elmo-folder-list-subfolders): Rewrite.

2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-folder-msgdb-create): Fixed.

	* elmo-imap4.el (elmo-folder-initialize): Fixed problem
	when elmo-imap4-default-authenticate-type is nil.
	(elmo-folder-list-subfolders): Ditto
	(According to the reported of Bun Mizuhara <mizuhara@acm.org>)
	(elmo-imap4-fetch-callback-1-subr): Renamed from
	`elmo-imap4-fetch-callback-1' and define as inline function.
	(elmo-imap4-fetch-callback-1):
	Renamed from `elmo-imap4-fetch-callback'.
	(elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.

	* elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
	msgdb path (To keep compatibility with main trunk).

	* elmo-vars.el (elmo-inhibit-number-mapping): New variable.

	* elmo-util.el (elmo-make-file-cache): Moved position of
	some macros.

	* elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
	(elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
	instead of `elmo-pop3-inhibit-uidl'.
	(elmo-folder-exists-p): Ditto.
	(elmo-pop3-folder-list-messages): Ditto.

	* elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
	instead of `elmo-pop3-inhibit-uidl'.
	(elmo-folder-status): Ditto.

	* elmo-dop.el (elmo-dop-folder): New variable.
	(elmo-dop-lock-message): Eliminated.
	(elmo-dop-unlock-message): Ditto.
	(elmo-dop-lock-list-load): Ditto.
	(elmo-dop-lock-list-save): Ditto.
	(elmo-dop-delete-folder): Ditto.
	(elmo-dop-rename-folder): Ditto.

	* elmo.el: Removed incomplete commentary.

2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo.el (toplevel): Require 'elmo-version first;
	for little `recursive-load-depth' settings.
	Fix "ends here" comment.

2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (toplevel): Require 'poem;
	Some functions are moved from elmo-cache.el.

	* elmo-net.el (toplevel): Require 'elmo-cache.

	* elmo-msgdb.el (toplevel): Don't require 'elmo-cache.

	* elmo.el (toplevel): Ditto.

	* elmo-cache.el: Rewrite with luna;
	Some functions are moved to elmo-util.el.

	* elmo-internal.el (elmo-internal-folder-list): New variable.
	(elmo-internal-folder-initialize): Rewrite.
	(elmo-folder-list-subfolders): Ditto.

	* elmo-cache.el (elmo-cache-search-all): Eliminated.
	(elmo-cache-collect-sub-directories): Ditto.

2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.5.8.

	* elmo.el (elmo-folder-list-messages-mark-match): New function.

	* elmo-util.el (elmo-list-insert): New function.

2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-init): New function.
	(elmo-quit): Call `elmo-crosspost-message-alist-save'.

	* elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
	(Renamed from `elmo-localdir-header-chop-length').

	* elmo-pop3.el (elmo-pop3-use-cache,
	elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.

	* elmo-nntp.el (elmo-message-fetch): Define.
	(elmo-message-fetch-unplugged): Ditto.
	(elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
	(elmo-nntp-use-cache): Ditto.
	(elmo-nntp-max-number-precedes-list-active): Ditto.

	* elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.

	* elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
	`elmo-msgdb-insert-file-header'.
	Use `elmo-msgdb-file-header-chop-length'.

	* elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
	`elmo-vars.el'.

	* elmo-cache.el (elmo-cache-insert-header): Eliminated.
	(elmo-cache-msgdb-create-overview-entity-from-file): Use
	`elmo-msgdb-insert-file-header'.

	* elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
	Use new variable;
	Define obsolete variables with `elmo-define-obsolete-variable',

	* elmo-util.el (elmo-warning-buffer-name): New constant.
	(elmo-warning): New function.
	(elmo-obsolete-variable-alist): New variable.
	(elmo-obsolete-variable-show-warnings): New variable.
	(elmo-define-obsolete-variable): New function.
	(elmo-resque-obsolete-variable): Ditto.
	(elmo-resque-obsolete-variables): Ditto.

2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
	Eliminated.

	* elmo-pop3.el, elmo-nntp.el: Use custom.

2000-02-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-authenticate-session): Fix.
	* elmo-pop3.el (elmo-network-authenticate-session): Add comments.

2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* Luna-fy Kenichi OKADA's following changes.
	* elmo.el (elmo-folder-list-messages-internal): Added optional argument
	`nohide'.
	(elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.

2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-util.el (elmo-display-progress): Prefer
	`progress-feedback-with-label' to `lprogress-display'.

2000-02-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'

2000-02-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo2.el (elmo-list-folder): Added optional argument `nohide'.
	* elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
	* elmo-pop3.el (elmo-pop3-list-folder): Ditto.
	* elmo-nntp.el (elmo-nntp-list-folder): Ditto.
	* elmo-localdir.el (elmo-localdir-list-folder): Ditto.
	* elmo-localnews.el (elmo-localnews-list-folder): Ditto.
	* elmo-archive.el (elmo-archive-list-folder): Ditto.
	* elmo-filter.el (elmo-filter-list-folder): Ditto.
	* elmo-internal.el (elmo-internal-list-folder): Ditto.
	* elmo-pipe.el (elmo-pipe-list-folder): Ditto.
	* elmo-multi.el (elmo-multi-list-folder): Ditto.
	* elmo-maildir.el (elmo-maildir-list-folder): Ditto.
	* elmo-dop.el (elmo-dop-list-folder): Ditto.

2000-02-17  Kenichi OKADA  <okada@opaopa.org>

	* elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
	* elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.

2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-process-crosspost): New generic method.
	(elmo-folder-writable-p): Ditto.
	(elmo-folder-message-appendable-p): Eliminated.
	(elmo-generic-folder-append-msgdb): Rewrite.
	(elmo-newsgroups-hashtb): New internal variable.
	(elmo-crosspost-message-set): Eliminated.
	(elmo-crosspost-message-delete): Ditto.
	(elmo-setup-subscribed-newsgroups): New function.
	(elmo-crosspost-message-alist-modified): New internal variable.
	(elmo-crosspost-message-alist-load): New function (Renamed from
	`wl-crosspost-alist-load').
	(elmo-crosspost-message-alist-save): Ditto (Renamed from
	`wl-crosspost-alist-save').

	* elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').

	* elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
	`unreads'.
	(elmo-nntp-groups-hashtb): Eliminated (Renamed to
	elmo-newsgroups-hashtb).
	(elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
	`elmo-nntp-folder-update-crosspost-message-alist'.
	(elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
	`elmo-nntp-groups-hashtb'.
	(elmo-nntp-make-groups-hashtb): Eliminated.
	(elmo-nntp-parse-newsgroups): New function (Renamed from
	`wl-parse-newsgroups').
	(elmo-folder-creatable-p, elmo-folder-writable-p,
	elmo-folder-close-internal, elmo-folder-mark-as-read,
	elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
	Define.
	(elmo-nntp-folder-update-crosspost-message-alist): New function.

	* elmo-net.el (elmo-message-fetch): Check buffer size.

	* elmo-multi.el (elmo-multi-split-number-alist): New function.

	* elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.

	* elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
	before `close' command.

	* elmo.el (elmo-folder-list-unreads-internal): Added argument
	`mark-alist' (All other related portions are changed).

2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-create-hash-size): Eliminated.
	(elmo-make-hash) Make a hash with `one less than a power of two'
	length.

	* elmo-vars.el (elmo-hash-minimum-size): New variable.
	(elmo-hash-maximum-size): Changed value.

2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
	(elmo-mime-message-display-as-is): Ditto.

2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
	Use `elmo-folder-close-internal' instead of `elmo-folder-close'.

2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mark.el: New file.

	* elmo-internal.el: Rewrite (Almost empty).

2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
	(mime-imap-entity-header-string): Ditto.
	(mmimap-entity-section): Rewrite.

2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nmz.el: New file.

	* elmo-pipe.el: Rewrite with luna.

2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-archive.el: Rewrite with luna.

	* elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
	(elmo-folder-list-importants-internal): Ditto.

2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-archive.el (elmo-archive-version): Abolish.
	(toplevel) Removed `boso' comment.

2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
	elmo-msgdb-add-msgs-to-seen-list-subr;
	Changed argument seen-marks to unread-marks.

	* elmo-nntp.el: Rewrite with luna.

2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-filter.el: Rewrite with luna.

2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el: Rewrite with luna.

2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-multi.el: Rewrite with luna.

	* elmo-vars.el (elmo-use-killed-list): Abolish.
	All other related portions are changed.
	(elmo-filename-replace-string-alist): Renamed from
	elmo-msgid-replace-string-alist.

2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.

	* elmo-map.el: New file.
	* elmo-maildir.el: Rewrite with luna.

2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el: Changed meaning of `elmo-folder-commit'.
	* elmo-mime.el (elmo-mime-display-as-is-internal): New function.

2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el (elmo-folder-append-buffer): New function.
	(Renamed from `elmo-append-msg')

2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-mime.el: New file.

2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-cache.el: Rewrite.

2000-02-17  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'

2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-vars.el (elmo): New group.
	(elmo-strict-diff-folder-regexp): New variable.

	* elmo-util.el (elmo-call-func): Abolish.
	(elmo-folder-get-type): Ditto.
	(elmo-*-get-spec): Ditto.
	(elmo-*-spec-*): Ditto.
	(elmo-imap4-identical-name-space-p): Ditto.
	(elmo-folder-identical-system-p): Ditto.
	(elmo-folder-direct-copy-alist): Ditto.
	(elmo-folder-direct-copy-p): Ditto.

	* elmo-pipe.el (elmo-pipe-folder): New luna class.
	(elmo-folder-initialize): Define.
	(elmo-folder-get-primitive-list): Ditto.

	* elmo-nntp.el (elmo-nntp-folder): New luna class.
	(elmo-folder-initialize): Define.
	Renamed `elmo-network-session-host-internal' to
	`elmo-network-session-server-internal'.

	* elmo-multi.el (elmo-multi-folder): New luna class.
	(elmo-folder-initialize): Define.
	(elmo-folder-get-primitive-list): Ditto.
	(elmo-folder-contains-type): Ditto.
	(elmo-message-use-cache-p): Ditto.

	* elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
	Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.

	* elmo-maildir.el (elmo-maildir-folder): New luna class.
	(elmo-folder-initialize): Define.

	* elmo-filter.el (elmo-filter-folder): New luna class.
	(elmo-folder-initialize): Define.
	(elmo-folder-get-primitive-list): Ditto.
	(elmo-folder-contains-type): Ditto.

2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el: Rewrite with luna.

	* mmimap.el: New file.

	* mmelmo.el, mmelmo-imap4.el: Removed.

	* elmo-net.el: Ditto.

	* elmo-pop3.el (elmo-pop3-folder): New luna class.
	(elmo-folder-initialize): Define.

	* elmo-archive.el (elmo-archive-folder): New luna class.
	(elmo-folder-initialize): Define.

	* elmo-dop.el: Rename `elmo-msgdb-expand-path' to
	`elmo-folder-msgdb-path'.
	(elmo-dop-queue-append): Use `elmo-folder-name-internal' and
	`elmo-make-folder'.

2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo.el: New file.

	* elmo2.el: Renamed to elmo.el.


2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-cache.el (elmo-cache-expire-by-size): Count
	a disk usage for a cache file entry in KB even when
	its kind is a directory.

2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.5.7.

2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-version.el (elmo-version): Up to 2.5.6.

2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.5.5.

2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-network-authenticate-session):
	Fixed a logic for response checking.

2000-12-15   Daiki Ueno  <ueno@unixuser.org>

	* elmo-net.el: Add autoload settings for `starttls-negotiate',
	`sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
	`sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
	`sasl-mechanisms'.

	* elmo-imap4.el: Don't require `sasl'; remove autoload settings
	for `starttls-open-stream' and `starttls-negotiate'.

	* elmo-nntp.el: Remove autoload settings for
	`starttls-open-stream' and `starttls-negotiate'.

	* elmo-pop3.el: Don't require `sasl'; remove autoload settings
	for `starttls-open-stream' and `starttls-negotiate'; don't enclose
	`luna-define-class' with `eval-and-compile'.

2000-12-01  Kenichi OKADA  <okada@opaopa.org>

	* elmo-util.el (elmo-read-search-condition-internal):
	Require an element of table for searching field.

2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.5.4.

2000-11-26  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].

2000-11-24  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-network-initialize-session): omitted.

2000-11-22  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
	before greeting.

2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-delete-folder):
	Send "close" before "delete" (Use commented out line).
	(elmo-imap4-rename-folder): Ditto.

	* elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
	folder string itself.
	(elmo-dop-list-deleted): New function.
	(elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
	killed.

	* elmo-util.el (elmo-string-rassoc-all): New function.

2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.5.3.

	* elmo-net.el (elmo-network-get-session): Changed logic for
	checking process status.

	* elmo-pop3.el (elmo-network-close-session): Do nothing if session
	process is nil;
	Changed logic for checking process status.

2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
	before greeting.
	(elmo-network-setup-session): Set UIDL hash size according to
	the length of list response.
	(elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
	according to the length of list response;
	Return the length of list response.
	(Adviced by OKAZAKI Tetsurou <okazaki@be.to>)

2000-11-21  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (toplevel): Require 'ssl.
	Add autoload 'starttls.
	* elmo-pop3.el (toplevel): Ditto.
	* elmo-nntp.el (toplevel): Ditto.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (toplevel): defun at compile time.
	sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
	sasl-next-step, sasl-step-data, sasl-step-set-data.
	* elmo-pop3.el (toplevel): Ditto.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
	if error.
	(elmo-network-authenticate-session): Use `elmo-pop-auth-user'
	and `elmo-pop-auth-apop'.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Split
	encoded response value.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Abolish
	`elmo-pop3-force-login'.
	Redefine `sasl-mechanisms'.
	* elmo-vars.el (elmo-pop3-force-login): Ditto.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
	Delete `elmo-imap4-authenticator-alist'.
	(elmo-imap4-auth-cram-md5): Delete.
	(elmo-imap4-auth-digest-md5): Delete.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
	(elmo-pop3-auth-scram-md5): Ditto.
	(elmo-pop3-auth-cram-md5): Ditto.

2000-11-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
	Delete `elmo-pop3-authenticator-alist'.

2000-11-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
	new SASL API.
	* elmo-imap4.el (elmo-network-authenticate-session): Ditto.

2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-folder-local-p): Treat pipe and filter.

2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
	Fixed problem when `elmo-pop3-use-uidl' is nil.
	(Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)

2000-11-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-version.el (elmo-version): Up to 2.5.2.

2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
	New function.
	(elmo-pop3-sort-msgdb-by-original-number): Ditto.
	(elmo-pop3-msgdb-create-as-numlist): Use it.

	* elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
	(Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)

	* elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
	(Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)

2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>

	* elmo2.el (elmo-make-folder-numbers-list): Fixed problem
	when elmo-mark-as-read is called with second argument nil.

2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
	Moved to elmo-util.el.

	* elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
	Moved from elmo-pipe.el

	* elmo-archive.el (elmo-archive-call-process): Enclose with
	static-if.

	* elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
	"RFC822" (because RFC822.PEEK is obsolete).
	(Adviced by IMAI Takeshi <imai@on.rim.or.jp>)

2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>

	* elmo-archive.el (elmo-archive-call-process): Don't check for
	the exit status when Nemacs is running.

2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-net.el (elmo-network-session-password-key): Don't set default to
	'plain.

	* elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
	(elmo-pop3-get-spec): Set default of auth to 'user.

	* elmo-imap4.el (elmo-imap4-session-check):
	Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
	(elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
	(elmo-imap4-auth-login): New function; Revival.
	(elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
	`elmo-imap4-auth-login'.

2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo2.el (toplevel): Move `product-provide' declare.
	* mmelmo.el (toplevel): Ditto.

2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-folder-get-store-type): Rewrite.

2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>

	* elmo-util.el (elmo-folder-get-store-type): New function.
	(elmo-folder-direct-copy-p): Use it.

2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-msgdb-create): Set
	`elmo-imap4-fetch-callback-data' as a cons cell of `args'
	and result of `elmo-imap4-use-flag-p'.
	(elmo-imap4-fetch-callback-1): Set mark according to
	the result of `elmo-imap4-use-flag-p'.

2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
	(elmo-generic-list-folder-unread): Ditto.
	(elmo-folder-get-info): Ditto.
	(elmo-folder-set-info-max-by-numdb): Ditto.
	(elmo-folder-get-info-max): Ditto.
	(elmo-folder-get-info-length): Ditto.
	(elmo-folder-get-info-unread): Ditto.
	(elmo-folder-info-make-hashtb): Ditto.

	* elmo2.el: Removed above functions.

2000-11-21  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (toplevel): Require 'ssl.
	Add autoload 'starttls.
	* elmo-pop3.el (toplevel): Ditto.
	* elmo-nntp.el (toplevel): Ditto.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (toplevel): defun at compile time.
	sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
	sasl-next-step, sasl-step-data, sasl-step-set-data.
	* elmo-pop3.el (toplevel): Ditto.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
	if error.
	(elmo-network-authenticate-session): Use `elmo-pop-auth-user'
	and `elmo-pop-auth-apop'.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Split
	encoded response value.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Abolish
	`elmo-pop3-force-login'.
	Redefine `sasl-mechanisms'.
	* elmo-vars.el (elmo-pop3-force-login): Ditto.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
	Delete `elmo-imap4-authenticator-alist'.
	(elmo-imap4-auth-cram-md5): Delete.
	(elmo-imap4-auth-digest-md5): Delete.

2000-11-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
	(elmo-pop3-auth-scram-md5): Ditto.
	(elmo-pop3-auth-cram-md5): Ditto.

2000-11-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
	Delete `elmo-pop3-authenticator-alist'.

2000-11-19  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
	new SASL API.
	* elmo-imap4.el (elmo-network-authenticate-session): Ditto.


2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.

2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-get-folders-info):
	Fixed problem when '\' character is contained in user-id.
	(Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)


2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-delete-folder):
	Send "close" before "delete" (Use commented out line).
	(elmo-imap4-rename-folder): Ditto.

	* elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
	folder string itself.
	(elmo-dop-list-deleted): New function.
	(elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
	killed.

	* elmo-util.el (elmo-string-rassoc-all): New function.

	* elmo-version.el (elmo-version): Up to 2.5.1.

2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.

	* elmo-internal.el (elmo-internal-search): Fix last change.

2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-internal.el (elmo-internal-search): Rewrite.
	(Fixed problem which is pointed out by Akihiro MOTOKI
	<motoki@da.jp.nec.com>)

	* elmo-version.el (elmo-version): Up to 2.5.0.

2000-11-06  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.

2000-11-06  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
	non-nil, make hierarchy.

2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
	`elmo-pop3-use-uidl' must be bound to nil.
	(Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)

2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-copy-file): Don't cause an error after
	`add-name-to-file' failed.

	* elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
	(Fix by HIROSE Yuuji <yuuji@gentei.org>)

2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-version.el (elmo-version): Up to 2.3.93.

2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-flatten): New function.

2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-archive.el (toplevel): Added (C) to copyright notice, and
	sync Author header.
	* elmo-cache.el (toplevel): Ditto.
	* elmo-database.el (toplevel): Ditto.
	* elmo-date.el (toplevel): Ditto.
	* elmo-dop.el (toplevel): Ditto.
	* elmo-filter.el (toplevel): Ditto.
	* elmo-imap4.el (toplevel): Ditto.
	* elmo-internal.el (toplevel): Ditto.
	* elmo-localdir.el (toplevel): Ditto.
	* elmo-localnews.el (toplevel): Ditto.
	* elmo-maildir.el (toplevel): Ditto.
	* elmo-msgdb.el (toplevel): Ditto.
	* elmo-multi.el (toplevel): Ditto.
	* elmo-net.el (toplevel): Ditto.
	* elmo-nntp.el (toplevel): Ditto.
	* elmo-pipe.el (toplevel): Ditto.
	* elmo-pop3.el (toplevel): Ditto.
	* elmo-util.el (toplevel): Ditto.
	* elmo-vars.el (toplevel): Ditto.
	* elmo2.el (toplevel): Ditto.
	* mmelmo-imap4.el (toplevel): Ditto.
	* mmelmo.el (toplevel): Ditto.

	* elmo-version.el (elmo-version): Move to top.

	* elmo-cache.el (toplevel): Fixed multiple Author header format.
	* elmo-imap4.el (toplevel): Ditto.
	* elmo-localdir.el (toplevel): Ditto.
	* elmo-msgdb.el (toplevel): Ditto.
	* elmo-nntp.el (toplevel): Ditto.
	* elmo-pop3.el (toplevel): Ditto.
	* elmo-version.el (toplevel): Ditto.

	* elmo-localnews.el (toplevel): Added Keyword header.

2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (product-version-as-string): Defined using
	`defun-maybe'.
	(toplevel): Use it.

	* elmo-localdir.el (toplevel): Updated copyright notice.
	* elmo-version.el (toplevel): Ditto.
	* elmo-msgdb.el (toplevel): Ditto.
	* elmo-imap4.el (toplevel): Ditto.
	* elmo-nntp.el (toplevel): Ditto.
	* elmo-pop3.el (toplevel): Ditto.

2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
	messages.

	* mmelmo.el (mime-parse-parameters-from-list): Don't downcase
	parameter value (It sometimes contains raw kanji).

2000-10-28  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-initialize-session): Check capability.
	* elmo-pop3.el (elmo-network-initialize-session): Ditto.

2000-10-28  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-initialize-session): Fix.

2000-10-28  Kenichi OKADA  <okada@opaopa.org>

	* elmo-imap4.el (elmo-network-initialize-session): Change error message.
	* elmo-pop3.el (elmo-network-initialize-session): Change error message.

2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
	value if selecting folder succceeded.
	(Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)

2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-util.el (elmo-make-directory): Fixed permission lateral
	representation.

	* elmo-util.el (elmo-string-matched-member): New function.

2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-unintern): New macro.
	(elmo-number-set-member): Fixed docstring.

	* elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
	tag token.

2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
	of `elmo-imap4-status' and `elmo-imap4-reached-tag'.

2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
	`no-error'.
	Added docstring.
	Return non-nil if selecting folder succeeded.
	(elmo-imap4-folder-exists-p): Call with argument 'no-error.

2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
	`file-name-completion' returns t.
	(Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
	(elmo-maildir-set-mark): Put `info' part to the files in the cur
	directory if it does not exist.
	(elmo-maildir-update-current): Use `while' instead of `mapcar'
	for iteration.

2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
	enclosure (It's harmful in unplugged status).

	* elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.

	* mmelmo-1.el: Removed.

	* mmelmo-2.el: Ditto.

	* mmelmo-imap4-1.el: Ditto.

	* mmelmo-imap4-2.el: Ditto.

	* mmelmo-imap4.el: Merged mmelmo-imap4-2.el

	* mmelmo.el: Merged mmelmo-2.el.

	* elmo-version.el (elmo-version): Up to 2.3.92.

2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
	elmo-update-number): Remove last period in "...done." message.
	* elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
	Ditto.
	* elmo-cache.el (elmo-cache-expire-by-size,
	elmo-cache-get-sorted-cache-file-list,
	elmo-cache-msgdb-create-as-numlist): Ditto.
	* elmo-dop.el (elmo-dop-save-pending-messages,
	(elmo-dop-flush-pending-append-operations): Ditto.
	* elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
	* elmo-internal.el (elmo-internal-msgdb-create): Ditto.
	* elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
	(elmo-localdir-pack-number): Ditto.
	* elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
	* elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
	* mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
	mime-write-entity-content): Ditto.
	* pldap.el (ldap-search-basic): Ditto.

2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.3.91.

	* elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
	Only when filter is 'last'.

	* elmo-util.el (elmo-condition-atom-regexp): New constant.
	(elmo-condition-parse-search-value): Use it.
	(elmo-read-search-condition-internal): Quote value only when
	it is not an atom.

2000-10-18  Kenichi OKADA  <okada@opaopa.org>

	* elmo2.el (elmo-generic-folder-diff): Fix.

2000-10-17  Kenichi OKADA  <okada@opaopa.org>

	* elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
	* elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
	* elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
	* elmo-archive.el (elmo-archive-list-folder-subr): Fix.
	* elmo-internal.el (elmo-internal-list-folder-subr): Fix.
	* elmo-imap4.el (elmo-imap4-max-of-folder): Fix.

2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>

	* elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
	extra-fields.

2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-version.el (elmo-version): Up to 2.3.90.

	* elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
	(elmo-imap4-list-folder-important): Ditto.

2000-10-16  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-network-initialize-session): Fix.

2000-10-16  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-read-msg): Don't error.

2000-10-15  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-network-initialize-session):
	Add starttls negotiation.

2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-nntp.el (elmo-network-initialize-session): Read greeting
	response.
	(elmo-network-setup-session): Define.
	Call `elmo-nntp-send-mode-reader' when session opened.

2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-multi.el (elmo-multi-list-folder-unread): Fixed.

2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
	an invalid SPACE character ahead of `SEARCH' command.  Move
	a valid SPACE character following `SEARCH' from conditional
	`format' arguments to control-strings.

2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
	was succeeded.

	* elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.

2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
	`w32-get-true-file-link-count' as t.

	* elmo-imap4.el (elmo-imap4-read): Abolished.
	(Renamed to `elmo-read' and moved to elmo-util.el)
	All other related portions are changed.

	* elmo-util.el (elmo-read): New function.
	(elmo-condition-parse-search-value): Use it.

2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.

	* elmo-nntp.el (elmo-nntp-session): Define.
	(elmo-nntp-setting): Abolished.
	All other related portions are changed.
	(elmo-nntp-get-server-command): Changed argument.
	(elmo-nntp-set-server-command): Ditto.
	(elmo-nntp-xover-p): Ditto.
	(elmo-nntp-set-xover): Ditto.
	(elmo-nntp-listgroup-p): Ditto.
	(elmo-nntp-set-listgroup): Ditto.
	(elmo-nntp-list-active-p): Ditto.
	(elmo-nntp-set-list-active): Ditto.
	(elmo-nntp-xhdr-p): Ditto.
	(elmo-nntp-set-xhdr): Ditto.
	(elmo-nntp-flush-connection): Abolished.
	(elmo-nntp-get-connection): Abolished.
	(elmo-nntp-get-session): New function.
	(elmo-network-initialize-session): Defined.
	(elmo-network-authenticate-session): Ditto.
	(elmo-nntp-send-mode-reader): Changed argument.
	(elmo-nntp-send-command): Changed argument.
	All other related portions are changed.
	(elmo-nntp-read-response): Ditto.
	(elmo-nntp-read-raw-response): Ditto.
	(elmo-nntp-read-contents): Ditto.
	(elmo-nntp-read-body): Ditto.
	(elmo-nntp-goto-folder): Abolished.
	(elmo-nntp-select-group): New function.
	All other related portions are changed.
	(This function substitutes `elmo-nntp-goto-folder')
	(elmo-nntp-msgdb-create-by-header): Rewrite.
	(elmo-nntp-get-overview): Eliminated.
	(elmo-nntp-get-message): Ditto.
	(elmo-nntp-open-connection) Abolished.
	(elmo-nntp-read-msg): Rewrite.
	(elmo-nntp-post): Ditto.
	(elmo-nntp-send-data): Abolished.
	(elmo-nntp-send-buffer): New function.
	(elmo-nntp-send-data-line): Define as inline function.
	(elmo-nntp-get-folders-info-prepare): Use session as key.
	(elmo-nntp-groups-read-response): Changed argument.
	(elmo-nntp-retrieve-headers): Ditto.
	(elmo-nntp-msgdb-create-message): Ditto.

	* elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
	when searching by 'since' or 'before'.

2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-version.el (toplevel): Use product-version-as-string for set
	verstion-string, if defined.

2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-util.el: Doc fixes.

2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-archive.el (toplevel): Use product-provide.
	* elmo-cache.el (toplevel): Ditto.
	* elmo-database.el (toplevel): Ditto.
	* elmo-date.el (toplevel): Ditto.
	* elmo-dop.el (toplevel): Ditto.
	* elmo-filter.el (toplevel): Ditto.
	* elmo-imap4.el (toplevel): Ditto.
	* elmo-internal.el (toplevel): Ditto.
	* elmo-localdir.el (toplevel): Ditto.
	* elmo-localnews.el (toplevel): Ditto.
	* elmo-maildir.el (toplevel): Ditto.
	* elmo-msgdb.el (toplevel): Ditto.
	* elmo-multi.el (toplevel): Ditto.
	* elmo-net.el (toplevel): Ditto.
	* elmo-nntp.el (toplevel): Ditto.
	* elmo-pipe.el (toplevel): Ditto.
	* elmo-pop3.el (toplevel): Ditto.
	* elmo-util.el (toplevel): Ditto.
	* elmo-vars.el (toplevel): Ditto.
	* elmo2.el (toplevel): Ditto.
	* mmelmo-1.el (toplevel): Ditto.
	* mmelmo-2.el (toplevel): Ditto.
	* mmelmo-imap4-1.el (toplevel): Ditto.
	* mmelmo-imap4-2.el (toplevel): Ditto.
	* mmelmo-imap4.el (toplevel): Ditto.
	* mmelmo.el (toplevel): Ditto.

2000-10-10  Kenichi OKADA  <okada@opaopa.org>

	* elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
	(elmo-dop-call-func-on-msgs): Don't delete appends from msgs.

2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
	before splitting.
	(elmo-multi-split-number-alist): Ditto.

2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>

	* elmo-version.el: New file.  Use product.el.
	* elmo2.el: Add (require 'elmo-version).
	* elmo-vars.el (elmo-appname, elmo-version): Move to
	elmo-version.el

2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-msgdb-load): Ditto.
	Abolished 2nd argument.	If 1st argument is not string, treat as spec.
	(elmo-generic-list-folder-unread): Rewrite.
	(elmo-generic-list-folder-important): Changed argument.
	(elmo-list-folder-unread): Ditto.
	(elmo-list-folder-important): Ditto.
	(elmo-folder-diff): Rewrite.
	(elmo-generic-folder-diff): New function.
	(elmo-multi-get-number-alist-list): Abolished
	(Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
	(elmo-multi-folder-diff): Moved to elmo-multi.el
	(toplevel): Removed autoload setting of `elmo-multi-folder-diff'.

	* elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-pop3-msgdb-create-as-numlist): Ditto.
	(elmo-pop3-read-msg): Ditto.
	(elmo-pop3-delete-msgs): Ditto.
	(elmo-pop3-folder-diff): New alias.

	* elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-pipe-list-folder-unread): Changed arguments.
	(elmo-pipe-list-folder-important): Ditto.
	(elmo-pipe-folder-diff): New alias.

	* elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-nntp-max-of-folder): Ditto.
	(elmo-nntp-msgdb-create): Ditto.
	(elmo-nntp-delete-msgs): Ditto.
	(elmo-nntp-folder-diff): New alias.

	* elmo-multi.el (elmo-multi-folder-diff): New function.
	(elmo-multi-split-mark-alist): Ditto.
	(elmo-multi-split-number-alist): Ditto.
	(elmo-multi-mark-alist-list): Abolished (Renamed to
	elmo-multi-split-mark-alist).
	(elmo-multi-list-folder-unread): Rewrite.
	(elmo-multi-list-folder-important): Ditto.
	(elmo-multi-list-folder): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
	instead of `elmo-multi-get-number-alist-list'.

	* elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
	If 1st argument is not string, treat as spec.
	(elmo-list-folder-by-location): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-msgdb-flist-load): Ditto.
	(elmo-msgdb-flist-save): Ditto.
	(elmo-msgdb-delete-path): Ditto.
	(elmo-msgdb-rename-path): Ditto.

	* elmo-maildir.el (elmo-maildir-set-mark-msgs):
	Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
	(elmo-maildir-delete-mark-msgs): Ditto.
	(elmo-maildir-msgdb-create): Ditto.
	(elmo-maildir-read-msg): Ditto.
	(elmo-maildir-delete-msgs): Ditto.
	(elmo-maildir-list-folder-subr): Ditto.
	(elmo-maildir-search): Ditto.
	(elmo-maildir-get-msg-filename): Ditto.
	(elmo-maildir-pack-number): Ditto.
	(elmo-maildir-folder-diff): New alias.

	* elmo-localnews.el (elmo-localnews-folder-diff): New alias.

	* elmo-localdir.el (elmo-localdir-list-folder-subr):
	Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
	(elmo-localdir-folder-diff): New alias.

	* elmo-internal.el (elmo-internal-list-folder-subr):
	Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
	(elmo-internal-list-folder-by-location): Ditto.
	(elmo-internal-msgdb-create): Ditto.
	(elmo-internal-delete-msgs): Ditto.
	(elmo-internal-read-msg): Ditto.
	(elmo-internal-folder-diff): New alias.

	* elmo-imap4.el (elmo-imap4-folder-diff): New function.
	(elmo-imap4-list-folder): Set `spec' as 1st argument for
	`elmo-msgdb-expand-path'.
	(elmo-imap4-list-folder-unread): Changed arguments.
	(elmo-imap4-list-folder-important): Ditto.

	* elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
	(elmo-filter-list-folder-important): Ditto.
	(elmo-filter-folder-diff): New function.

	* elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.

	* elmo-cache.el (elmo-cache-list-folder):
	Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
	(elmo-cache-copy-msgs): Ditto.
	(elmo-cache-folder-diff): New alias.

	* elmo-archive.el (elmo-archive-list-folder-subr):
	Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
	(elmo-archive-get-archive-name): Ditto.
	(elmo-archive-create-file): Ditto.
	(elmo-archive-append-msg): Ditto.
	(elmo-archive-copy-msgs): Ditto.
	(elmo-archive-copy-msgs-froms): Ditto.
	(elmo-archive-get-msg-filename): Ditto.
	(elmo-archive-folder-diff): New alias.

2000-10-06   Daiki Ueno  <ueno@unixuser.org>

	* elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
	(elmo-pop3-stream-type-alist): New variable.
	(elmo-nntp-stream-type-alist): New variable.

	* elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
	(elmo-kill-buffer): Ditto.
	(elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
	(elmo-network-get-spec): Add 5th argument `stream-type-alist'.
	(elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
	(elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
	(elmo-imap4-get-spec): Take into account
	`elmo-imap4-stream-type-alist'.

2000-10-06  Kenichi OKADA  <okada@opaopa.org>

	* elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
	(elmo-nntp-list-folders-get-cache): Ditto.

2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
	character before 'uid'.

2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.

	* elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.

	* elmo-util.el (elmo-number-set-member): New function.
	(elmo-number-set-append-list): Ditto.
	(elmo-number-set-append): Ditto.

	* elmo-msgdb.el (elmo-msgdb-killed-message-p):
	Use `elmo-number-set-member'.
	(elmo-living-messages): Ditto.
	(elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
	(elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.

	* elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
	(elmo-imap4-add-to-cont-list): Abolished.
	(elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
	instead of elmo-imap4-add-to-cont-list.

	* elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
	(toplevel): Removed autoload setting for `elmo-imap4-get-connection'.

	* elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.

2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-util.el (elmo-condition-parse-search-value):
	Fixed date parsing.

2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-condition-find-key-internal): New function.
	(elmo-condition-find-key): Ditto.

	* elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
	(elmo-msgdb-search-internal): Ditto.
	(elmo-msgdb-search): Ditto.

2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-cross-device-link-error-p): Abolished.
	(elmo-copy-file): Uncheck error condition for `add-name-to-file'.

	* elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
	(elmo-nntp-search-primitive): Fixed problem when condition is
	'unmatch'.

	* elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.

	* elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
	(elmo-nntp-xhdr-p): New macro.
	(elmo-nntp-set-xhdr): Ditto.
	(elmo-nntp-parse-xhdr-response): New function.
	(elmo-nntp-retrieve-field): Ditto.
	(elmo-nntp-search-primitive): Ditto.
	(elmo-nntp-search): Implemented.

	* elmo-date.el (elmo-date-make-sortable-string): New macro.

	* elmo-archive.el (elmo-archive-search): Set all number list to
	`elmo-archive-field-condition-match'

	* elmo-localdir.el (elmo-localdir-search): Likewise.

	* elmo-maildir.el (elmo-maildir-search): Likewise.

2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-msgdb.el (elmo-living-messages): New function.
	* elmo-archive.el (elmo-archive-list-folder-subr): Use it.
	* elmo-cache.el (elmo-cache-list-folder): Ditto.
	* elmo-dop.el (elmo-dop-list-folder): Ditto.
	* elmo-imap4.el (elmo-imap4-list-folder): Ditto.
	* elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
	* elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
	* elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
	* elmo-multi.el (elmo-multi-list-folder): Ditto.
	* elmo-nntp.el (elmo-nntp-list-folder): Ditto.
	* elmo-pipe.el (elmo-pipe-list-folder): Ditto.
	* elmo-pop3.el (elmo-pop3-list-folder): Ditto.

2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-maildir.el (elmo-maildir-pack-number): Implemented.

	* elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.

	* elmo2.el (elmo-pack-number): Added 'maildir as allowd type.

	* elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
	arguments for `SEARCH' command.
	(elmo-imap4-parse-string): Set `POS' argument for char-after.
	All other related portions are changed.

	* elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.

	* elmo2.el (elmo-generic-list-folder-unread): Rewrite.
	(elmo-list-folder-unread): Rewrite.
	(elmo-list-folder-important): Ditto.

	* elmo-util.el (elmo-filter-get-spec): Rewrite.
	(elmo-condition-parse-error): New inline function.
	(elmo-read-search-condition): New function.
	(elmo-read-search-condition-internal): Ditto.
	(elmo-parse-search-condition): Rewrite.
	(elmo-condition-parse): New function.
	(elmo-condition-parse-or-expr): Ditto.
	(elmo-condition-parse-and-expr): Ditto.
	(elmo-condition-parse-primitive): Ditto.
	(elmo-condition-parse-search-value): Ditto.
	(elmo-buffer-field-primitive-condition-match): Ditto.
	(elmo-buffer-field-condition-match): Rewrite.
	(elmo-file-field-condition-match): Ditto.

	* elmo-msgdb.el (elmo-msgdb-expand-path): Use
	`elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.

	* elmo-internal.el (elmo-internal-search): Set `number' and
	`number-list' argument of `elmo-file-field-condition-match'.

	* elmo-maildir.el (elmo-maildir-search): Ditto.

	* elmo-imap4.el (elmo-imap4-list-folder-unread): Use
	`msgdb' as argument instead of `mark-alist'.
	(elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
	`overview'.

	* elmo-multi.el: Likewise.

	* elmo-pipe.el: Likewise.

	* elmo-imap4.el	(elmo-imap4-search-internal-primitive): New function.
	(elmo-imap4-search-internal): Rewrite.
	(elmo-imap4-search): Ditto.

	* elmo-filter.el (elmo-filter-list-folder): Rewrite.
	(elmo-filter-list-folder-unread): Ditto.
	(elmo-filter-list-folder-important): Ditto.
	(elmo-filter-search): Rewrite.

	* elmo-cache.el (elmo-cache-search-all): Set `number' and
	`number-list' argument of `elmo-file-field-condition-match'.
	(elmo-cache-search): Ditto.

	* elmo-localdir.el: Likewise.

	* elmo-archive.el (elmo-archive-field-condition-match): Added argument
	number-list and pass it to `elmo-buffer-field-condition-match'.
	(elmo-archive-field-condition-match): Pass `number-list' to
	`elmo-archive-field-condition-match'

2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-list-folder): Set current group after
	`listgroup'.

	* elmo2.el (elmo-folder-diff-async-callback): New variable.
	(elmo-folder-diff-async-callback-data): Ditto.
	(elmo-folder-diff-async): New function.

	* elmo-net.el (elmo-network-session-name-prefix): New variable.
	(elmo-network-session-cache-key): Use it as a prefix of the session
	name.
	(elmo-network-open-session): Ditto.

	* elmo-imap4.el (elmo-imap4-status-callback): New local variable.
	(elmo-imap4-status-callback-data): Ditto.
	(elmo-imap4-server-diff-async-callback): New variable.
	(elmo-imap4-server-diff-async-callback-data): Ditto.
	(elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
	`elmo-imap4-status-callback-data'.
	(elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
	`elmo-imap4-status-callback-data' as nil.
	(elmo-imap4-server-diff): Ditto.
	(elmo-imap4-server-diff-async-callback-1): New function.
	(elmo-imap4-server-diff-async): Ditto.
	(elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.

2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-util.el (elmo-list-delete): Doc fix.
	(elmo-delete-lists): Abolish.
	* elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
	instead of `elmo-delete-lists'.

2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
	before `sort'.

2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-literal-1): Renamed from
	`elmo-imap4-literal-subr'.
	(elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
	(elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.

2000-09-15  Kenichi OKADA  <okada@opaopa.org>

	* elmo-archive.el (elmo-archive-list-folder-subr): Fix.
	(elmo-archive-list-folder): Fix.
	(elmo-archive-max-of-folder): Fix.

2000-09-15  Kenichi OKADA  <okada@opaopa.org>

	* elmo-localdir.el (elmo-localdir-copy-msgs): Use
	 `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
	(elmo-localdir-append-msg): Ditto.
	(elmo-localdir-list-folder): Fix for `nonsort'.
	(elmo-localdir-list-folder-subr): Fix for `killed'.
	* elmo-maildir.el (elmo-maildir-list-folder): Ditto.
	(elmo-maildir-list-folder-subr): Ditto.
	* elmo-archive.el (elmo-archive-list-folder): Ditto.
	(elmo-archive-list-folder-subr): Ditto.
	* elmo-internal.el (elmo-internal-list-folder): Ditto.
	(elmo-internal-list-folder-subr): Ditto.

2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.

2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>

	* elmo-util.el (elmo-delete-plugged): Fix parenthesis.

2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
	Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.

	* elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
	before greeting.
	(elmo-imap4-read-part): Use "body.peek" to fetch part.
	Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.

2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmelmo-imap4-2.el (mime-entity-children): Defined.

	* elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
	Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
	before STORE command.

2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.

	* elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
	(elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
	of `response'.
	(elmo-imap4-list-folders): Removed unused local variable.
	(elmo-network-initialize-session): Ditto.
	(elmo-imap4-delete-msg-by-id): Ditto.
	(elmo-imap4-parse-fetch): Ditto.
	(elmo-imap4-copy-msgs): Ditto.
	Use `dst-spec' instead of `dst-folder'.
	(elmo-network-authenticate-session): Check authenticate type `plain'.

2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
	garbage checking.
	(elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
	`elmo-imap4-response-value'.
	(elmo-imap4-parse-response): Return value of `EXPUNGE'.

2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-send-command):
	Cause elmo-imap4-bye-error when current response is BYE.
	(elmo-imap4-arrival-filter): Changed greeting response value.

	* elmo2.el (elmo-imap4-bye-error): Define.

	* elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
	(elmo-imap4-server-diff): Ditto.
	(elmo-imap4-response-bye-p): New macro.
	(elmo-imap4-response-error-text): Get text from BYE response.
	(elmo-imap4-read-response): Return if BYE response.
	(elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
	(elmo-imap4-folder-exists-p): Ditto.
	(elmo-imap4-commit): Do nothing when different mailbox is selected.
	(elmo-imap4-parse-bye): New function.
	(elmo-imap4-parse-response): Remove needless let.
	Call `elmo-imap4-parse-bye'.

2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
	the mailbox does not exist.
	(elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.

2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.

2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-vars.el (elmo-search-mime-charset): Abolished.

	* elmo-pop3.el (elmo-pop3-local-variables): New variable.
	(elmo-network-initialize-session-buffer): Defined.

	* mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
	Abolished.
	(mmelmo-imap4-get-mime-entity): Rewrite.

	* elmo2.el (elmo-error): Capitalize error message.

	* elmo-net.el (elmo-network-initialize-session-buffer): New method.
	(elmo-network-session-buffer): New macro.
	(elmo-network-open-session): Use it.

	* elmo-imap4.el: Rewrite.

2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>

	* elmo-nntp.el (Toplevel): Require 'elmo-net.

2000-08-27   Daiki Ueno  <ueno@unixuser.org>

	* elmo-imap4.el (elmo-imap4-make-address): Abolish.
	(elmo-imap4-msgdb-create): Don't request ENVELOPE.
	(elmo-imap4-create-msgdb-from-overview-string): Use
	`elmo-msgdb-create-overview-from-buffer'.

2000-08-26   Daiki Ueno  <ueno@unixuser.org>

	* elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
	(elmo-imap4-default-hierarchy-delimiter): New variable.
	(elmo-imap4-list-folders): Use it.

2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-net.el (elmo-network-open-session): Add user and
	stream-type for process-buffer name.

	* elmo-pop3.el (elmo-network-initialize-session): Call
	buffer-disable-undo.

	* elmo-imap4.el (elmo-network-initialize-session):
	Set current-buffer as an argument for `buffer-disable-undo'.

	* elmo-pop3.el (elmo-network-close-session): Don't use
	`process-live-p'.

	* elmo-vars.el (elmo-default-pop3-authenticate-type):
	Set default as 'user.

	* mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.

	* elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
	and `elmo-imap4-flush-connection'.

	* elmo-util.el (toplevel): Removed workaround for timezone y2k.
	(elmo-pop3-get-spec): Assume auth as symbol.
	(elmo-open-network-stream): Moved to `elmo-net'.

	* elmo-pop3.el (toplevel): Require 'elmo-net.
	Define `sasl-cram-md5' to silence byte compilier.
	(elmo-pop3-connection-cache) Abolished.
	(elmo-pop3-authenticator-alist) New variable.
	(elmo-pop3-session): Define.
	(elmo-pop3-connection-get-process): Abolished.
	(elmo-pop3-connection-get-buffer): Ditto.
	(elmo-pop3-close-connection): Ditto.
	(elmo-pop3-flush-connection): Ditto.
	(elmo-pop3-get-connection): Ditto.
	(elmo-pop3-get-session): New function.
	(Replacement for `elmo-pop3-get-connection').
	All other related modules are changed.
	(elmo-network-close-session): Define.
	(elmo-pop3-send-command): Abolished argument `buffer'.
	All other related modules are changed.
	(elmo-pop3-read-response): Likewise.
	(elmo-pop3-open-connection): Abolished.
	(elmo-pop3-auth-user): New function.
	(elmo-pop3-auth-apop): Ditto.
	(elmo-pop3-auth-cram-md5): Ditto.
	(elmo-pop3-auth-scram-md5): Ditto.
	(elmo-pop3-auth-digest-md5): Ditto.
	(elmo-network-initialize-session): Define.
	(elmo-network-authenticate-session): Ditto.
	(elmo-network-setup-session): Ditto.

	* elmo-imap4.el (toplevel): Require 'elmo-net.
	(elmo-imap4-session): Define.
	(elmo-imap4-connection-cache): Abolished.
	(elmo-imap4-password-key): Ditto.
	(elmo-imap4-flush-connection): Ditto.
	(elmo-imap4-get-connection): Ditto.
	All other related modules are changed.
	(elmo-imap4-get-session): New function
	(Replacement for `elmo-imap4-get-connection').
	(elmo-imap4-read-response): Abolished argument `buffer'.
	All other related modules are changed.
	(elmo-imap4-send-command): Likewise.
	(elmo-imap4-select-folder): Abolished.
	All other related modules are changed.
	(elmo-imap4-select-mailbox): New function.
	(Replacement for `elmo-imap4-select-folder').
	(elmo-imap4-auth-login): Simplify.
	(Assume current buffer as process buffer)
	(elmo-imap4-auth-cram-md5): Ditto.
	(elmo-imap4-auth-digest-md5): Ditto.
	(elmo-imap4-login): Ditto.
	(elmo-imap4-open-connection): Abolished.
	(elmo-imap4-open-connection-1): Abolished.
	(elmo-network-initialize-sessoin): Define.
	(elmo-network-authenticate-session): Ditto.
	(elmo-network-setup-session): Ditto.

	* elmo-net.el: New module.

2000-08-22   Daiki Ueno  <ueno@unixuser.org>

	* elmo-util.el (elmo-define-error): New function.

	* elmo2.el (elmo-error): Define.
	(elmo-open-error): Define.
	(elmo-authenticate-error): Define.

	* elmo-imap4.el (elmo-imap4-error): Abolish.
	(elmo-imap4-error-type): Abolish.
	(elmo-imap4-error-process): Abolish.
	(elmo-imap4-error-message): Abolish
	(elmo-imap4-list-folders): Don't quote lambda.
	(elmo-imap4-create-msgdb-from-overview-string): Ditto.
	(elmo-imap4-parse-namespace): Ditto.
	(elmo-imap4-open-connection): Rewrite.
	(elmo-imap4-open-connection-1): Simplified (authenticate only).
	(elmo-imap4-get-connection): Abolish local variable `result'.

2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>

	* elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
	wrong-type-argument error when auth is nil.

2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-vars.el (elmo-default-imap4-stream-type): New variable.
	(elmo-default-nntp-stream-type): Ditto.
	(elmo-default-pop3-stream-type): Ditto.
	(elmo-network-stream-type-alist): Ditto.
	(elmo-default-imap4-ssl): Abolished.
	(elmo-default-nntp-ssl): Ditto.
	(elmo-default-pop3-ssl): Ditto.

	* elmo-util.el: (toplevel): Removed needless requires.
	(elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
	(elmo-open-network-stream): Open network stream according to
	the value of `elmo-network-stream-type-alist'.
	(elmo-get-network-stream-type): New function.
	(elmo-network-stream-type-spec-string): New macro.
	(elmo-network-stream-type-symbol): Ditto.
	(elmo-network-stream-type-function): Ditto.

	* elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
	network-stream-type. All other related portions are changed.
	(elmo-pop3-open-connection): Ditto.

	* elmo-nntp.el (elmo-nntp-setting): Follow up changes for
	network-stream-type. All other related portions are changed.

	* elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
	network-stream-type.All other related portions are changed.
	(elmo-imap4-error): New macro.
	(elmo-imap4-error-type): Ditto.
	(elmo-imap4-error-process): Ditto.
	(elmo-imap4-error-message): Ditto.
	(elmo-imap4-auth-login): Use `elmo-imap4-error'.
	(elmo-imap4-auth-cram-md5): Ditto.
	(elmo-imap4-auth-digest-md5): Ditto.
	(elmo-imap4-login): Ditto.
	(elmo-imap4-open-connection): Remove password entry if authentication
	was in vain.
	(elmo-imap4-user-at-host): Abolished.
	(elmo-imap4-password-key): New buffer local variable.
	(elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
	using protocol, port, auth and stream-type.

	* elmo-dop.el (elmo-dop-list-folder): Use killed list.

2000-08-13   Daiki Ueno  <ueno@unixuser.org>

	* elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.

	* elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.

	* elmo-imap4.el (elmo-imap4-user-at-host): New variable.
	(elmo-imap4-authenticator-alist): New variable.
	(elmo-imap4-open-connection-1): Rename from
	elmo-imap4-open-connection.
	(elmo-imap4-open-connection): Abolish 5th argument `passphrase';
	only wraps elmo-imap4-open-connection-1.
	(elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
	user-at-host.
	(elmo-imap4-auth-login): New function.
	(elmo-imap4-auth-cram-md5): New function.
	(elmo-imap4-auth-digest-md5): New function.
	(elmo-imap4-login): New function.

2000-08-12  Kenichi OKADA  <okada@opaopa.org>

	* elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
	function `error'.

2000-08-12  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.

2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-move-msgs): Set value of `unseen'.

2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
	for server responses, quote `*' regardless of where it appears.

2000-08-03  Kenichi OKADA  <okada@opaopa.org>

	* elmo-maildir.el (elmo-maildir-commit): New alias.

2000-08-03  Kenichi OKADA  <okada@opaopa.org>

	* elmo-util.el (elmo-display-progress):
		Use `progress-feedback-with-label'.

2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
	(elmo-imap4-non-atom-char-regex): Ditto.
	(elmo-imap4-non-text-char-regex): Ditto.
	(elmo-imap4-literal-threshold): Ditto.
	(elmo-imap4-atom-p): New function.
	(elmo-imap4-quotable-p): Ditto.
	(elmo-imap4-nil): Ditto.
	(elmo-imap4-atom): Ditto.
	(elmo-imap4-quoted): Ditto.
	(elmo-imap4-literal-subr): Ditto.
	(elmo-imap4-literal): Ditto.
	(elmo-imap4-buffer-literal): Ditto.
	(elmo-imap4-string-subr): Ditto.
	(elmo-imap4-string): Ditto.
	(elmo-imap4-buffer-string): Ditto.
	(elmo-imap4-astring-subr): Ditto.
	(elmo-imap4-astring): Ditto.
	(elmo-imap4-buffer-astring): Ditto.
	(elmo-imap4-nstring): Ditto.
	(elmo-imap4-buffer-nstring): Ditto.
	(elmo-imap4-mailbox): New alias.
	(elmo-imap4-field-body): Ditto.
	(elmo-imap4-userid): Ditto.
	(elmo-imap4-password): Ditto.
	(elmo-imap4-format-quoted): New function.
	(elmo-imap4-send-command): Rewritten.  Accept a list of command
	arguments and handle "atom", "quoted" and "literal" string here.
	(elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
	`elmo-imap4-send-command'.
	(elmo-imap4-folder-exists-p): Likewise.
	(elmo-imap4-create-folder): Likewise.
	(elmo-imap4-delete-folder): Likewise.
	(elmo-imap4-rename-folder): Likewise.
	(elmo-imap4-max-of-folder): Likewise.
	(elmo-imap4-check-validity): Likewise.
	(elmo-imap4-sync-validity): Likewise.
	(elmo-imap4-server-diff): Likewise.
	(elmo-imap4-select-folder): Likewise.
	(elmo-imap4-copy-msgs): Likewise.
	(elmo-imap4-search-internal): Use `elmo-imap4-astring'.
	(elmo-imap4-mark-set-on-msgs): Likewise.
	(elmo-imap4-read-part): Likewise.
	(elmo-imap4-read-msg): Likewise.
	(elmo-imap4-open-connection): Use `elmo-imap4-userid' and
	`elmo-imap4-password' for `elmo-imap4-send-command'.
	(elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
	(elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
	`elmo-imap4-buffer-literal'.
	(elmo-imap4-append-msg): Likewise.

	* elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
	`delete' for removing dead connection from the connection cache.
	Move deletion of the process buffer after that.
	(elmo-imap4-list): Change `defsubst' to `defun'.
	(elmo-imap4-commit): Make error message verbose.
	(elmo-imap4-search): Ditto.
	(elmo-imap4-list): Ditto.
	(elmo-imap4-select-folder): Ditto.
	(elmo-imap4-copy-msgs): Ditto.
	(elmo-imap4-delete-msg-by-id): Ditto.
	(elmo-imap4-append-msg-by-id): Ditto.
	(elmo-imap4-append-msg): Ditto.

2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>

	* elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
	when dired is used on XEmacs.

2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
	instead of `append'.
	(elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
	`elmo-plugged-p' directly.
	* elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
	of `elmo-plugged-p' directly.

	* elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
	Eliminate unused variable.  Use `memq' for checking a process status.
	Use `cons' instead of `append' for updating the connection cache.
	* elmo-nntp.el (elmo-nntp-get-connection): Likewise.
	* elmo-imap4.el (elmo-imap4-get-connection): Likewise.

2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-imap4.el (elmo-imap4-read-bytes): Advance
	`elmo-imap4-read-point' exactly.

	* mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
	the local variable `folder' to `mailbox'.
	Rename the argument `fld' to `folder'.

2000-07-20  Kenichi OKADA  <okada@opaopa.org>

	* elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
	* elmo-imap4.el (elmo-imap4-commit): Ditto.

2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-use-uidl): New variable.
	(elmo-pop3-number-uidl-hash): New buffer-local variable.
	(elmo-pop3-uidl-number-hash): Ditto.
	(elmo-pop3-size-hash): Ditto.
	(elmo-pop3-uidl-done): Ditto.
	(elmo-pop3-list-done): Ditto.
	(elmo-pop3-connection-get-process): New defmacro.
	(elmo-pop3-connection-get-buffer): Ditto.
	(elmo-pop3-close-connection): Delete buffer and process.
	(elmo-pop3-flush-connection): Don't delete buffer and process.
	(elmo-pop3-get-connection): Added optional argument `if-exists'.
	Setup UIDL and size hash.
	(elmo-pop3-send-command-no-erase): Deleted
	(elmo-pop3-send-command): Added optional argument `no-erase'.
	(elmo-pop3-parse-uidl-response): New function.
	(elmo-pop3-parse-list-response): Set size hash.
	(elmo-pop3-list-location): New function.
	(elmo-pop3-list-by-uidl-subr): Ditto.
	(elmo-pop3-list-by-list): Ditto.
	(elmo-pop3-list-folder): Call `elmo-pop3-commit'.
	Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
	(elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
	Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
	(elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
	Use uidl.
	(elmo-pop3-uidl-to-number): New function.
	(elmo-pop3-number-to-uidl): Ditto.
	(elmo-pop3-number-to-size): Ditto.
	(elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
	Set number by use of uidl.
	(elmo-pop3-msgdb-create-message): Likewise.
	Set size, loc-alist in msgdb.
	(elmo-pop3-read-msg): Set number by use of uidl.
	Added optional argument `msgdb'.
	(elmo-pop3-delete-msg): Ditto.
	(elmo-pop3-delete-msgs): Added optional argument `msgdb'.
	(elmo-pop3-commit): Close connection.

	* elmo-pipe.el (elmo-pipe-max-of-folder):
	Bind `elmo-pop3-use-uidl' as nil.
	(elmo-pipe-drain): Ditto.
	Call `elmo-commit'.

	* elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
	(elmo-msgdb-overview-entity-set-size): New defsubst.

2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-vars.el (elmo-use-killed-list): New variable
	(Renamed from `elmo-nntp-use-killed-list').
	(elmo-nntp-use-killed-list): Eliminated.

	* elmo-msgdb.el (elmo-msgdb-expand-path):
	Changed expanding msgdb path for elmo-multi.

	* elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
	elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
	elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
	elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
	elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
	mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
	(toplevel): Deleted time-stamp line.

	* elmo2.el (elmo-clear-killed ): Defined as function
	(Abolished defining as a backend function).
	All other related modules are changed.

2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>

	* elmo-cache.el (elmo-cache-clear-killed): Fixed.

2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.

2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>

	* elmo-pop3.el (elmo-pop3-clear-killed): New alias.

2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
	asynchronous folder check.

	* elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.

	* elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
	`elmo-nntp-use-killed-list'.
	(elmo-nntp-list-folder): Use killed list.
	(elmo-nntp-max-of-folder): Ditto.
	(elmo-nntp-msgdb-create): Set killed list.

	* elmo-vars.el (elmo-nntp-use-killed-list): New user option.

	* elmo2.el (elmo-clear-killed): New backend function.
	All other related modules are changed.

2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-util.el (elmo-imap4-spec-folder): Use
	`elmo-imap4-spec-mailbox'; Mark as obsolete.
	All callers changed.

2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>

	* mmelmo-2.el (initialize-instance):
	Use `mime-buffer-entity-buffer-internal' instead of
	`mime-entity-buffer'.

	* mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
	(mime-entity-body): Implemented.
	(mime-goto-header-start-point): Deleted.
	(mime-goto-body-end-point): Ditto.
	(mime-entity-point-min): Ditto.
	(mime-entity-point-max): Ditto.
	(mime-entity-children): Ditto.
	(mime-insert-header): Use `mime-buffer-entity-buffer-internal'
	instead of `mime-entity-buffer'.
	(mime-entity-header-buffer): Ditto.
	(mime-entity-body-buffer): Ditto.
	(mime-write-entity-content): Ditto.

	* pldap.el (ldap-static-if): New macro.
	(toplevel): Use it instead of `static-if'.

2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>

	* pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
	included in `attrs' argument.

2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-util.el (elmo-get-passwd): Use old backquote style.

	* pldap.el (ldap-ldif-safe-char-regexp): New constant.
	(ldap-ldif-safe-init-char-regexp): Ditto.
	(ldap-ldif-safe-string-regexp): Ditto.
	(ldap/ldif-safe-string-p): New macro.
	(ldap/ldif-insert-field): Ditto.
	(ldap-modify): Use it.
	(ldap-add): Ditto.
	(ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
	(ldap-decode-attribute): Decode only when `attr' is consp.
	(ldap-delete): Bind `ret'.
	(toplevel): Require 'cl at compile time.
	Removed (require 'poe) and (require 'std11).
	(pldap-version): Eliminated.
	(ldap-search-basic): Removed auth and dn binding.
	(ldap-ldif-field-name-regexp): New constant.
	(ldap-ldif-field-head-regexp): Ditto.
	(ldap-ldif-next-field-head-regexp): Ditto.
	(ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
	(ldap/field-end): New function.
	(ldap/field-body): Use it.
	(ldap/collect-field): Ditto.
	(ldap-search-basic): Use `ldap/field-body'.

2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>

	* pldap.el (ldap-default-attribute-encoder): New user option.
	(ldap/field-body): Decode base64 string.
	(ldap/collect-field): Ditto.
	(ldap-encode-attribute): New function.
	(ldap-add-entries): Use it.
	(ldap-modify-entries): Ditto.
	(ldap-search-entries): Enclosed decoding function with
	`with-temp-buffer' and set as unibyte.
	(ldap-search-basic): Set process buffer as unibyte.

	* elmo-util.el (elmo-folder-identical-system-p):
	Eliminated name space checking.

	* pldap.el: New module.
	toplevel: Changed condition to detect built-in ldap feature.
	(ldap-delete): Enclosed call-process with `with-temp-buffer'.
	(ldap-add): Added error handling.
	(ldap-modify): Ditto.
	(ldap-delete): Ditto.

2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
	Initialize local variables with `let'.  Inline a temporary
	variable for the progress percentage.  Sort `setq' to reduce
	function call in the while-loop.

	* mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
	into the conditional branch.

2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
	Move a conditional out of the while-loop.

2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
	elmo-msgdb-overview-get-entity-by-number.
	(elmo-msgdb-overview-get-entity-by-number): Don't use catch and
	throw.

2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-localdir.el (elmo-localdir-pack-number): Renamed
	the local variable for a packed number self descriptively.

2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
	* elmo-localdir.el (elmo-localdir-pack-number): Use
	`elmo-msgdb-overview-get-entity' instead of
	`elmo-msgdb-overview-get-entity-by-number'.
	* elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
	(elmo-msgdb-search-overview-entity): Removed.
	(elmo-msgdb-overview-get-entity): Change argument. Get overview entity
	by message-id or number.
	(elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
	instead of `elmo-msgdb-overview-get-entity-by-number'.

2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-vars.el (elmo-use-overview-hashtb): New variable. If
	non-nil, use hash table for overview.
	(elmo-hash-maximum-size): New variable.
	* elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
	(elmo-msgdb-make-overview-hashtb): New function.
	(elmo-msgdb-clear-overview-hashtb): New function.
	(elmo-clear-hash-val): New macro.
	All other related modules are changed.

2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-move-msgs): If there's other message with
	same message-id, don't use cache.

2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>

	* elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
	number is already packed.

2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>

	* elmo-vars.el: Doc fixes. Trim trailing whitespace.

2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-vars.el (elmo-display-progress-threshold): New variable.
	All other related modules are changed.

2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
	of refiling failure on Maildir.

2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
	decoded mime-charset with cache.
	(elmo-msgdb-overview-entity-get-from): Ditto.
	(elmo-msgdb-overview-entity-get-subject): Ditto.
	* elmo-vars.el (elmo-use-decoded-cache): New variable.

2000-05-10  Kenichi OKADA  <okada@opaopa.org>

	* elmo-utils.el (elmo-get-passwd): Set timeout of password.
	(elmo-remove-passwd): Fill password with 0 before erase.
	* elmo-vars.el (elmo-passwd-life-time): New variable.


2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-cache.el (elmo-buffer-cache-add):
	Set message cache buffer as unibyte.

2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>

	* elmo-archive.el (elmo-archive-list-folders): Fix base-folder
	become nil.

2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
	when display is finished.
	(elmo-nntp-msgdb-create): Ditto.
	(elmo-nntp-groups-read-response): Ditto.
	(elmo-nntp-retrieve-headers): Ditto.
	(elmo-nntp-msgdb-create-message): Ditto.
	* elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
	(elmo-pop3-msgdb-create-message): Ditto.

2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>

	* elmo-maildir.el (elmo-maildir-msgdb-create):
	Use `elmo-msgdb-sort-by-date'.

2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo2.el (elmo-read-msg-no-cache):
	Eliminated arguments after `outbuf'.
	Don't use cache even if it exists.
	(elmo-read-msg): Don't pass arguments after `outbuf' to
	`elmo-read-msg-no-cache'.

2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>

	* elmo-archive.el (elmo-archive-list-folders):
	Use `file-name-directory' if base folder does not exist.

2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>

	* elmo-archive.el (elmo-archive-list-folders): Don't use
	`file-name-directory'.

2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
	If `force' is non-nil, try flushing all operation queues.

2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>

	* elmo-pop3.el (elmo-pop3-open-connection): Enclose with
	as-binary-process.

2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>

	* elmo-util.el (elmo-display-progress): Fixed.

2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>

	* elmo-util.el (elmo-display-progress): New function.
	All other related modules are changed.
