New feature: toggle visibility of mime buttons.
[more-wl.git] / elmo / ChangeLog
blob40aa92d0167c0e82432d82e720e3a90780e57d4a
1 2009-03-22  Tetsurou Okazaki  <okazaki@be.to>
3         * elsp-bsfilter.el (elmo-spam-bsfilter-update-switch): Change
4         default value to `--auto-update'.
6 2008-07-06  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8         * elmo-pop3.el (elmo-pop3-read-contents): Fix double `goto-char'.
9         Add `elmo-pop3-read-point' barrier.
11 2008-07-06 YAMASHITA Junji <ysiijj@gmail.com>
13         * elmo-pop3.el (elmo-pop3-read-contents): improving performance:
14         goto the previous end-point insead of the head-point, and use
15         `search-forward' instead of `re-search-forward'.
17 2008-06-30  Tetsurou Okazaki  <okazaki@be.to>
19         * elmo-imap4.el (elmo-imap4-parse-status): Use `case' instead of `cond'.
21 2008-06-30  Don Bashford  <Don.Bashford@stjude.org>
23         * elmo-imap4.el (elmo-imap4-parse-status): Accept IMAP4 tokens in a
24         case-insensitive fashion.
26 2008-03-30  Tetsurou Okazaki  <okazaki@be.to>
28         * elmo-imap4.el (elmo-imap4-send-command): Combine `process-send-string' calls.
30 2008-02-20  TAKAHASHI Kaoru  <kaoru@kaisei.org>
32         * elmo-util.el (elmo-add-name-to-file, elmo-field-body): Use
33         `eval-and-compile' for suppress compile warnings.
35         * elmo-vars.el (dynamic-link, dynamic-call): Use `defalias-maybe'
36         instead of `defun-maybe'
38         * elmo-util.el: Add (eval-when-compile (require 'static)).
40 2008-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
42         * mmimap.el: Remove (require 'static).
43         * acap.el: Ditto.
45         * elmo-flag.el: Move ';;; Code:' comment.
46         * elmo-imap4.el: Ditto.
47         * elmo-net.el: Ditto.
49         * elmo-version.el (product-provide): Fix comment.
51 2008-02-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
53         * slp.el: Add (eval-when-compile (require 'cl)).
54         * elmo-date.el: Ditto.
55         * elmo-pop3.el: Ditto.
56         * elmo-mime.el: Add (eval-when-compile (require 'elmo)).
58 2008-02-17  TAKAHASHI Kaoru  <kaoru@kaisei.org>
60         * modb.el (elmo-msgdb-match-condition-primitive): Use
61         `string-to-number' instead of `string-to-int'.
63         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer)
64         (elmo-msgdb-message-match-condition)
65         (elmo-msgdb-create-message-entity-from-buffer): Use
66         `string-to-number' instead of `string-to-int'.
68         * elmo.el (elmo-folder-confirm-appends): Use `string-to-number'
69         instead of `string-to-int'.
71         * elmo-util.el (elmo-cache-expire-by-age): Use `string-to-number'
72         instead of `string-to-int'.
74         * elmo-pop3.el (elmo-pop3-list-by-list, elmo-folder-status): Use
75         `string-to-number' instead of `string-to-int'.
77         * elmo-nntp.el (elmo-nntp-make-msglist)
78         (elmo-folder-list-messages-plugged, elmo-nntp-folder-status)
79         (elmo-nntp-create-msgdb-from-overview-string)
80         (elmo-nntp-parse-xhdr-response, elmo-nntp-msgdb-create-message)
81         (elmo-nntp-search-primitive): Use `string-to-number' instead of
82         `string-to-int'.
84         * elmo-net.el (elmo-net-folder-set-parameters): Use
85         `string-to-number' instead of `string-to-int'.
87         * elmo-localdir.el (elmo-localdir-list-subr): Use
88         `string-to-number' instead of `string-to-int'.
90         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Use
91         `string-to-number' instead of `string-to-int'.
93         * elmo-date.el (elmo-date-get-datevec): Use `string-to-number'
94         instead of `string-to-int'.
96         * elmo-archive.el (elmo-archive-list-folder-subr): Use
97         `string-to-number' instead of `string-to-int'.
99 2008-02-16  TAKAHASHI Kaoru  <kaoru@kaisei.org>
101         * elmo-util.el (elmo-get-passwd): Fix typo.
103         * elmo-nntp.el (elmo-nntp-get-server-command)
104         (elmo-nntp-set-server-command, elmo-nntp-xover-p)
105         (elmo-nntp-listgroup-p, elmo-nntp-set-listgroup)
106         (elmo-nntp-list-active-p, elmo-nntp-set-list-active)
107         (elmo-nntp-xhdr-p, elmo-nntp-set-xhdr): New backquote style.
109         * elmo-imap4.el (elmo-imap4-debug)
110         (elmo-imap4-response-continue-req-p, elmo-imap4-response-ok-p)
111         (elmo-imap4-response-bye-p, elmo-imap4-response-garbage-p)
112         (elmo-imap4-response-value, elmo-imap4-response-error-text)
113         (elmo-imap4-response-bodydetail-text, elmo-imap4-value)
114         (elmo-imap4-nth, elmo-imap4-detect-search-charset)
115         (elmo-imap4-identical-system-p): New backquote style.
117 2008-02-15  TAKAHASHI Kaoru  <kaoru@kaisei.org>
119         * elmo-dop.el (elmo-make-dop-queue): New backquote style.
120         (elmo-dop-queue-fname, elmo-dop-queue-method): Ditto.
121         (elmo-dop-queue-arguments): Ditto.
123         * elmo-date.el (elmo-match-substring): New backquote style.
124         (elmo-match-string, elmo-match-buffer): Ditto.
125         (elmo-date-make-sortable-string): Ditto.
127         * elmo-archive.el (elmo-archive-get-method):New backquote style.
128         (elmo-archive-get-suffix, elmo-archive-get-regexp): Ditto.
130         * elmo-multi.el (elmo-multi-real-folder-number): New backquote
131         style.
133         * elmo-net.el (elmo-network-stream-type-spec-string): New
134         backquote style.
135         (elmo-network-stream-type-symbol): Ditto.
136         (elmo-network-stream-type-feature): Ditto.
137         (elmo-network-stream-type-function): Ditto.
138         (elmo-network-session-buffer): Ditto.
140         * elmo-util.el (elmo-file-cache-expand-path): New backquote style.
141         (elmo-file-cache-status, elmo-file-cache-path): Ditto.
142         (elmo-make-file-cache, elmo-string, elmo-get-passwd): Ditto.
143         (elmo-bind-directory, elmo-set-work-buf): Ditto.
145         * elmo.el (elmo-folder-send): New backquote style.
147 2008-02-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
149         * pldap.el (ldap-static-if): New backquote style.
150         (ldap/ldif-safe-string-p): Ditto.
151         (ldap/ldif-insert-field): Ditto.
153         * elmo-version.el (elmo-version): Up to 2.15.6.
155 2008-01-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
157         * elmo-imap4.el (elmo-folder-list-messages-plugged): Don't include
158         messages with \Deleted flag.
159         (elmo-folder-delete-messages-plugged): Ask before sending expunge
160         command if there are messages with \Deleted flag.
162 2007-04-24  Yoichi NAKAYAMA  <yoichi@geiin.org>
164         * elmo-pop3.el (elmo-pop3-auth-apop): Use more strict regexp.
165         http://seclists.org/bugtraq/2007/Apr/0018.html
166         (Suggested by Tatsuya Kinoshita)
168 2007-04-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
170         * elmo-imap4.el (elmo-folder-delete): Don't call close for mailbox
171         with \Noselect attribute.
173 2007-04-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
175         * elmo-imap4.el (elmo-folder-list-subfolders): Fix handling of
176         hierarchical folder structure with UW-imapd.
178 2007-02-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
180         * elmo-imap4.el (elmo-imap4-clear-login): Don't send LOGIN command
181         when the LOGINDISABLED capability is advertised.
183 2007-01-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
185         * elmo-msgdb.el (elmo-msgdb-extra-fields): Make it non-destructive.
187 2007-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
189         * elmo-shimbun.el (elmo-shimbun-update-overview): Add argnument
190         `entity'.
191         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview' only
192         if the message entity is exists.
194 2007-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
196         * elmo-util.el (elmo-msgdb-insert-file-header): Call
197         `elmo-delete-cr-buffer'.
199         * elmo-localdir.el (elmo-message-fetch-internal): Use
200         `insert-file-contents-as-raw-text' instead of
201         `insert-file-contents-as-binary'.
203         * elmo-maildir.el (elmo-map-message-fetch): Ditto.
205 2006-12-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
207         * elmo-imap4.el (elmo-network-initialize-session): Check to
208         retrieve a whole greeting message.
210 2006-11-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
212         * elmo-flag.el (elmo-folder-commit): Encode `.minfo' at save.
214 2006-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
216         * elmo-util.el (elmo-safe-plist-get): New alias or macro.
217         (elmo-progress-notify): Use it instead of `plist-get'.
219 2006-11-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
221         * elmo.el (elmo-generic-folder-append-messages): Remove unused
222         variable `table'.
224 2006-11-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
226         * elmo-pipe.el (elmo-folder-set-plugged): Define.
228 2006-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
230         * elsp-bsfilter.el (elmo-spam-bsfilter-use-remote): New user option.
231         (elmo-spam-list-spam-messages): Check it option.
233 2006-11-08  Tetsurou Okazaki  <okazaki@be.to>
235         * elmo-util.el (elmo-with-progress-display): Return the value
236         of the last form in `body'.
238 2006-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
240         * elmo-util.el (elmo-progress-start): Accept nil for `total'.  Set
241         `elmo-progress-counter' as t when a query callback returns nil.
242         (elmo-progress-clear): New function.
243         (elmo-progress-done): Split into `elmo-progress-clear'.
244         (elmo-progress-notify): Update a total slot when it is nil.
245         (elmo-with-progress-display): Call `elmo-progress-clear' in
246         unwind-protect and move calling `elmo-progress-done' to outside.
248         * elmo-imap4.el (elmo-imap4-find-next-line): Call
249         `elmo-progress-notify' with :total parameter instead of
250         `elmo-progress-counter-set-total'.
252 2006-11-07  Tetsurou Okazaki  <okazaki@be.to>
254         * elmo-util.el (elmo-cache-expire-by-age): Add docstring.
255         Make it interactive.
256         (elmo-progress-start): Avoid updating `elmo-progress-counter'
257         when a query callback returns nil.  Return a progress counter
258         instead of t whenever a start callback was called.
260 2006-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
262         * elmo-imap4.el (elmo-imap4-session-capable-p): New macro.
263         (elmo-imap4-send-command): Use it.
264         (elmo-network-initialize-session): Ditto.
265         (elmo-network-setup-session): Ditto.
266         (elmo-folder-msgdb-create-plugged): Ditto.
268 2006-11-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
270         * elmo-util.el (elmo-progress-done): Fix a miss refer to
271         `elmo-progress-counter'.
273 2006-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
275         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Abolish.
276         (elsp-bsfilter-list-spam-filter): New function.
277         (elsp-bsfilter-start-list-spam): Ditto.
278         (elsp-bsfilter-read-list-spam): Ditto.
279         (elmo-spam-list-spam-messages): Use async process to display
280         progress message by each message.
282 2006-11-03  Yoichi NAKAYAMA  <yoichi@geiin.org>
284         * elmo-spam.el (elmo-spam-process-messages-as-mbox): Fix problem
285         of flushing previously inserted message contents.
287         * elmo-imap4.el (elmo-folder-search): Fix return value.
289 2006-11-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
291         * elmo-imap4.el (elmo-imap4-find-next-line): Check whether a label
292         of reporter is enable or not.
294 2006-10-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
296         * elmo-util.el (elmo-list-bigger-diff): Abolish.
297         (elmo-display-progress): Ditto.
298         (elmo-progress-counter-alist): Ditto.
299         (elmo-progress-set): Ditto.
300         (elmo-progress-clear): Ditto.
301         (elmo-progress-counter-all-value): Rename to
302         `elmo-progress-counter-total'.
303         (elmo-progress-counter-format): Rename to
304         `elmo-progress-counter-action'.
305         (elmo-progress-counter): New internal variable.
306         (elmo-progress-callback-function): Ditto.
307         (elmo-progress-counter-label): New function.
308         (elmo-progress-counter-set-total): Ditto.
309         (elmo-progress-counter-set-action): Ditto.
310         (elmo-progress-call-callback): Ditto.
311         (elmo-progress-start): Ditto.
312         (elmo-progress-done): Ditto.
313         (elmo-progress-notify): Rewrite.
314         (elmo-with-progress-display): Remove first argument
315         `condition'. Add optional argument `var' in `spec'.
317         * elmo-vars.el (elmo-display-progress-threshold): Abolish.
318         (elmo-display-retrieval-progress-threshold): Ditto.
319         (elmo-inhibit-display-retrieval-progress): Ditto.
321         * Replace all pair of `elmo-progress-set' and
322         `elmo-progress-clear' into `elmo-with-progress-display'.
324         * Replace to call `elmo-display-progress' into pair of
325         `elmo-progress-notify' and `elmo-with-progress-display'.
327         * elmo-version.el (elmo-version): Up to 2.15.5.
329 2006-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
331         * elmo-imap4.el (elmo-imap4-arrival-filter): Use `case' instead of
332         `cond'.
334 2006-10-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
336         * elmo-imap4.el (elmo-imap4-arrival-filter): Call delete-region in
337         cleanup-forms [wl:14027].
339 2006-10-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
341         * elmo-flag.el (elmo-global-flag-set-internal): Use
342         `elmo-copy-file' by priority when the message is a file.
344 2006-10-01  Yoichi NAKAYAMA  <yoichi@geiin.org>
346         * elmo.el: Fix typo: disptch -> dispatch.
348 2006-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
350         * elmo.el (elmo-file-tag): New class.
351         (elmo-append-messages-disptch-table): New constant.
352         (elmo-folder-type-p): New function.
353         (elmo-folder-append-messages): Redefine as function.
355         * elmo-null.el (elmo-folder-append-messages): Renamed from
356         `elmo-folder-append-messages'.
358         * elmo-maildir.el (elmo-maildir-folder): Inherit `elmo-file-tag'.
359         (elmo-folder-append-messages-*-maildir): Renamed from
360         `elmo-folder-append-messages'.
362         * elmo-localdir.el (elmo-localdir-folder): Inherit
363         `elmo-file-tag'.
364         (elmo-folder-append-messages-*-localdir): Renamed from
365         `elmo-folder-append-messages'.
367         * elmo-imap4.el (elmo-folder-append-messages-imap4-imap4): Renamed
368         from `elmo-folder-append-messages'.
370         * elmo-flag.el (elmo-folder-append-messages-*-flag): Renamed from
371         `elmo-folder-append-messages'.
373         * elmo-filter.el (elmo-folder-append-messages-filter-*): New
374         function.
375         (elmo-folder-append-messages-*-filter): Ditto.
377         * elmo-multi.el (elmo-folder-append-messages-multi-*): Ditto.
379         * elmo-pipe.el (elmo-folder-append-messages-pipe-*): Ditto.
380         (elmo-folder-append-messages-*-pipe): Renamed from
381         `elmo-folder-append-messages'.
383         * elmo-cache.el (elmo-cache-folder): Inherit `elmo-file-tag'.
385         * elmo-file.el (elmo-file-folder): Ditto.
387         * elmo-sendlog.el (elmo-sendlog-folder): Ditto.
389         * elmo-archive.el (elmo-folder-append-messages-*-archive): Renamed
390         from `elmo-folder-append-messages'
392 2006-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
394         * elmo-map.el (elmo-location-map-setup): Change an argument
395         `locations' to optional.
396         (elmo-location-map-clear): Abolish.
397         (elmo-folder-clear): Follow the API change.
399         * elmo-pop3.el (elmo-folder-clear): Ditto.
401         * elmo-pop3.el (toplevel): Require elmo-map.
402         (elmo-pop3-folder): Inherit elmo-location-map and abolish
403         location-alist slot (All other related portions are changed).
404         (elmo-pop3-folder-use-uidl): New function.
405         (elmo-folder-msgdb-create): Don't sort message entities.
406         (elmo-pop3-sort-msgdb-by-original-number): Abolish.
407         (elmo-pop3-number-to-size): Convert return value to number.
408         (elmo-pop3-msgdb-create-by-header): Use unwind-protect to delete a
409         working buffer.
411         * elmo-map.el: Use `location-map' as a variable name for instance
412         instead of `mapper'.
413         (elmo-location-map-setup): Return location alist.
414         (elmo-location-map-update): Ditto.
416 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
418         * elmo-map.el (elmo-location-map): New class; split location and
419         number mapping from elmo-map-folder (All other related portions
420         are changed).
422         * elmo-shimbun.el (elmo-folder-open-internal): Follow the API
423         change.
425         * elmo-version.el (elmo-version): Up to 2.15.4.
427 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
429         * elmo-vars.el (elmo-use-hardlink): New user option.
431         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
432         `elmo-use-hardlink'.
434         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
435         killed-list.
436         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
437         instead of `*-internal'. Use `elmo-with-progress-display'.
439 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
441         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
442         `elmo-spam-process-messages-as-mbox'.
444         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
446 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
448         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
449         argument BUFFER of `call-process'.
451 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
453         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
454         args.
455         (elsp-bsfilter-list-spam-files): Ditto.
457 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
459         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
460         (elmo-spam-bsfilter-max-messages-per-process): New use option.
461         (elmo-spam-bsfilter-debug): Fix a group.
462         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
463         `--homedir'.
464         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
465         (elsp-bsfilter-list-spam-files): New function.
466         (elmo-spam-list-spam-messages): Define.
467         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
468         (elmo-spam-bsfilter-register-messages): New function.
469         (elmo-spam-register-spam-messages): Define.
470         (elmo-spam-register-good-messages): Ditto.
472         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
474         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
475         `nconc' and `consp'.
477 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
479         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
480         hash table to test whether a location is exists.
482 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
484         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
485         even if some error occurred.
487         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
488         meaningless unwind-protect.
490         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
491         start-number correctly.
492         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
493         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
495 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
497         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
498         (elmo-folder-initialize): Use it.
499         (elmo-global-flag-replace-referrer): New function.
501         * elmo.el (toplevel): Added autoload setting for
502         `elmo-global-flag-replace-referrer'.
503         (elmo-folder-rename): Rewrite the last change use
504         `elmo-global-flag-replace-referrer'.
506         * elmo-pipe.el (elmo-folder-rename): Call
507         `elmo-global-flag-replace-referrer'.
509 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
511         * elmo.el (elmo-folder-rename): Set meta data for global flags
512         follow the rename.
514 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
516         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
517         as 'not-loaded.
518         (elmo-folder-close): Ditto.
519         (elmo-filter-folder-number-list-loaded-p): New function.
520         (elmo-filter-folder-number-list): Check whether loaded or not.
521         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
522         of `elmo-filter-folder-number-list-internal'.
523         (elmo-folder-delete-messages): Ditto.
524         (elmo-folder-length): Check whether number-list is loaded or not.
526 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
528         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
529         field `real field' into each element of list.
530         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
531         (elmo-msgdb-message-entity-field): Ditto.
532         (modb-entity-ml-info-real-fields): New function.
534         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
536         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
537         `elmo-msgdb-extra-fields'.
539 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
541         * elmo-util.el (elmo-passwd-alist-load): Move point to min
542         position before read.
544 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
546         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
547         (elmo-global-flags-initialize): Ditto.
549 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
551         * elmo-archive.el (toplevel): Don't require emu, std11
552         and elmo-localdir.
554         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
555         definition.
557 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
559         * elmo.el (elmo-folder-confirm-appends): Display folder name.
561 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
563         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
564         literals.
566 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
568         * elmo-maildir.el (elmo-maildir-list-location): Reduce
569         `elmo-get-last-modification-time' call.
571 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
573         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
574         expression.
575         (elmo-maildir-set-mark): Ditto.
576         (elmo-maildir-delete-mark): Ditto.
578 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
580         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
581         optional argument `separators'.
583 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
585         * elmo.el (cache-changed): Abolish.
586         (status-changed): New signal.
587         (elmo-message-killed-p): New generic function and define for
588         elmo-folder.
589         (elmo-folder-recover-messages): Ditto.
590         (elmo-message-set-cached): Emit signal `status-changed' instead of
591         `cache-changed'.
592         (elmo-message-status): New macro.
593         (elmo-message-status-folder): Ditto.
594         (elmo-message-status-number): Ditto.
595         (elmo-message-status-set-flags): Ditto.
596         (elmo-message-status-set-killed): Ditto.
597         (elmo-message-status-flags): New function.
598         (elmo-message-status-cached-p): Ditto.
599         (elmo-message-status-killed-p): Ditto.
601         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
602         `status-changed' instead of `cache-changed'.
603         (elmo-folder-recover-messages): Define.
604         (elmo-message-killed-p): Ditto.
606         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
607         `status-changed' instead of `cache-changed'.
609         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
610         (elmo-message-killed-p): Define.
611         (elmo-folder-recover-messages): Ditto.
613         * elmo-version.el (elmo-version): Up to 2.15.3.
615 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
617         * elmo-signal.el (elmo-signal-bindings): Use cons to append
618         element into list.
619         (elmo-define-signal-handler): Add docstring.
620         (elmo-define-signal-filter): Ditto.
622         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
624 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
626         * elmo-util.el (elmo-flatten): Don't use recursive call.
628         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
629         assignment.
630         (elmo-folder-message-make-temp-files): Use `number-to-string'
631         instead of `int-to-string'.
633 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
635         * elmo-search.el (elmo-folder-delete-messages): Define.
637 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
639         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
640         customization type.
641         (elmo-mailing-list-count-spec-list): Ditto.
643         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
644         for `list-id'.
646 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
648         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
649         handling.
651 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
653         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
654         (elmo-mailing-list-count-spec-list): Ditto.
656         * elmo-util.el (elmo-map-until-success): New function.
657         (elmo-string-match-substring): Ditto.
658         (elmo-find-list-match-value): Ditto.
660         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
661         Removed.
662         (modb-entity-extract-ml-info-from-subject): Ditto.
663         (modb-entity-extract-ml-info-from-return-path): Ditto.
664         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
665         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
666         (modb-entity-extract-ml-info-from-mailman): Ditto.
667         (modb-entity-extract-mailing-list-info-functions): Ditto.
668         (modb-entity-extract-mailing-list-info): Rewrite with
669         `elmo-find-list-match-value'.
671 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
673         * elmo-net.el (elmo-network-session-retry-count): New user option.
674         (elmo-network-session-buffer-name): New internal function.
675         (elmo-network-session-buffer-create): Ditto.
676         (elmo-network-open-session): Retry open network session
677         `elmo-network-session-retry-count' times.
679 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
681         * elmo-util.el (elmo-list-filter): Rewritten.
683 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
685         * elmo-util.el (elmo-string-member): Allow symbol element in list.
687 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
689         * elmo-search.el (elmo-make-search-engine): Use prefix
690         `elmo-search-' for require symbol instead of `else-'.
691         (elmo-search-engine-extprog): New class.
692         (elmo-search-engine-do-search): Remove nil from argument
693         list. Added argument pattern to evaluate element as function.
694         (elmo-search-engine-local-file): Derived from
695         `elmo-search-engine-extprog'.
696         (elmo-search-engine-create-message-entity): Check existance of file.
697         (elmo-search-engine-fetch-message): Ditto.
698         (elmo-search-namazu-index): Follow the API change.
699         (elmo-search-grep-target): Ditto.
701 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
703         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
704         characters of working buffer.
706         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
707         Does not bind `default-mime-charset'.
708         (elmo-msgdb-create-message-entity-from-buffer): Removed
709         unnecessary local bind.
711         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
712         function.
713         (modb-entity-extract-mailing-list-info-functions): Added it.
715 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
717         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
718         when number and message-id are non-nil.
720         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
722         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
723         conditional steatment.
724         (elmo-pop3-auth-apop): Likewise.
725         (elmo-network-authenticate-session): Likewise.
727 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
729         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
730         symbol `fill-column'.
731         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
732         decode field value.
734         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
735         (elmo-decoded-field-body): Ditto.
737 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
739         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
740         `tokens' to `params'.
742 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
744         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
745         working buffer.
747 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
749         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
750         decide index.
752 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
754         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
755         Set default value as nil.
756         (toplevel): Register search engines by
757         `elmo-search-register-engine' if there are not defined.
759         * elmo.el (autoload): Added autoload setting for
760         `elmo-search-register-engine'.
762 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
764         * elmo.el (toplevel): `[' is redefined as the prefix of the search
765         folder instead of nmz folder.
766         (elmo-nmz-default-index-path): Added obsolete variable setting.
767         (elmo-nmz-index-alias-alist): Ditto.
768         (elmo-nmz-use-drive-letter): Ditto.
770         * elmo-search.el (elmo-search-register-engine): New function.
772         * elmo-nmz.el: Removed.
774         * elmo-version.el (elmo-version): Up to 2.15.2.
776 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
778         * elmo-search.el: New file.
780 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
782         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
783         condition `larger' and `smaller'.
785 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
787         * elmo-util.el (elmo-safe-filename): Rewrite to replace
788         `"' (double quote) into "_Q_".
790 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
792         * elmo-net.el (elmo-net-quote-chars): Abolish.
793         (elmo-net-format-quoted): Ditto.
795 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
797         * elmo.el (elmo-get-folder-function): New variable.
798         (elmo-get-folder): New function.
799         (elmo-folder-rename): Call `elmo-make-folder' with specified
800         mime-charset.
802         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
803         `elmo-make-folder'.
804         (elmo-split-subr): Ditto.
806         * elmo-multi.el (elmo-folder-initialize): Ditto.
808         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
810         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
811         (elmo-flag-get-folder): Ditto.
813         * elmo-filter.el (elmo-folder-initialize): Ditto.
815         * elmo-access.el (elmo-folder-initialize): Ditto.
816         (elmo-access-folder-update-children): Ditto.
818         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
819         (elmo-dop-queue-flush): Ditto.
820         (elmo-folder-append-buffer-dop-delayed): Ditto.
821         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
822         mime-charset.
824         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
825         instead of `elmo-make-folder'.
826         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
827         destination folder instead of send `elmo-folder-rename-internal'.
829         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
830         slot of subfolder instead of create it.
832 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
834         * elmo-util.el (elmo-collect-separators): New function.
835         (elmo-collect-separators-internal): Ditto.
836         (elmo-collect-trail-separators): Ditto.
837         (elmo-parse-separated-tokens): Ditto.
838         (elmo-parse-separated-tokens-internal): Ditto.
839         (elmo-quote-syntactical-element): Ditto.
841         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
842         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
844         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
845         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
846         (elmo-nntp-folder-list-subfolders): Quote a user name.
848         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
849         (elmo-net-parse-network): Abolish.
850         (elmo-net-folder-set-parameters): New function.
851         (elmo-folder-initialize): Follow the above change.
853         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
854         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
855         (elmo-folder-list-subfolders): Use
856         `elmo-quote-syntactical-element' instead of
857         `elmo-net-format-quoted' to quote mailbox and user name.
859 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
861         * elmo-util.el (elmo-token-valid-p): New function.
862         (elmo-parse-token): Add optional argument `requirement'.
863         (elmo-parse-prefixed-element): Likewise.
865         * elmo-net.el (elmo-net-quote-chars): Renamed from
866         `elmo-net-quote-chars-regexp'.
867         (elmo-net-format-quoted): Add optional argument `extra-chars'.
869         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
870         by info document. Check token `uidl' is started an alphabet.
872         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
873         by info document. Check token `user' is started an alphabet.
875         * elmo-imap4.el (elmo-folder-initialize): Ditto.
876         (elmo-folder-list-subfolders): Quote user.
878 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
880         * elmo-util.el (elmo-quoted-specials-list): New constant.
881         (elmo-quoted-token): New function.
883         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
884         (elmo-net-format-quoted): New function.
885         (elmo-net-parse-network): Ditto.
886         (elmo-folder-initialize): Use it.
888         * elmo-nntp.el (elmo-folder-initialize): Use
889         `elmo-net-parse-network' to parse network specification instead of
890         `elmo-folder-initialize#elmo-net'.
892         * elmo-pop3.el (elmo-folder-initialize): Ditto.
894         * elmo-imap4.el (elmo-folder-initialize): Ditto.
895         (elmo-folder-list-subfolders): Quote folder name by
896         `elmo-net-format-quoted'.
898 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
900         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
901         (elmo-folder-search): Use it.
903 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
905         * modb-standard.el (modb-standard-loaded-message-id): Use
906         `elmo-msgdb-message-entity-field'.
908 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
910         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
911         without filename.
913 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
915         * elmo-util.el (elmo-set-auto-coding): New function.
916         (elmo-object-load): Use it.
918 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
920         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
921         (elmo-time<): Define as alias of `elmo-time-less-p'.
922         (elmo-time-to-datevec): New function.
924         * elmo-date.el (elmo-time-to-days): New function.
926 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
928         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
929         is not cons cell.
931 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
933         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
934         parenthesis.
936         * elmo-util.el (elmo-map-recursive): New function.
938         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
939         (modb-entity-encode-string-recursive): Ditto.
941 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
943         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
944         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
945         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
946         compare sequence number when last modified time is nil.
948 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
950         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
952         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
954 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
956         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
957         modification time of the file.
959 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
961         * elmo-util.el (elmo-condition-optimize): Discriminated against
962         preserved fields, extra fields and the other weight.
964 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
966         * modb-entity.el (initialize-instance): Define.
967         (modb-entity-handler-mime-charset): New internal function.
968         (modb-standard-entity-set-field): Use it.
969         (elmo-msgdb-message-entity-field): Ditto.
970         (elmo-msgdb-message-entity-field): Ditto.
972         * modb.el (elmo-msgdb-match-condition): Rewrite with
973         `elmo-condition-match'.
974         (elmo-msgdb-match-condition-primitive): New function.
976         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
977         arguments `flags' and `numbers'.
978         (elmo-msgdb-match-condition-primitive): Abolished (merged to
979         `elmo-msgdb-message-match-condition').
980         (modb-buffer-entity-handler): New class.
982         * elmo.el (elmo-folder-search): Optimize condition to use
983         `elmo-condition-optimize'.
984         (elmo-message-buffer-match-condition): New function.
985         (elmo-message-match-condition): Use
986         `elmo-message-buffer-match-condition' instead of
987         `elmo-buffer-field-condition-match'.
989         * elmo-util.el (elmo-condition-match): New function.
990         (elmo-condition-optimize): Ditto.
991         (elmo-buffer-field-primitive-condition-match): Abolish.
992         (elmo-buffer-field-condition-match): Ditto.
994         * elmo-archive.el (elmo-archive-field-condition-match): Use
995         `elmo-message-buffer-match-condition' instead of
996         `elmo-buffer-field-condition-match'.
998 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1000         * elmo-flag.el (elmo-global-flags-initialize): Check the
1001         existence of the flag directory.
1003 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1005         * elmo-access.el (elmo-folder-initialize): Call
1006         `elmo-multi-connect-signals'.
1008         * elmo-pipe.el (elmo-folder-close): Define.
1010         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
1011         children folders.
1013         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
1014         with target folder.
1016         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
1017         `number'.
1019         * elmo-multi.el (elmo-message-entity): Don't use return value of
1020         `elmo-message-entity-set-number'.
1022 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1024         * modb.el (modb-generic): Added slot `mime-charset'.
1026         * modb-standard.el (modb-standard): Added slot `overview-handler'.
1027         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
1028         and `modb-entity-handler-dump-parameters'.
1029         (modb-standard-default-entity-handler): Abolish.
1030         (elmo-msgdb-message-entity-handler): Save created handler by
1031         instance slot.
1033         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
1034         (modb-entity-handler-list-parameters): New method.
1035         (modb-entity-handler-equal-p): New function.
1036         (modb-entity-handler-dump-parameters): Ditto.
1037         (modb-entity-parse-address-string): Encode return value.
1038         (modb-entity-make-address-string): Decode argument value.
1039         (modb-entity-decode-string-recursive): New function.
1040         (modb-entity-encode-string-recursive): Ditto.
1041         (modb-standard-entity-normalizer): Set to encode field value.
1042         (modb-standard-entity-specializer): Follow the above change.
1043         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
1044         mime-charset of handler.
1045         (elmo-msgdb-message-entity-field): Ditto.
1046         (elmo-msgdb-copy-message-entity): Fixed reference to internal
1047         structure.
1048         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
1050         * elmo.el (elmo-folder): Added slot `mime-charset'.
1051         (elmo-make-folder): Added argument `mime-charset'.
1052         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
1053         `mime-charest'.
1055         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
1056         (elmo-make-msgdb): Likewise.
1058         * elmo-internal.el (elmo-internal-folder-initialize): Call
1059         `luna-make-entity' with :mime-charset parameter.
1061 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
1063         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
1064         encoded words in `from' and `subject' field.
1066 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1068         * modb.el (elmo-msgdb-message-field): Add argument `type'.
1069         (elmo-msgdb-match-condition): Get handler from entity instead of
1070         msgdb.
1072         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
1073         (modb-standard-load-entity): Treat new file format.
1074         (modb-standard-save-entity-1): Save as new file format.
1075         (modb-standard-save-entity): Split messages into section here.
1076         (elmo-msgdb-message-field): Follow the API change.
1077         (modb-standard-default-entity-handler): New internal variable.
1078         (elmo-msgdb-message-entity-handler): Define.
1080         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1081         to `elmo-vars.el'.
1082         (modb-entity-field-extractor-alist): New user option.
1083         (elmo-msgdb-message-entity-field): Removed argument `decode' and
1084         added argument `type'.
1085         (elmo-msgdb-copy-message-entity): Add optional argument
1086         `make-handler'.
1087         (modb-set-field-converter): New function.
1088         (modb-convert-field-value): Ditto.
1089         (modb-entity-string-decoder): Ditto.
1090         (modb-entity-string-encoder): Ditto.
1091         (modb-entity-parse-date-string): Ditto.
1092         (modb-entity-make-date-string): Ditto.
1093         (modb-entity-mime-decoder): Ditto.
1094         (modb-entity-mime-encoder): Ditto.
1095         (modb-entity-address-list-decoder): Ditto.
1096         (modb-entity-address-list-encoder): Ditto.
1097         (modb-entity-parse-address-string): Ditto.
1098         (modb-entity-make-address-string): Ditto.
1099         (modb-entity-create-field-indices): Ditto.
1100         (modb-legacy-entity-field-slots): New constant.
1101         (modb-legacy-entity-field-indices): Ditto.
1102         (modb-legacy-entity-normalizer): New variable.
1103         (modb-legacy-entity-specializer): Ditto.
1104         (modb-legacy-entity-field-index): New macro.
1105         (modb-legacy-entity-set-field): New function.
1106         (modb-legacy-make-message-entity): Rewrite.
1107         (elmo-msgdb-create-message-entity-from-buffer): Use
1108         `elmo-msgdb-get-references-from-buffer'. Use
1109         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
1110         Use `modb-legacy-entity-set-field' instead of
1111         `elmo-msgdb-message-entity-set-field'.
1112         (elmo-msgdb-message-entity-field): Rewrite.
1113         (elmo-msgdb-message-entity-set-field): Ditto.
1114         (elmo-msgdb-copy-message-entity): Make new entity by
1115         `make-handler' if it specified.
1116         (elmo-msgdb-message-match-condition): Define a method of
1117         `modb-entity-handler' and follow the API change.
1118         (modb-standard-entity-handler): New class.
1119         (modb-entity-extract-ml-info-from-x-sequence): New function.
1120         (modb-entity-extract-ml-info-from-subject): Ditto.
1121         (modb-entity-extract-ml-info-from-return-path): Ditto.
1122         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
1123         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
1124         (modb-entity-extract-mailing-list-info): Ditto.
1125         (modb-entity-extract-mailing-list-info-functions): New variable.
1127         * elmo.el (elmo-message-field): Add optional argument `type'.
1129         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
1130         from `modb-entity.el'.
1132         * elmo-util.el (elmo-object-load): Decode by coding-system from
1133         `set-auto-coding-function'.
1134         (elmo-object-save): Use `detect-mime-charset-region' and add
1135         coding cookie if encode.
1136         (elmo-msgdb-get-references-from-buffer): New function.
1137         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
1139         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
1141         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
1142         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
1143         instead of `shimbun-make-header' and follow the API change.
1144         (elmo-shimbun-update-overview): Follow the API change.
1145         (elmo-map-folder-list-message-locations): Ditto.
1147         * elmo-pipe.el (elmo-message-field): Ditto.
1149         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
1150         Ditto.
1152         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1154         * elmo-multi.el (elmo-message-field): Ditto.
1156         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
1157         (elmo-msgdb-sort-by-date): Ditto.
1158         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
1159         `elmo-message-entity-field'.
1160         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
1161         change.
1162         (elmo-msgdb-overview-entity-get-from): Ditto.
1163         (elmo-msgdb-overview-entity-get-subject): Ditto.
1164         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1165         (elmo-msgdb-overview-entity-get-date): Ditto.
1166         (elmo-msgdb-overview-entity-get-to): Ditto.
1167         (elmo-msgdb-overview-entity-get-cc): Ditto.
1169         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1170         (elmo-mime-collect-message/partial-pieces): Ditto.
1172         * elmo-filter.el (elmo-message-field): Ditto.
1174         * elmo-date.el (elmo-datevec-to-time): New function.
1175         (elmo-time-parse-date-string): Ditto.
1176         (elmo-time-make-date-string): Ditto.
1177         (elmo-time<): Ditto.
1179         * elmo-version.el (elmo-version): Up to 2.15.1.
1181 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
1183         * elmo-flag.el (elmo-global-flags-initialize): Don't include
1184         member of elmo-local-flags.
1186 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
1188         * elmo-version.el (elmo-version): Up to 2.15.0.
1190 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1192         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
1193         `ignore-msgdb' is non-nil.
1195 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1197         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
1198         (elmo-condition-in-msgdb-p): Ditto.
1199         (elmo-file-field-primitive-condition-match): Ditto.
1200         (elmo-file-field-condition-match): Ditto.
1202         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
1204 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1206         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
1207         subdirectories here.
1208         (elmo-global-flags-initialize): New function.
1210         * elmo.el (toplevel): Added autoload setting for
1211         `elmo-global-flags-initialize'.
1213 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
1215         * elmo.el (message-number-changed): Define new signal.
1216         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
1217         message-number-changed signal.
1218         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1219         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1220         Respect `elmo-pack-number-check-strict'.
1222 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1224         * elmo-signal.el (elmo-connect-signal): Document.
1225         (elmo-emit-signal): Ditto.
1226         (elmo-emit-signal): It should pass source argument to filter and
1227         handler, not slot-source.
1229 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1231         * modb.el (elmo-msgdb-update-entity): New API and define generic
1232         implement.
1234         * modb-standard.el (elmo-msgdb-update-entity): Define.
1236         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
1237         API and define generic implement.
1239         * elmo.el (update-overview): New singnal.
1241         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
1242         `elmo-msgdb-update-entity' and emit signal `update-overview'.
1243         (elmo-message-entity-parent): Define.
1245         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
1246         `update-overview'.
1248         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
1250         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
1252 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
1254         * elmo.el (elmo-folder-synchronize): Sort the return value of
1255         `elmo-list-diff'.
1257         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
1258         list.
1260 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1262         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
1263         `default-enable-multibyte-characters'.
1264         (elmo-object-load): Use `with-temp-buffer' instead of
1265         `elmo-set-work-buf'.
1266         (elmo-object-save): Ditto.
1267         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
1268         `elmo-set-work-buf'.
1269         (elmo-decoded-field-body): Ditto.
1271         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
1273         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
1274         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
1276         * elmo-version.el (elmo-version): Up to 2.13.3.
1278 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
1280         * elmo-util.el (elmo-list-diff): Fix the last change.
1281         Reverse order of result lists.
1283 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
1285         * modb-standard.el (elmo-msgdb-set-flag): Use
1286         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
1287         (elmo-msgdb-unset-flag): Ditto.
1289         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
1290         `elmo-list-diff'.
1292         * elmo-util.el (elmo-list-diff): Rewrite.
1293         (elmo-list-diff-nonsortable): New function.
1295 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
1297         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
1298         `elmo-multibypte-buffer-name'.  All referers are updated.
1300 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1302         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
1303         (elmo-mime-entity-fragment-p): New function.
1304         (mime-elmo-buffer-entity): Added slot `reassembled'.
1305         (elmo-message-mime-entity): Added 4th argument `reassemble'.
1306         (elmo-message-mime-entity-internal): New function (renamed from
1307         `elmo-message-mime-entity').
1308         (elmo-mime-inherit-field-list-from-enclosed): New constant.
1309         (elmo-mime-make-reassembled-mime-entity): New function.
1310         (elmo-message-reassembled-mime-entity): Ditto.
1311         (elmo-mime-collect-message/partial-pieces): Ditto.
1313 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1315         * elmo.el (elmo-message-fetch-string): Disable multibyte.
1317         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
1318         (elmo-with-enable-multibyte): New macro.
1320         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
1322 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1324         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
1325         argument `number'.
1326         (elmo-filter-connect-signals): Follow the above change.
1328 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
1330         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
1332         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
1333         that only the first flag is used.
1335 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1337         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
1338         if available.
1340 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1342         * elmo-signal.el: New file.
1344         * elmo.el (toplevel): Require elmo-signal.
1345         (flag-changing, flag-changed, cache-changed): New signal.
1346         (elmo-folder): Remove slog `handlers'.
1347         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
1348         `elmo-folder-notify-event'.
1349         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
1350         (elmo-folder-unset-flag): Ditto.
1351         (elmo-event-handler): Abolish.
1352         (elmo-event-handler-flag-changed): Ditto.
1353         (elmo-event-handler-cache-changed): Ditto.
1354         (elmo-folder-add-handler): Ditto.
1355         (elmo-folder-remove-handler): Ditto.
1356         (elmo-folder-notify-event): Ditto.
1358         * elmo-pipe.el (toplevel): Require elmo-signal.
1359         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
1360         (elmo-pipe-connect-signals): New function.
1361         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
1362         (elmo-folder-set-flag): Ditto.
1363         (elmo-folder-unset-flag): Ditto.
1364         (elmo-message-set-cached): Ditto.
1366         * elmo-multi.el (toplevel): Require elmo-signal.
1367         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
1368         (elmo-multi-connect-signals): New function.
1369         (elmo-multi-map-numbers): Ditto.
1370         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
1371         (elmo-message-fetch): Ditto.
1372         (elmo-folder-set-flag): Ditto.
1373         (elmo-folder-unset-flag): Ditto.
1375         * elmo-filter.el (toplevel): Require elmo-signal.
1376         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
1377         (elmo-filter-connect-signals): New function.
1378         (elmo-filter-add-flag-count): Ditto.
1379         (elmo-message-fetch): Does not call
1380         `elmo-filter-folder-countup-message-flags' and
1381         `elmo-folder-notify-event'.
1382         (elmo-message-set-cached): Ditto.
1383         (elmo-folder-set-flag): Ditto.
1384         (elmo-folder-unset-flag): Ditto.
1386         * elmo-version.el (elmo-version): Up to 2.13.2.
1388 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1390         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
1391         `flags'.
1393 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1395         * elmo-filter.el (elmo-message-set-cached): Call
1396         `elmo-folder-notify-event' with event `cache-changed'.
1398         * elmo-multi.el (elmo-message-set-cached): Ditto.
1400         * elmo-pipe.el (elmo-message-set-cached): Ditto.
1402 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
1404         * elmo.el (elmo-folder-encache): Abolish.
1406 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1408         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
1409         (elmo-folder-next-message-number-dop): Return appropriate negative
1410         integer.
1412 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1414         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
1415         clearing pending operations.
1416         (elmo-folder-next-message-number-dop): Return appropriate negative
1417         integer.
1419 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1421         * elmo.el (toplevel): Added autoload setting for `md5'.
1422         (elmo-msgdb-path-encode-threshold): New user option.
1423         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1424         longer than `elmo-msgdb-path-encode-threshold'.
1426         * elmo-flag.el (elmo-global-mark-migrate): Use
1427         `elmo-folder-expand-msgdb-path' instead of
1428         `elmo-folder-msgdb-path'.
1430 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1432         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1433         element of the difference is nil.
1435 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1437         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1438         to the check logic of file systems which are weak in colon character.
1440 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1442         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1444 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1446         * elmo-maildir.el (elmo-maildir-move-file): New function.
1447         (elmo-folder-append-buffer): Use it.
1448         (elmo-folder-append-messages): Ditto.
1449         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1451         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1452         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1454         * elmo-maildir.el (elmo-maildir-separator): New user option.
1455         (elmo-maildir-adjust-separator): New macro.
1456         (elmo-maildir-list-location): Use it.
1457         (elmo-maildir-update-current): Ditto.
1458         (elmo-maildir-set-mark): Ditto.
1459         (elmo-maildir-delete-mark): Ditto.
1460         (These changes are based on Hiroya Murata's patch [wl: 13437])
1462 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1464         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1466 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1468         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1469         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1470         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1472 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1474         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1475         Use `with-temp-buffer'.
1477 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1479         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1481         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1482         `wl-read-search-condition').
1483         (elmo-read-search-condition-internal): Likewise.
1485         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1486         (elmo-flag-valid-p): New function.
1487         (elmo-folder-initialize): Check flag name is valid.
1489 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1491         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1492         delimiter to obtain root mailbox itself.
1494 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1496         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1497         type mismatch.
1499 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1501         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1502         as t.
1504 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1506         * elmo-shimbun.el (toplevel): Require cl at compile.
1508         * elmo-nntp.el (toplevel): Ditto.
1510         * elmo-nmz.el (toplevel): Ditto.
1512         * elmo-multi.el (toplevel): Ditto.
1514         * elmo-file.el (toplevel): Ditto.
1516         * elmo-dop.el (toplevel): Ditto.
1518         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1520 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1522         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1523         as nil.
1525         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1526         size of elmo-message-fetch-internal is 0 byte.
1528 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1530         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1532 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1534         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1535         always plugged.
1537 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1539         * elmo-maildir.el (elmo-map-message-fetch): Call
1540         `elmo-map-folder-set-flag'.
1542         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1543         (elmo-message-fetch): Merge from
1544         `elmo-message-fetch-with-cache-process'.
1546         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1547         (elmo-message-fetch): Define.
1549         * elmo-nntp.el (elmo-message-fetch): Renamed from
1550         `elmo-message-fetch-with-cache-process'.
1552         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1553         (elmo-message-fetch): Define.
1555         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1556         search-key.
1558         * elmo-shimbun.el (shimbun-mua-search-id): Use
1559         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1560         (elmo-shimbun-folder-shimbun-header): Ditto.
1561         (elmo-shimbun-get-headers): Ditto.
1562         (elmo-shimbun-update-overview): Ditto.
1564         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1566         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1567         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1569 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1571         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1572         message is cached.
1573         (elmo-message-fetch-string): Fixed argument.
1575 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1577         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1578         exchange order of arguments `section' and `unread'.
1579         (elmo-message-encache): Follow the API change.
1580         (elmo-message-match-condition): Ditto.
1581         (elmo-generic-folder-append-messages): Ditto.
1582         (elmo-message-fetch-string): New function.
1584         * elmo-split.el (elmo-split-subr): Ditto.
1586         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1588         * elmo-pipe.el (elmo-message-fetch): Ditto.
1590         * elmo-multi.el (elmo-message-fetch): Ditto.
1592         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1594         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1596         * elmo-filter.el (elmo-message-fetch): Ditto.
1598         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1600         * elmo-imap4.el (mime-imap-location-section-body): Use
1601         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1602         follow the API change.
1604 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1606         * elmo-access.el: New file.
1608         * elmo-null.el: Ditto.
1610         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1612 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1614         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1615         (elmo-network-session): New attribute `last-accessed'.
1616         (elmo-network-get-session): Discard network cache if elapsed time
1617         since last-accessed is larger than elmo-network-session-idle-timeout.
1619 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1621         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1622         and added `number', `require-entireness'.
1623         (elmo-find-fetch-strategy): Rewrite.
1624         (elmo-message-fetch): Unset `unread' flag when argument unread is
1625         non-nil.
1627         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1629         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1630         (elmo-message-fetch): Notify event `flag-changed'.
1632         * elmo-pipe.el: Likewise.
1634         * elmo-mime.el (elmo-mime-entity): New class.
1635         (elmo-mime-entity-display-p): New generic function.
1636         (elmo-mime-entity-display): Ditto.
1637         (elmo-mime-entity-display-as-is): Ditto.
1638         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1639         elmo-mime-entity.
1640         (elmo-make-mime-message-location): Removed.
1641         (elmo-mime-message-display): Ditto.
1642         (elmo-mime-display-as-is): Ditto.
1643         (elmo-message-mime-entity): New function.
1645         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1647         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1648         change.
1649         (elmo-message-fetch): Re-count flagged message number and notify
1650         event `flag-changed'.
1652         * elmo-version.el (elmo-version): Up to 2.13.1.
1654 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1656         * elmo-filter.el (elmo-message-field): Define.
1657         (elmo-message-set-field): Ditto.
1659 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1661         * elmo.el (elmo-message-set-cached): Call
1662         `elmo-folder-notify-event' with cache-changed.
1663         (elmo-event-handler-cache-changed): New generic function.
1665 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1667         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1668         instead of elmo-add-name-to-file.
1669         (elmo-folder-append-messages): Ditto.
1671 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1673         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1675 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1677         * elmo-version.el (elmo-version): Up to 2.13.0.
1679         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1680         `auto'.
1682         * modb-standard.el (modb-standard-economize-entity-size): Changed
1683         default value to `t'.
1685         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1686         `standard'.
1688         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1689         after parsing greeting string.
1691 2004-11-23  Daishi Kato <daishi@axlight.com>
1693         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1694         New user option.
1695         (elmo-spam-spamoracle-call): Use it.
1697 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1699         * elmo.el (elmo-message-accessible-p): Message in dop spool
1700         is accessible.
1702 2004-11-23  Daishi Kato <daishi@axlight.com>
1704         * elsp-spamoracle.el: New file.
1706 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1708         * elmo.el (elmo-message-flags-for-append): New function.
1709         (elmo-generic-folder-append-messages): Use it.
1711         * elmo-split.el (elmo-split-subr): Ditto.
1713         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1714         `flags' and use elmo-folder-append-buffer instead of
1715         write-region-as-binary.
1716         (elmo-dop-filter-pending-messages): New function.
1717         (elmo-folder-append-buffer-dop): Call
1718         elmo-dop-spool-folder-append-buffer with `flag'.
1719         (elmo-folder-set-flag-dop): Filter messages by
1720         elmo-dop-filter-pending-messages.
1721         (elmo-folder-unset-flag-dop): Ditto.
1722         (elmo-folder-append-buffer-dop-delayed): Use
1723         elmo-message-flags-for-append to get flags of the message and
1724         simplify.
1726 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1728         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1730 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1732         * elmo.el (elmo-folder): Added handlers slot.
1733         (elmo-event-handler): New class.
1734         (elmo-event-handler-flag-changed): New API.
1735         (elmo-folder-add-handler): New function.
1736         (elmo-folder-remove-handler): Ditto.
1737         (elmo-folder-notify-event): Ditto.
1738         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1739         `flag-changed'.
1740         (elmo-folder-unset-flag): Ditto.
1742         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1743         (elmo-folder-unset-flag): Ditto.
1745         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1746         (elmo-folder-unset-flag): Ditto.
1748         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1749         (elmo-folder-unset-flag): Ditto.
1751         * elmo-version.el (elmo-version): Up to 2.11.33.
1753 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1755         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1757 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1759         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1761         * elmo-flag.el (elmo-folder-unset-flag): Define.
1762         (elmo-global-flag-detach): Do process when the flag is not target
1763         flag.
1765 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1767         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1768         variable.
1769         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1771 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1773         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1774         function.
1775         (elmo-folder-delete-messages): Detach messages before delete
1776         messages from target folder.
1777         (elmo-folder-detach-messages): Set updated number-list to slot.
1779 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1781         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1783 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1785         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1787 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1789         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1790         internal use only).
1791         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1792         not modified.
1793         (elmo-folder-delete-messages): Define.
1794         (elmo-folder-move-messages): Don't call
1795         `elmo-folder-detach-messages'.
1796         (elmo-folder-synchronize): Rewrite.
1797         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1799         * elmo-util.el (elmo-last): New function.
1800         (elmo-set-list): Ditto.
1801         (elmo-number-set-delete-list): Ditto.
1802         (elmo-number-set-delete): Ditto.
1804         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1806         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1807         `elmo-folder-delete-messages' and don't delete location map.
1808         (elmo-folder-detach-messages): Define.
1810         * elmo-imap4.el (elmo-folder-delete): Use
1811         `elmo-folder-delete-messages-internal' instead of
1812         `elmo-folder-delete-messages'.
1814         * elmo-filter.el (elmo-folder-delete-messages): Call
1815         `elmo-folder-detach-messages'.
1816         (elmo-folder-detach-messages): Don't call
1817         `elmo-folder-detach-messages' for target folder.
1819         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1820         message deletion is succeeded.
1822         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1824         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1825         from `elmo-folder-delete-messages'.
1827         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1829         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1831         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1833         * elmo-version.el (elmo-version): Up to 2.11.32.
1835 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1837         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1838         (elmo-global-flag-list): Added obsolete variable setting.
1840         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1842         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1843         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1844         `elmo-mime-display-header-analysis' is nil.
1846         * elmo-flag.el (elmo-global-flags): Renamed from
1847         `elmo-global-flag-list' (All other related portions are changed).
1848         (elmo-local-flags): New variable.
1849         (elmo-local-flag-p): New function.
1850         (elmo-global-flag-set-internal): Cause an error when flag is not
1851         global.
1853 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1855         * elmo-util.el (elmo-concat-path): Treat empty path.
1857 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1859         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1860         field-or-fields).
1861         (elmo-split-address-match): Ditto.
1862         (elmo-split-equal): Ditto.
1863         (elmo-split-match): Ditto.
1865 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1867         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1868         (elmo-generic-folder-append-messages): If src message exists but
1869         has no flag, pass (read) for the FLAG argument of
1870         `elmo-folder-append-buffer'. Otherwise, pass nil.
1872         * elmo-split.el (elmo-split-subr): Likewise.
1874         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1876         * elmo-multi.el (elmo-message-flags): Ditto.
1878         * elmo-filter.el (elmo-message-flags): Ditto.
1880         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1881         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1882         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1883         
1884 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1886         * elmo-split.el (elmo-split-rule): Update comment.
1887         (elmo-split-address-equal): Allow 2nd argument to be a list.
1888         (elmo-split-address-match): Ditto.
1889         (elmo-split-equal): Ditto.
1890         (elmo-split-match): Ditto.
1892 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1894         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1895         (elmo-folder-append-msgdb): Don't treat `read'.
1896         (elmo-message-flags): Don't return `read'.
1898         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1899         (elmo-folder-unset-read-delayed): Ditto.
1901         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1903 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1905         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1906         deletion.
1908 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1910         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1911         header.
1913 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1915         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1916         here.
1917         (elmo-msgdb-save): Bind inhibit-quit.
1918         (modb-standard-message-entity): Ditto.
1920 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1922         * elmo-database.el: No need to require elmo-msgdb.
1924 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1926         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1927         instead of `elmo-list-subdirectories'.
1929 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1931         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1932         group entry.
1933         (elmo-folder-exists-p): "[" is empty.
1934         (elmo-folder-list-subfolders): Define.
1935         (elmo-folder-have-subfolder-p): Ditto.
1937 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1939         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1941 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1943         * elmo-filter.el (elmo-folder-local-p): Define.
1945 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1947         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1948         when entity is garbaged.
1949         (modb-standard-save-entity-1): Don't modify the original entity.
1951 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1953         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1955 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1957         * elmo.el (elmo-strict-folder-diff): Use
1958         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1960 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1962         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1963         (elmo-msgdb-message-number): Ditto.
1964         (elmo-msgdb-message-field): Ditto.
1966         * modb-standard.el (modb-standard-economize-entity-size): New user
1967         option.
1968         (modb-standard-loaded-message-id): New inline function.
1969         (modb-standard-load-entity): Use it.
1970         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1971         throw message-id string away.
1972         (elmo-msgdb-flag-available-p): Define.
1973         (elmo-msgdb-message-number): Ditto.
1974         (elmo-msgdb-message-field): Ditto.
1976         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1977         (suppoted -> supported).
1978         (modb-legacy-supported-flag-p): Ditto.
1979         (elmo-msgdb-set-flag): Ditto.
1980         (elmo-msgdb-unset-flag): Ditto.
1981         (elmo-msgdb-flag-available-p): Define.
1983         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1984         is `t', treat it as legacy entity.
1985         
1986         * elmo.el (elmo-message-flag-available-p): New generic function.
1987         (elmo-message-number): Ditto.
1988         (elmo-message-field): Use `elmo-msgdb-message-field'.
1990         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1992         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1993         (elmo-message-number): Ditto.
1995         * elmo-multi.el (elmo-message-number): Define.
1996         (elmo-message-flag-available-p): Ditto.
1998         * elmo-filter.el (elmo-message-flag-available-p): Define.
1999         (elmo-message-number): Ditto.
2001         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
2002         (elmo-folder-initialize): Load `max-number'.
2003         (elmo-folder-commit): Save it.
2004         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
2005         (elmo-global-flag-set-internal): Set up max-number slot.
2007 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
2009         * elmo-version.el (elmo-version): Up to 2.11.31.
2011 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
2013         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
2014         unibyte string of the current buffer for the argument of `md5'
2015         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
2017 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2019         * modb-legacy.el (modb-legacy-flag-list): New constant.
2020         (modb-legacy-suppoted-flag-p): New internal function.
2021         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
2022         (elmo-msgdb-unset-flag): Ditto.
2024 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
2026         * elmo.el (elmo-make-folder): Remove text properties for prefix.
2028         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
2029         from msgdb.
2031 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2033         * elmo-multi.el (elmo-folder-count-flags): Changed return value
2034         (follow the API change).
2036         * elmo-filter.el (elmo-folder-count-flags): Ditto.
2038 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2040         * modb-standard.el (modb-standard-digest-flags): Abolish.
2041         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
2043         * elmo-vars.el (elmo-digest-flags): New variable.
2044         (elmo-preserved-flags): Moved from elmo-flag.el.
2046         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
2047         (elmo-imap4-flag-to-imap-criteria): Ditto.
2048         (elmo-imap4-folder-list-flagged): Use it.
2050         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
2052         * elmo.el (elmo-folder-count-flags): Changed return value.
2054         * elmo-flag.el (elmo-preserved-flags): New variable.
2055         (elmo-get-global-flags): Use it.
2057         * modb-standard.el (modb-standard-digest-flags): New variable.
2058         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
2059         Changed behavior of `any'.
2061         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
2062         which are defined the Internet draft
2063         (draft-melnikov-imap-keywords-03.txt).
2064         (elmo-imap4-flags-to-imap): New function.
2065         (elmo-folder-append-buffer): Use it.
2067         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
2068         in the docstring.
2070         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
2071         avoid the bug of Emacs 21.3.
2073 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
2075         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
2076         function find-coding-system does not exist.
2078 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2080         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
2081         parsing.
2083 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2085         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
2086         response codes.
2088 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
2090         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
2091         (elmo-network-close-session): Follow the changes in
2092         `elmo-pop3-read-response'.
2093         (elmo-pop3-auth-user): Ditto.
2094         (elmo-pop3-auth-apop): Ditto.
2095         (elmo-network-initialize-session): Ditto.
2096         (elmo-network-authenticate-session): Ditto.
2097         (elmo-network-setup-session): Ditto.
2098         (elmo-folder-status): Ditto.
2099         (elmo-message-fetch-plugged): Ditto.
2100         (elmo-pop3-delete-msg): Ditto.
2102 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2104         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
2105         on failure.
2107 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2109         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
2110         style.
2111         (elmo-bind-directory): Ditto.
2113 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2115         * elmo.el (elmo-folder-append-messages): Note on return value.
2116         * elmo-archive.el (elmo-folder-append-messages): Don't return
2117         message numbers which could not be appended.
2119 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2121         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
2123 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2125         * elmo-version.el (elmo-version): Up to 2.11.30.
2127 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2129         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
2130         `mask'.
2132         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
2134         * elmo-multi.el (elmo-folder-synchronize): Likewise.
2135         (elmo-multi-split-numbers): Add elmo-folder object into each
2136         element of return value at first.
2137         (elmo-folder-delete-messages): Follow the above change.
2138         (elmo-folder-detach-messages): Ditto.
2140         * elmo-filter.el (elmo-folder-synchronize): Minimize message
2141         number which is synchronized in target folder.
2143 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2145         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
2146         Change default value to symbol `all'.
2147         (elmo-map-message-fetch): Change condition to update overview
2148         follow the above.
2150 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2152         * elmo-shimbun.el (elmo-map-message-fetch): Change default
2153         behavior to update overview.
2154         (elmo-shimbun-update-overview-folder-list): Note it.
2156 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2158         * modb-standard.el (modb-standard-message-entity): Avoid infinite
2159         recursive call.
2161 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2163         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
2164         buffer-disable-undo, it is unnecessary.
2165         (elmo-spam-register-good-messages): Ditto.
2167         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2168         Ditto.
2170         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
2172 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2174         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
2175         (elmo-set-work-buf): Use set-buffer-multibyte instead of
2176         elmo-set-buffer-multibyte.
2177         (elmo-object-load): Ditto.
2178         (elmo-save-buffer): Ditto.
2179         (elmo-delete-char): Ditto.
2180         (elmo-file-field-primitive-condition-match): Ditto.
2181         (elmo-mime-string): Ditto.
2183         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
2184         (elmo-archive-field-condition-match): Ditto.
2186         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
2188         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
2190         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
2191         (elmo-nntp-msgdb-create-message): Ditto.
2193         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2195         * elmo.el (elmo-message-match-condition): Ditto.
2196         (elmo-message-match-condition): Ditto.
2198         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2199         Ditto.
2201         * elmo-version.el (elmo-version): Up to 2.11.29.
2203         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
2204         (elsp-header): New backend.
2206         * elmo-util.el (elmo-decoded-field-body): New function.
2208 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2210         * elmo-version.el (elmo-version): Up to 2.11.28.
2212 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2214         * elmo-filter.el: Rewrite.
2216         * elmo-version.el (elmo-version): Up to 2.11.27.
2218 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
2220         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
2221         msgdb path for the localdir folder with absolute path.
2223         * utf7.el: Synch up with latest gnus/utf7.el;
2224         Modified for latest Emacs.
2226 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2228         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
2229         shimbun backend couldn't open.
2231 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
2233         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
2234         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
2235         when a destination folder is a filter folder.
2237 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2239         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
2240         (elmo-generic-folder-append-messages): Call elmo-message-flags
2241         with argument `msgid'.
2243         * elmo-split.el (elmo-split-subr): Ditto.
2245         * elmo-pipe.el (elmo-message-flags): Follow the API change.
2247         * elmo-multi.el (elmo-message-flags): Ditto.
2249 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2251         * elmo.el (elmo-folder): Add new slot `flag-table'.
2252         (elmo-folder-flag-table): New API.
2253         (elmo-folder-close-flag-table): Ditto.
2254         (elmo-folder-preserve-flags): New function.
2255         (elmo-generic-folder-append-messages): Use
2256         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
2257         Flag of a non-registered message, it sets to nil.
2258         Does not set flag to flag-table.
2260         * elmo-maildir.el (elmo-folder-append-buffer): Use
2261         `elmo-folder-preserve-flags'.
2262         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2263         `elmo-folder-close-flag-table'.
2265         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
2266         (elmo-archive-folder-append-buffer): Use
2267         `elmo-folder-preserve-flags'.
2269         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
2271         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
2273         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2274         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
2275         `elmo-folder-close-flag-table'.
2277         * elmo-version.el (elmo-version): Up to 2.11.26.
2279 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2281         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
2283         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
2284         md5's 4th and 5th argument (non-existent in flim one).
2286 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2288         * elmo-split.el (elmo-split-subr): Flag of a non-registered
2289         message, It sets to nil.
2291 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2293         * elmo.el (elmo-folder-list-messages): Merge lists only if both
2294         list is non-nil.
2296 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
2298         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
2300         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
2302         * elmo-util.el (elmo-uniq-sorted-list): New function.
2303         (elmo-make-number-list): Ditto.
2304         (elmo-number-set-to-number-list): Use elmo-make-number-list
2305         and don't use nreverse.
2307 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2309         * elmo-version.el (elmo-version): Up to 2.11.25.
2311 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2313         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
2314         field not exists in message, Use md5 message digest of header.
2316 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
2318         * elmo.el (elmo-folder-append-buffer): Add note on return value.
2319         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
2320         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
2321         * elmo-split.el (elmo-split-subr): Check return value of
2322         elmo-folder-append-buffer.
2324         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
2325         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2327         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
2328         message-id.
2330 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
2332         * elmo-split.el (elmo-split-subr): Append message with flag.
2334         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
2335         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
2336         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
2338 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
2340         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
2341         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
2342         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2344 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
2346         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
2347         with a function call of `process-buffer'.  All callers are updated.
2348         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
2349         Remove redundant `set-buffer' in a while loop.
2351 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
2353         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
2354         calls.
2356 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2358         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
2359         elsp-spamfilter-register-buffer-internal with current buffer.
2360         (elmo-spam-register-spam-buffer): Ditto.
2361         (elmo-spam-register-good-buffer): Ditto.
2363 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
2365         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
2366         if it is not contained in the response(A workaround for courier-imap).
2368 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2370         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
2371         parenthesis.
2373 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2375         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
2376         range.
2378 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2380         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
2381         of nconc.
2383         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
2384         argument handler.
2385         (elmo-msgdb-message-match-condition): Follow the change above.
2387 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2389         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
2390         folder name.
2392 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2394         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
2396 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2398         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
2400 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2402         * elmo-file.el (elmo-file-find): Fixed the problem when file is
2403         not found.
2405 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
2407         * elmo-file.el (elmo-file-find): Use expand-file-name for return
2408         value.
2409         (elmo-file-command-argument): Undo last change for cygwin.
2410         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
2411         Don't return nil.
2412         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
2414 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2416         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
2417         value returned from elmo-file-find is nil.
2419 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
2421         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2422         to elmo-vars.el.
2424         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2425         instead of insert-file-contents-as-binary.
2426         (elmo-message-set-field): New generic function.
2428         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2429         behavior change on `split-string'.
2431         * elmo-file.el (elmo-file-find): New function.
2432         (elmo-file-command): New user option.
2433         (elmo-file-command-argument): Ditto.
2434         (elmo-file-fetch-max-size): Ditto.
2435         (elmo-file-detect-format): New function.
2436         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2437         Use elmo-file-detect-format.
2438         (elmo-map-folder-list-message-locations): Don't treat directories.
2440 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2442         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2443         (elmo-passwd-alist-clear): Shred password before clear.
2444         (elmo-remove-passwd): Remove all mached pair.
2446 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2448         * elmo.el (elmo-folder-synchronize): Fix description of the return
2449         value.
2451 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2453         * elmo.el (elmo-message-fetch-bodystructure): New method.
2454         (elmo-message-fetch-bodystructure): Define default.
2456         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2457         elmo-message-fetch-bodystructure.
2458         (elmo-message-fetch-bodystructure): Define.
2460         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2462 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2464         * elmo-filter.el (elmo-message-folder): Define.
2466 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2468         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2469         elmo-delete-cr-buffer.
2471         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2473         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2475         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2477         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2478         type seems to be a text.
2480 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2482         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2483         (elmo-spam-register-good-buffer): Ditto.
2484         (elmo-spam-spamassassin-register-messages): Ditto.
2486         * elmo-util.el (elmo-string-member-ignore-case): Define with
2487         static-cond.
2489 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2491         * elmo.el (elmo-folder-type): Undo last change.
2493         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2495         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2496         warnings.
2498         * elmo-file.el: New file.
2499         
2500         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2502         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2503         variable.
2504         (elmo-spam-spamassassin-register-messages): New inline function.
2505         (elmo-spam-register-spam-messages): Define.
2506         (elmo-spam-register-good-messages): Ditto.
2508         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2509         Fixed typo.
2511         * elmo.el (toplevel): Added autoload setting for
2512         `elmo-get-global-flags'.
2513         (elmo-message-has-global-flag-p): New function.
2514         (elmo-message-set-global-flags): Ditto.
2515         (elmo-folder-type): Improvement for name: format.
2517         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2518         availability of keyword flags.
2519         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2520         (elmo-folder-list-flagged-plugged): Renamed from
2521         elmo-folder-list-flagged-unplugged.
2522         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2523         accept any flag as keyword flag.
2524         (elmo-folder-set-flag-plugged): Accept keyword flags.
2525         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2527         * elmo-flag.el (elmo-get-global-flags): New function.
2529         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2530         folders.
2532         * elmo-version.el (elmo-version): Up to 2.11.24.
2534 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2536         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2537         elmo-multiple-field-body instead of std11-field-body to check all
2538         headers.
2540 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2542         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2543         or "size".
2545 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2547         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2548         unintern is unbound.
2550 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2552         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2553         Protect from infinite loop.
2555 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2557         * elsp-bogofilter.el
2558         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2559         (elmo-spam-bogofilter-register-messages): New internal function.
2560         (elmo-spam-register-spam-messages): Define.
2561         (elmo-spam-register-good-messages): Ditto.
2563 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2565         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2566         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2567         (elmo-spam-bogofilter-call): Fixed the last change.
2568         (elmo-spam-bogofilter-arguments): Ditto.
2570         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2571         Follow the options change of latest bogofilter.
2573         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2574         (elmo-spam-bogofilter-good-switch): Ditto.
2575         (elmo-spam-bogofilter-arguments-alist): New user option.
2576         (elmo-spam-bogofilter-debug): Ditto.
2577         (elmo-spam-bogofilter-call): Renamed from
2578         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2579         is non-nil, insert output in buffer for debug.
2580         (elmo-spam-bogofilter-arguments): New macro.
2581         (elmo-spam-buffer-spam-p): Use it.
2582         (elsp-bogofilter-register-buffer): Ditto.
2584 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2586         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2587         regexp.
2589 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2591         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2592         value as "ruby".
2593         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2594         (elmo-spam-bsfilter-program): Set default value as full path for
2595         `bsfilter'.
2596         (elmo-spam-bsfilter-debug): New user option.
2597         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2598         non-nil, insert output in buffer for debug. Fix treating of
2599         argument.
2601 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2603         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2604         `elmo-maildir-flag-specs' element instead of one.
2605         (elmo-map-folder-unset-flag): Ditto.
2606         (Reported by Ken Makimura <macky@astem.or.jp>)
2608         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2609         (elmo-folder-unset-flag-plugged): Ditto.
2611 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2613         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2614         to `reads' slot only if `in-msgdb' is nil.
2616 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2618         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2619         and complement argument list.
2621 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2623         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2624         instead of elmo-folder-list-flagged.
2626 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2628         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2630         * elsp-bsfilter.el: New file.
2632         * elmo-pipe.el (elmo-folder-list-unreads,
2633         elmo-folder-list-answereds,
2634         elmo-folder-list-importants,
2635         elmo-folder-flag-as-important,
2636         elmo-folder-unflag-important,
2637         elmo-folder-flag-as-read,
2638         elmo-folder-unflag-read,
2639         elmo-folder-flag-as-answered,
2640         elmo-folder-unflag-answered): Remove.
2641         (elmo-folder-set-flag): Define.
2642         (elmo-folder-unset-flag): Ditto.
2644         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2645         (elmo-folder-set-flag): Define.
2646         (elmo-folder-unset-flag): Ditto.
2647         (elmo-folder-list-unreads): Remove.
2648         (elmo-folder-list-flagged): Define.
2650         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2651         (elmo-folder-list-unreads,
2652         elmo-folder-list-importants,
2653         elmo-folder-list-answereds,
2654         elmo-folder-list-unreads-plugged,
2655         elmo-folder-list-importants-plugged,
2656         elmo-folder-list-answereds-plugged): Remove.
2657         (elmo-folder-list-flagged-plugged): New method.
2658         (elmo-folder-unflag-important,
2659         elmo-folder-flag-as-important,
2660         elmo-folder-unflag-read,
2661         elmo-folder-flag-as-read,
2662         elmo-folder-unflag-answered,
2663         elmo-folder-flag-as-answered,
2664         elmo-folder-flag-as-read-unplugged,
2665         elmo-folder-unflag-read-unplugged,
2666         elmo-folder-flag-as-important-unplugged,
2667         elmo-folder-unflag-important-unplugged,
2668         elmo-folder-flag-as-answered-unplugged,
2669         elmo-folder-unflag-answered-unplugged): Remove.
2670         (elmo-folder-set-flag): Define.
2671         (elmo-folder-unset-flag): Ditto.
2672         (elmo-folder-set-flag-unplugged): Ditto.
2673         (elmo-folder-unset-flag-unplugged): Ditto.
2675         * elmo-multi.el (elmo-folder-list-unreads,
2676         elmo-folder-list-answereds,
2677         elmo-folder-list-importants,
2678         elmo-folder-flag-as-important,
2679         elmo-folder-unflag-important,
2680         elmo-folder-flag-as-read,
2681         elmo-folder-unflag-read,
2682         elmo-folder-flag-as-answered,
2683         elmo-folder-unflag-answered): Remove.
2684         (elmo-folder-set-flag): Define.
2685         (elmo-folder-unset-flag): Ditto.
2687         * elmo-map.el (elmo-map-folder-unflag-important,
2688         elmo-map-folder-flag-as-important,
2689         elmo-map-folder-unflag-read,
2690         elmo-map-folder-flag-as-read,
2691         elmo-map-folder-unflag-answered,
2692         elmo-map-folder-flag-as-answered): Remove.
2693         (elmo-map-folder-set-flag): New method.
2694         (elmo-map-folder-unset-flag): Ditto.
2695         (elmo-map-folder-list-unreads,
2696         elmo-map-folder-list-importants,
2697         elmo-map-folder-list-answereds): Remove.
2698         (elmo-folder-list-flagged-internal): Define.
2699         (elmo-map-folder-list-flagged): New method.
2701         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2702         (elmo-map-folder-list-unreads,
2703         elmo-map-folder-list-importants,
2704         elmo-map-folder-list-flagged): Remove.
2705         (elmo-map-folder-list-flagged): Define.
2706         (elmo-map-folder-flag-as-important,
2707         elmo-map-folder-unflag-important,
2708         elmo-map-folder-flag-as-read,
2709         elmo-map-folder-unflag-read,
2710         elmo-map-folder-flag-as-answered,
2711         elmo-map-folder-unflag-answered): Remove.
2712         (elmo-maildir-set-mark-messages): New internal function.
2713         (elmo-map-folder-set-flag): Define.
2714         (elmo-map-folder-unset-flag): Ditto.
2716         * elmo.el (toplevel): Added autoload setting for
2717         `elmo-folder-list-global-flag-messages'.
2718         (elmo-folder-list-unreads,
2719         elmo-folder-list-importants,
2720         elmo-folder-list-answereds): Remove.
2721         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2722         Return a list whitch merged with messages have global flag.
2723         (elmo-folder-list-flagged-internal): New method.
2724         (elmo-folder-unflag-important,
2725         elmo-folder-flag-as-important,
2726         elmo-folder-unflag-read,
2727         elmo-folder-flag-as-read,
2728         elmo-folder-unflag-answered,
2729         elmo-folder-flag-as-answered): Remove.
2730         (elmo-folder-set-flag): New method.
2731         (elmo-folder-unset-flag): Ditto.
2732         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2733         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2735         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2736         (elmo-folder-list-unreads-plugged,
2737         elmo-folder-list-importants-plugged,
2738         elmo-folder-list-answereds-plugged,
2739         elmo-folder-list-flagged-unplugged,
2740         elmo-folder-unflag-important-plugged,
2741         elmo-folder-flag-as-important-plugged,
2742         elmo-folder-unflag-read-plugged,
2743         elmo-folder-flag-as-read-plugged,
2744         elmo-folder-unflag-answered-plugged,
2745         elmo-folder-flag-as-answered-plugged): Remove.
2746         (elmo-folder-set-flag-plugged,
2747         elmo-folder-unset-flag-plugged): Define.
2749         * elmo-flag.el (elmo-folder-initialize): Register to
2750         `elmo-global-flag-list' if flag is not global.
2751         (elmo-folder-append-messages): Set flag to source messages.
2753         * elmo-filter.el (elmo-filter-folder-list-unreads,
2754         elmo-folder-list-unreads,
2755         elmo-filter-folder-list-importants,
2756         elmo-folder-list-importants,
2757         elmo-folder-flag-as-read,
2758         elmo-folder-unflag-read,
2759         elmo-folder-flag-as-important,
2760         elmo-folder-unflag-important,
2761         elmo-folder-flag-as-answered,
2762         elmo-folder-unflag-answered): Remove.
2763         (elmo-folder-set-flag): Define.
2764         (elmo-folder-unset-flag): Ditto.
2766         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2767         elmo-folder-unflag-read-dop,
2768         elmo-folder-flag-as-important-dop,
2769         elmo-folder-unflag-important-dop,
2770         elmo-folder-flag-as-answered-dop,
2771         elmo-folder-unflag-answered-dop): Remove.
2772         (elmo-folder-set-flag-dop,
2773         elmo-folder-unset-flag-dop,
2774         elmo-folder-set-important-delayed,
2775         elmo-folder-unset-important-delayed,
2776         elmo-folder-set-read-delayed,
2777         elmo-folder-unset-read-delayed,
2778         elmo-folder-set-answered-delayed,
2779         elmo-folder-unset-answered-delayed): New function.
2780         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2781         (elmo-dop-queue-method-name-alist): Ditto.
2783         * elmo-version.el (elmo-version): Up to 2.11.23.
2785 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2787         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2789         * elsp-sa.el: New file.
2791 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2793         * modb-standard.el (modb-standard-message-entity): New function.
2794         (elmo-msgdb-message-entity): Use it.
2796 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2798         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2799         behavior when one-level is nil.
2801         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2803         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2805 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2807         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2808         get max number.
2809         (elmo-generic-folder-diff): Ditto.
2811         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2812         (elmo-folder-update-number): Ditto.
2814         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2815         (elmo-folder-next-message-number-dop): Ditto.
2817 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2819         * elmo-filter.el (elmo-folder-msgdb-create): Use
2820         `elmo-message-entity' and `elmo-message-flags' instead of
2821         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2823 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2825         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2826         `if-exists'.
2828 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2830         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2832         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2834         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2836 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2838         * elmo-version.el (elmo-version): Up to 2.11.22.
2840 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2842         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2844 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2846         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2847         if the message dose not exist.
2849 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2851         * elmo-version.el (elmo-version): Up to 2.11.21.
2853 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2855         * modb-standard.el (toplevel): Don't require mime.
2857 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2859         * elsp-bogofilter.el (toplevel): Don't require path-util.
2860         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2861         (elmo-spam-bogofilter-header): Abolish.
2862         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2863         (elmo-spam-bogofilter-args): New user option.
2864         (elsp-bogofilter-call-bogofilter): New internal function.
2865         (elmo-spam-buffer-spam-p): Use it.
2866         (elsp-bogofilter-register-buffer): Renamed from
2867         `elmo-spam-bogofilter-register-buffer';
2868         Use `elsp-bogofilter-call-bogofilter'.
2869         (elmo-spam-register-spam-buffer): Follow the change above.
2870         (elmo-spam-register-good-buffer): Ditto.
2872 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2874         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2875         message-id is nil do nothing.
2877 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2879         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2880         Revival.
2881         (elmo-imap4-session): Removed use-flag slot.
2882         (elmo-imap4-session-select-mailbox): Undo last change.
2883         (elmo-folder-use-flag-p): Use
2884         elmo-imap4-disuse-server-flag-mailbox-regexp.
2886 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2888         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2889         (elmo-imap4-session-select-mailbox): Set it up.
2890         (elmo-folder-use-flag-p): Return value of use-flag slot.
2892 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2894         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2895         message-id is nil.
2896         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2898         * modb-entity.el (elmo-message-entity-handler): Likewise.
2900 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2902         * elmo.el (toplevel): Remove setting of autoloding for
2903         elmo-global-flag-initialize.
2904         (elmo-init): Don't call elmo-global-flag-initialize.
2905         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2907         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2908         (elmo-global-mark-migrate): Don't call it.
2909         (elmo-global-mark-upgrade): Ditto.
2911 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2913         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2914         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2916         * elmo-vars.el (elmo-init-hook): New user option.
2918         * elmo.el (elmo-init): Run the elmo-init-hook.
2920         * elmo-flag.el (elmo-global-mark-migrate): New function.
2922 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2924         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2925         Undo last change (move to elmo-msgdb-unset-flag).
2926         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2927         flag is unset.
2929 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2931         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2932         read flag is set.
2933         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2934         (elmo-msgdb-unset-flag): Ditto.
2936 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2938         * elmo-split.el (elmo-split): Return split message count.
2940 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2942         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2943         is nil.
2945 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2947         * elmo.el (elmo-folder-unflag-important): Call
2948         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2949         a symbol `always'.
2951         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2952         before unset flag.
2953         (elmo-global-flag-detach): Delete the message from flag folder, if
2954         `delete-if-none' is a symbol `always'.
2956 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2958         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2959         `elmo-spam-spamfilter-decode-buffer'.
2960         (elsp-spamfilter-register-buffer-internal): New internal function.
2961         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2962         (elmo-spam-register-spam-buffer): Ditto.
2963         (elmo-spam-register-good-buffer): Ditto.
2965         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2966         change.
2967         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2968         (elmo-spam-register-spam-buffer): Follow the API change.
2969         (elmo-spam-register-good-buffer): Ditto.
2971         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2972         (elmo-split-spam-p): Added argument plist; Call
2973         `elmo-spam-buffer-spam-p' with new argument register.
2975         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2976         `register'.
2977         (elmo-spam-message-spam-p): Ditto.
2978         (elmo-spam-register-spam-buffer): Added optional argument
2979         `restore'.
2980         (elmo-spam-register-good-buffer): Ditto.
2981         (elmo-spam-register-spam-messages): Ditto.
2982         (elmo-spam-register-good-messages): Ditto.
2984 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2986         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2987         register into good corpus.
2988         (elmo-spam-register-good-buffer): Fixed to register into bad
2989         corpus.
2991 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2993         * elmo-version.el (elmo-version): Up to 2.11.20.
2995         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2996         change.
2998         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2999         flag without depending on \Recent flag.
3001 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3003         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
3004         (elmo-spam-modified-p): Defined.
3005         (elmo-spam-save-status): Set `modified' slot to nil.
3006         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
3007         (elmo-spam-register-good-buffer): Ditto.
3009         * elmo-spam.el (elmo-spam-modified-p): New API.
3011 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3013         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
3014         duplicate definition.
3016         * elmo-util.el (elmo-unfold-field-body): New function.
3017         (elmo-msgdb-get-message-id-from-buffer): Use it.
3019         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3020         Fixed the last change; Use elmo-unfold-field-body.
3022 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3024         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
3025         Unfold date value.
3027 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3029         * elmo-spam.el (elmo-spam-save-status): New API.
3031         * elsp-spamfilter.el: New file.
3033 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3035         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
3037 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3039         * elmo-split.el (elmo-split-spam-p): New function.
3041         * elmo-spam.el: New file.
3043         * elsp-bogofilter.el: Ditto.
3045 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
3047         * elmo.el (elmo-folder-next-message-number): New API.
3048         (elmo-folder-next-message-number): Define.
3049         (elmo-message-field): Don't check folder length.
3051         * elmo-net.el (elmo-folder-next-message-number): Define.
3052         (elmo-folder-next-message-number-unplugged): Define.
3054         * elmo-map.el (elmo-folder-next-message-number): Define.
3055         (elmo-folder-delete-messages): Clear hash value.
3057         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
3059         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
3060         (elmo-folder-delete-messages-dop-delayed): Always return t.
3062         * elmo-version.el (elmo-version): Up to 2.11.19.
3064 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3066         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
3067         change.
3069         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
3070         identical cons cell into the mark-alist and the hash table.
3072 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
3074         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
3075         elmo-folder-list-messages with argument `visible-only' as t.
3077         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
3078         (elmo-folder-msgdb-create): Check the target folder.
3080 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
3082         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
3083         `permanentflag' instead of `flags'.
3084         (elmo-folder-open): Ditto.
3085         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
3086         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
3087         (elmo-folder-use-flag-p): Always return t.
3088         (elmo-imap4-session-select-mailbox): Use value of `flags' if
3089         `permanentflags' does not exist.
3090         (elmo-folder-open): Ditto.
3092 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
3094         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
3095         is nil.
3096         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
3098         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
3099         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
3100         response.
3101         (elmo-folder-open): Ditto.
3102         (elmo-imap4-set-flag): Send store flag command only when the `flags'
3103         slot of the session includes the flag.
3104         (elmo-imap4-session-flag-available-p): New function.
3105         (elmo-imap4-folder-list-flagged): Ditto.
3106         (elmo-folder-list-unreads-plugged): Use it.
3107         (elmo-folder-list-importants-plugged): Ditto.
3108         (elmo-folder-list-answereds-plugged): Ditto.
3109         (elmo-imap4-search-internal-primitive): Ditto.
3110         (elmo-imap4-folder-list-any-plugged,
3111         elmo-imap4-folder-list-digest-plugged): Abolish.
3113         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
3114         if numbers is nil.
3116 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3118         * elmo-util.el (toplevel): Require emu for char-list-to-string.
3120 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
3122         * elmo-util.el (elmo-get-hash-val): Simplify.
3123         (elmo-set-hash-val): Rewrite.
3125 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3127         * elmo.el (elmo-folder-list-messages): Append killed messages into
3128         result if `visible-only' is nil and `in-msgdb' is non-nil.
3130         * elmo-util.el (elmo-uniq-list): Added optional argument
3131         `delete-function'.
3133         * modb.el (elmo-msgdb-flag-count): New API.
3135         * modb-standard.el (modb-standard): Added slot flag-count.
3136         (modb-standard-countup-flags): New function.
3137         (modb-standard-load-flag): Call it.
3138         (elmo-msgdb-append): Ditto.
3139         (elmo-msgdb-clear): Clear slot flag-count.
3140         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
3141         (elmo-msgdb-unset-flag): Treat `all' flag and call
3142         modb-standard-countup-flags.
3143         (elmo-msgdb-flag-count): Define.
3144         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
3145         (elmo-msgdb-delete-messages): Ditto.
3147         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
3148         (elmo-msgdb-flag-count): Define.
3150         * elmo.el (elmo-folder-list-messages): Undo last change.
3151         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
3152         (elmo-folder-kill-messages): Unset all flags to numbers.
3154         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
3155         elmo-folder-kill-messages.
3157         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
3158         (elmo-nntp-folder-delete-messages): Abolish.
3160         * elmo-version.el (elmo-version): Up to 2.11.18.
3162 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3164         * elmo.el (elmo-folder-kill-messages-before): Abolish.
3165         (elmo-folder-kill-messages-range): New function.
3166         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
3167         instead of elmo-folder-kill-messages-before.
3169 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
3171         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
3172         elmo-imap4-current-msgdb to decide entity handler.
3174 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
3176         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
3178         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
3179         inline function.
3180         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
3181         (elmo-msgdb-overview-entity-set-number,
3182         elmo-msgdb-overview-entity-get-references,
3183         elmo-msgdb-overview-entity-set-references,
3184         elmo-msgdb-overview-entity-get-from-no-decode,
3185         elmo-msgdb-overview-entity-get-from,
3186         elmo-msgdb-overview-entity-set-from,
3187         elmo-msgdb-overview-entity-get-subject,
3188         elmo-msgdb-overview-entity-get-subject-no-decode,
3189         elmo-msgdb-overview-entity-set-subject,
3190         elmo-msgdb-overview-entity-get-date,
3191         elmo-msgdb-overview-entity-set-date,
3192         elmo-msgdb-overview-entity-get-to,
3193         elmo-msgdb-overview-entity-get-cc,
3194         elmo-msgdb-overview-entity-get-size,
3195         elmo-msgdb-overview-entity-set-size,
3196         elmo-msgdb-overview-entity-get-extra,
3197         elmo-msgdb-overview-entity-set-extra,
3198         elmo-msgdb-overview-entity-get-extra-field,
3199         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
3200         (elmo-msgdb-make-index): Use
3201         `elmo-msgdb-overview-entity-get-number-internal'.
3202         (elmo-msgdb-clear-index): Ditto.
3203         (elmo-msgdb-append-entity): Ditto;
3204         Use `elmo-msgdb-overview-entity-get-id-internal'.
3206         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
3207         elmo-msgdb-overview-entity-set-number,
3208         elmo-msgdb-overview-entity-get-references,
3209         elmo-msgdb-overview-entity-set-references,
3210         elmo-msgdb-overview-entity-get-from-no-decode,
3211         elmo-msgdb-overview-entity-get-from,
3212         elmo-msgdb-overview-entity-set-from,
3213         elmo-msgdb-overview-entity-get-subject,
3214         elmo-msgdb-overview-entity-get-subject-no-decode,
3215         elmo-msgdb-overview-entity-set-subject,
3216         elmo-msgdb-overview-entity-get-date,
3217         elmo-msgdb-overview-entity-set-date,
3218         elmo-msgdb-overview-entity-get-to,
3219         elmo-msgdb-overview-entity-get-cc,
3220         elmo-msgdb-overview-entity-get-size,
3221         elmo-msgdb-overview-entity-set-size,
3222         elmo-msgdb-overview-entity-get-extra,
3223         elmo-msgdb-overview-entity-set-extra,
3224         elmo-msgdb-overview-entity-get-extra-field,
3225         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
3226         and rewrote for backward compatibility.
3228 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3230         * elmo.el (elmo-message-entity-number,
3231         elmo-message-entity-set-number,
3232         elmo-message-entity-field,
3233         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
3235         * elmo-msgdb.el (elmo-message-entity-number,
3236         elmo-message-entity-set-number,
3237         elmo-message-entity-field,
3238         elmo-message-entity-set-field): Moved from elmo.el.
3240 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
3242         * elmo.el (toplevel): Changed definition orders.
3244 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3246         * modb.el (elmo-msgdb-search): New API .
3247         (elmo-msgdb-match-condition): Ditto.
3249         * modb-standard.el (elmo-msgdb-search): Define.
3251         * modb-legacy.el (elmo-msgdb-search): Ditto.
3253         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
3254         from elmo-msgdb-match-condition-internal.
3256         * elmo.el (elmo-folder-search-fast): Abolish.
3257         (elmo-folder-search): Use elmo-msgdb-search and
3258         elmo-with-progress-display.
3260         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
3261         as msgdb API.
3263         * elmo.el (elmo-folder): Remove slot message-modified and
3264         flag-modified.
3265         (elmo-folder-set-message-modified): Abolish.
3266         (elmo-generic-folder-commit): Follow the change above.
3267         (elmo-folder-synchronize): Ditto.
3269         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
3271         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3273         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
3275 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3277         * modb-standard.el (modb-standard-make-message-entity,
3278         elmo-msgdb-make-message-entity,
3279         elmo-msgdb-create-message-entity-from-buffer,
3280         elmo-msgdb-message-entity-number,
3281         elmo-msgdb-message-entity-set-number,
3282         elmo-msgdb-message-entity-field,
3283         elmo-msgdb-message-entity-set-field,
3284         elmo-msgdb-copy-message-entity,
3285         elmo-msgdb-match-condition-internal): Remove.
3287         * modb-entity.el: New file (again).
3289         * modb.el (toplevel): Require modb-entity.
3290         (elmo-msgdb-message-entity-handler): New method.
3292         * modb-standard.el (modb-standard-entity-id): Use
3293         elmo-message-entity-handler.
3294         (modb-standard-load-entity): Ditto.
3295         (elmo-msgdb-append-entity): Ditto.
3296         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3298         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
3299         elmo-msgdb-decoded-cache-hashtb,
3300         (modb-legacy-make-message-entity,
3301         elmo-msgdb-make-message-entity,
3302         elmo-msgdb-create-message-entity-from-buffer,
3303         elmo-msgdb-message-entity-number,
3304         elmo-msgdb-message-entity-set-number,
3305         elmo-msgdb-message-entity-field,
3306         elmo-msgdb-message-entity-set-field,
3307         elmo-msgdb-copy-message-entity,
3308         elmo-msgdb-match-condition-internal,
3309         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
3311         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
3312         (elmo-message-entity-set-number): Ditto.
3313         (elmo-message-entity-field): Ditto.
3314         (elmo-message-entity-set-field): Ditto.
3316         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
3318         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3320         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3322         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3323         (elmo-nntp-msgdb-create-message): Ditto.
3325         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
3326         (elmo-folder-msgdb-create): Add unread flag.
3328         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3330         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
3332         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
3334         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3336         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
3337         elmo-msgdb-messge-entity-handler.
3338         * elmo-version.el (elmo-version): Up to 2.11.17.
3340 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3342         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
3343         change.
3345 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
3347         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
3349         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
3350         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
3351         (elmo-msgdb-flag-table): Ditto.
3352         (elmo-msgdb-sort-by-date): Ditto.
3354         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
3356         * modb-standard.el (toplevel): Require mime.
3357         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
3358         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
3359         elmo-msgdb-message-entity-number.
3360         (elmo-msgdb-append-entity): Ditto.
3361         (elmo-msgdb-create-message-entity-from-file): Remove.
3362         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
3363         corresponds to the entity.
3364         (elmo-msgdb-message-entity-number): Do nothing currently.
3365         (elmo-msgdb-message-entity-field): Ditto.
3366         (elmo-msgdb-message-entity-set-field): Ditto.
3367         (elmo-msgdb-copy-message-entity): Ditto.
3368         (elmo-msgdb-match-condition-internal): Ditto.
3370         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
3371         elmo-util.el.
3372         (elmo-msgdb-create-message-entity-from-file): Remove.
3374         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
3375         modb-legacy.el.
3376         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
3378         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
3380 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3382         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
3383         (elmo-msgdb-message-entity-field): Ditto.
3384         (elmo-msgdb-message-entity-number): Ditto.
3386 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3388         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
3389         Fixed how to set extra field into entity.
3390         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3391         symbol.
3393         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
3394         Fixed how to set extra field into entity.
3395         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
3396         symbol.
3398 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
3400         * modb.el (elmo-message-entity-db): New function.
3401         (elmo-msgdb-make-message-entity): New API.
3402         (elmo-msgdb-message-entity-number): Ditto.
3403         (elmo-msgdb-message-entity-set-number): Ditto.
3404         (elmo-msgdb-message-entity-field): Ditto.
3405         (elmo-msgdb-message-entity-set-field): Ditto.
3406         (elmo-msgdb-copy-message-entity): Ditto.
3407         (elmo-msgdb-create-message-entity-from-file): Ditto.
3408         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3409         (elmo-msgdb-match-condition-internal): Ditto.
3411         * modb-standard.el (modb-legacy): Require modb-legacy.
3412         (modb-standard-make-message-entity): New inline function.
3413         (elmo-msgdb-make-message-entity): Define.
3414         (elmo-msgdb-create-message-entity-from-file): Ditto.
3415         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3416         (elmo-msgdb-message-entity-field): Ditto.
3417         (elmo-msgdb-message-entity-set-field): Ditto.
3418         (elmo-msgdb-copy-message-entity): Ditto.
3419         (elmo-msgdb-match-condition-internal): Ditto.
3421         * modb-legacy.el: Don't require modb-entity.
3422         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3423         (elmo-msgdb-match-condition-primitive): Ditto.
3424         (elmo-msgdb-get-decoded-cache): Ditto.
3425         (elmo-msgdb-overview-entity-get-id): Ditto.
3426         (elmo-msgdb-overview-entity-get-number): Ditto.
3427         (elmo-msgdb-overview-entity-set-number): Ditto.
3428         (elmo-msgdb-overview-entity-get-references): Ditto.
3429         (elmo-msgdb-overview-entity-set-references): Ditto.
3430         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3431         (elmo-msgdb-overview-entity-get-from): Ditto.
3432         (elmo-msgdb-overview-entity-set-from): Ditto.
3433         (elmo-msgdb-overview-entity-get-subject): Ditto.
3434         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3435         (elmo-msgdb-overview-entity-set-subject): Ditto.
3436         (elmo-msgdb-overview-entity-get-date): Ditto.
3437         (elmo-msgdb-overview-entity-set-date): Ditto.
3438         (elmo-msgdb-overview-entity-get-to): Ditto.
3439         (elmo-msgdb-overview-entity-get-cc): Ditto.
3440         (elmo-msgdb-overview-entity-get-size): Ditto.
3441         (elmo-msgdb-overview-entity-set-size): Ditto.
3442         (elmo-msgdb-overview-entity-get-extra): Ditto.
3443         (elmo-msgdb-overview-entity-set-extra): Ditto.
3444         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3445         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3446         (elmo-msgdb-number-load): Ditto.
3447         (elmo-msgdb-overview-load): Ditto.
3448         (elmo-msgdb-mark-load): Ditto.
3449         (elmo-msgdb-number-save): Ditto.
3450         (elmo-msgdb-mark-save): Ditto.
3451         (elmo-msgdb-overview-save): Ditto.
3452         (modb-legacy-make-message-entity): New inline function.
3453         (elmo-msgdb-insert-file-header): Ditto.
3454         (elmo-msgdb-make-message-entity): Define.
3455         (elmo-msgdb-create-message-entity-from-file): Ditto.
3456         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3457         (elmo-msgdb-message-entity-number): Ditto.
3458         (elmo-msgdb-message-entity-set-number): Ditto.
3459         (elmo-msgdb-message-entity-field): Ditto.
3460         (elmo-msgdb-message-entity-set-field): Ditto.
3461         (elmo-msgdb-copy-message-entity): Ditto.
3462         (elmo-msgdb-match-condition-internal): Ditto.
3464         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3465         (elmo-message-copy-entity): Rewrite.
3466         (elmo-message-entity-number): Ditto.
3467         (elmo-message-entity-set-number): Ditto.
3468         (elmo-message-entity-field): Use elmo-message-entity-db.
3469         (elmo-message-entity-set-field): Ditto.
3470         (elmo-message-field): Rewrite.
3472         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3473         elmo-msgdb.el
3474         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3476         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3477         elmo-message-entity-field.
3478         (elmo-shimbun-folder-shimbun-header): Ditto.
3479         (elmo-shimbun-entity-to-header): Ditto.
3480         (elmo-folder-msgdb-create): Ditto.
3481         (elmo-shimbun-msgdb-create-entity): Ditto;
3482         Use elmo-msgdb-create-message-entity-from-buffer.
3483         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3484         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3486         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3487         elmo-msgdb-create-message-entity-from-file and 
3488         elmo-message-entity-field.
3490         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3491         elmo-message-entity-number.
3492         (elmo-pop3-msgdb-create-message): Use
3493         elmo-msgdb-create-message-entity-from-buffer,
3494         elmo-message-entity-set-field, elmo-message-entity-number and
3495         elmo-message-entity-set-number.
3497         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3498         the API change in elmo-msgdb-make-message-entity.
3499         (elmo-nntp-msgdb-create-message): Use
3500         elmo-msgdb-create-message-entity-from-buffer.
3502         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3503         elmo-message-entity-field and
3504         elmo-msgdb-create-message-entity-from-file.
3506         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3507         (elmo-msgdb-get-field): Abolish.
3508         (elmo-msgdb-get-number): Rewrite.
3509         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3510         (elmo-msgdb-flag-table): Ditto.
3511         (elmo-msgdb-get-last-message-id,
3512         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3513         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3514         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3515         (elmo-msgdb-create-overview-from-buffer,
3516         elmo-msgdb-overview-get-parent-entity): Abolish.
3518         * elmo-mime.el (elmo-mime-display-as-is): Use
3519         elmo-message-entity-field.
3521         * elmo-map.el (elmo-folder-pack-numbers): Use
3522         elmo-message-entity-set-number.
3524         * elmo-maildir.el (elmo-folder-msgdb-create): 
3525         elmo-msgdb-create-message-entity-from-file instead of
3526         elmo-msgdb-create-overview-entity-from-file.
3528         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3529         msgdb.
3530         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3531         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3533         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3534         elmo-messge-entity-field and elmo-message-entity-number.
3535         (elmo-imap4-fetch-callback-1): Call
3536         elmo-msgdb-create-message-entity-from-buffer instead of
3537         elmo-msgdb-create-overview-from-buffer. 
3538         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3539         (elmo-find-fetch-strategy): Likewise.
3541         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3542         elmo-localdir-msgdb-create-entity with argument msgdb.
3544         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3545         and elmo-message-entity-set-number.
3547         * elmo-cache.el (elmo-folder-msgdb-create): Use
3548         elmo-message-entity-field.
3549         (elmo-folder-msgdb-create): Call
3550         elmo-msgdb-create-message-entity-from-file instead of
3551         elmo-msgdb-create-overview-entity-from-file.
3553         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3554         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3555         instead of elmo-msgdb-create-overview-from-buffer.
3556         (elmo-archive-msgdb-create-entity): Ditto.
3557         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3558         elmo-message-entity-field.
3559         (elmo-archive-parse-mmdf): Ditto.
3561         * modb-entity.el: Removed.
3563         * elmo-version.el (elmo-version): Up to 2.11.16.
3565 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3567         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3568         `is-local'.
3569         (elmo-folder-flag-as-answered): Ditto.
3571 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3573         * modb-standard.el: New file.
3575         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3576         elmo-msgdb-convert-type is `sync'.
3578         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3579         (elmo-msgdb-convert-type): New user option.
3581         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3582         (elmo-load-msgdb): Auto detect saved type.
3584         * elmo-version.el (elmo-version): Up to 2.11.15.
3586 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3588         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3590         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3591         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3592         with argument `delete-if-none' when dst-folder is 'null.
3594         * elmo-flag.el (elmo-folder-append-messages): Defined.
3595         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3597 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3599         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3601 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3603         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3604         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3605         (elmo-folder-commit): Ditto.
3607 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3609         * elmo-flag.el: New file.
3611         * elmo-mark.el: Removed.
3613         * modb-legacy.el (modb-legacy-new-mark,
3614         modb-legacy-unread-uncached-mark,
3615         modb-legacy-unread-cached-mark,
3616         modb-legacy-read-uncached-mark,
3617         modb-legacy-answered-cached-mark,
3618         modb-legacy-answered-uncached-mark,
3619         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3620         All other related portions are changed.
3622         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3623         (elmo-folder-list-messages-with-global-mark): Abolish.
3624         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3625         (elmo-folder-flag-as-important): Ditto.
3626         (elmo-folder-unflag-read): Ditto.
3627         (elmo-folder-flag-as-read): Ditto.
3628         (elmo-folder-unflag-answered): Ditto.
3629         (elmo-folder-flag-as-answered): Ditto.
3630         (elmo-message-encache): Return the cache path.
3631         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3632         (elmo-message-set-flag): Transitional implementation.
3633         (elmo-message-unset-flag): Ditto.
3634         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3635         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3636         (elmo-init): Call elmo-global-flag-initialize.
3637         (toplevel): Added autoload settings for elmo-flag.
3639         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3641         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3642         (elmo-file-cache-delete): Don't treat global-mark.
3644         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3646         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3648         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3649         `elmo-global-flags-set'.
3651         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3652         `flag'.
3653         (elmo-folder-unflag-read): Ditto.
3654         (elmo-folder-unflag-important): Ditto.
3655         (elmo-folder-flag-as-important): Ditto.
3656         (elmo-folder-unflag-answered): Ditto.
3657         (elmo-folder-flag-as-answered): Ditto.
3659         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3660         `elmo-global-flags-set'.
3661         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3663         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3665         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3666         `flag'.
3667         (elmo-folder-flag-as-important): Ditto.
3668         (elmo-folder-unflag-important): Ditto.
3669         (elmo-folder-flag-as-important): Ditto.
3670         (elmo-folder-unflag-read): Ditto.
3671         (elmo-folder-flag-as-read): Ditto.
3672         (elmo-folder-unflag-answered): Ditto.
3673         (elmo-folder-flag-as-answered): Ditto.
3675         * elmo-multi.el (elmo-folder-list-importants): Don't call
3676         elmo-folder-list-messages-with-global-mark.
3677         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3678         (elmo-folder-unflag-important): Ditto.
3679         (elmo-folder-flag-as-read): Ditto.
3680         (elmo-folder-unflag-read): Ditto.
3681         (elmo-folder-flag-as-answered): Ditto.
3682         (elmo-folder-unflag-answered): Ditto.
3684         * elmo-msgdb.el (elmo-msgdb-new-mark,
3685         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3686         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3687         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3688         (Moved to modb-legacy.el).
3689         (elmo-flag-table-get): Treat important flag too.
3691         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3692         `mark' to `flag'.
3693         (elmo-map-folder-flag-as-important): Ditto.
3694         (elmo-map-folder-unflag-read): Ditto.
3695         (elmo-map-folder-flag-as-read): Ditto.
3696         (elmo-map-folder-unflag-answered): Ditto.
3697         (elmo-map-folder-flag-as-answered): Ditto.
3698         (elmo-folder-unflag-important): Ditto.
3699         (elmo-folder-flag-as-important): Ditto.
3700         (elmo-folder-unflag-read): Ditto.
3701         (elmo-folder-flag-as-read): Ditto.
3702         (elmo-folder-unflag-answered): Ditto.
3703         (elmo-folder-flag-as-answered): Ditto.
3705         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3706         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3707         `flag'.
3708         (elmo-map-folder-unflag-important): Ditto.
3709         (elmo-map-folder-flag-as-read): Ditto.
3710         (elmo-map-folder-unflag-read): Ditto.
3711         (elmo-map-folder-flag-as-answered): Ditto.
3712         (elmo-map-folder-unflag-answered): Ditto.
3714         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3715         `elmo-global-flags-set'.
3716         (elmo-global-flags-set): Added autoload setting.
3718         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3719         `flag'.
3721         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3722         `elmo-msgdb-global-mark-set'.
3723         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3724         Call `elmo-global-flags-set'.
3725         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3726         `flag'.
3727         (elmo-folder-flag-as-important-plugged): Ditto.
3728         (elmo-folder-unflag-read-plugged): Ditto.
3729         (elmo-folder-flag-as-read-plugged): Ditto.
3730         (elmo-folder-unflag-answered-plugged): Ditto.
3731         (elmo-folder-flag-as-answered-plugged): Ditto.
3732         (elmo-global-flags-set): Added autoload setting.
3734         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3735         `flag'.
3736         (elmo-folder-unflag-read): Ditto.
3737         (elmo-folder-flag-as-important): Ditto.
3738         (elmo-folder-unflag-important): Ditto.
3739         (elmo-folder-flag-as-answered): Ditto.
3740         (elmo-folder-unflag-answered): Ditto.
3742         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3743         change of `mark'->`flag'.
3744         (elmo-dop-queue-method-name-alist): Ditto.
3745         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3746         (elmo-folder-unflag-read-dop): Ditto.
3747         (elmo-folder-flag-as-important-dop): Ditto.
3748         (elmo-folder-unflag-important-dop): Ditto.
3749         (elmo-folder-flag-as-answered-dop): Ditto.
3750         (elmo-folder-unflag-answered-dop): Ditto.
3752         * elmo-cache.el (elmo-folder-msgdb-create): Call
3753         `elmo-global-flags-set'.
3755         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3756         Call `elmo-global-flags-set'.
3757         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3758         elmo-archive-parse-mmdf with argument `folder'.
3759         (elmo-archive-parse-mmdf): Added argument `folder';
3760         Call `elmo-global-flags-set'.
3762         * elmo-version.el (elmo-version): Up to 2.11.14.
3764 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3766         * modb.el (elmo-msgdb-length): Define.
3768         * elmo.el (elmo-make-folder): Fixed.
3769         (elmo-generic-folder-append-messages): Follow the API change.
3771         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3772         API change.
3774 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3776         * modb.el: New file.
3778         * modb-entity.el: Ditto.
3780         * modb-legacy.el: Ditto.
3782         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3783         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3784         of `elmo-msgdb-overview-get-entity'.
3785         (elmo-msgdb-get-field): Ditto.
3786         (elmo-msgdb-merge): Moved to `elmo.el'.
3787         (elmo-msgdb-length): Removed; redefine as modb method.
3788         (elmo-msgdb-change-mark): Abolish.
3789         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3790         (elmo-msgdb-match-condition): Don't use mark.
3791         (elmo-msgdb-overview-get-entity): Abolish.
3792         Split modb part into `modb*.el'.
3794         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3796         * elmo-shimbun.el (shimbun-mua-search-id): Use
3797         `elmo-msgdb-message-entity' instead of
3798         `elmo-msgdb-overview-get-entity'.
3799         (elmo-shimbun-folder-shimbun-header): Ditto.
3800         (elmo-shimbun-get-headers): Ditto.
3801         (elmo-shimbun-update-overview): Ditto.
3803         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3805         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3807         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3808         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3810         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3811         `elmo-msgdb-mark-to-flags'.
3813         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3814         `elmo-msgdb-set-path'.
3816         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3818         * elmo-version.el (elmo-version): Up to 2.11.13.
3820         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3822         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3823         of mark.
3825 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3827         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3828         mismatch.
3830 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3832         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3833         instead of `elmo-msgdb-get-cached'.
3834         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3836         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3837         (elmo-msgdb-set-cached): Ditto.
3838         (elmo-msgdb-set-flag): Rewrite.
3839         (elmo-msgdb-unset-flag): Ditto.
3841         * elmo-msgdb.el: Rewrite with luna.
3843         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3844         (elmo-folder-msgdb): Follow the change above.
3845         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3846         (elmo-folder-unmark-important): Follow the API change.
3847         (elmo-folder-mark-as-important): Ditto.
3848         (elmo-folder-unmark-read): Ditto.
3849         (elmo-folder-mark-as-read): Ditto.
3850         (elmo-folder-unmark-answered): Ditto.
3851         (elmo-folder-mark-as-answered): Ditto.
3852         (elmo-folder-clear): Likewise.
3854         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3855         instead of `elmo-msgdb-load' (renamed).
3857         * elmo-version.el (elmo-version): Up to 2.11.12.
3859 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3861         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3862         change.
3863         (elmo-message-mark): Abolish.
3864         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3865         instead of `elmo-msgdb-change-mark'.
3867         * elmo-pipe.el (elmo-message-mark): Abolish.
3869         * elmo-multi.el (elmo-message-mark): Ditto.
3871         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3872         (elmo-msgdb-unread-uncached-mark): Ditto.
3873         (elmo-msgdb-unread-cached-mark): Ditto.
3874         (elmo-msgdb-read-uncached-mark): Ditto.
3875         (elmo-msgdb-answered-cached-mark): Ditto.
3876         (elmo-msgdb-answered-uncached-mark): Ditto.
3877         (elmo-msgdb-important-mark): Ditto.
3878         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3879         `use-cache'.
3880         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3881         `flags'.
3882         (elmo-flag-table-load): Changed flag to list of flag.
3883         (elmo-flag-table-set): If flags is nil, set read flag.
3884         (elmo-flag-table-get): Return derived flags from global mark,
3885         cache status and saved flags.
3886         (elmo-msgdb-flag-table): Follow the change above.
3887         (elmo-msgdb-out-of-date-messages): New function.
3889         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3891         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3893         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3895         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3896         (elmo-nntp-msgdb-create-message): Ditto.
3898         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3900         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3901         independent.
3902         (elmo-folder-msgdb-create): Follow the API change.
3904         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3905         (elmo-folder-append-messages): Ditto.
3907         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3908         (elmo-folder-append-buffer): Ditto.
3910         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3912         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3914         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3915         (elmo-archive-parse-mmdf): Ditto.
3917         * elmo-version.el (elmo-version): Up to 2.11.11.
3919 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3921         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3922         `elmo-msgdb-mark'.
3924         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3926         * elmo-pipe.el (elmo-message-flags): Defined.
3928         * elmo-multi.el (elmo-message-flags): Ditto.
3930 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3932         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3933         `elmo-msgdb-delete-msgs'.
3935         * elmo.el (elmo-folder-count-flags): Don't use
3936         `elmo-msgdb-get-mark-alist'.
3937         (elmo-folder-detach-messages): Follow the API change.
3939         * elmo.el (elmo-folder-list-messages): Append killed messages into
3940         result if `visible-only' is nil.
3942         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3943         canceled messages.
3944         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3945         (elmo-folder-update-number): Likewise.
3947         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3948         (elmo-pop3-sort-msgdb-by-original-number): Use
3949         `elmo-msgdb-sort-entities'.
3951         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3952         (elmo-msgdb-sort-by-date): Use it.
3953         (elmo-msgdb-overview-sort-by-date): Abolish.
3955         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3957         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3958         (elmo-msgdb-flags): New function.
3959         (elmo-msgdb-merge): Use elmo-msgdb-append.
3961         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3962         change.
3964         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3966         * elmo-dop.el (elmo-folder-status-dop): Use
3967         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3969 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3971         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3973         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3975         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3977         * elmo-util.el (elmo-with-progress-display): New macro.
3979         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3981 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3983         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3984         `elmo-folder-list-message-entities' instead of
3985         `elmo-msgdb-get-overview'.
3986         (elmo-map-folder-list-message-locations): Ditto.
3988         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3989         methods instead of treat directly).
3990         (elmo-msgdb-clear): Ditto.
3991         (elmo-msgdb-delete-msgs): Ditto.
3992         (elmo-msgdb-sort-by-date): Ditto.
3994         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3995         local variables.
3996         (elmo-nntp-folder-msgdb-create): Follow the API change.
3998         * elmo-version.el (elmo-version): Up to 2.11.10.
4000 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4002         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
4003         (elmo-msgdb-flags-to-mark): Ditto.
4004         (elmo-msgdb-append-entity): Ditto.
4006         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
4007         Use `elmo-msgdb-append-entity' instead of construct msgdb.
4008         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4009         (elmo-archive-parse-mmdf): Ditto.
4011         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4013         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
4015         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
4017         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4019         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
4021         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4023         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4025         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4027         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
4028         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
4029         to empty msgdb.
4031         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
4032         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
4033         instead of directly construction.
4034         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
4035         instead of construct msgdb.
4037         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
4038         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
4039         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
4040         instead of construct msgdb.
4042 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4044         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
4045         when field is from or subject.
4047 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
4049         * elmo-multi.el (elmo-message-entity-parent): Define.
4050         (elmo-folder-search): Rewrite.
4052 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4054         * elmo-multi.el (elmo-message-cached-p): Define.
4056         * elmo.el (elmo-message-cached-p): New method.
4057         (elmo-message-accessible-p): Use it instead of msgdb API directly.
4058         (elmo-message-flags): New method.
4059         (elmo-message-flagged-p): New function.
4061         * elmo-version.el (elmo-version): Up to 2.11.9.
4063 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4065         * elmo-version.el (elmo-version): Up to 2.11.8.
4067         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
4069         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
4071 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
4073         * elmo.el (elmo-folder-detach-messages): Undo last change.
4075 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
4077         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
4079         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
4080         only when src folder type is pop3.
4082 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
4084         * elmo-msgdb.el (elmo-msgdb-make-index): Use
4085         elmo-msgdb-overview-entity-get-number instead of
4086         elmo-message-entity-number.
4088 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4090         * elmo-version.el (elmo-version): Up to 2.11.7.
4092 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
4094         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
4095         function.
4097         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
4098         (elmo-msgdb-merge): New function.
4099         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
4100         (elmo-msgdb-make-index): Rewrite.
4102         * elmo-version.el (elmo-version): Up to 2.11.6.
4104         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
4105         use it as a the path for loading message entities.
4107         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
4109 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
4111         * elmo-filter.el (elmo-folder-set-message-modified): Set 
4112         message-modified slot of itself if it does not require target msgdb.
4114         * elmo-mime.el (elmo-mime-message-display): Display message entirely
4115         if folder length is zero.
4116         (elmo-mime-display-as-is): Ditto.
4118         * elmo-filter.el (elmo-folder-set-message-modified): Define.
4120         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
4122 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4124         * elmo.el (elmo-folder-set-message-modified): New method.
4125         (elmo-generic-folder-commit): Use it.
4126         (elmo-folder-synchronize): Ditto.
4128         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
4129         (elmo-folder-commit): Remove duplicate definition.
4131 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4133         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
4135 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4137         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
4138         (elmo-strict-folder-diff): Ditto.
4139         (elmo-folder-set-info-max-by-numdb): Simplify.
4141         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
4142         elmo-msgdb-list-messages.
4144         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
4145         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
4147 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4149         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
4150         visible-only is non-nil.
4151         (elmo-folder-confirm-appends): Changed message.
4152         (elmo-folder-synchronize): Added argument disable-killed.
4154         * elmo-multi.el (elmo-folder-synchronize): Added argument
4155         disable-killed.
4157         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
4159         * elmo-version.el (elmo-version): Up to 2.11.5.
4161         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
4162         elmo-list-filter.
4164         * elmo-util.el (elmo-list-filter): Simplify.
4166         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
4167         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
4168         (elmo-generic-folder-diff): Abolish argument.
4169         (elmo-msgdb-load): Don't use number-alist.
4171         * elmo-filter.el (elmo-folder-diff): Abolish argument.
4173         * elmo-pipe.el (elmo-folder-diff): Ditto.
4175         * elmo-nmz.el (elmo-folder-diff): Ditto.
4177         * elmo-net.el (elmo-folder-diff): Ditto.
4179         * elmo-maildir.el (elmo-folder-diff): Ditto.
4181         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
4183         * elmo-multi.el (elmo-folder-diff): Ditto
4184         (elmo-multi-folder-diff): Rewrite.
4186 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4188         * elmo-pipe.el (elmo-folder-msgdb): Define.
4190 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
4192         * elmo.el (elmo-message-set-cached): Define as a method.
4194         * elmo-pipe.el (elmo-message-set-cached): Define.
4195         (elmo-find-fetch-strategy): Ditto.
4197         * elmo-multi.el (elmo-message-set-cached): Define.
4198         (elmo-find-fetch-strategy): Rewrite.
4200         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
4202         * elmo-pipe.el (elmo-message-folder): Fixed definition.
4204 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4206         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
4207         instead of number-alist.
4209         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
4210         mark nor message-id when msgdb of source folder is not loaded.
4212         * elmo.el (elmo-generic-folder-append-messages): Ditto.
4214         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4216 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
4218         * elmo.el (elmo-folder-length): Don't require msgdb.
4220 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
4222         * elmo.el (elmo-message-mark): Cause an error when empty folder.
4223         (elmo-message-field): Ditto.
4225         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
4226         (elmo-map-folder-list-message-locations): Setup `answered-locations'
4227         slot.
4228         (elmo-map-folder-list-answereds): Define.
4229         (elmo-maildir-list-location): Treat 'R' info.
4230         (elmo-folder-msgdb-create): Treat flag-table.
4231         (elmo-folder-append-messages): Save flag-table.
4233 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
4235         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
4236         Use SELECT when elmo-imap4-use-select-to-update-status is t.
4238 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4240         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
4242         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
4243         'read when mark is null.
4245 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
4247         * elmo-version.el (elmo-version): Up to 2.11.4.
4249 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4251         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
4252         (elmo-folder-mark-as-answered): Ditto.
4254 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
4256         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
4257         (elmo-pop3-get-session): Make msgdb directory after session.
4258         (elmo-folder-exists-p): Check exactly at the first time even when the
4259         elmo-pop3-exists-exactly is nil.
4261         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
4262         (elmo-folder-list-messages): Define instead of
4263         elmo-folder-list-messages-internal.
4264         (elmo-folder-check): Check destination folder.
4265         (elmo-folder-synchronize): Drain the pipe.
4267         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
4268         when msgdb is not loaded.
4270         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
4272         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
4273         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
4274         messages.
4276         * elmo.el (elmo-folder-kill-messages-before): New function.
4277         (elmo-folder-kill-messages): Ditto.
4278         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
4280         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
4281         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
4282         killed not by synchronize (e.g. scoring).
4284 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4286         * elmo.el (elmo-folder-search-fast): Return t if condition is not
4287         treated.
4288         (elmo-folder-search): Follow the change above.
4290         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
4291         into the candidates of search field.
4293 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
4295         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
4296         (elmo-msgdb-unset-flag): Ditto.
4298         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
4300 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
4302         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
4303         (elmo-folder-commit): Define.
4304         (elmo-folder-synchronize): Ditto.
4305         (elmo-folder-list-flagged): Ditto.
4306         (elmo-folder-commit): Ditto.
4307         (elmo-folder-length): Ditto.
4308         (elmo-folder-count-flags): Ditto.
4309         (elmo-message-mark): Ditto.
4310         (elmo-message-field): Ditto.
4311         (elmo-message-entity): Ditto.
4312         (elmo-message-folder): Ditto.
4314 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
4316         * elmo.el (elmo-message-field): Define as a method.
4318         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
4319         (elmo-message-field): Define.
4321         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
4322         (elmo-folder-list-importants): Ditto.
4323         (elmo-folder-list-answereds): Ditto.
4325         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
4326         qualifier.
4327         (elmo-folder-mark-as-read): Ditto.
4328         (elmo-folder-unmark-read): Ditto.
4329         (elmo-folder-mark-as-answered): Ditto.
4330         (elmo-folder-unmark-answered): Ditto.
4331         (elmo-folder-list-flagged): Define.
4332         (elmo-folder-commit): Ditto.
4333         (elmo-folder-length): Ditto.
4334         (elmo-folder-count-flags): Ditto.
4336 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4338         * elmo.el (elmo-folder-detach-messages): New method.
4339         (elmo-folder-move-messages): Use it.
4340         (elmo-folder-synchronize): Ditto.
4342         * elmo-multi.el (elmo-folder-detach-messages): Define.
4344         * elmo.el (elmo-message-copy-entity): New function.
4345         (elmo-message-entity-set-number): Ditto.
4346         (elmo-message-mark): Define as method.
4348         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
4349         (elmo-folder-synchronize): Return 0 (Should be reconsider).
4350         (elmo-message-entity): Fixed last change.
4351         (elmo-message-mark): Define.
4352         (elmo-folder-msgdb-create): Abolish.
4353         (elmo-multi-folder-append-msgdb): Ditto.
4354         (elmo-multi-folder-diff): Fixed.
4355         (elmo-multi-split-number-alist): Removed.
4356         (elmo-multi-split-mark-alist): Removed.
4357         (elmo-folder-list-messages): Define.
4358         (elmo-folder-list-messages-internal): Removed.
4360         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
4361         local file messages.
4362         (elmo-folder-msgdb-create): Fixed read mark.
4364 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4366         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
4367         if mark is nil.
4369 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4371         * elmo.el (elmo-folder-list-message-entities): Define as inline
4372         function.
4373         (elmo-folder-messages): Abolish.
4375         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
4376         folder.
4377         (elmo-folder-synchronize): Define.
4378         (elmo-message-entity): Define.
4380 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
4382         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
4383         elmo-imap4-session-select-mailbox.
4385         * elmo.el (elmo-folder-move-messages): Don't display any message.
4387         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
4388         parsing.
4389         (elmo-imap4-session-check): Don't wait CHECK response.
4390         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
4392 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4394         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
4396 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4398         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
4399         API.
4400         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
4403         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
4404         (elmo-folder-list-message-entities): Added argument in-msgdb and
4405         numbers.
4406         (elmo-folder-synchronize): Define as a method.
4408         * elmo-nntp.el (elmo-folder-initialize): Don't use
4409         elmo-nntp-default-user if zero-length username is specified
4410         explicitly.
4412 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
4414         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
4415         server name in case with username.
4416         (XXX: this is ad-hoc fix against username includes "@", it
4417         should be solved fundamentally)
4419 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
4421         * elmo-nntp.el (elmo-nntp-debug): New function.
4422         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4423         (elmo-network-authenticate-session): Hide auth-info from the log.
4425         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4426         user name if it is equal to elmo-nntp-default-user.
4428 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4430         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4431         instead of shimbun-server-internal;
4432         Use shimbun-current-group instead of shimbun-current-group-internal.
4433         (elmo-folder-plugged-p): Use shimbun-server instead of
4434         shimbun-server-internal.
4435         (elmo-folder-set-plugged): Ditto.
4436         (elmo-net-port-info): Ditto.
4437         (elmo-folder-check): Ditto.
4438         (elmo-folder-expand-msgdb-path): Ditto.
4439         (elmo-folder-list-subfolders): Ditto.
4441 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4443         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4444         Convert field-name to lower case.
4445         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4447 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4449         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4450         `message' and `error' take format string.
4452 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4454         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4456 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4458         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4459         recursive call (can't byte compile on emacs 20.7).
4461 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4463         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4464         (elmo-folder-list-message-entities): New API.
4465         (elmo-message-entity): Ditto.
4466         (elmo-message-entity-parent): Ditto.
4467         (elmo-folder-do-each-message-entity): Ditto.
4468         (elmo-message-entity-number): Ditto.
4469         (elmo-message-entity-field): Ditto.
4470         (elmo-message-entity-set-field): Ditto.
4471         (elmo-folder-count-flags): Ditto.
4472         (elmo-folder-length): Ditto.
4474         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4475         not.
4477         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4478         (elmo-msgdb-count-marks): Abolish.
4479         (elmo-msgdb-make-entity): Ditto.
4480         (elmo-msgdb-do-each-entity): Ditto.
4481         (elmo-msgdb-message-entity): New inline function.
4482         (elmo-msgdb-message-entity-field): Ditto.
4483         (elmo-msgdb-message-entity-set-field): Ditto.
4484         (elmo-msgdb-make-message-entity): New function.
4486 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4488         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4489         to flag. (All other related portions are changed.)
4490         (elmo-folder-msgdb-create): Likewise.
4491         (elmo-generic-folder-append-messages): Use flag-table instead of
4492         seen-list.
4493         (elmo-folder-move-messages): Removed redundant process.
4494         (elmo-folder-synchronize): Likewise.
4496         * elmo-msgdb.el (elmo-flag-table-get): New function.
4497         (elmo-flag-table-save): Fixed.
4498         (elmo-msgdb-length): New inline function.
4499         (elmo-msgdb-flag-table): New function.
4500         (elmo-msgdb-mark): Add optional argument new.
4501         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4502         (elmo-msgdb-seen-list): Ditto.
4503         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4506 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4508         * elmo.el (elmo-message-set-mark): Abolish.
4509         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4510         (All related portions are changed.)
4512         * elmo-msgdb.el (toplevel): Added comment.
4513         (elmo-load-msgdb): Added 4th element `path'.
4514         (elmo-msgdb-append): Follow the change above.
4515         (elmo-msgdb-clear): Ditto.
4516         (elmo-msgdb-delete-msgs): Ditto.
4517         (elmo-msgdb-get-path): New inline function.
4518         (elmo-msgdb-set-path): Ditto.
4519         (elmo-flag-table-filename): New variable.
4520         (elmo-flag-table-load): New function.
4521         (elmo-flag-table-set): Ditto.
4522         (elmo-flag-table-save): Ditto.
4523         (elmo-msgdb-get-field-value): Abolish.
4524         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4526 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4528         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4529         the folder has been deleted successfully.
4530         * elmo-imap4.el (elmo-folder-delete): Ditto.
4531         * elmo-archive.el (elmo-folder-delete): Ditto.
4532         * elmo-localdir.el (elmo-folder-delete): Ditto.
4533         * elmo-maildir.el (elmo-folder-delete): Ditto.
4535 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4537         * elmo-util.el (elmo-string-member-ignore-case): New function.
4538         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4539         (elmo-imap4-fetch-callback-1-subr): Likewise.
4541 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4543         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4544         the case of the name attribute "\Noselect".
4546 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4548         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4550         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4551         flist, is not always a member of onum-alist.
4553 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4555         * elmo-version.el (elmo-version): Up to 2.11.3.
4557 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4559         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4560         copied from localdir's one.
4562         * elmo-pipe.el (elmo-folder-rename): New method, rename
4563         destination folder with leaving source folder as it is.
4565 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4567         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4568         replace-regexp.
4570 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4572         * elmo-version.el (elmo-version): Up to 2.11.2.
4574 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4576         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4577         shimbun-open in case of "@".
4578         (elmo-folder-open-internal): Cope with shimbun = nil case.
4579         (elmo-folder-plugged-p): Ditto.
4580         (elmo-folder-list-subfolders): Make list for "@/" group.
4582 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4584         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4585         mailbox (e.g. for %~/something).
4587 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4589         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4590         Replace nested conditional with guard clauses.
4592 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4594         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4595         error [wl:11327].
4597         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4598         print-depth.
4600 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4602         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4603         Replace nested conditional with guard clauses.
4605 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4607         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4608         (elmo-passwd-alist-save): Ditto.
4609         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4611 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4613         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4614         dir-name only if it is absolute path.
4615         (TODO: distinguish +/something and +something)
4617 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4619         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4620         path for "+~/something".
4622 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4624         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4625         as non-directory, cause error before rename-file.
4626         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4627         apropriately, mimic localdir's one.
4628         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4630 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4632         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4634 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4636         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4638         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4639         
4640         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4641         is included in the global-mark or not.
4643 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4645         * utf7.el (toplevel): Avoid error when the function
4646         find-coding-system does not exist.
4648 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4650         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4651         cache even if the folder is plugged.
4652         (elmo-nntp-search-primitive): Do nothing when body search is
4653         invoked (although it is not used by the change above).
4654         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4656 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4658         * elmo-version.el (elmo-version): Up to 2.11.1.
4660 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4662         * elmo-archive.el: Specify charset.
4664 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4666         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4667         process buffer lives or not.
4669         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4670         while flushing queues (It causes infinite loop).
4672 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4674         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4676 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4678         * utf7.el (toplevel): Check the ucs features dynamically.
4679         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4681         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4682         folder is creatabe or not if it already exists.
4684 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4686         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4688         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4690         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4691         (elmo-imap4-read-response): Take care of garbage response.
4693 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4695         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4696         just return nil instead of error.
4698 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4700         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4701         search-key is "body".
4703 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4705         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4706         of elmo-string-matched-assoc to use match-data.
4707         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4709 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4711         * elmo-split.el (elmo-split->): New function.
4712         (elmo-split-<): Ditto.
4714 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4716         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4717         workaround for invalid message-id.
4719 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4721         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4722         return normal pop3 session or pop3 biff session.
4724 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4726         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4727         info part to the cur files when the new files already have it.
4728         (Adviced by Jared Rhine <jared@wordzoo.com>)
4730 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4732         * elmo-split.el (elmo-split-default-action): New variable.
4733         (elmo-split-subr): Use it if all other conditions are passed.
4734         Extend `fname' and rename it as `action'. (implemented
4735         Teranishi-san's idea in [wl:10800])
4737 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4739         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4740         * elmo-util.el: Ditto.
4742 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4744         * elmo.el (elmo-message-accessible-p): Renamed from
4745         elmo-message-cached-p and rewritten.
4747 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4749         * elmo.el (elmo-folder-list-flagged): New generic function.
4750         (elmo-folder-list-importants): New implementation.
4751         (elmo-folder-list-answereds): Ditto.
4752         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4753         Added 'digest'.
4754         (elmo-message-cached-p): New function.
4755         (elmo-message-set-flag): Ditto (no content).
4756         (elmo-message-unset-flag): Ditto.
4757         (elmo-folder-list-messages-mark-match): Abolish.
4759         * elmo-util.el (elmo-regexp-opt): New function.
4761         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4762         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4763         Added 'digest'.
4764         (elmo-msgdb-list-flagged): New function.
4766         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4767         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4768         Added 'digest'.
4770         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4772 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4774         * elmo-version.el (elmo-version): Up to 2.11.0.
4776 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4778         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4779         `elmo-file-cache-exists-p'; use proper mark that depends on
4780         `use-cache'.
4781         (elmo-msgdb-unset-flag): Ditto.
4782         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4784         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4785         with 4th argument `use-cache'.
4787 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4789         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4790         (elmo-folder-mark-as-important): Ditto.
4791         (elmo-folder-unmark-read): Ditto.
4792         (elmo-folder-mark-as-read): Ditto.
4793         (elmo-folder-unmark-answered): Ditto.
4794         (elmo-folder-mark-as-answered): Ditto.
4796         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4797         message status.
4798         (elmo-msgdb-mark): Likewise.
4799         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4800         (elmo-msgdb-unset-flag): Likewise.
4802         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4804 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4806         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4807         `last:' filter.
4809 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4811         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4812         set spool-length to 0.
4814 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4816         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4817         (elmo-dop-queue-flush): Fixed last change.
4819 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4821         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4822         if require-msgdb slot is nil.
4823         (elmo-folder-list-importants): Likewise.
4825 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4827         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4828         mark is changed.
4830         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4831         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4832         is changed.
4834 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4836         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4838 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4840         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4842         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4844 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4846         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4847         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4849 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4851         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4852         the problem reported by Sean Rima [wl-en:180].
4854 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4856         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4858         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4860         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4862         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4864         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4866         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4868         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4870 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4872         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4873         status number.
4875 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4877         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4878         (elmo-folder-mark-as-read): Follow the API change.
4879         (elmo-message-set-cached): New function.
4881         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4883         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4885         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4886         (elmo-folder-mark-as-important): Ditto.
4887         (elmo-folder-unmark-read): Ditto.
4888         (elmo-folder-mark-as-read): Ditto.
4889         (elmo-folder-unmark-answered): Ditto.
4890         (elmo-folder-mark-as-answered): Ditto.
4892         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4893         (elmo-folder-unmark-important): Ditto.
4894         (elmo-folder-mark-as-read): Ditto.
4895         (elmo-folder-unmark-read): Ditto.
4896         (elmo-folder-mark-as-answered): Ditto.
4897         (elmo-folder-unmark-answered): Ditto.
4899         * elmo-mark.el (toplevel): Removed some mark method definitions.
4901         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4902         (elmo-map-folder-mark-as-answered): Ditto.
4903         (elmo-folder-unmark-important): Add :before qualifier.
4904         (elmo-folder-mark-as-important): Ditto.
4905         (elmo-folder-unmark-read): Ditto.
4906         (elmo-folder-mark-as-read): Ditto.
4907         (elmo-folder-unmark-answered): Define.
4908         (elmo-folder-mark-as-answered): Ditto.
4910         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4911         (elmo-map-folder-unmark-answered): Ditto.
4913         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4915         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4916         (elmo-folder-mark-as-important): Ditto.
4917         (elmo-folder-unmark-read): Ditto.
4918         (elmo-folder-mark-as-read): Ditto.
4919         (elmo-folder-unmark-answered): Ditto.
4920         (elmo-folder-mark-as-answered): Ditto.
4922         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4923         `mark'; evaluate mark condition.
4924         (elmo-msgdb-match-condition-internal): New function.
4925         (elmo-msgdb-match-condition): Call it; changed argument.
4927         * elmo.el (elmo-folder-search): Follow the API change on
4928         `elmo-msgdb-match-condition'.
4930 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4932         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4933         original mark is non-nil.
4935 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4937         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4938         (elmo-map-folder-list-answereds): New method.
4939         (elmo-folder-list-unreads): Add :around qualifier.
4940         (elmo-folder-list-importants): Ditto.
4941         (elmo-folder-list-answereds): Ditto.
4943 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4945         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4947         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4948         method if msgdb is not required.
4949         (elmo-filter-folder-list-importants): Don't treat global-mark.
4951         * elmo.el (elmo-folder-list-importants): Ditto.
4953         * elmo-net.el (elmo-folder-list-importants): Ditto.
4955         * elmo-map.el (elmo-folder-list-importants): Ditto.
4957         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4959         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4960         (elmo-imap4-folder-list-any-plugged): New function.
4961         (elmo-imap4-search-internal-primitive): Use it.
4963         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4964         only when require-msgdb slot is non-nil.
4965         (elmo-folder-close): Clear target folder's msgdb.
4967 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4969         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4970         (elmo-pop3-msgdb-create-by-header): Ditto.
4971         (elmo-pop3-msgdb-create-message): Ditto.
4973         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4975         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4977         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4979         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4980         (elmo-folder-msgdb-create): Ditto.
4981         (elmo-nntp-folder-msgdb-create): Ditto.
4982         (elmo-nntp-msgdb-create-by-header): Ditto.
4983         (elmo-nntp-msgdb-create-message): Ditto.
4984         (elmo-folder-list-unreads): Define.
4986         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4987         (elmo-folder-append-messages): Ditto.
4988         (elmo-folder-list-unreads): Define.
4989         (elmo-folder-list-importants): Ditto.
4990         (elmo-folder-list-answereds): Ditto.
4992         * elmo-net.el (elmo-folder-list-unreads): Define.
4993         (elmo-folder-list-importants): Ditto.
4994         (elmo-folder-list-answereds): Ditto.
4995         (elmo-folder-list-answereds-plugged): Ditto.
4996         (elmo-folder-msgdb-create): Follow the API change.
4997         (elmo-folder-msgdb-create-unplugged): Ditto.
4998         (elmo-folder-unmark-answered): Define.
4999         (elmo-folder-mark-as-answered-unplugged): Ditto.
5000         (elmo-folder-unmark-answered-unplugged): Ditto.
5002         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
5003         (elmo-msgdb-unread-uncached-mark): Ditto.
5004         (elmo-msgdb-unread-cached-mark): Ditto.
5005         (elmo-msgdb-read-uncached-mark): Ditto.
5006         (elmo-msgdb-answered-cached-mark): Ditto.
5007         (elmo-msgdb-answered-uncached-mark): Ditto.
5008         (elmo-msgdb-important-mark): Ditto.
5009         (elmo-msgdb-set-mark): Rewrite.
5010         (elmo-msgdb-count-marks): Rewrite.
5011         (elmo-msgdb-mark-alist-set): Abolish.
5012         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
5013         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
5015         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
5016         (elmo-folder-close): Define.
5017         (elmo-folder-msgdb-create): Follow the API change.
5018         (elmo-folder-list-unreads): Rewrite.
5019         (elmo-folder-mark-as-important): Ditto.
5020         (elmo-folder-unmark-important): Ditto.
5021         (elmo-folder-mark-as-read): Ditto.
5022         (elmo-folder-unmark-read): Ditto.
5023         (elmo-folder-mark-as-answered): Define.
5024         (elmo-folder-unmark-answered): Ditto.
5026         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
5027         (elmo-folder-append-messages): Ditto.
5029         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
5031         * elmo-map.el (elmo-folder-list-unreads): Ditto.
5032         (elmo-folder-list-importants): Ditto.
5034         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
5035         (elmo-folder-append-messages): Ditto.
5037         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
5038         change.
5039         (elmo-folder-msgdb-create-plugged): Ditto.
5040         (elmo-folder-append-messages): Ditto.
5041         (elmo-folder-list-answereds-plugged): Define.
5042         (elmo-imap4-search-internal-primitive): Add `mark' processing.
5043         (elmo-folder-unmark-answered-plugged): Define.
5044         (elmo-folder-mark-as-answered-plugged): Ditto.
5045         (elmo-folder-search-requires-msgdb-p): Ditto.
5047         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
5048         (elmo-folder-initialize): Set it.
5049         (elmo-folder-msgdb): Define.
5050         (elmo-folder-check): Call elmo-folder-synchronize.
5051         (elmo-folder-close): Define.
5052         (elmo-folder-commit): Ditto.
5053         (elmo-folder-msgdb-create): Rewrite.
5054         (elmo-folder-list-unreads): Ditto.
5055         (elmo-folder-list-importants): Ditto.
5056         (elmo-folder-mark-as-read): Ditto.
5057         (elmo-folder-unmark-read): Ditto.
5058         (elmo-folder-mark-as-important): Ditto.
5059         (elmo-folder-unmark-important): Ditto.
5060         (elmo-folder-mark-as-answered): Define.
5061         (elmo-folder-unmark-answered): Ditto.
5063         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
5064         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
5065         (elmo-dop-queue-method-name-alist): Likewise.
5066         (elmo-folder-mark-as-answered-dop): New inline function.
5067         (elmo-folder-unmark-answered-dop): Ditto.
5068         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
5070         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
5071         (elmo-folder-msgdb-create): Ditto.
5072         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
5073         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
5074         (elmo-archive-parse-mmdf): Ditto.
5076         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
5077         (elmo-folder-list-unreads-internal): Ditto.
5079         * elmo.el (elmo-folder-msgdb): Define as generic function.
5080         (elmo-folder-list-messages): Added argument `in-msgdb'.
5081         (elmo-folder-list-unreads): Define as generic function.
5082         (elmo-folder-list-importants): Ditto.
5083         (elmo-folder-list-answereds): Ditto.
5084         (elmo-folder-list-messages-with-global-mark): New function.
5085         (elmo-folder-msgdb-create): Removed mark arguments.
5086         (elmo-folder-unmark-answered): New generic function.
5087         (elmo-folder-mark-as-answered): Ditto.
5088         (elmo-folder-append-messages): Removed argunment `unread-marks'
5089         (elmo-folder-list-unreads-internal): Abolish.
5090         (elmo-folder-list-importants-internal): Ditto.
5091         (elmo-folder-search-requires-msgdb-p): New generic function.
5092         (elmo-folder-search-requires-msgdb-p-internal): New function.
5093         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
5094         elmo-msgdb-load.
5095         (elmo-folder-search-fast): Added key 'mark'.
5096         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
5097         instead of unread-marks argument.
5098         (elmo-folder-move-messages): Removed argunment `unread-marks'
5099         (elmo-folder-unmark-important): Define.
5100         (elmo-folder-mark-as-important): Ditto.
5101         (elmo-folder-unmark-read): Ditto.
5102         (elmo-folder-mark-as-read): Ditto.
5103         (elmo-folder-unmark-answered): Ditto.
5104         (elmo-folder-mark-as-answered): Ditto.
5105         (elmo-folder-replace-marks): Abolish.
5106         (elmo-generic-folder-append-msgdb): Append msgdb before checking
5107         duplicates.
5108         (elmo-folder-synchronize): Removed mark arguments;
5109         return crosspost only number.
5111 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5113         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
5114         Remove redundunt connectivity check.
5116 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5118         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
5119         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
5121 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
5123         * pldap.el (ldap-decode-string): Return string as-is if
5124         `ldap-coding-system' is nil.
5125         (ldap-encode-string): Ditto.
5126         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
5127         (ldap-default-host): Fixed docstring.
5129 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
5131         * elmo-util.el (elmo-warning): Define as a macro which uses
5132         `display-warning' if it is defined as a function.
5134         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
5135         (elmo-split-equal): Use it.
5136         (elmo-split-match): Ditto.
5137         (elmo-split-message-entity): New buffer-local variable.
5138         (elmo-split-subr): Set it.
5140         * elmo-version.el (elmo-version): Up to 2.9.15.
5142 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
5144         * elmo-imap4.el (elmo-network-initialize-session):
5145         Check capability after starttls.
5147 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
5149         * elmo-util.el (elmo-list-delete): Added optional argument
5150         DELETE-FUNCTION.
5152         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
5154         * elmo-util.el (elmo-warning): Ignore errors while recenter.
5156         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
5158         * elmo-imap4.el (elmo-folder-initialize): Don't use
5159         elmo-imap4-default-mailbox.
5161 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5163         * elmo-split.el (toplevel): Use `product-provide'.
5164         (elmo-split): Checkdoc.
5166 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
5168         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
5169         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
5170         the function `elmo-imap4-debug-1'.
5172 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5174         * elmo-split.el (elmo-split): Moved to run hooks and to show
5175         message from elmo-split-subr.
5176         (elmo-split-subr): Follow the change above.
5178         * elmo-split.el (elmo-split-subr): New function (renamed from
5179         elmo-split-subr).
5180         (elmo-split): Changed to call elmo-split-subr by element of
5181         elmo-split-folder.
5182         (elmo-split-folder): Changed customization type to choice.
5184 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5186         * elmo-split.el (elmo-split-and): Fixed condition.
5188 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5190         * elmo-split.el: New file.
5191         (elmo-split): Fixed logic.
5192         Display "Test:" instead of "Folder:" when reharsal.
5194         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
5195         explicitly.
5197         * elmo-version.el (elmo-version): Up to 2.9.14.
5199         * elmo-util.el (elmo-expand-newtext): New function (renamed from
5200         wl-expand-newtext).
5202 2002-06-10  Kenichi Sato <ksato@sonycom.com>
5204         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
5205         message with no message-id field.
5207 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
5209         * elmo-version.el (elmo-version): Up to 2.9.13.
5211         * elmo-dop.el (elmo-folder-status-dop): Fix.
5213 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
5215         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
5217         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
5218         changing default value of default-mime-charset.
5219         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
5221         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
5223         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
5224         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
5225         instead of elmo-dop-queue-method-name-alist to check merging queue.
5226         (elmo-folder-delete-messages-dop): Delete from queue if negative
5227         message number.
5228         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
5229         file is already removed.
5231 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
5233         * elmo-vars.el: Bind colon keywords for old Emacsen.
5235 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5237         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
5238         against non-exsisting charset.
5240 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
5242         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
5243         Use eword-decode-and-unfold-unstructured-field-body.
5245         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
5246         (elmo-msgdb-create-overview-from-buffer): Use document charset if
5247         exists to decode raw subject string.
5248         (toplevel): Require 'mime.
5250         * elmo-version.el (elmo-version): Up to 2.9.12.
5252 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
5254         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
5255         (elmo-msgdb-set-mark): Ditto.
5257         * elmo-version.el (elmo-version): Up to 2.9.11.
5259 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
5261         * elmo-util.el (elmo-delete-match-files): New function.
5263         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
5264         instead of elmo-delete-directory.
5266         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
5267         elmo-hash-minimun-size as 63.
5269         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
5270         elmo-diff-unread is nil.
5272         * elmo-imap4.el (elmo-folder-open): Fix.
5274         * elmo.el (elmo-message-mark): Rewrite.
5275         (elmo-message-field): Ditto.
5276         (elmo-message-set-mark): Ditto.
5277         (elmo-folder-replace-marks): New function.
5278         (elmo-generic-folder-append-msgdb): Removed third argument for
5279         elmo-msgdb-append.
5280         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
5281         (elmo-msgdb-load): New implementation.
5283         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
5285         * elmo-util.el (elmo-list-insert): New implementation.
5287         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
5288         argument for elmo-msgdb-append.
5289         
5291         * elmo-msgdb.el (elmo-load-msgdb): New function.
5292         (elmo-make-msgdb): Ditto.
5293         (elmo-msgdb-get-index): New inline function.
5294         (elmo-msgdb-set-index): Ditto.
5295         (elmo-msgdb-get-entity-hashtb): Ditto.
5296         (elmo-msgdb-get-mark-hashtb): Ditto.
5297         (elmo-msgdb-get-mark): Ditto.
5298         (elmo-msgdb-set-mark): Ditto.
5299         (elmo-msgdb-count-marks): Ditto.
5300         (elmo-msgdb-get-number): Ditto.
5301         (elmo-msgdb-get-field): Ditto.
5302         (elmo-msgdb-seen-list): Ditto.
5303         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
5304         (elmo-msgdb-delete-msgs): Follow the changes above.
5305         (elmo-msgdb-overview-get-entity): Ditto.
5306         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
5307         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
5308         and rewritten.
5309         (elmo-msgdb-make-index): Likewise.
5310         (elmo-msgdb-append): Removed third argument.
5311         (elmo-msgdb-clear): Clear index as nil.
5312         (elmo-folder-set-info-hashtb): Removed.
5313         (elmo-folder-set-info-max-by-numdb): Ditto.
5314         (elmo-folder-info-make-hashtb): Ditto.
5316         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
5318         * elmo-map.el (elmo-folder-pack-number): Ditto.
5320 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
5322         * elmo-version.el (elmo-version): Up to 2.9.10.
5324         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
5326         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
5328 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
5330         * elmo-utils.el (elmo-make-directory): Add option.
5331         Default file mode is 700.
5333 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5335         * elmo-shimbun.el (elmo-folder-local-p): Defined.
5337 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
5339         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
5340         mime-charset.
5342         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
5343         and "smaller".
5345 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5347         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
5348         (elmo-shimbun-folder-entity-hash): New function.
5349         (elmo-shimbun-folder-shimbun-header): Ditto.
5350         (elmo-shimbun-entity-to-header): Ditto.
5351         (elmo-shimbun-msgdb-to-headers): Removed.
5352         (elmo-shimbun-folder-setup): Ditto.
5353         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
5354         for hash key.
5355         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
5356         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
5357         Removed useless local bind.
5358         (elmo-folder-open-internal): Don't call
5359         `elmo-shimbun-folder-setup'.
5360         (elmo-folder-close-internal): Clear entity-hash slot.
5361         (elmo-folder-clear): Ditto.
5362         (elmo-shimbun-msgdb-create-entity): Use
5363         `elmo-shimbun-folder-shimbun-header'.
5364         (elmo-map-message-fetch): Ditto.
5365         (elmo-shimbun-update-overview): Use overview entity instead of
5366         shimbun header to lookup id by references.
5367         (elmo-map-folder-list-message-locations): Use not only headers but
5368         also overviews to list locations.
5370 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5372         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
5373         msgdb path.
5375         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
5377 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5379         * elmo-util.el (elmo-read-search-condition-internal): Give default
5380         value for date.
5382 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
5384         * elmo-util.el (elmo-condition-parse-search-value): Accept
5385         YYYY-MM-DD format to search.
5386         * elmo-date.el (elmo-date-get-datevec): Likewise.
5388 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
5390         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
5391         debugging code.
5393 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5395         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
5396         from t.
5398         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
5400         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
5401         case from `elmo-folder-exists-p'.
5402         (elmo-folder-exists-p): Removed.
5403         (elmo-folder-creatable-p) Ditto.
5405         * elmo-net.el (elmo-folder-create): Defined.
5406         (elmo-folder-create-unplugged): New function.
5407         (elmo-folder-exists-p): Changed default value to nil from t.
5409         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
5410         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
5412         * elmo-dop.el (elmo-folder-create-dop): Renamed from
5413         `elmo-create-folder-dop' and append queue
5414         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
5415         (elmo-folder-create-dop-delayed): New function.
5417         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
5419         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
5421         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5422         (elmo-folder-writable-p) : Ditto.
5424         * elmo-version.el (elmo-version): Up to 2.9.9.
5426 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5428         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5429         `elmo-message-use-cache-p' returns nil.
5430         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5431         (ignore cache file and refer the substance in local folders)
5433 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5435         * elmo-version.el (elmo-version): Up to 2.9.8.
5437 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5439         * elmo-version.el (elmo-version): Up to 2.9.7.
5441         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5443 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5445         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5447 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5449         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5450         from --early.
5451         (elmo-map-folder-list-message-locations): Reverse location list.
5453 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5455         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5457 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5459         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5460         as a key.
5461         (elmo-nntp-folder-list-subfolders): Follow the change above.
5463 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5465         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5466         name if authentication type is specified.
5468 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5470         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5471         variable.
5472         (elmo-default-nntp-stream-type): Ditto.
5473         (elmo-default-pop3-stream-type): Ditto.
5475 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5477         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5479 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5481         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5482         elmo-vars.el.
5483         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5485         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5486         (elmo-maildir-folder-path): Ditto.
5487         (elmo-maildir-list): Ditto (abolished).
5489 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5491         * elmo-version.el (elmo-version): Up to 2.9.6.
5493 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5495         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5496         (elmo-maildir-folder-path): Ditto.
5497         (elmo-msgdb-directory): Ditto.
5498         (elmo-passwd-life-time): Ditto.
5499         (elmo-msgdb-extra-fields): Ditto.
5500         (elmo-enable-disconnected-operation): Ditto.
5502 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5504         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5505         other choices.
5506         (elmo-pop3-default-authenticate-type): Ditto.
5508 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5510         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5511         choices for custom.
5512         (elmo-pop3-default-authenticate-type): Ditto.
5514 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5516         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5517         mailbox to new-folder.
5519 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5521         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5522         less than new, set new as unread.
5524         * elmo-util.el (elmo-string): Don't put text-property if nil.
5526 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5528         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5529         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5531 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5533         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5534         is nil on `completing-read'.
5536 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5538         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5539         for namespace part.
5540         (elmo-imap4-parse-namespace-subr): Ditto.
5541         (elmo-folder-list-subfolders): Append a delimiter when the specified
5542         folder path is a root with namespace and does not end with delimiter.
5544 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5546         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5547         was used.
5549 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5551         * elmo-util.el (elmo-save-buffer): The first argument of message
5552         is a format control string.
5554 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5556         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5557         `elmo-folder-diff').
5558         (elmo-diff-unread): Likewise.
5560 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5562         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5563         is t on `completing-read'.
5565 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5567         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5568         method of target folder with self mark-alist if MARK-ALIST is nil.
5570 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5572         * elmo-version.el (elmo-version): Up to 2.9.5.
5574 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5576         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5577         (elmo-dop-merge-funcs): Remove.
5579 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5581         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5582         Return t if PATH is directory, too.
5583         Use `dolist' instead of while loop.
5585 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5587         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5588         is deleted.
5590 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5592         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5593         return value to t.
5594         (elmo-folder-list-messages-unplugged): Return t if
5595         elmo-enable-disconnected-operation is nil.
5597         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5598         `elmo-folder-list-messages-internal'.
5600 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5602         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5603         Change to looking-at `[23][0-9]+'.
5604         (elmo-network-initialize-session): Use 'error-msg'
5605         * elmo-net.el (elmo-network-open-session): Set unplugged
5606         if elmo-network-initialize-session returns 'elmo-open-err.
5608 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5610         * elmo-version.el (elmo-version): Up to 2.9.4.
5612 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5614         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5615         `elmo-folder-list-messages-internal'.
5617 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5619         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5620         (elmo-message-match-condition): New method.
5621         (elmo-folder-search-fast): New inline function.
5622         (elmo-msgdb-search): Removed.
5624         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5625         target folder if it is unplugged.
5626         (elmo-folder-list-messages-internal): Return t if target folder is
5627         unplugged and itself is persistent; In this case, use list be
5628         searched already.
5630         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5631         (elmo-msgdb-search-internal-primitive): Ditto.
5632         (elmo-msgdb-match-condition): New function.
5633         (elmo-msgdb-match-condition-primitive): Ditto.
5635         * elmo-util.el (elmo-filter-condition-p): New macro.
5637         * elmo-cache.el (elmo-folder-search): Removed.
5639         * elmo-localdir.el (elmo-folder-search): Ditto.
5641         * elmo-maildir.el (elmo-folder-search): Ditto.
5643         * elmo-mark.el (elmo-folder-search): Ditto.
5645         * elmo-nmz.el (elmo-folder-search): Ditto.
5647         * elmo-sendlog.el (elmo-folder-search): Ditto.
5649         * elmo-shimbun.el (elmo-folder-search): Ditto.
5651         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5652         if folder is unplugged.
5654         * elmo-nntp.el (elmo-folder-search): Likewise.
5655         (elmo-nntp-search-internal): New function.
5657         * elmo-version.el (elmo-version): Up to 2.9.3.
5659 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5661         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5663 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5665         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5667 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5669         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5671 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5673         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5674         (elmo-map-folder-list-message-locations): Do drive letter conversion
5675         on Windows environment.
5676         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5677         (elmo-map-message-fetch): Ditto.
5679 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5681         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5682         (elmo-network-initialize-session): Ditto.
5684 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5686         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5688         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5690         * elmo-util.el (elmo-progress-clear): Ditto.
5692         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5693         `DD-Mon-YYYY' type date.
5695 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5697         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5698         `elmo-date-make-sortable-string' instead of
5699         `timezone-make-date-sortable'.
5701         * elmo-date.el (elmo-date-make-sortable-string): Use
5702         `timezone-make-time-string'.
5704 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5706         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5708         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5709         `since'; Fix timezone.
5711         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5713         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5715 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5717         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5719 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5721         * elmo.el (elmo-generic-folder-append-messages): Make
5722         fetch-strategy with `use-cache' as 'maybe. Check return value of
5723         `elmo-message-fetch'.
5724         (elmo-message-fetch): Return return value of
5725         `elmo-message-fetch-with-cache-process'.
5726         (elmo-message-fetch-with-cache-process): Return non-nil if
5727         fetching was succeed. Load cache when fetching was failed and
5728         fetch-strategy-use-cache is 'maybe.
5730         * elmo-util.el (elmo-file-cache-load): New function.
5732         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5733         defun.
5735         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5736         non-nil if fetching was succeed.
5738         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5740         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5742         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5743         (elmo-message-fetch-with-cache-process): Likwise.
5745         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5747         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5749         * elmo-version.el (elmo-version): Up to 2.9.2.
5751 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5753         * elmo.el (elmo-folder-delete): Delete msgdb path.
5755         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5757         * elmo-maildir.el (elmo-folder-delete): Ditto.
5759         * elmo-localdir.el (elmo-folder-delete): Ditto.
5761         * elmo-imap4.el (elmo-folder-delete): Ditto.
5763 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5765         * elmo.el (luna-define-class): Added `biff' slot.
5767         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5768         (elmo-pop3-debug-inhibit-logging): Abolished.
5769         (elmo-network-close-session): Eliminated needless let.
5770         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5771         (elmo-pop3-send-command): Added `no-log' argument.
5772         (elmo-pop3-process-filter): Use `with-current-buffer'.
5773         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5774         if login failure.
5775         (elmo-pop3-auth-apop): Likewise.
5776         (elmo-network-authenticate-session): Likewise.
5778         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5779         if biff folder.
5781         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5782         string to determine protocol.
5783         (elmo-network-session-name-prefix): Abolished.
5784         (elmo-network-session-cache-key): Follow the change above.
5785         (elmo-network-open-session): Ditto.
5787         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5788         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5790         * elmo-version.el (elmo-version): Up to 2.9.1.
5792         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5793         unmatch condition checking.
5795         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5796         condition.
5798 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5800         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5802 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5804         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5805         test for while loop to execute at least one SEARCH command.
5807 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5809         * elmo-version.el (elmo-version): Up to 2.9.0.
5811 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5813         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5814         (elmo-archive-folder-path): Define.
5815         (elmo-folder-initialize): Setup `dir-name' slot.
5816         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5817         Use `dir-name' as prefix of each subfolders.
5818         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5820 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5822         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5823         (elmo-pipe-folder-list-target-messages): New internal function.
5824         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5825         `killed-list'.
5826         (elmo-pipe-folder-copied-list-load): New function.
5827         (elmo-pipe-folder-copied-list-save): Ditto.
5828         (elmo-folder-open-internal): Follow the change above.
5829         (elmo-folder-status): Fixed for copy.
5831 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5833         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5835 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5837         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5838         elmo-copy-file instead of elmo-add-name-to-file.
5840         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5842         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5843         "file://..." index.
5845         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5846         of accept-process-output as 1.
5847         (elmo-pop3-read-contents): Ditto.
5848         (elmo-pop3-read-body): Ditto.
5850 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5852         * elmo-version.el (product-version-as-string): Remove define.
5854 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5856         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5857         (elmo-imap4-copy-messages): Chop number set using
5858         `elmo-imap4-number-set-chop-length'.
5859         (elmo-imap4-set-flag): Ditto.
5860         (elmo-imap4-search-internal-primitive): Ditto.
5862 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5864         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5865         `elmo-folder-make-temp-dir'
5867         * elmo-vars.el (elmo-cache-directory): New variable.
5868         (elmo-cache-dir): Abolished.
5869         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5871         * elmo-version.el (elmo-version): Up to 2.7.7.
5873 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5875         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5876         defcustom; Set default value as t.
5878 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5880         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5881         (ldap-search-program-arguments): Changed default value.
5882         (ldap-search-basic): Accept exit status 4.
5883         (ldap/field-body): Parse options.
5884         (ldap/collect-field): Ditto.
5885         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5887         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5888         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5889         (elmo-imap4-accept-ok): Ditto.
5890         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5891         'notify-bye, only BYE error is reported.
5892         (elmo-folder-exists-p-plugged): Set no-error argument of
5893         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5895         * elmo.el (elmo-imap4-bye-error): Changed message.
5897         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5898         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5899         queues (It causes infinite loop).
5901 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5903         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5904         (RECENT UNSEEN MESSAGES) extension.
5906 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5908         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5909         Check number of overview fields.
5911 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5913         * elmo.el (elmo-folder-confirm-appends): Changed message.
5914         (elmo-folder-confirm-appends): Ditto.
5916         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5917         `with-temp-buffer'.
5918         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5920 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5922         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5923         of elmo-folder-update-threshold is nil, which can be set by
5924         wl-summary-update-confirm-threshold.
5926 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5928         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5929         (elmo-nmz-index-alias-alist): Ditto.
5930         (elmo-map-folder-list-message-locations): Follow the change above.
5932 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5934         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5936         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5938         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5940         * elmo-util.el (elmo-read): Ditto.
5941         (elmo-display-error): Ditto.
5943         * elmo-vars.el (elmo-date-match): Ditto.
5945         * pldap.el (ldap-coding-system): Ditto.
5947         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5948         `elmo-inhibit-number-mapping' as nil.
5950 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5952         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5953         space delimiter for list response.
5955 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5957         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5959 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5961         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5962         (elmo-map-message-fetch): Fix.
5963         * elmo-map.el (elmo-folder-status): Fix for killed.
5965 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5967         * elmo-sendlog.el: New file.
5968         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5970 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5972         * acap.el (acap-logging-out): New buffer local variable.
5973         (acap-close): Set it.
5974         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5975         an error.
5977 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5979         * acap.el (acap-response-bye-p): New function.
5980         (acap-response-bye-message): Ditto.
5981         (acap-wait-for-response): If bye response is received, cause an error.
5982         (acap-parse-response): Make bye response when 'Bye' is received.
5984 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5986         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5988 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5990         * elmo-util.el (elmo-copy-file): Added argument
5991         `ok-if-already-exists'.
5992         (elmo-copy-file): Fixed typo.
5994 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5996         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5998 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
6000         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
6002 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
6004         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
6005         to killed-list.
6007 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
6009         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
6010         (elmo-folder-initialize): Fix for `copy'.
6011         (elmo-pipe-drain): Ditto.
6012         (elmo-folder-open-internal): Ditto.
6013         (elmo-folder-newsgroups): Fix.
6015 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
6017         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
6018         for each message.
6020         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
6021         recent value is returned from imap folder.
6023         * elmo.el (elmo-folder-newsgroups): New generic function.
6025         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
6026         (elmo-folder-initialize): Set it.
6027         (elmo-folder-expand-msgdb-path): Use it.
6028         (elmo-folder-newsgroups): Define.
6030         * elmo-filter.el (elmo-folder-newsgroups): Define.
6032         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
6034         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
6036         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
6038 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6040         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
6041         user option.
6042         (elmo-shimbun-header-extra-field): New inline function.
6043         (elmo-shimbun-header-set-extra-field): Ditto.
6044         (elmo-shimbun-folder-header-hash-setup): Ditto.
6045         (elmo-shimbun-update-overview): Ditto.
6046         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
6047         (elmo-shimbun-folder-setup): Use
6048         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
6049         (elmo-shimbun-get-headers): Ditto.
6050         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
6051         Insert `X-Shimbun-Id:' header if extra field is set.
6052         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
6053         field's value instead of `shimbun-header-id'.
6055         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
6056         inline function.
6057         (elmo-msgdb-overview-entity-set-date): Ditto.
6058         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
6060 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
6062         * mmimap.el (mmimap-entity-section): Changed body node number from
6063         "0" to "1".
6065 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6067         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
6068         `elmo-folder-delete-messages'.
6070         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
6071         (elmo-folder-initialize): Changed to expand alias into index path.
6073         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
6074         `elmo-mime-insert-header-from-buffer' with 6th arg
6075         `sorted-fields'.
6077 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6079         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
6081         * elmo.el (elmo-diff-new): New inline function.
6082         (elmo-diff-unread): Ditto.
6083         (elmo-diff-all): Ditto.
6085         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
6086         value from responseb.
6087         (elmo-imap4-folder-diff-plugged): Ditto.
6088         (elmo-imap4-server-diff-async): Added recent argument.
6089         (elmo-server-diff-async): Ditto.
6090         (elmo-imap4-folder-diff-plugged): Ditto.
6092         * elmo-version.el (elmo-version): Up to 2.7.6.
6094 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6096         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
6097         in quoted-stirng.
6099 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
6101         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
6103         * elmo-imap4.el (elmo-folder-initialize): Ditto.
6105         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6107         * elmo-multi.el (elmo-folder-initialize): Ditto.
6109         * elmo-util.el (elmo-parse-token): New function.
6110         (elmo-parse-prefixed-element): Ditto.
6112 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6114         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
6115         delete process.
6116         (elmo-imap4-accept-ok): Ditto.
6118 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6120         * mmimap.el (mime-imap-entity-header-string): Don't check first
6121         element of node-id is `0' (Follow last change).
6123 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6125         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
6126         assigned irregular node-id to nested multipart section.
6127         (initialize-instance): Followed above change.
6129 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6131         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
6132         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
6133         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
6134         `elmo-shimbun-get-headers');
6135         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
6136         visible article on summary exists in headers).
6137         (elmo-map-message-fetch): Cause an error when folder is unplugged.
6139 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
6141         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
6142         definition.
6144 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
6146         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
6148 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6150         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
6151         header separator into loop condition.
6153 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6155         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
6156         Return duplicate folder if it has subfolder.
6158 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6160         * elmo.el (elmo-make-folder): Add folder name error check.
6162         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
6163         (elmo-nntp-encode-group-string): New inline function.
6164         (elmo-nntp-decode-group-string): Ditto.
6165         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
6166         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
6167         Use `not' instead of `null';
6168         Use elmo-nntp-decode-group-string.
6170         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
6172         * elmo-version.el (elmo-version): Up to 2.7.5.
6174 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6176         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
6177         Hide progress gauge if `elmo-folder-move-messages' exits
6178         nonlocally.
6180 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6182         * elmo-imap4.el (elmo-folder-initialize): Use
6183         `elmo-imap4-encode-folder-string' for folder name.
6185 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6187         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
6188         `done'.
6190 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6192         * elmo-util.el (elmo-progress-counter-alist): New internal
6193         variable.
6194         (elmo-progress-counter-value): New macro.
6195         (elmo-progress-counter-all-value): Ditto.
6196         (elmo-progress-counter-format): Ditto.
6197         (elmo-progress-counter-set-value): Ditto.
6198         (elmo-progress-set): New function.
6199         (elmo-progress-clear): Ditto.
6200         (elmo-progress-notify): Ditto.
6202         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
6203         counter.
6205         * elmo.el (elmo-generic-folder-append-messages): Call
6206         `elmo-progress-notify'.
6207         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
6209         * elmo-archive.el (elmo-folder-append-messages): Call
6210         `elmo-progress-notify'.
6212         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
6214         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
6216         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
6218 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6220         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
6221         'Create'.
6222         (elmo-message-encache-dop): Added argument `read'.
6224         * elmo-shimbun.el (elmo-message-encache): Ditto.
6226         * elmo-net.el (elmo-message-encache): Ditto.
6228         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
6229         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
6230         elmo-imap4-seen-messages.
6231         (elmo-folder-msgdb-create-plugged): Initialize
6232         elmo-imap4-seen-messages;
6233         Set seen mark on elmo-imap4-seen-messages.
6235         * elmo-pipe.el (elmo-folder-message-file-p): Define.
6237         * elmo.el (elmo-generic-folder-append-messages): Check return value of
6238         elmo-folder-append-buffer.
6239         (elmo-folder-encache): Added optional argument `read'.
6240         (elmo-message-encache): Ditto.
6242         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
6244         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
6246         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
6247         if append buffer content succeds.
6249 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6251         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
6252         elmo-display-progress.
6254         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
6255         Set 4th argument of mime-display-message.
6256         (elmo-mime-display-as-is): Ditto.
6258 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
6260         * elmo-nmz.el (toplevel): Require 'mime-edit.
6261         (elmo-nmz-content-type-alist): Abolished.
6262         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
6263         content is not a message.
6264         (elmo-map-message-fetch): Changed behavior exept for message content;
6265         Detect mime-charset automatically, Use `mime-find-file-type' to detect
6266         content-type, Add From: and Subject: field.
6268 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6270         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
6271         (elmo-map-message-fetch): Add `Content-Type' field if contents is
6272         not a message.
6274 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6276         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
6277         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
6279         * elmo-archive.el (elmo-folder-writable-p): Defined.
6281         * elmo-cache.el (elmo-folder-writable-p): Ditto.
6283         * elmo-filter.el (elmo-folder-writable-p): Ditto.
6285         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
6287         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
6289         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
6291         * elmo-mark.el (elmo-folder-writable-p): Ditto.
6293         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
6295         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
6297 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
6299         * elmo-util.el (elmo-address-quote-specials): New function;
6300         Renamed from `wl-address-quote-specials'.
6302 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6304         * elmo-version.el (elmo-version): Up to 2.7.4.
6306 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
6308         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
6310 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
6312         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
6313         both compile-time and run-time to avoid byte-compile warning.
6315 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
6317         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
6319 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6321         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
6322         option.
6323         (elmo-mime-display-as-is-internal): Use it.
6325         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
6326         if `read-passwd' is not defined.
6328 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6330         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
6331         by original number.
6332         (elmo-folder-status): Call `elmo-folder-open-internal';
6333         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
6334         (elmo-folder-close-internal): Set location-alist as nil.
6335         (elmo-folder-clear): Define.
6336         (elmo-folder-check): Don't set location-alist as nil.
6338         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
6340 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
6342         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
6343         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
6345         * mmimap.el (mime-imap-entity::requested): New slot.
6346         (mime-imap-location-fetch-entity-p): New generic function.
6347         (mime-decode-parameters): Define using `defun-maybe'.
6348         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
6349         content-type structure.
6350         (mime-entity-body): Return empty body if
6351         `mime-imap-location-fetch-entity-p' returns nil in the first request.
6353         * elmo.el (elmo-message-displaying): New variable.
6355         * elmo-mime.el (elmo-mime-message-display): Bind
6356         elmo-message-displaying as t.
6358         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
6360 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6362         * acap.el (acap-open): erase buffer before starting network process.
6363         (acap-store): Rewrite.
6365 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6367         * elmo-imap4.el (elmo-imap4-default-mailbox,
6368         elmo-imap4-default-server
6369         elmo-imap4-default-authenticate-type,
6370         elmo-imap4-default-user,
6371         elmo-imap4-default-port,
6372         elmo-imap4-default-stream-type,
6373         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
6375         * elmo-pop3.el (elmo-pop3-default-user,
6376         elmo-pop3-default-server,
6377         elmo-pop3-default-authenticate-type,
6378         elmo-pop3-default-port,
6379         elmo-pop3-default-stream-type,
6380         elmo-pop3-stream-type-alist): Ditto.
6382         * elmo-nntp.el (elmo-nntp-default-server,
6383         elmo-nntp-default-user,
6384         elmo-nntp-default-port,
6385         elmo-nntp-default-stream-type,
6386         elmo-nntp-stream-type-alist): Ditto.
6388         * elmo-vars.el: Follow changes above.
6389         (elmo-setting): New custom group; added 'elmo-setting group to
6390         above variables.
6392         * elmo-version.el (elmo-version): Up to 2.7.3.
6394         * acap.el (acap-parse-response): Don't delete process when BYE
6395         response (It causes hang-up on slow network environment).
6396         (toplevel): Added comment.
6398 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
6400         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
6402         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
6403         parsing NIL.
6404         (acap-parse-return-metadata): Ditto.
6406         * slp.el: New file.
6407         (toplevel): Fixed typo.
6409         * acap.el: New file.
6410         (acap-network-stream-open): Show "Connecting..." message.
6411         (acap-parse-response): Fixed problem for BYE untagged response.
6412         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
6413         (toplevel): Added tiny comments.
6415 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
6417         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
6418         space delimiter for uidl response.
6420 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
6422         * elmo-vars.el (elmo-use-semi): Eliminated.
6424         * elmo-util.el (elmo-string-assoc-all): New function.
6426 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6428         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6429         property 'mime-preview-situation for `mime-preview-quit'.
6431 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6433         * elmo.el (elmo-message-fetch-with-cache-process): Call
6434         elmo-message-fetch-internal instead of causing an error when fetch
6435         strategy is 'entire but only 'section cache is available.
6437 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6439         * elmo-version.el (elmo-version): Up to 2.7.2.
6441         * elmo.el (elmo-generic-folder-append-messages): Make
6442         fetch-strategy with `use-cache'.
6444         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6445         (elmo-dop-queue-method-name): New macro.
6447 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6449         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6450         unbalanced parenthesis.
6452 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6454         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6456 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6458         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6459         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6461 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6463         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6464         local variables.
6466 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6468         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6469         (elmo-message-use-cache-p): Define.
6470         (elmo-folder-msgdb-create): Treat cache.
6472 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6474         * elmo-nntp.el (elmo-network-initialize-session): Call
6475         `elmo-nntp-send-mode-reader'.
6476         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6478 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6480         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6481         alist.
6482         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6483         assoc.
6485         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6486         for `elmo-plugged-p'.
6487         (elmo-open-network-stream): Fixed stream-type argument.
6489 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6491         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6492         unknown archive type is specified.
6494 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6496         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6498         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6499         while loading msgdb.
6501         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6502         (elmo-folder-open-internal): Rewrite.
6504 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6506         * elmo-mime.el (elmo-mime-display-as-is-internal):
6507         Adjust buffer-multibyte status.
6509 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6511         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6512         of elmo-condition-find-key.
6514         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6515         (elmo-condition-in-msgdb-p): Ditto.
6516         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6517         argument.
6519 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6521         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6523 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6525         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6526         label for elmo-display-progress.
6528 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6530         * elmo.el (elmo-folder-clear): New method.
6531         (elmo-folder-clear): Define.
6532         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6534         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6535         (elmo-folder-clear): Define.
6537         * elmo-map.el (elmo-folder-clear): Define.
6539         * elmo-version.el (elmo-version): Up to 2.7.1.
6541 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6543         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6544         updates.
6546 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6548         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6549         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6551 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6553         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6555         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6556         and re-written.
6558         * elmo-imap4.el (elmo-folder-initialize): Use
6559         elmo-get-network-stream-type.
6561         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6563         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6565 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6567         * elmo.el (elmo-message-encache): Set unread argument for
6568         elmo-message-fetch.
6570         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6572         * elmo.el (elmo-net-port-info): New method.
6574         * elmo-shimbun.el (elmo-net-port-info): Define.
6575         (elmo-message-encache): Ditto.
6577         * elmo-net.el (elmo-net-port-info): Define as method.
6579         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6580         unplugged status when elmo-enable-disconnected-operation is t.
6582         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6583         of spool folder before checking new number.
6585 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6587         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6588         (elmo-network-setup-session): Ditto.
6589         (elmo-message-fetch-plugged): Ditto.
6590         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6591         (elmo-network-initialize-session): Ditto.
6592         (elmo-pop3-read-response): Abolish 3rd argument.
6593         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6594         (elmo-pop3-read-contents): Ditto.
6595         (elmo-pop3-read-body): Ditto.
6596         (elmo-folder-status): Call elmo-folder-close.
6597         (elmo-pop3-lock): Abolish.
6598         (elmo-pop3-unlock): Ditto.
6599         (elmo-pop3-locked-p): Ditto.
6600         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6602 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6604         * elmo-version.el (elmo-version): Up to 2.7.0.
6606         * elmo-pop3.el (elmo-pop3-debug): New variable.
6607         (elmo-pop3-debug-inhibit-logging): Ditto.
6608         (elmo-pop3-debug): New function.
6609         (elmo-pop3-send-command): Call elmo-pop3-debug.
6610         (elmo-pop3-read-response): Added keep-lock optional argument;
6611         Don't unlock if keep-lock is non-nil.
6612         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6613         (elmo-network-authenticate-session): Bind
6614         elmo-pop3-debug-inhibit-logging as t.
6615         (elmo-network-setup-session): Call elmo-pop3-read-response with
6616         keep-lock argument.
6617         (elmo-pop3-read-msg): Ditto.
6618         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6619         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6620         (elmo-network-initialize-session): Call elmo-pop3-lock.
6621         (elmo-folder-close-internal): Don't clear location-alist slot.
6622         (elmo-folder-check): Clear location-alist slot.
6624 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6626         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6627         (elmo-pop3-send-command): Call elmo-pop3-lock.
6628         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6629         (elmo-pop3-read-contents): Ditto.
6630         (elmo-pop3-lock): New function.
6631         (elmo-pop3-unlock): Ditto.
6632         (elmo-pop3-locked-p): Ditto.
6633         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6634         returns t.
6636 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6638         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6640         * elmo-util.el (elmo-file-field-primitive-condition-match):
6641         New inline function (Don't fetch file content if "first" or "last").
6642         (elmo-file-field-condition-match): Use
6643         elmo-file-field-primitive-condition-match.
6645         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6646         "first".
6648         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6649         (elmo-message-fetch-plugged): Fixed.
6651         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6653 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6655         * elmo.el (elmo-folder-move-messages): Bind
6656         elmo-inhibit-display-retrieval-progress as t while moving messages.
6658         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6659         New variable.
6660         (elmo-inhibit-display-retrieval-progress): Ditto.
6662         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6663         for retrieval progress;
6664         Don't display progress when total buffer size is smaller than
6665         elmo-display-retrieval-progress-threshold.
6666         (elmo-message-fetch-plugged): Don't display progress when
6667         elmo-inhibit-display-retrieval-progress is non-nil.
6669         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6670         for retrieval progress;
6671         Don't display progress when literal size is smaller than
6672         elmo-display-retrieval-progress-threshold.
6673         (elmo-imap4-message-fetch): Don't display progress when
6674         elmo-inhibit-display-retrieval-progress is non-nil.
6676 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6678         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6679         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6680         (elmo-imap4-message-fetch): Likewise.
6682         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6683         (elmo-shimbun-index-range-alist): Ditto.
6684         (elmo-shimbun-use-entire-index): Abolish.
6685         (shimbun-mua-use-entire-index): Ditto.
6686         (elmo-shimbun-folder): Added new slot `range'.
6687         (elmo-folder-initialize): Setup slot `range'.
6689 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6691         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6692         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6693         (elmo-shimbun-get-headers): Use return value of
6694         `shimbun-article-expiration-days'.
6695         (elmo-folder-close-internal): Clean up last-check slot.
6697         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6698         (elmo-pop3-total-size): New variable.
6699         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6701         * elmo.el (elmo-folder-reserve-status-p): New method.
6703         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6704         (elmo-shimbun-use-entire-index): New user option.
6705         (shimbun-elmo-mua): New class.
6706         (shimbun-mua-search-id): Define.
6707         (shimbun-mua-use-entire-index): Ditto.
6708         (elmo-shimbun-folder:last-check): New slot.
6709         (elmo-shimbun-headers-cache-header-list): Abolish.
6710         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6711         (elmo-shimbun-headers-cache-header-hash): Ditto.
6712         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6713         (elmo-shimbun-headers-cache-last-check): Ditto.
6714         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6715         (elmo-shimbun-headers-check-p): Rewrite.
6716         (elmo-shimbun-msgdb-to-headers): New function.
6717         (elmo-shimbun-get-headers): Rewrite.
6718         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6719         (elmo-folder-open-internal): Get headers only if
6720         `elmo-shimbun-headers-check-p' is non-nil.
6721         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6722         is non-nil.
6723         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6724         (elmo-quit): Removed.
6726         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6727         function.
6728         (elmo-msgdb-overview-entity-set-extra): Ditto.
6729         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6731         * elmo-map.el (elmo-folder-status): Don't call
6732         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6733         is non-nil.
6735 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6737         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6738         of `elmo-msgdb-search-internal-primitive' when condition's car is
6739         `and' or `or'.
6741 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6743         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6745 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6747         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6748         call `elmo-pipe-drain'.
6750 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6752         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6753         typo. (elmo-cache-folder -> elmo-mark-folder)
6755 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6757         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6758         `elmo-message-fetch'.
6760 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6762         * elmo-net.el (elmo-message-encache): Fixed typo.
6763         (elmo-message-fetch-unplugged): Changed call
6764         `elmo-message-fetch-internal' without argument `outbuf'.
6766 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6768         * elmo.el (elmo-message-encache): Define as generic function.
6769         (elmo-message-fetch-field): New generic function.
6770         (elmo-message-fetch-with-cache-process): Cause an error when
6771         fetch strategy is 'entire but only 'section cache is available.
6772         (toplevel): Fixed nmz folder definition.
6774         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6775         (elmo-msgdb-resume-list-filename): Ditto.
6776         (elmo-queue-filename): Ditto.
6777         (elmo-enable-disconnected-operation): Changed default value to t.
6779         * elmo-util.el (elmo-cache-path-section-p): New function.
6780         (elmo-file-cache-get): Use it.
6781         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6782         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6783         (elmo-dop-queue-save): Ditto.
6785         * elmo-net.el (elmo-folder-status-unplugged): Call
6786         elmo-folder-status-dop.
6787         (elmo-folder-list-messages-unplugged): Implemented.
6788         (elmo-folder-delete-messages-unplugged): Define.
6789         (elmo-folder-msgdb-create): Define.
6790         (elmo-folder-msgdb-create-unplugged): Define.
6791         (elmo-folder-mark-as-read-unplugged): Ditto.
6792         (elmo-folder-unmark-read-unplugged): Ditto.
6793         (elmo-folder-mark-as-important-unplugged): Ditto.
6794         (elmo-folder-unmark-important-unplugged): Ditto.
6795         (elmo-message-encache): Ditto.
6797         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6798         (elmo-dop-queue-save): Ditto.
6800         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6801         `elmo-folder-msgdb-create'.
6802         (elmo-folder-append-buffer): Implemented unplugged operation.
6803         (elmo-folder-append-messages): Call parent method in unplugged status.
6804         (elmo-message-fetch-unplugged): Removed definition.
6805         (elmo-message-fetch-field): Implemented.
6807         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6808         (elmo-dop-folder): Removed variable definition.
6809         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6810         (elmo-dop-queue-flush): Implemented.
6811         (elmo-dop-queue-merge): Removed definition (TODO).
6812         (elmo-dop-spool-folder): New function.
6813         (elmo-dop-spool-folder-append-buffer): Ditto.
6814         (elmo-dop-spool-folder-list-messages): Ditto.
6815         (elmo-dop-list-deleting-messages): Ditto.
6816         (elmo-folder-append-buffer-dop): Ditto.
6817         (elmo-folder-delete-messages-dop): Ditto.
6818         (elmo-message-encache-dop): New inline function.
6819         (elmo-create-folder-dop): Ditto.
6820         (elmo-folder-mark-as-read-dop): Ditto.
6821         (elmo-folder-unmark-read-dop): Ditto.
6822         (elmo-folder-mark-as-important-dop): Ditto.
6823         (elmo-folder-unmark-important-dop): Ditto.
6824         (elmo-folder-status-dop): Fixed.
6825         (elmo-folder-append-buffer-dop-delayed): New function.
6826         (elmo-folder-delete-messages-dop-delayed): Ditto.
6827         (elmo-dop-msgdb): Ditto.
6829 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6831         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6833 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6835         * elmo.el (elmo-folder-move-messages): Fixed problem when
6836         `dst-folder' is 'null.
6838 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6840         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6841         instead of current mark.
6843         * elmo-multi.el (elmo-folder-list-importants-internal): No
6844         operation if importants is not list.
6846         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6847         Return t if importants is not list.
6849         * elmo-map.el (elmo-map-folder-list-importants): Define.
6850         (elmo-folder-list-importants-internal): Check return value of
6851         `elmo-map-folder-list-importants-internal'.
6853         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6855         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6857         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6859         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6861 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6863         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6864         (Patch is provided by <kita@coe.nttdata.co.jp>).
6866 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6868         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6869         mark folder.
6871 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6873         * elmo.el (elmo-message-fetch): Define.
6874         (elmo-message-fetch-with-cache-process): New generic method.
6875         (elmo-message-fetch-internal): New generic method.
6876         (elmo-folder-synchronize):
6878         * elmo-archive.el (elmo-message-fetch-internal): Define.
6879         (elmo-message-fetch): Eliminated.
6881         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6882         (elmo-message-fetch): Eliminated.
6884         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6885         argument OUTBUF.
6886         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6888         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6889         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6891         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6892         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6894         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6896         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6898         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6900         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6901         (elmo-message-fetch-unplugged): New generic method.
6902         (elmo-message-fetch-internal): Remove cache process (Renamed from
6903         `elmo-message-fetch').
6905         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6906         (elmo-message-fetch): Eliminated.
6907         (elmo-message-fetch-unplugged): Ditto.
6909         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6911 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6913         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6914         of `to-be-deleted' from number-alist to number-list.
6916 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6918         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6919         (elmo-folder-mark-as-important): Ditto.
6921 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6923         * elmo.el (elmo-folder): Added process-duplicates slot.
6925         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6926         (elmo-folder-unmark-read): Ditto.
6927         (elmo-folder-unmark-important): Ditto.
6928         (elmo-folder-mark-as-important): Ditto.
6930         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6931         duplicated message processing.
6933         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6935 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6937         * elmo-util.el (elmo-list-subdirectories-1): New function.
6938         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6939         (elmo-mapcar-list-of-list): New function.
6941         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6942         `elmo-mapcar-list-of-list' instead of `mapcar'.
6944         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6946         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6947         `elmo-have-link-count'. Return the fully qualified folder name.
6949 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6951         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6952         (elmo-shimbun-headers-cache): New internal variable.
6953         (elmo-shimbun-headers-cache-header-list): New inline function.
6954         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6955         (elmo-shimbun-headers-cache-header-hash): Ditto.
6956         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6957         (elmo-shimbun-headers-cache-last-check): Ditto.
6958         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6959         (elmo-shimbun-lapse-seconds): Ditto.
6960         (elmo-shimbun-headers-cache-check-p): Ditto.
6961         (elmo-shimbun-get-headers): New function.
6962         (elmo-folder-open-internal): Call it.
6963         (elmo-quit): Define (Clear headers-cache).
6965 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6967         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6969         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6970         (elmo-msgdb-flist-save): Ditto.
6972         * elmo-shimbun.el (elmo-folder-list-subfolders):
6973         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6974         (elmo-folder-exists-p): Ditto.
6976         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6977         argument for `shimbun-header-insert'.
6979 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6981         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6982         at first time.
6984         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6985         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6987 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6989         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6990         (elmo-folder-plugged-p): Define.
6991         (elmo-folder-set-plugged): Ditto.
6992         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6993         (elmo-folder-list-messages-internal): Return t if unplugged.
6994         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6996         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6997         when elmo-folder-list-messages-internal method of children returns t.
6999         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
7000         pair is nil.
7001         (elmo-folder-open-internal): Don't update if unplugged status.
7003 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
7005         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
7006         new message.
7008 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
7010         * elmo-util.el (elmo-file-cache-save): Ignore errors.
7012         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
7013         saving.
7015 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
7017         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
7019         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
7020         (elmo-folder-open-internal): Set up headers slot.
7021         (elmo-folder-check): Call elmo-folder-close-internal and
7022         elmo-folder-open-internal.
7023         (elmo-folder-close-internal): Clean up headers slot.
7025 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7027         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
7028         exactly folder list.
7029         (elmo-folder-append-messages): Fixed append archive with prefix.
7031         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
7032         make temp files with start-number.
7034         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
7036 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7038         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
7039         argument `visible-only'.
7040         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
7041         instead of `if'.
7043         * elmo-pop3.el (elmo-folder-open-internal): Check
7044         `elmo-inhibit-number-mapping' is non-nil.
7046         * elmo-pipe.el (elmo-folder-status): Fixed.
7048 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
7050         * elmo.el (elmo-dop-queue-flush): Added autload setting.
7052         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
7053         (elmo-folder-open-internal): Setup `header-hash' slot.
7054         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
7055         information.
7056         (elmo-map-message-fetch): Ditto.
7058 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
7060         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7061         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7062         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7063         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
7065         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
7067 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7069         * sb-airs.el: Added footer.
7071         * shimbun.el (shimbun-article): Define as luna-method.
7073         * sb-tcup.el: New file.
7075         * sb-airs.el (toplevel): Require 'sb-mhonarc.
7076         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
7078 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
7080         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
7081         (shimbun-get-headers): Ditto.
7083         * elmo.el: Moved obsolete variable definitions from
7084         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
7086         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
7087         groups.
7089         * shimbun.el: New file.
7091         * elmo-shimbun.el: New file.
7093         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
7094         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
7095         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
7096         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
7098 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
7100         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
7101         hierarchy is t.
7103 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
7105         * elmo.el (elmo-folder-msgdb): Define as macro.
7106         (elmo-folder-open): Added argument `load-msgdb'.
7107         (elmo-generic-folder-open): Ditto.
7108         (elmo-folder-encache): New function.
7110         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
7112         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
7114         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
7115         Eliminated argument FOLDER and added argument MSGDB.
7116         (elmo-dop-queue-load): Moved from elmo-dop.el.
7117         (elmo-dop-queue-save): Ditto.
7119         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
7121         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
7123         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
7124         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
7125         (elmo-filter-folder-list-importants-internal): Ditto.
7127         * elmo-map.el (elmo-folder-pack-number): Ditto.
7129         * elmo-mime.el (elmo-mime-message-display): Ditto.
7131         * elmo.el (elmo-generic-folder-commit): Ditto.
7132         (elmo-folder-list-unreads): Ditto.
7133         (elmo-folder-list-importants): Ditto.
7134         (elmo-generic-folder-commit): Ditto.
7135         (elmo-message-set-mark): Ditto.
7136         (elmo-generic-folder-append-msgdb): Ditto.
7137         (elmo-folder-synchronize): Ditto.
7138         (elmo-folder-messages): Ditto.
7139         (elmo-init): Call elmo-dop-queue-load.
7140         (elmo-folder-list-messages): Ditto.
7142         * elmo-nntp.el (elmo-folder-update-number): Ditto.
7143         (elmo-nntp-folder-process-crosspost): Ditto.
7144         (elmo-folder-list-unreads-internal): Ditto.
7146         * elmo-dop.el: Removed old functions.
7148 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
7150         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
7151         `folder' to `msgdb'.
7153 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
7155         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
7156         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
7158         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
7159         case-fold-search.
7161 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
7163         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
7164         defined.
7166         * mmimap.el (toplevel): Require 'mime-parse and 'static.
7167         (mmimap-parse-parameters-from-list): Define as alias for
7168         `mime-decode-parameter-plist' if it is defined as function.
7169         (mmimap-make-mime-entity): Added argument `number'.
7170         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
7171         as 0.
7172         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
7174         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
7176         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
7178         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
7180 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
7182         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
7184         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
7185         when elmo-imap4-default-authenticate-type is nil.
7186         (elmo-folder-list-subfolders): Ditto
7187         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
7188         (elmo-imap4-fetch-callback-1-subr): Renamed from
7189         `elmo-imap4-fetch-callback-1' and define as inline function.
7190         (elmo-imap4-fetch-callback-1):
7191         Renamed from `elmo-imap4-fetch-callback'.
7192         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
7194         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
7195         msgdb path (To keep compatibility with main trunk).
7197         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
7199         * elmo-util.el (elmo-make-file-cache): Moved position of
7200         some macros.
7202         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
7203         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
7204         instead of `elmo-pop3-inhibit-uidl'.
7205         (elmo-folder-exists-p): Ditto.
7206         (elmo-pop3-folder-list-messages): Ditto.
7208         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
7209         instead of `elmo-pop3-inhibit-uidl'.
7210         (elmo-folder-status): Ditto.
7212         * elmo-dop.el (elmo-dop-folder): New variable.
7213         (elmo-dop-lock-message): Eliminated.
7214         (elmo-dop-unlock-message): Ditto.
7215         (elmo-dop-lock-list-load): Ditto.
7216         (elmo-dop-lock-list-save): Ditto.
7217         (elmo-dop-delete-folder): Ditto.
7218         (elmo-dop-rename-folder): Ditto.
7220         * elmo.el: Removed incomplete commentary.
7222 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7224         * elmo.el (toplevel): Require 'elmo-version first;
7225         for little `recursive-load-depth' settings.
7226         Fix "ends here" comment.
7228 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
7230         * elmo-util.el (toplevel): Require 'poem;
7231         Some functions are moved from elmo-cache.el.
7233         * elmo-net.el (toplevel): Require 'elmo-cache.
7235         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
7237         * elmo.el (toplevel): Ditto.
7239         * elmo-cache.el: Rewrite with luna;
7240         Some functions are moved to elmo-util.el.
7242         * elmo-internal.el (elmo-internal-folder-list): New variable.
7243         (elmo-internal-folder-initialize): Rewrite.
7244         (elmo-folder-list-subfolders): Ditto.
7246         * elmo-cache.el (elmo-cache-search-all): Eliminated.
7247         (elmo-cache-collect-sub-directories): Ditto.
7249 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
7251         * elmo-version.el (elmo-version): Up to 2.5.8.
7253         * elmo.el (elmo-folder-list-messages-mark-match): New function.
7255         * elmo-util.el (elmo-list-insert): New function.
7257 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
7259         * elmo.el (elmo-init): New function.
7260         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
7262         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
7263         (Renamed from `elmo-localdir-header-chop-length').
7265         * elmo-pop3.el (elmo-pop3-use-cache,
7266         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
7268         * elmo-nntp.el (elmo-message-fetch): Define.
7269         (elmo-message-fetch-unplugged): Ditto.
7270         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
7271         (elmo-nntp-use-cache): Ditto.
7272         (elmo-nntp-max-number-precedes-list-active): Ditto.
7274         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
7276         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
7277         `elmo-msgdb-insert-file-header'.
7278         Use `elmo-msgdb-file-header-chop-length'.
7280         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
7281         `elmo-vars.el'.
7283         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
7284         (elmo-cache-msgdb-create-overview-entity-from-file): Use
7285         `elmo-msgdb-insert-file-header'.
7287         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
7288         Use new variable;
7289         Define obsolete variables with `elmo-define-obsolete-variable',
7291         * elmo-util.el (elmo-warning-buffer-name): New constant.
7292         (elmo-warning): New function.
7293         (elmo-obsolete-variable-alist): New variable.
7294         (elmo-obsolete-variable-show-warnings): New variable.
7295         (elmo-define-obsolete-variable): New function.
7296         (elmo-resque-obsolete-variable): Ditto.
7297         (elmo-resque-obsolete-variables): Ditto.
7299 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7301         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
7302         Eliminated.
7304         * elmo-pop3.el, elmo-nntp.el: Use custom.
7306 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7308         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
7309         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
7311 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7313         * Luna-fy Kenichi OKADA's following changes.
7314         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
7315         `nohide'.
7316         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
7318 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
7320         * elmo-util.el (elmo-display-progress): Prefer
7321         `progress-feedback-with-label' to `lprogress-display'.
7323 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
7325         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
7327 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
7329         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
7330         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
7331         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7332         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7333         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
7334         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
7335         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7336         * elmo-filter.el (elmo-filter-list-folder): Ditto.
7337         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7338         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7339         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7340         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7341         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7343 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7345         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
7346         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
7348 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
7350         * elmo.el (elmo-folder-process-crosspost): New generic method.
7351         (elmo-folder-writable-p): Ditto.
7352         (elmo-folder-message-appendable-p): Eliminated.
7353         (elmo-generic-folder-append-msgdb): Rewrite.
7354         (elmo-newsgroups-hashtb): New internal variable.
7355         (elmo-crosspost-message-set): Eliminated.
7356         (elmo-crosspost-message-delete): Ditto.
7357         (elmo-setup-subscribed-newsgroups): New function.
7358         (elmo-crosspost-message-alist-modified): New internal variable.
7359         (elmo-crosspost-message-alist-load): New function (Renamed from
7360         `wl-crosspost-alist-load').
7361         (elmo-crosspost-message-alist-save): Ditto (Renamed from
7362         `wl-crosspost-alist-save').
7364         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
7366         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
7367         `unreads'.
7368         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
7369         elmo-newsgroups-hashtb).
7370         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
7371         `elmo-nntp-folder-update-crosspost-message-alist'.
7372         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
7373         `elmo-nntp-groups-hashtb'.
7374         (elmo-nntp-make-groups-hashtb): Eliminated.
7375         (elmo-nntp-parse-newsgroups): New function (Renamed from
7376         `wl-parse-newsgroups').
7377         (elmo-folder-creatable-p, elmo-folder-writable-p,
7378         elmo-folder-close-internal, elmo-folder-mark-as-read,
7379         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
7380         Define.
7381         (elmo-nntp-folder-update-crosspost-message-alist): New function.
7383         * elmo-net.el (elmo-message-fetch): Check buffer size.
7385         * elmo-multi.el (elmo-multi-split-number-alist): New function.
7387         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
7389         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
7390         before `close' command.
7392         * elmo.el (elmo-folder-list-unreads-internal): Added argument
7393         `mark-alist' (All other related portions are changed).
7395 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
7397         * elmo-util.el (elmo-create-hash-size): Eliminated.
7398         (elmo-make-hash) Make a hash with `one less than a power of two'
7399         length.
7401         * elmo-vars.el (elmo-hash-minimum-size): New variable.
7402         (elmo-hash-maximum-size): Changed value.
7404 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
7406         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
7407         (elmo-mime-message-display-as-is): Ditto.
7409 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
7411         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
7412         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
7414 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
7416         * elmo-mark.el: New file.
7418         * elmo-internal.el: Rewrite (Almost empty).
7420 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
7422         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7423         (mime-imap-entity-header-string): Ditto.
7424         (mmimap-entity-section): Rewrite.
7426 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7428         * elmo-nmz.el: New file.
7430         * elmo-pipe.el: Rewrite with luna.
7432 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7434         * elmo-archive.el: Rewrite with luna.
7436         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7437         (elmo-folder-list-importants-internal): Ditto.
7439 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7441         * elmo-archive.el (elmo-archive-version): Abolish.
7442         (toplevel) Removed `boso' comment.
7444 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7446         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7447         elmo-msgdb-add-msgs-to-seen-list-subr;
7448         Changed argument seen-marks to unread-marks.
7450         * elmo-nntp.el: Rewrite with luna.
7452 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7454         * elmo-filter.el: Rewrite with luna.
7456 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7458         * elmo-pop3.el: Rewrite with luna.
7460 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7462         * elmo-multi.el: Rewrite with luna.
7464         * elmo-vars.el (elmo-use-killed-list): Abolish.
7465         All other related portions are changed.
7466         (elmo-filename-replace-string-alist): Renamed from
7467         elmo-msgid-replace-string-alist.
7469 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7471         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7473         * elmo-map.el: New file.
7474         * elmo-maildir.el: Rewrite with luna.
7476 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7478         * elmo.el: Changed meaning of `elmo-folder-commit'.
7479         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7481 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7483         * elmo.el (elmo-folder-append-buffer): New function.
7484         (Renamed from `elmo-append-msg')
7486 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7488         * elmo-mime.el: New file.
7490 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7492         * elmo-cache.el: Rewrite.
7494 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7496         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7498 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7500         * elmo-vars.el (elmo): New group.
7501         (elmo-strict-diff-folder-regexp): New variable.
7503         * elmo-util.el (elmo-call-func): Abolish.
7504         (elmo-folder-get-type): Ditto.
7505         (elmo-*-get-spec): Ditto.
7506         (elmo-*-spec-*): Ditto.
7507         (elmo-imap4-identical-name-space-p): Ditto.
7508         (elmo-folder-identical-system-p): Ditto.
7509         (elmo-folder-direct-copy-alist): Ditto.
7510         (elmo-folder-direct-copy-p): Ditto.
7512         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7513         (elmo-folder-initialize): Define.
7514         (elmo-folder-get-primitive-list): Ditto.
7516         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7517         (elmo-folder-initialize): Define.
7518         Renamed `elmo-network-session-host-internal' to
7519         `elmo-network-session-server-internal'.
7521         * elmo-multi.el (elmo-multi-folder): New luna class.
7522         (elmo-folder-initialize): Define.
7523         (elmo-folder-get-primitive-list): Ditto.
7524         (elmo-folder-contains-type): Ditto.
7525         (elmo-message-use-cache-p): Ditto.
7527         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7528         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7530         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7531         (elmo-folder-initialize): Define.
7533         * elmo-filter.el (elmo-filter-folder): New luna class.
7534         (elmo-folder-initialize): Define.
7535         (elmo-folder-get-primitive-list): Ditto.
7536         (elmo-folder-contains-type): Ditto.
7538 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7540         * elmo-imap4.el: Rewrite with luna.
7542         * mmimap.el: New file.
7544         * mmelmo.el, mmelmo-imap4.el: Removed.
7546         * elmo-net.el: Ditto.
7548         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7549         (elmo-folder-initialize): Define.
7551         * elmo-archive.el (elmo-archive-folder): New luna class.
7552         (elmo-folder-initialize): Define.
7554         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7555         `elmo-folder-msgdb-path'.
7556         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7557         `elmo-make-folder'.
7559 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7561         * elmo.el: New file.
7563         * elmo2.el: Renamed to elmo.el.
7566 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7568         * elmo-cache.el (elmo-cache-expire-by-size): Count
7569         a disk usage for a cache file entry in KB even when
7570         its kind is a directory.
7572 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7574         * elmo-version.el (elmo-version): Up to 2.5.7.
7576 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7578         * elmo-version.el (elmo-version): Up to 2.5.6.
7580 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7582         * elmo-version.el (elmo-version): Up to 2.5.5.
7584 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7586         * elmo-imap4.el (elmo-network-authenticate-session):
7587         Fixed a logic for response checking.
7589 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7591         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7592         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7593         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7594         `sasl-mechanisms'.
7596         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7597         for `starttls-open-stream' and `starttls-negotiate'.
7599         * elmo-nntp.el: Remove autoload settings for
7600         `starttls-open-stream' and `starttls-negotiate'.
7602         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7603         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7604         `luna-define-class' with `eval-and-compile'.
7606 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7608         * elmo-util.el (elmo-read-search-condition-internal):
7609         Require an element of table for searching field.
7611 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7613         * elmo-version.el (elmo-version): Up to 2.5.4.
7615 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7617         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7619 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7621         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7623 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7625         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7626         before greeting.
7628 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7630         * elmo-imap4.el (elmo-imap4-delete-folder):
7631         Send "close" before "delete" (Use commented out line).
7632         (elmo-imap4-rename-folder): Ditto.
7634         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7635         folder string itself.
7636         (elmo-dop-list-deleted): New function.
7637         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7638         killed.
7640         * elmo-util.el (elmo-string-rassoc-all): New function.
7642 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7644         * elmo-version.el (elmo-version): Up to 2.5.3.
7646         * elmo-net.el (elmo-network-get-session): Changed logic for
7647         checking process status.
7649         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7650         process is nil;
7651         Changed logic for checking process status.
7653 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7655         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7656         before greeting.
7657         (elmo-network-setup-session): Set UIDL hash size according to
7658         the length of list response.
7659         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7660         according to the length of list response;
7661         Return the length of list response.
7662         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7664 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7666         * elmo-imap4.el (toplevel): Require 'ssl.
7667         Add autoload 'starttls.
7668         * elmo-pop3.el (toplevel): Ditto.
7669         * elmo-nntp.el (toplevel): Ditto.
7671 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7673         * elmo-imap4.el (toplevel): defun at compile time.
7674         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7675         sasl-next-step, sasl-step-data, sasl-step-set-data.
7676         * elmo-pop3.el (toplevel): Ditto.
7678 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7680         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7682 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7684         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7685         if error.
7686         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7687         and `elmo-pop-auth-apop'.
7689 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7691         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7693 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7695         * elmo-pop3.el (elmo-network-authenticate-session): Split
7696         encoded response value.
7698 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7700         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7701         `elmo-pop3-force-login'.
7702         Redefine `sasl-mechanisms'.
7703         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7705 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7707         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7708         Delete `elmo-imap4-authenticator-alist'.
7709         (elmo-imap4-auth-cram-md5): Delete.
7710         (elmo-imap4-auth-digest-md5): Delete.
7712 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7714         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7715         (elmo-pop3-auth-scram-md5): Ditto.
7716         (elmo-pop3-auth-cram-md5): Ditto.
7718 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7720         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7721         Delete `elmo-pop3-authenticator-alist'.
7723 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7725         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7726         new SASL API.
7727         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7729 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7731         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7733 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7735         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7736         Fixed problem when `elmo-pop3-use-uidl' is nil.
7737         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7739 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7741         * elmo-version.el (elmo-version): Up to 2.5.2.
7743 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7745         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7746         New function.
7747         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7748         (elmo-pop3-msgdb-create-as-numlist): Use it.
7750         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7751         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7753         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7754         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7756 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7758         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7759         when elmo-mark-as-read is called with second argument nil.
7761 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7763         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7764         Moved to elmo-util.el.
7766         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7767         Moved from elmo-pipe.el
7769         * elmo-archive.el (elmo-archive-call-process): Enclose with
7770         static-if.
7772         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7773         "RFC822" (because RFC822.PEEK is obsolete).
7774         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7776 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7778         * elmo-archive.el (elmo-archive-call-process): Don't check for
7779         the exit status when Nemacs is running.
7781 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7783         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7784         'plain.
7786         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7787         (elmo-pop3-get-spec): Set default of auth to 'user.
7789         * elmo-imap4.el (elmo-imap4-session-check):
7790         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7791         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7792         (elmo-imap4-auth-login): New function; Revival.
7793         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7794         `elmo-imap4-auth-login'.
7796 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7798         * elmo2.el (toplevel): Move `product-provide' declare.
7799         * mmelmo.el (toplevel): Ditto.
7801 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7803         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7805 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7807         * elmo-util.el (elmo-folder-get-store-type): New function.
7808         (elmo-folder-direct-copy-p): Use it.
7810 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7812         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7813         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7814         and result of `elmo-imap4-use-flag-p'.
7815         (elmo-imap4-fetch-callback-1): Set mark according to
7816         the result of `elmo-imap4-use-flag-p'.
7818 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7820         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7821         (elmo-generic-list-folder-unread): Ditto.
7822         (elmo-folder-get-info): Ditto.
7823         (elmo-folder-set-info-max-by-numdb): Ditto.
7824         (elmo-folder-get-info-max): Ditto.
7825         (elmo-folder-get-info-length): Ditto.
7826         (elmo-folder-get-info-unread): Ditto.
7827         (elmo-folder-info-make-hashtb): Ditto.
7829         * elmo2.el: Removed above functions.
7831 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7833         * elmo-imap4.el (toplevel): Require 'ssl.
7834         Add autoload 'starttls.
7835         * elmo-pop3.el (toplevel): Ditto.
7836         * elmo-nntp.el (toplevel): Ditto.
7838 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7840         * elmo-imap4.el (toplevel): defun at compile time.
7841         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7842         sasl-next-step, sasl-step-data, sasl-step-set-data.
7843         * elmo-pop3.el (toplevel): Ditto.
7845 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7847         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7849 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7851         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7852         if error.
7853         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7854         and `elmo-pop-auth-apop'.
7856 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7858         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7860 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7862         * elmo-pop3.el (elmo-network-authenticate-session): Split
7863         encoded response value.
7865 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7867         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7868         `elmo-pop3-force-login'.
7869         Redefine `sasl-mechanisms'.
7870         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7872 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7874         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7875         Delete `elmo-imap4-authenticator-alist'.
7876         (elmo-imap4-auth-cram-md5): Delete.
7877         (elmo-imap4-auth-digest-md5): Delete.
7879 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7881         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7882         (elmo-pop3-auth-scram-md5): Ditto.
7883         (elmo-pop3-auth-cram-md5): Ditto.
7885 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7887         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7888         Delete `elmo-pop3-authenticator-alist'.
7890 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7892         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7893         new SASL API.
7894         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7897 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7899         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7901 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7903         * elmo-nntp.el (elmo-nntp-get-folders-info):
7904         Fixed problem when '\' character is contained in user-id.
7905         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7908 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7910         * elmo-imap4.el (elmo-imap4-delete-folder):
7911         Send "close" before "delete" (Use commented out line).
7912         (elmo-imap4-rename-folder): Ditto.
7914         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7915         folder string itself.
7916         (elmo-dop-list-deleted): New function.
7917         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7918         killed.
7920         * elmo-util.el (elmo-string-rassoc-all): New function.
7922         * elmo-version.el (elmo-version): Up to 2.5.1.
7924 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7926         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7928         * elmo-internal.el (elmo-internal-search): Fix last change.
7930 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7932         * elmo-internal.el (elmo-internal-search): Rewrite.
7933         (Fixed problem which is pointed out by Akihiro MOTOKI
7934         <motoki@da.jp.nec.com>)
7936         * elmo-version.el (elmo-version): Up to 2.5.0.
7938 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7940         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7942 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7944         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7945         non-nil, make hierarchy.
7947 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7949         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7950         `elmo-pop3-use-uidl' must be bound to nil.
7951         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7953 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7955         * elmo-util.el (elmo-copy-file): Don't cause an error after
7956         `add-name-to-file' failed.
7958         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7959         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7961 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7963         * elmo-version.el (elmo-version): Up to 2.3.93.
7965 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7967         * elmo-util.el (elmo-flatten): New function.
7969 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7971         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7972         sync Author header.
7973         * elmo-cache.el (toplevel): Ditto.
7974         * elmo-database.el (toplevel): Ditto.
7975         * elmo-date.el (toplevel): Ditto.
7976         * elmo-dop.el (toplevel): Ditto.
7977         * elmo-filter.el (toplevel): Ditto.
7978         * elmo-imap4.el (toplevel): Ditto.
7979         * elmo-internal.el (toplevel): Ditto.
7980         * elmo-localdir.el (toplevel): Ditto.
7981         * elmo-localnews.el (toplevel): Ditto.
7982         * elmo-maildir.el (toplevel): Ditto.
7983         * elmo-msgdb.el (toplevel): Ditto.
7984         * elmo-multi.el (toplevel): Ditto.
7985         * elmo-net.el (toplevel): Ditto.
7986         * elmo-nntp.el (toplevel): Ditto.
7987         * elmo-pipe.el (toplevel): Ditto.
7988         * elmo-pop3.el (toplevel): Ditto.
7989         * elmo-util.el (toplevel): Ditto.
7990         * elmo-vars.el (toplevel): Ditto.
7991         * elmo2.el (toplevel): Ditto.
7992         * mmelmo-imap4.el (toplevel): Ditto.
7993         * mmelmo.el (toplevel): Ditto.
7995         * elmo-version.el (elmo-version): Move to top.
7997         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7998         * elmo-imap4.el (toplevel): Ditto.
7999         * elmo-localdir.el (toplevel): Ditto.
8000         * elmo-msgdb.el (toplevel): Ditto.
8001         * elmo-nntp.el (toplevel): Ditto.
8002         * elmo-pop3.el (toplevel): Ditto.
8003         * elmo-version.el (toplevel): Ditto.
8005         * elmo-localnews.el (toplevel): Added Keyword header.
8007 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
8009         * elmo-version.el (product-version-as-string): Defined using
8010         `defun-maybe'.
8011         (toplevel): Use it.
8013         * elmo-localdir.el (toplevel): Updated copyright notice.
8014         * elmo-version.el (toplevel): Ditto.
8015         * elmo-msgdb.el (toplevel): Ditto.
8016         * elmo-imap4.el (toplevel): Ditto.
8017         * elmo-nntp.el (toplevel): Ditto.
8018         * elmo-pop3.el (toplevel): Ditto.
8020 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
8022         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
8023         messages.
8025         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
8026         parameter value (It sometimes contains raw kanji).
8028 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8030         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
8031         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
8033 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8035         * elmo-imap4.el (elmo-network-initialize-session): Fix.
8037 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
8039         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
8040         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
8042 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
8044         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
8045         value if selecting folder succceeded.
8046         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
8048 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8050         * elmo-util.el (elmo-make-directory): Fixed permission lateral
8051         representation.
8053         * elmo-util.el (elmo-string-matched-member): New function.
8055 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
8057         * elmo-util.el (elmo-unintern): New macro.
8058         (elmo-number-set-member): Fixed docstring.
8060         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
8061         tag token.
8063 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
8065         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
8066         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
8068 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
8070         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
8071         `no-error'.
8072         Added docstring.
8073         Return non-nil if selecting folder succeeded.
8074         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
8076 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
8078         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
8079         `file-name-completion' returns t.
8080         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
8081         (elmo-maildir-set-mark): Put `info' part to the files in the cur
8082         directory if it does not exist.
8083         (elmo-maildir-update-current): Use `while' instead of `mapcar'
8084         for iteration.
8086 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
8088         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
8089         enclosure (It's harmful in unplugged status).
8091         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
8093         * mmelmo-1.el: Removed.
8095         * mmelmo-2.el: Ditto.
8097         * mmelmo-imap4-1.el: Ditto.
8099         * mmelmo-imap4-2.el: Ditto.
8101         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
8103         * mmelmo.el: Merged mmelmo-2.el.
8105         * elmo-version.el (elmo-version): Up to 2.3.92.
8107 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8109         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
8110         elmo-update-number): Remove last period in "...done." message.
8111         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
8112         Ditto.
8113         * elmo-cache.el (elmo-cache-expire-by-size,
8114         elmo-cache-get-sorted-cache-file-list,
8115         elmo-cache-msgdb-create-as-numlist): Ditto.
8116         * elmo-dop.el (elmo-dop-save-pending-messages,
8117         (elmo-dop-flush-pending-append-operations): Ditto.
8118         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
8119         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
8120         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
8121         (elmo-localdir-pack-number): Ditto.
8122         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
8123         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
8124         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
8125         mime-write-entity-content): Ditto.
8126         * pldap.el (ldap-search-basic): Ditto.
8128 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
8130         * elmo-version.el (elmo-version): Up to 2.3.91.
8132         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
8133         Only when filter is 'last'.
8135         * elmo-util.el (elmo-condition-atom-regexp): New constant.
8136         (elmo-condition-parse-search-value): Use it.
8137         (elmo-read-search-condition-internal): Quote value only when
8138         it is not an atom.
8140 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
8142         * elmo2.el (elmo-generic-folder-diff): Fix.
8144 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
8146         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8147         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
8148         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
8149         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8150         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
8151         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
8153 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
8155         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
8156         extra-fields.
8158 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
8160         * elmo-version.el (elmo-version): Up to 2.3.90.
8162         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
8163         (elmo-imap4-list-folder-important): Ditto.
8165 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8167         * elmo-nntp.el (elmo-network-initialize-session): Fix.
8169 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
8171         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
8173 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
8175         * elmo-nntp.el (elmo-network-initialize-session):
8176         Add starttls negotiation.
8178 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8180         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
8181         response.
8182         (elmo-network-setup-session): Define.
8183         Call `elmo-nntp-send-mode-reader' when session opened.
8185 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8187         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
8189 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
8191         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
8192         an invalid SPACE character ahead of `SEARCH' command.  Move
8193         a valid SPACE character following `SEARCH' from conditional
8194         `format' arguments to control-strings.
8196 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
8198         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
8199         was succeeded.
8201         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
8203 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
8205         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
8206         `w32-get-true-file-link-count' as t.
8208         * elmo-imap4.el (elmo-imap4-read): Abolished.
8209         (Renamed to `elmo-read' and moved to elmo-util.el)
8210         All other related portions are changed.
8212         * elmo-util.el (elmo-read): New function.
8213         (elmo-condition-parse-search-value): Use it.
8215 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
8217         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
8219         * elmo-nntp.el (elmo-nntp-session): Define.
8220         (elmo-nntp-setting): Abolished.
8221         All other related portions are changed.
8222         (elmo-nntp-get-server-command): Changed argument.
8223         (elmo-nntp-set-server-command): Ditto.
8224         (elmo-nntp-xover-p): Ditto.
8225         (elmo-nntp-set-xover): Ditto.
8226         (elmo-nntp-listgroup-p): Ditto.
8227         (elmo-nntp-set-listgroup): Ditto.
8228         (elmo-nntp-list-active-p): Ditto.
8229         (elmo-nntp-set-list-active): Ditto.
8230         (elmo-nntp-xhdr-p): Ditto.
8231         (elmo-nntp-set-xhdr): Ditto.
8232         (elmo-nntp-flush-connection): Abolished.
8233         (elmo-nntp-get-connection): Abolished.
8234         (elmo-nntp-get-session): New function.
8235         (elmo-network-initialize-session): Defined.
8236         (elmo-network-authenticate-session): Ditto.
8237         (elmo-nntp-send-mode-reader): Changed argument.
8238         (elmo-nntp-send-command): Changed argument.
8239         All other related portions are changed.
8240         (elmo-nntp-read-response): Ditto.
8241         (elmo-nntp-read-raw-response): Ditto.
8242         (elmo-nntp-read-contents): Ditto.
8243         (elmo-nntp-read-body): Ditto.
8244         (elmo-nntp-goto-folder): Abolished.
8245         (elmo-nntp-select-group): New function.
8246         All other related portions are changed.
8247         (This function substitutes `elmo-nntp-goto-folder')
8248         (elmo-nntp-msgdb-create-by-header): Rewrite.
8249         (elmo-nntp-get-overview): Eliminated.
8250         (elmo-nntp-get-message): Ditto.
8251         (elmo-nntp-open-connection) Abolished.
8252         (elmo-nntp-read-msg): Rewrite.
8253         (elmo-nntp-post): Ditto.
8254         (elmo-nntp-send-data): Abolished.
8255         (elmo-nntp-send-buffer): New function.
8256         (elmo-nntp-send-data-line): Define as inline function.
8257         (elmo-nntp-get-folders-info-prepare): Use session as key.
8258         (elmo-nntp-groups-read-response): Changed argument.
8259         (elmo-nntp-retrieve-headers): Ditto.
8260         (elmo-nntp-msgdb-create-message): Ditto.
8262         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
8263         when searching by 'since' or 'before'.
8265 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8267         * elmo-version.el (toplevel): Use product-version-as-string for set
8268         verstion-string, if defined.
8270 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
8272         * elmo-util.el: Doc fixes.
8274 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8276         * elmo-archive.el (toplevel): Use product-provide.
8277         * elmo-cache.el (toplevel): Ditto.
8278         * elmo-database.el (toplevel): Ditto.
8279         * elmo-date.el (toplevel): Ditto.
8280         * elmo-dop.el (toplevel): Ditto.
8281         * elmo-filter.el (toplevel): Ditto.
8282         * elmo-imap4.el (toplevel): Ditto.
8283         * elmo-internal.el (toplevel): Ditto.
8284         * elmo-localdir.el (toplevel): Ditto.
8285         * elmo-localnews.el (toplevel): Ditto.
8286         * elmo-maildir.el (toplevel): Ditto.
8287         * elmo-msgdb.el (toplevel): Ditto.
8288         * elmo-multi.el (toplevel): Ditto.
8289         * elmo-net.el (toplevel): Ditto.
8290         * elmo-nntp.el (toplevel): Ditto.
8291         * elmo-pipe.el (toplevel): Ditto.
8292         * elmo-pop3.el (toplevel): Ditto.
8293         * elmo-util.el (toplevel): Ditto.
8294         * elmo-vars.el (toplevel): Ditto.
8295         * elmo2.el (toplevel): Ditto.
8296         * mmelmo-1.el (toplevel): Ditto.
8297         * mmelmo-2.el (toplevel): Ditto.
8298         * mmelmo-imap4-1.el (toplevel): Ditto.
8299         * mmelmo-imap4-2.el (toplevel): Ditto.
8300         * mmelmo-imap4.el (toplevel): Ditto.
8301         * mmelmo.el (toplevel): Ditto.
8303 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
8305         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
8306         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
8308 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
8310         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
8311         before splitting.
8312         (elmo-multi-split-number-alist): Ditto.
8314 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
8316         * elmo-version.el: New file.  Use product.el.
8317         * elmo2.el: Add (require 'elmo-version).
8318         * elmo-vars.el (elmo-appname, elmo-version): Move to
8319         elmo-version.el
8321 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
8323         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
8324         `elmo-msgdb-expand-path'.
8325         (elmo-msgdb-load): Ditto.
8326         Abolished 2nd argument. If 1st argument is not string, treat as spec.
8327         (elmo-generic-list-folder-unread): Rewrite.
8328         (elmo-generic-list-folder-important): Changed argument.
8329         (elmo-list-folder-unread): Ditto.
8330         (elmo-list-folder-important): Ditto.
8331         (elmo-folder-diff): Rewrite.
8332         (elmo-generic-folder-diff): New function.
8333         (elmo-multi-get-number-alist-list): Abolished
8334         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
8335         (elmo-multi-folder-diff): Moved to elmo-multi.el
8336         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
8338         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
8339         `elmo-msgdb-expand-path'.
8340         (elmo-pop3-msgdb-create-as-numlist): Ditto.
8341         (elmo-pop3-read-msg): Ditto.
8342         (elmo-pop3-delete-msgs): Ditto.
8343         (elmo-pop3-folder-diff): New alias.
8345         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
8346         `elmo-msgdb-expand-path'.
8347         (elmo-pipe-list-folder-unread): Changed arguments.
8348         (elmo-pipe-list-folder-important): Ditto.
8349         (elmo-pipe-folder-diff): New alias.
8351         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
8352         `elmo-msgdb-expand-path'.
8353         (elmo-nntp-max-of-folder): Ditto.
8354         (elmo-nntp-msgdb-create): Ditto.
8355         (elmo-nntp-delete-msgs): Ditto.
8356         (elmo-nntp-folder-diff): New alias.
8358         * elmo-multi.el (elmo-multi-folder-diff): New function.
8359         (elmo-multi-split-mark-alist): Ditto.
8360         (elmo-multi-split-number-alist): Ditto.
8361         (elmo-multi-mark-alist-list): Abolished (Renamed to
8362         elmo-multi-split-mark-alist).
8363         (elmo-multi-list-folder-unread): Rewrite.
8364         (elmo-multi-list-folder-important): Ditto.
8365         (elmo-multi-list-folder): Set `spec' as 1st argument for
8366         `elmo-msgdb-expand-path'.
8367         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
8368         instead of `elmo-multi-get-number-alist-list'.
8370         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
8371         If 1st argument is not string, treat as spec.
8372         (elmo-list-folder-by-location): Set `spec' as 1st argument for
8373         `elmo-msgdb-expand-path'.
8374         (elmo-msgdb-flist-load): Ditto.
8375         (elmo-msgdb-flist-save): Ditto.
8376         (elmo-msgdb-delete-path): Ditto.
8377         (elmo-msgdb-rename-path): Ditto.
8379         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
8380         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8381         (elmo-maildir-delete-mark-msgs): Ditto.
8382         (elmo-maildir-msgdb-create): Ditto.
8383         (elmo-maildir-read-msg): Ditto.
8384         (elmo-maildir-delete-msgs): Ditto.
8385         (elmo-maildir-list-folder-subr): Ditto.
8386         (elmo-maildir-search): Ditto.
8387         (elmo-maildir-get-msg-filename): Ditto.
8388         (elmo-maildir-pack-number): Ditto.
8389         (elmo-maildir-folder-diff): New alias.
8391         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
8393         * elmo-localdir.el (elmo-localdir-list-folder-subr):
8394         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8395         (elmo-localdir-folder-diff): New alias.
8397         * elmo-internal.el (elmo-internal-list-folder-subr):
8398         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8399         (elmo-internal-list-folder-by-location): Ditto.
8400         (elmo-internal-msgdb-create): Ditto.
8401         (elmo-internal-delete-msgs): Ditto.
8402         (elmo-internal-read-msg): Ditto.
8403         (elmo-internal-folder-diff): New alias.
8405         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
8406         (elmo-imap4-list-folder): Set `spec' as 1st argument for
8407         `elmo-msgdb-expand-path'.
8408         (elmo-imap4-list-folder-unread): Changed arguments.
8409         (elmo-imap4-list-folder-important): Ditto.
8411         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
8412         (elmo-filter-list-folder-important): Ditto.
8413         (elmo-filter-folder-diff): New function.
8415         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
8417         * elmo-cache.el (elmo-cache-list-folder):
8418         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8419         (elmo-cache-copy-msgs): Ditto.
8420         (elmo-cache-folder-diff): New alias.
8422         * elmo-archive.el (elmo-archive-list-folder-subr):
8423         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8424         (elmo-archive-get-archive-name): Ditto.
8425         (elmo-archive-create-file): Ditto.
8426         (elmo-archive-append-msg): Ditto.
8427         (elmo-archive-copy-msgs): Ditto.
8428         (elmo-archive-copy-msgs-froms): Ditto.
8429         (elmo-archive-get-msg-filename): Ditto.
8430         (elmo-archive-folder-diff): New alias.
8432 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8434         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8435         (elmo-pop3-stream-type-alist): New variable.
8436         (elmo-nntp-stream-type-alist): New variable.
8438         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8439         (elmo-kill-buffer): Ditto.
8440         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8441         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8442         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8443         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8444         (elmo-imap4-get-spec): Take into account
8445         `elmo-imap4-stream-type-alist'.
8447 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8449         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8450         (elmo-nntp-list-folders-get-cache): Ditto.
8452 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8454         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8455         character before 'uid'.
8457 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8459         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8461         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8463         * elmo-util.el (elmo-number-set-member): New function.
8464         (elmo-number-set-append-list): Ditto.
8465         (elmo-number-set-append): Ditto.
8467         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8468         Use `elmo-number-set-member'.
8469         (elmo-living-messages): Ditto.
8470         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8471         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8473         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8474         (elmo-imap4-add-to-cont-list): Abolished.
8475         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8476         instead of elmo-imap4-add-to-cont-list.
8478         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8479         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8481         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8483 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8485         * elmo-util.el (elmo-condition-parse-search-value):
8486         Fixed date parsing.
8488 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8490         * elmo-util.el (elmo-condition-find-key-internal): New function.
8491         (elmo-condition-find-key): Ditto.
8493         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8494         (elmo-msgdb-search-internal): Ditto.
8495         (elmo-msgdb-search): Ditto.
8497 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8499         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8500         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8502         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8503         (elmo-nntp-search-primitive): Fixed problem when condition is
8504         'unmatch'.
8506         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8508         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8509         (elmo-nntp-xhdr-p): New macro.
8510         (elmo-nntp-set-xhdr): Ditto.
8511         (elmo-nntp-parse-xhdr-response): New function.
8512         (elmo-nntp-retrieve-field): Ditto.
8513         (elmo-nntp-search-primitive): Ditto.
8514         (elmo-nntp-search): Implemented.
8516         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8518         * elmo-archive.el (elmo-archive-search): Set all number list to
8519         `elmo-archive-field-condition-match'
8521         * elmo-localdir.el (elmo-localdir-search): Likewise.
8523         * elmo-maildir.el (elmo-maildir-search): Likewise.
8525 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8527         * elmo-msgdb.el (elmo-living-messages): New function.
8528         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8529         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8530         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8531         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8532         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8533         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8534         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8535         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8536         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8537         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8538         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8540 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8542         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8544         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8546         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8548         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8549         arguments for `SEARCH' command.
8550         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8551         All other related portions are changed.
8553         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8555         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8556         (elmo-list-folder-unread): Rewrite.
8557         (elmo-list-folder-important): Ditto.
8559         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8560         (elmo-condition-parse-error): New inline function.
8561         (elmo-read-search-condition): New function.
8562         (elmo-read-search-condition-internal): Ditto.
8563         (elmo-parse-search-condition): Rewrite.
8564         (elmo-condition-parse): New function.
8565         (elmo-condition-parse-or-expr): Ditto.
8566         (elmo-condition-parse-and-expr): Ditto.
8567         (elmo-condition-parse-primitive): Ditto.
8568         (elmo-condition-parse-search-value): Ditto.
8569         (elmo-buffer-field-primitive-condition-match): Ditto.
8570         (elmo-buffer-field-condition-match): Rewrite.
8571         (elmo-file-field-condition-match): Ditto.
8573         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8574         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8576         * elmo-internal.el (elmo-internal-search): Set `number' and
8577         `number-list' argument of `elmo-file-field-condition-match'.
8579         * elmo-maildir.el (elmo-maildir-search): Ditto.
8581         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8582         `msgdb' as argument instead of `mark-alist'.
8583         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8584         `overview'.
8586         * elmo-multi.el: Likewise.
8588         * elmo-pipe.el: Likewise.
8590         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8591         (elmo-imap4-search-internal): Rewrite.
8592         (elmo-imap4-search): Ditto.
8594         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8595         (elmo-filter-list-folder-unread): Ditto.
8596         (elmo-filter-list-folder-important): Ditto.
8597         (elmo-filter-search): Rewrite.
8599         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8600         `number-list' argument of `elmo-file-field-condition-match'.
8601         (elmo-cache-search): Ditto.
8603         * elmo-localdir.el: Likewise.
8605         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8606         number-list and pass it to `elmo-buffer-field-condition-match'.
8607         (elmo-archive-field-condition-match): Pass `number-list' to
8608         `elmo-archive-field-condition-match'
8610 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8612         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8613         `listgroup'.
8615         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8616         (elmo-folder-diff-async-callback-data): Ditto.
8617         (elmo-folder-diff-async): New function.
8619         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8620         (elmo-network-session-cache-key): Use it as a prefix of the session
8621         name.
8622         (elmo-network-open-session): Ditto.
8624         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8625         (elmo-imap4-status-callback-data): Ditto.
8626         (elmo-imap4-server-diff-async-callback): New variable.
8627         (elmo-imap4-server-diff-async-callback-data): Ditto.
8628         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8629         `elmo-imap4-status-callback-data'.
8630         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8631         `elmo-imap4-status-callback-data' as nil.
8632         (elmo-imap4-server-diff): Ditto.
8633         (elmo-imap4-server-diff-async-callback-1): New function.
8634         (elmo-imap4-server-diff-async): Ditto.
8635         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8637 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8639         * elmo-util.el (elmo-list-delete): Doc fix.
8640         (elmo-delete-lists): Abolish.
8641         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8642         instead of `elmo-delete-lists'.
8644 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8646         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8647         before `sort'.
8649 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8651         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8652         `elmo-imap4-literal-subr'.
8653         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8654         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8656 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8658         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8659         (elmo-archive-list-folder): Fix.
8660         (elmo-archive-max-of-folder): Fix.
8662 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8664         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8665          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8666         (elmo-localdir-append-msg): Ditto.
8667         (elmo-localdir-list-folder): Fix for `nonsort'.
8668         (elmo-localdir-list-folder-subr): Fix for `killed'.
8669         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8670         (elmo-maildir-list-folder-subr): Ditto.
8671         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8672         (elmo-archive-list-folder-subr): Ditto.
8673         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8674         (elmo-internal-list-folder-subr): Ditto.
8676 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8678         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8680 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8682         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8684 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8686         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8687         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8689         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8690         before greeting.
8691         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8692         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8694 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8696         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8698         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8699         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8700         before STORE command.
8702 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8704         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8706         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8707         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8708         of `response'.
8709         (elmo-imap4-list-folders): Removed unused local variable.
8710         (elmo-network-initialize-session): Ditto.
8711         (elmo-imap4-delete-msg-by-id): Ditto.
8712         (elmo-imap4-parse-fetch): Ditto.
8713         (elmo-imap4-copy-msgs): Ditto.
8714         Use `dst-spec' instead of `dst-folder'.
8715         (elmo-network-authenticate-session): Check authenticate type `plain'.
8717 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8719         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8720         garbage checking.
8721         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8722         `elmo-imap4-response-value'.
8723         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8725 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8727         * elmo-imap4.el (elmo-imap4-send-command):
8728         Cause elmo-imap4-bye-error when current response is BYE.
8729         (elmo-imap4-arrival-filter): Changed greeting response value.
8731         * elmo2.el (elmo-imap4-bye-error): Define.
8733         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8734         (elmo-imap4-server-diff): Ditto.
8735         (elmo-imap4-response-bye-p): New macro.
8736         (elmo-imap4-response-error-text): Get text from BYE response.
8737         (elmo-imap4-read-response): Return if BYE response.
8738         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8739         (elmo-imap4-folder-exists-p): Ditto.
8740         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8741         (elmo-imap4-parse-bye): New function.
8742         (elmo-imap4-parse-response): Remove needless let.
8743         Call `elmo-imap4-parse-bye'.
8745 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8747         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8748         the mailbox does not exist.
8749         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8751 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8753         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8755 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8757         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8759         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8760         (elmo-network-initialize-session-buffer): Defined.
8762         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8763         Abolished.
8764         (mmelmo-imap4-get-mime-entity): Rewrite.
8766         * elmo2.el (elmo-error): Capitalize error message.
8768         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8769         (elmo-network-session-buffer): New macro.
8770         (elmo-network-open-session): Use it.
8772         * elmo-imap4.el: Rewrite.
8774 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8776         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8778 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8780         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8781         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8782         (elmo-imap4-create-msgdb-from-overview-string): Use
8783         `elmo-msgdb-create-overview-from-buffer'.
8785 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8787         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8788         (elmo-imap4-default-hierarchy-delimiter): New variable.
8789         (elmo-imap4-list-folders): Use it.
8791 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8793         * elmo-net.el (elmo-network-open-session): Add user and
8794         stream-type for process-buffer name.
8796         * elmo-pop3.el (elmo-network-initialize-session): Call
8797         buffer-disable-undo.
8799         * elmo-imap4.el (elmo-network-initialize-session):
8800         Set current-buffer as an argument for `buffer-disable-undo'.
8802         * elmo-pop3.el (elmo-network-close-session): Don't use
8803         `process-live-p'.
8805         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8806         Set default as 'user.
8808         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8810         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8811         and `elmo-imap4-flush-connection'.
8813         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8814         (elmo-pop3-get-spec): Assume auth as symbol.
8815         (elmo-open-network-stream): Moved to `elmo-net'.
8817         * elmo-pop3.el (toplevel): Require 'elmo-net.
8818         Define `sasl-cram-md5' to silence byte compilier.
8819         (elmo-pop3-connection-cache) Abolished.
8820         (elmo-pop3-authenticator-alist) New variable.
8821         (elmo-pop3-session): Define.
8822         (elmo-pop3-connection-get-process): Abolished.
8823         (elmo-pop3-connection-get-buffer): Ditto.
8824         (elmo-pop3-close-connection): Ditto.
8825         (elmo-pop3-flush-connection): Ditto.
8826         (elmo-pop3-get-connection): Ditto.
8827         (elmo-pop3-get-session): New function.
8828         (Replacement for `elmo-pop3-get-connection').
8829         All other related modules are changed.
8830         (elmo-network-close-session): Define.
8831         (elmo-pop3-send-command): Abolished argument `buffer'.
8832         All other related modules are changed.
8833         (elmo-pop3-read-response): Likewise.
8834         (elmo-pop3-open-connection): Abolished.
8835         (elmo-pop3-auth-user): New function.
8836         (elmo-pop3-auth-apop): Ditto.
8837         (elmo-pop3-auth-cram-md5): Ditto.
8838         (elmo-pop3-auth-scram-md5): Ditto.
8839         (elmo-pop3-auth-digest-md5): Ditto.
8840         (elmo-network-initialize-session): Define.
8841         (elmo-network-authenticate-session): Ditto.
8842         (elmo-network-setup-session): Ditto.
8844         * elmo-imap4.el (toplevel): Require 'elmo-net.
8845         (elmo-imap4-session): Define.
8846         (elmo-imap4-connection-cache): Abolished.
8847         (elmo-imap4-password-key): Ditto.
8848         (elmo-imap4-flush-connection): Ditto.
8849         (elmo-imap4-get-connection): Ditto.
8850         All other related modules are changed.
8851         (elmo-imap4-get-session): New function
8852         (Replacement for `elmo-imap4-get-connection').
8853         (elmo-imap4-read-response): Abolished argument `buffer'.
8854         All other related modules are changed.
8855         (elmo-imap4-send-command): Likewise.
8856         (elmo-imap4-select-folder): Abolished.
8857         All other related modules are changed.
8858         (elmo-imap4-select-mailbox): New function.
8859         (Replacement for `elmo-imap4-select-folder').
8860         (elmo-imap4-auth-login): Simplify.
8861         (Assume current buffer as process buffer)
8862         (elmo-imap4-auth-cram-md5): Ditto.
8863         (elmo-imap4-auth-digest-md5): Ditto.
8864         (elmo-imap4-login): Ditto.
8865         (elmo-imap4-open-connection): Abolished.
8866         (elmo-imap4-open-connection-1): Abolished.
8867         (elmo-network-initialize-sessoin): Define.
8868         (elmo-network-authenticate-session): Ditto.
8869         (elmo-network-setup-session): Ditto.
8871         * elmo-net.el: New module.
8873 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8875         * elmo-util.el (elmo-define-error): New function.
8877         * elmo2.el (elmo-error): Define.
8878         (elmo-open-error): Define.
8879         (elmo-authenticate-error): Define.
8881         * elmo-imap4.el (elmo-imap4-error): Abolish.
8882         (elmo-imap4-error-type): Abolish.
8883         (elmo-imap4-error-process): Abolish.
8884         (elmo-imap4-error-message): Abolish
8885         (elmo-imap4-list-folders): Don't quote lambda.
8886         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8887         (elmo-imap4-parse-namespace): Ditto.
8888         (elmo-imap4-open-connection): Rewrite.
8889         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8890         (elmo-imap4-get-connection): Abolish local variable `result'.
8892 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8894         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8895         wrong-type-argument error when auth is nil.
8897 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8899         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8900         (elmo-default-nntp-stream-type): Ditto.
8901         (elmo-default-pop3-stream-type): Ditto.
8902         (elmo-network-stream-type-alist): Ditto.
8903         (elmo-default-imap4-ssl): Abolished.
8904         (elmo-default-nntp-ssl): Ditto.
8905         (elmo-default-pop3-ssl): Ditto.
8907         * elmo-util.el: (toplevel): Removed needless requires.
8908         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8909         (elmo-open-network-stream): Open network stream according to
8910         the value of `elmo-network-stream-type-alist'.
8911         (elmo-get-network-stream-type): New function.
8912         (elmo-network-stream-type-spec-string): New macro.
8913         (elmo-network-stream-type-symbol): Ditto.
8914         (elmo-network-stream-type-function): Ditto.
8916         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8917         network-stream-type. All other related portions are changed.
8918         (elmo-pop3-open-connection): Ditto.
8920         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8921         network-stream-type. All other related portions are changed.
8923         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8924         network-stream-type.All other related portions are changed.
8925         (elmo-imap4-error): New macro.
8926         (elmo-imap4-error-type): Ditto.
8927         (elmo-imap4-error-process): Ditto.
8928         (elmo-imap4-error-message): Ditto.
8929         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8930         (elmo-imap4-auth-cram-md5): Ditto.
8931         (elmo-imap4-auth-digest-md5): Ditto.
8932         (elmo-imap4-login): Ditto.
8933         (elmo-imap4-open-connection): Remove password entry if authentication
8934         was in vain.
8935         (elmo-imap4-user-at-host): Abolished.
8936         (elmo-imap4-password-key): New buffer local variable.
8937         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8938         using protocol, port, auth and stream-type.
8940         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8942 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8944         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8946         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8948         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8949         (elmo-imap4-authenticator-alist): New variable.
8950         (elmo-imap4-open-connection-1): Rename from
8951         elmo-imap4-open-connection.
8952         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8953         only wraps elmo-imap4-open-connection-1.
8954         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8955         user-at-host.
8956         (elmo-imap4-auth-login): New function.
8957         (elmo-imap4-auth-cram-md5): New function.
8958         (elmo-imap4-auth-digest-md5): New function.
8959         (elmo-imap4-login): New function.
8961 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8963         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8964         function `error'.
8966 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8968         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8970 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8972         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8974 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8976         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8977         for server responses, quote `*' regardless of where it appears.
8979 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8981         * elmo-maildir.el (elmo-maildir-commit): New alias.
8983 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8985         * elmo-util.el (elmo-display-progress):
8986                 Use `progress-feedback-with-label'.
8988 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8990         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8991         (elmo-imap4-non-atom-char-regex): Ditto.
8992         (elmo-imap4-non-text-char-regex): Ditto.
8993         (elmo-imap4-literal-threshold): Ditto.
8994         (elmo-imap4-atom-p): New function.
8995         (elmo-imap4-quotable-p): Ditto.
8996         (elmo-imap4-nil): Ditto.
8997         (elmo-imap4-atom): Ditto.
8998         (elmo-imap4-quoted): Ditto.
8999         (elmo-imap4-literal-subr): Ditto.
9000         (elmo-imap4-literal): Ditto.
9001         (elmo-imap4-buffer-literal): Ditto.
9002         (elmo-imap4-string-subr): Ditto.
9003         (elmo-imap4-string): Ditto.
9004         (elmo-imap4-buffer-string): Ditto.
9005         (elmo-imap4-astring-subr): Ditto.
9006         (elmo-imap4-astring): Ditto.
9007         (elmo-imap4-buffer-astring): Ditto.
9008         (elmo-imap4-nstring): Ditto.
9009         (elmo-imap4-buffer-nstring): Ditto.
9010         (elmo-imap4-mailbox): New alias.
9011         (elmo-imap4-field-body): Ditto.
9012         (elmo-imap4-userid): Ditto.
9013         (elmo-imap4-password): Ditto.
9014         (elmo-imap4-format-quoted): New function.
9015         (elmo-imap4-send-command): Rewritten.  Accept a list of command
9016         arguments and handle "atom", "quoted" and "literal" string here.
9017         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
9018         `elmo-imap4-send-command'.
9019         (elmo-imap4-folder-exists-p): Likewise.
9020         (elmo-imap4-create-folder): Likewise.
9021         (elmo-imap4-delete-folder): Likewise.
9022         (elmo-imap4-rename-folder): Likewise.
9023         (elmo-imap4-max-of-folder): Likewise.
9024         (elmo-imap4-check-validity): Likewise.
9025         (elmo-imap4-sync-validity): Likewise.
9026         (elmo-imap4-server-diff): Likewise.
9027         (elmo-imap4-select-folder): Likewise.
9028         (elmo-imap4-copy-msgs): Likewise.
9029         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
9030         (elmo-imap4-mark-set-on-msgs): Likewise.
9031         (elmo-imap4-read-part): Likewise.
9032         (elmo-imap4-read-msg): Likewise.
9033         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
9034         `elmo-imap4-password' for `elmo-imap4-send-command'.
9035         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
9036         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
9037         `elmo-imap4-buffer-literal'.
9038         (elmo-imap4-append-msg): Likewise.
9040         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
9041         `delete' for removing dead connection from the connection cache.
9042         Move deletion of the process buffer after that.
9043         (elmo-imap4-list): Change `defsubst' to `defun'.
9044         (elmo-imap4-commit): Make error message verbose.
9045         (elmo-imap4-search): Ditto.
9046         (elmo-imap4-list): Ditto.
9047         (elmo-imap4-select-folder): Ditto.
9048         (elmo-imap4-copy-msgs): Ditto.
9049         (elmo-imap4-delete-msg-by-id): Ditto.
9050         (elmo-imap4-append-msg-by-id): Ditto.
9051         (elmo-imap4-append-msg): Ditto.
9053 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
9055         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
9056         when dired is used on XEmacs.
9058 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
9060         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
9061         instead of `append'.
9062         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
9063         `elmo-plugged-p' directly.
9064         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
9065         of `elmo-plugged-p' directly.
9067         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
9068         Eliminate unused variable.  Use `memq' for checking a process status.
9069         Use `cons' instead of `append' for updating the connection cache.
9070         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
9071         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
9073 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
9075         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
9076         `elmo-imap4-read-point' exactly.
9078         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
9079         the local variable `folder' to `mailbox'.
9080         Rename the argument `fld' to `folder'.
9082 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
9084         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
9085         * elmo-imap4.el (elmo-imap4-commit): Ditto.
9087 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
9089         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
9090         (elmo-pop3-number-uidl-hash): New buffer-local variable.
9091         (elmo-pop3-uidl-number-hash): Ditto.
9092         (elmo-pop3-size-hash): Ditto.
9093         (elmo-pop3-uidl-done): Ditto.
9094         (elmo-pop3-list-done): Ditto.
9095         (elmo-pop3-connection-get-process): New defmacro.
9096         (elmo-pop3-connection-get-buffer): Ditto.
9097         (elmo-pop3-close-connection): Delete buffer and process.
9098         (elmo-pop3-flush-connection): Don't delete buffer and process.
9099         (elmo-pop3-get-connection): Added optional argument `if-exists'.
9100         Setup UIDL and size hash.
9101         (elmo-pop3-send-command-no-erase): Deleted
9102         (elmo-pop3-send-command): Added optional argument `no-erase'.
9103         (elmo-pop3-parse-uidl-response): New function.
9104         (elmo-pop3-parse-list-response): Set size hash.
9105         (elmo-pop3-list-location): New function.
9106         (elmo-pop3-list-by-uidl-subr): Ditto.
9107         (elmo-pop3-list-by-list): Ditto.
9108         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
9109         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
9110         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
9111         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
9112         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
9113         Use uidl.
9114         (elmo-pop3-uidl-to-number): New function.
9115         (elmo-pop3-number-to-uidl): Ditto.
9116         (elmo-pop3-number-to-size): Ditto.
9117         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
9118         Set number by use of uidl.
9119         (elmo-pop3-msgdb-create-message): Likewise.
9120         Set size, loc-alist in msgdb.
9121         (elmo-pop3-read-msg): Set number by use of uidl.
9122         Added optional argument `msgdb'.
9123         (elmo-pop3-delete-msg): Ditto.
9124         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
9125         (elmo-pop3-commit): Close connection.
9127         * elmo-pipe.el (elmo-pipe-max-of-folder):
9128         Bind `elmo-pop3-use-uidl' as nil.
9129         (elmo-pipe-drain): Ditto.
9130         Call `elmo-commit'.
9132         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
9133         (elmo-msgdb-overview-entity-set-size): New defsubst.
9135 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
9137         * elmo-vars.el (elmo-use-killed-list): New variable
9138         (Renamed from `elmo-nntp-use-killed-list').
9139         (elmo-nntp-use-killed-list): Eliminated.
9141         * elmo-msgdb.el (elmo-msgdb-expand-path):
9142         Changed expanding msgdb path for elmo-multi.
9144         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
9145         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
9146         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
9147         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
9148         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
9149         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
9150         (toplevel): Deleted time-stamp line.
9152         * elmo2.el (elmo-clear-killed ): Defined as function
9153         (Abolished defining as a backend function).
9154         All other related modules are changed.
9156 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
9158         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
9160 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
9162         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
9164 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
9166         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
9168 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
9170         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
9171         asynchronous folder check.
9173         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
9175         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
9176         `elmo-nntp-use-killed-list'.
9177         (elmo-nntp-list-folder): Use killed list.
9178         (elmo-nntp-max-of-folder): Ditto.
9179         (elmo-nntp-msgdb-create): Set killed list.
9181         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
9183         * elmo2.el (elmo-clear-killed): New backend function.
9184         All other related modules are changed.
9186 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
9188         * elmo-util.el (elmo-imap4-spec-folder): Use
9189         `elmo-imap4-spec-mailbox'; Mark as obsolete.
9190         All callers changed.
9192 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
9194         * mmelmo-2.el (initialize-instance):
9195         Use `mime-buffer-entity-buffer-internal' instead of
9196         `mime-entity-buffer'.
9198         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
9199         (mime-entity-body): Implemented.
9200         (mime-goto-header-start-point): Deleted.
9201         (mime-goto-body-end-point): Ditto.
9202         (mime-entity-point-min): Ditto.
9203         (mime-entity-point-max): Ditto.
9204         (mime-entity-children): Ditto.
9205         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
9206         instead of `mime-entity-buffer'.
9207         (mime-entity-header-buffer): Ditto.
9208         (mime-entity-body-buffer): Ditto.
9209         (mime-write-entity-content): Ditto.
9211         * pldap.el (ldap-static-if): New macro.
9212         (toplevel): Use it instead of `static-if'.
9214 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
9216         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
9217         included in `attrs' argument.
9219 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
9221         * elmo-util.el (elmo-get-passwd): Use old backquote style.
9223         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
9224         (ldap-ldif-safe-init-char-regexp): Ditto.
9225         (ldap-ldif-safe-string-regexp): Ditto.
9226         (ldap/ldif-safe-string-p): New macro.
9227         (ldap/ldif-insert-field): Ditto.
9228         (ldap-modify): Use it.
9229         (ldap-add): Ditto.
9230         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
9231         (ldap-decode-attribute): Decode only when `attr' is consp.
9232         (ldap-delete): Bind `ret'.
9233         (toplevel): Require 'cl at compile time.
9234         Removed (require 'poe) and (require 'std11).
9235         (pldap-version): Eliminated.
9236         (ldap-search-basic): Removed auth and dn binding.
9237         (ldap-ldif-field-name-regexp): New constant.
9238         (ldap-ldif-field-head-regexp): Ditto.
9239         (ldap-ldif-next-field-head-regexp): Ditto.
9240         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
9241         (ldap/field-end): New function.
9242         (ldap/field-body): Use it.
9243         (ldap/collect-field): Ditto.
9244         (ldap-search-basic): Use `ldap/field-body'.
9246 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
9248         * pldap.el (ldap-default-attribute-encoder): New user option.
9249         (ldap/field-body): Decode base64 string.
9250         (ldap/collect-field): Ditto.
9251         (ldap-encode-attribute): New function.
9252         (ldap-add-entries): Use it.
9253         (ldap-modify-entries): Ditto.
9254         (ldap-search-entries): Enclosed decoding function with
9255         `with-temp-buffer' and set as unibyte.
9256         (ldap-search-basic): Set process buffer as unibyte.
9258         * elmo-util.el (elmo-folder-identical-system-p):
9259         Eliminated name space checking.
9261         * pldap.el: New module.
9262         toplevel: Changed condition to detect built-in ldap feature.
9263         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
9264         (ldap-add): Added error handling.
9265         (ldap-modify): Ditto.
9266         (ldap-delete): Ditto.
9268 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
9270         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
9271         Initialize local variables with `let'.  Inline a temporary
9272         variable for the progress percentage.  Sort `setq' to reduce
9273         function call in the while-loop.
9275         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
9276         into the conditional branch.
9278 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
9280         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
9281         Move a conditional out of the while-loop.
9283 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9285         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
9286         elmo-msgdb-overview-get-entity-by-number.
9287         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
9288         throw.
9290 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
9292         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
9293         the local variable for a packed number self descriptively.
9295 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9297         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
9298         * elmo-localdir.el (elmo-localdir-pack-number): Use
9299         `elmo-msgdb-overview-get-entity' instead of
9300         `elmo-msgdb-overview-get-entity-by-number'.
9301         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
9302         (elmo-msgdb-search-overview-entity): Removed.
9303         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
9304         by message-id or number.
9305         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
9306         instead of `elmo-msgdb-overview-get-entity-by-number'.
9308 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9310         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
9311         non-nil, use hash table for overview.
9312         (elmo-hash-maximum-size): New variable.
9313         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
9314         (elmo-msgdb-make-overview-hashtb): New function.
9315         (elmo-msgdb-clear-overview-hashtb): New function.
9316         (elmo-clear-hash-val): New macro.
9317         All other related modules are changed.
9319 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
9321         * elmo2.el (elmo-move-msgs): If there's other message with
9322         same message-id, don't use cache.
9324 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
9326         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
9327         number is already packed.
9329 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
9331         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
9333 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9335         * elmo-vars.el (elmo-display-progress-threshold): New variable.
9336         All other related modules are changed.
9338 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
9340         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
9341         of refiling failure on Maildir.
9343 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9345         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
9346         decoded mime-charset with cache.
9347         (elmo-msgdb-overview-entity-get-from): Ditto.
9348         (elmo-msgdb-overview-entity-get-subject): Ditto.
9349         * elmo-vars.el (elmo-use-decoded-cache): New variable.
9351 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
9353         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
9354         (elmo-remove-passwd): Fill password with 0 before erase.
9355         * elmo-vars.el (elmo-passwd-life-time): New variable.
9358 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
9360         * elmo-cache.el (elmo-buffer-cache-add):
9361         Set message cache buffer as unibyte.
9363 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
9365         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
9366         become nil.
9368 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
9370         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
9371         when display is finished.
9372         (elmo-nntp-msgdb-create): Ditto.
9373         (elmo-nntp-groups-read-response): Ditto.
9374         (elmo-nntp-retrieve-headers): Ditto.
9375         (elmo-nntp-msgdb-create-message): Ditto.
9376         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
9377         (elmo-pop3-msgdb-create-message): Ditto.
9379 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9381         * elmo-maildir.el (elmo-maildir-msgdb-create):
9382         Use `elmo-msgdb-sort-by-date'.
9384 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
9386         * elmo2.el (elmo-read-msg-no-cache):
9387         Eliminated arguments after `outbuf'.
9388         Don't use cache even if it exists.
9389         (elmo-read-msg): Don't pass arguments after `outbuf' to
9390         `elmo-read-msg-no-cache'.
9392 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
9394         * elmo-archive.el (elmo-archive-list-folders):
9395         Use `file-name-directory' if base folder does not exist.
9397 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
9399         * elmo-archive.el (elmo-archive-list-folders): Don't use
9400         `file-name-directory'.
9402 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
9404         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
9405         If `force' is non-nil, try flushing all operation queues.
9407 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
9409         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
9410         as-binary-process.
9412 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9414         * elmo-util.el (elmo-display-progress): Fixed.
9416 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
9418         * elmo-util.el (elmo-display-progress): New function.
9419         All other related modules are changed.