2001-05-08 Hiroya Murata * elmo.el (elmo-folder-synchronize): Don't check important mark in mark folder. 2001-05-08 Hiroya Murata * 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 * 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 * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo. (elmo-folder-mark-as-important): Ditto. 2001-04-26 Yuuichi Teranishi * 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 * 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 * 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 * 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 * 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 ') 2001-04-16 Yuuichi Teranishi * 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 * elmo.el (elmo-folder-synchronize): Fixed problem when there's no new message. 2001-04-12 Yuuichi Teranishi * 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 * 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 * 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 * 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 * 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 * 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 * 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 ) 2001-04-02 Yuuichi Teranishi * 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 * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when hierarchy is t. 2001-03-12 Yuuichi Teranishi * 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 * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from `folder' to `msgdb'. 2001-03-01 Yuuichi Teranishi * 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 * 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 * 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 ) (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 * elmo.el (toplevel): Require 'elmo-version first; for little `recursive-load-depth' settings. Fix "ends here" comment. 2001-02-23 Yuuichi Teranishi * 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 * 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 * 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 * 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 * elmo-imap4.el (elmo-network-authenticate-session): Fix. * elmo-pop3.el (elmo-network-authenticate-session): Add comments. 2001-02-20 Yuuichi Teranishi * 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 * elmo-util.el (elmo-display-progress): Prefer `progress-feedback-with-label' to `lprogress-display'. 2000-02-20 Kenichi OKADA * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid' 2000-02-19 Kenichi OKADA * 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 * 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 * 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 * 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 * elmo-mime.el (elmo-mime-message-display): Added argument `unread'. (elmo-mime-message-display-as-is): Ditto. 2001-02-07 Yuuichi Teranishi * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings; Use `elmo-folder-close-internal' instead of `elmo-folder-close'. 2001-02-06 Yuuichi Teranishi * elmo-mark.el: New file. * elmo-internal.el: Rewrite (Almost empty). 2001-02-05 Yuuichi Teranishi * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822. (mime-imap-entity-header-string): Ditto. (mmimap-entity-section): Rewrite. 2001-01-30 Yuuichi Teranishi * elmo-nmz.el: New file. * elmo-pipe.el: Rewrite with luna. 2001-01-29 Yuuichi Teranishi * 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 * elmo-archive.el (elmo-archive-version): Abolish. (toplevel) Removed `boso' comment. 2001-01-23 Yuuichi Teranishi * 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 * elmo-filter.el: Rewrite with luna. 2001-01-18 Yuuichi Teranishi * elmo-pop3.el: Rewrite with luna. 2001-01-17 Yuuichi Teranishi * 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 * 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 * elmo.el: Changed meaning of `elmo-folder-commit'. * elmo-mime.el (elmo-mime-display-as-is-internal): New function. 2001-01-07 Yuuichi Teranishi * elmo.el (elmo-folder-append-buffer): New function. (Renamed from `elmo-append-msg') 2000-12-18 Yuuichi Teranishi * elmo-mime.el: New file. 2000-12-14 Yuuichi Teranishi * elmo-cache.el: Rewrite. 2000-02-17 Kenichi OKADA * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms' 2000-12-08 Yuuichi Teranishi * 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 * 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 * elmo.el: New file. * elmo2.el: Renamed to elmo.el. 2001-02-01 OKAZAKI Tetsurou * 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 * elmo-version.el (elmo-version): Up to 2.5.7. 2001-01-23 TAKAHASHI Kaoru * elmo-version.el (elmo-version): Up to 2.5.6. 2001-01-18 Yuuichi Teranishi * elmo-version.el (elmo-version): Up to 2.5.5. 2000-12-22 Yuuichi Teranishi * elmo-imap4.el (elmo-network-authenticate-session): Fixed a logic for response checking. 2000-12-15 Daiki Ueno * 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 * elmo-util.el (elmo-read-search-condition-internal): Require an element of table for searching field. 2000-11-30 Yuuichi Teranishi * elmo-version.el (elmo-version): Up to 2.5.4. 2000-11-26 Kenichi OKADA * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01]. 2000-11-24 Kenichi OKADA * elmo-nntp.el (elmo-network-initialize-session): omitted. 2000-11-22 Kenichi OKADA * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output before greeting. 2000-11-28 Yuuichi Teranishi * 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 * 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 * 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 ) 2000-11-21 Kenichi OKADA * elmo-imap4.el (toplevel): Require 'ssl. Add autoload 'starttls. * elmo-pop3.el (toplevel): Ditto. * elmo-nntp.el (toplevel): Ditto. 2000-11-20 Kenichi OKADA * 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 * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login' 2000-11-20 Kenichi OKADA * 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 * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'. 2000-11-20 Kenichi OKADA * elmo-pop3.el (elmo-network-authenticate-session): Split encoded response value. 2000-11-20 Kenichi OKADA * 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 * 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 * 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 * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*. Delete `elmo-pop3-authenticator-alist'. 2000-11-19 Kenichi OKADA * 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 * elmo-util.el (elmo-folder-local-p): Treat pipe and filter. 2001-01-19 Yuuichi Teranishi * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Fixed problem when `elmo-pop3-use-uidl' is nil. (Reported by Takenobu Sugiyama ) 2000-11-19 Kenichi OKADA * elmo-version.el (elmo-version): Up to 2.5.2. 2001-01-16 Yuuichi Teranishi * 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 ) * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date. (Pointed out by Mikiya Tani ) 2001-01-13 Takaaki MORIYAMA * 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 * 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 ) 2001-01-10 Katsumi Yamaoka * elmo-archive.el (elmo-archive-call-process): Don't check for the exit status when Nemacs is running. 2001-01-09 Yuuichi Teranishi * 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 * elmo2.el (toplevel): Move `product-provide' declare. * mmelmo.el (toplevel): Ditto. 2000-12-26 Yuuichi Teranishi * elmo-util.el (elmo-folder-get-store-type): Rewrite. 2000-12-26 OKAZAKI Tetsurou * elmo-util.el (elmo-folder-get-store-type): New function. (elmo-folder-direct-copy-p): Use it. 2000-12-26 Yuuichi Teranishi * 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 * 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 * elmo-imap4.el (toplevel): Require 'ssl. Add autoload 'starttls. * elmo-pop3.el (toplevel): Ditto. * elmo-nntp.el (toplevel): Ditto. 2000-11-20 Kenichi OKADA * 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 * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login' 2000-11-20 Kenichi OKADA * 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 * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'. 2000-11-20 Kenichi OKADA * elmo-pop3.el (elmo-network-authenticate-session): Split encoded response value. 2000-11-20 Kenichi OKADA * 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 * 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 * 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 * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*. Delete `elmo-pop3-authenticator-alist'. 2000-11-19 Kenichi OKADA * 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 * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change. 2000-12-01 Yuuichi Teranishi * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed problem when '\' character is contained in user-id. (Reported by Yoichiro Okabe ) 2000-11-28 Yuuichi Teranishi * 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 * 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 * elmo-internal.el (elmo-internal-search): Rewrite. (Fixed problem which is pointed out by Akihiro MOTOKI ) * elmo-version.el (elmo-version): Up to 2.5.0. 2000-11-06 Kenichi OKADA * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type. 2000-11-06 Kenichi OKADA * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is non-nil, make hierarchy. 2000-11-05 OKAZAKI Tetsurou * 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 ) 2000-11-02 Yuuichi Teranishi * 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 ) 2000-11-01 TAKAHASHI Kaoru * elmo-version.el (elmo-version): Up to 2.3.93. 2000-11-01 Yuuichi Teranishi * elmo-util.el (elmo-flatten): New function. 2000-10-31 TAKAHASHI Kaoru * 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 * 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 * 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 * elmo-imap4.el (elmo-network-initialize-session): Check capability. * elmo-pop3.el (elmo-network-initialize-session): Ditto. 2000-10-28 Kenichi OKADA * elmo-imap4.el (elmo-network-initialize-session): Fix. 2000-10-28 Kenichi OKADA * 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 * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response value if selecting folder succceeded. (Advised by MII Kazuyoshi for prom-wl.) 2000-10-26 TAKAHASHI Kaoru * elmo-util.el (elmo-make-directory): Fixed permission lateral representation. * elmo-util.el (elmo-string-matched-member): New function. 2000-10-26 Yuuichi Teranishi * 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 * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar of `elmo-imap4-status' and `elmo-imap4-reached-tag'. 2000-10-24 Yuuichi Teranishi * 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 * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when `file-name-completion' returns t. (Reported by Yoichi NAKAYAMA ) (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 * 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 * 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 * 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 * elmo2.el (elmo-generic-folder-diff): Fix. 2000-10-17 Kenichi OKADA * 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 * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by extra-fields. 2000-10-17 Yuuichi Teranishi * 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 * elmo-nntp.el (elmo-network-initialize-session): Fix. 2000-10-16 Kenichi OKADA * elmo-nntp.el (elmo-nntp-read-msg): Don't error. 2000-10-15 Kenichi OKADA * elmo-nntp.el (elmo-network-initialize-session): Add starttls negotiation. 2000-10-15 Masahiro MURATA * 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 * elmo-multi.el (elmo-multi-list-folder-unread): Fixed. 2000-10-13 OKAZAKI Tetsurou * 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 * 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 * 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 * 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 * elmo-version.el (toplevel): Use product-version-as-string for set verstion-string, if defined. 2000-10-11 OKAZAKI Tetsurou * elmo-util.el: Doc fixes. 2000-10-10 TAKAHASHI Kaoru * 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 * 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 * 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 * 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 * 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 * 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 * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/' (elmo-nntp-list-folders-get-cache): Ditto. 2000-10-05 Yuuichi Teranishi * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space character before 'uid'. 2000-10-04 Yuuichi Teranishi * 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 * elmo-util.el (elmo-condition-parse-search-value): Fixed date parsing. 2000-10-03 Yuuichi Teranishi * 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 * 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 * 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 * 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 * 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 * 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 * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list' before `sort'. 2000-09-18 OKAZAKI Tetsurou * 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 * 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 * 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 * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite. 2000-09-12 Katsumi Yamaoka * elmo-util.el (elmo-delete-plugged): Fix parenthesis. 2000-09-11 Yuuichi Teranishi * 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 * 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 * 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 * 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 * 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 * 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 * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable. 2000-08-29 Yuuichi Teranishi * 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 * elmo-nntp.el (Toplevel): Require 'elmo-net. 2000-08-27 Daiki Ueno * 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 * 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 * 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 * 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 * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem wrong-type-argument error when auth is nil. 2000-08-21 Yuuichi Teranishi * 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 * 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 * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the function `error'. 2000-08-12 Kenichi OKADA * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'. 2000-08-08 Yuuichi Teranishi * elmo2.el (elmo-move-msgs): Set value of `unseen'. 2000-08-06 OKAZAKI Tetsurou * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps for server responses, quote `*' regardless of where it appears. 2000-08-03 Kenichi OKADA * elmo-maildir.el (elmo-maildir-commit): New alias. 2000-08-03 Kenichi OKADA * elmo-util.el (elmo-display-progress): Use `progress-feedback-with-label'. 2000-08-02 OKAZAKI Tetsurou * 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 * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem when dired is used on XEmacs. 2000-07-25 OKAZAKI Tetsurou * 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 * 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 * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged. * elmo-imap4.el (elmo-imap4-commit): Ditto. 2000-07-18 Yuuichi Teranishi * 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 * 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 * elmo-cache.el (elmo-cache-clear-killed): Fixed. 2000-07-13 Yuuichi Teranishi * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function. 2000-07-12 Hiroya Murata * elmo-pop3.el (elmo-pop3-clear-killed): New alias. 2000-07-11 Yuuichi Teranishi * 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 * elmo-util.el (elmo-imap4-spec-folder): Use `elmo-imap4-spec-mailbox'; Mark as obsolete. All callers changed. 2000-06-22 Yuuichi Teranishi * 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 * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is included in `attrs' argument. 2000-06-16 Yuuichi Teranishi * 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 * 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 * 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 * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'. Move a conditional out of the while-loop. 2000-05-27 Masahiro MURATA * 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 * elmo-localdir.el (elmo-localdir-pack-number): Renamed the local variable for a packed number self descriptively. 2000-05-21 Masahiro MURATA * 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 * 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 * elmo2.el (elmo-move-msgs): If there's other message with same message-id, don't use cache. 2000-05-18 Nishimoto Masaki * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when number is already packed. 2000-05-15 OKAZAKI Tetsurou * elmo-vars.el: Doc fixes. Trim trailing whitespace. 2000-05-12 Masahiro MURATA * elmo-vars.el (elmo-display-progress-threshold): New variable. All other related modules are changed. 2000-05-11 Yuuichi Teranishi * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem of refiling failure on Maildir. 2000-05-10 Masahiro MURATA * 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 * 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 * elmo-cache.el (elmo-buffer-cache-add): Set message cache buffer as unibyte. 2000-05-07 Masahiro MURATA * elmo-archive.el (elmo-archive-list-folders): Fix base-folder become nil. 2000-04-28 Yuuichi Teranishi * 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 * elmo-maildir.el (elmo-maildir-msgdb-create): Use `elmo-msgdb-sort-by-date'. 2000-04-20 Yuuichi Teranishi * 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 * elmo-archive.el (elmo-archive-list-folders): Use `file-name-directory' if base folder does not exist. 2000-04-14 Nishimoto Masaki * elmo-archive.el (elmo-archive-list-folders): Don't use `file-name-directory'. 2000-04-07 Yuuichi Teranishi * 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 * elmo-pop3.el (elmo-pop3-open-connection): Enclose with as-binary-process. 2000-03-29 Daiki Ueno * elmo-util.el (elmo-display-progress): Fixed. 2000-03-27 Daiki Ueno * elmo-util.el (elmo-display-progress): New function. All other related modules are changed.