* modb-standard.el (modb-standard-loaded-message-id): Return nil
[elisp/wanderlust.git] / elmo / ChangeLog
1 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * modb-standard.el (modb-standard-loaded-message-id): Return nil
4         when entity is garbaged.
5
6 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
7
8         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
9
10 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
11
12         * elmo.el (elmo-strict-folder-diff): Use
13         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
14
15 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
16
17         * modb.el (elmo-msgdb-flag-available-p): New generic function.
18         (elmo-msgdb-message-number): Ditto.
19         (elmo-msgdb-message-field): Ditto.
20
21         * modb-standard.el (modb-standard-economize-entity-size): New user
22         option.
23         (modb-standard-loaded-message-id): New inline function.
24         (modb-standard-load-entity): Use it.
25         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
26         throw message-id string away.
27         (elmo-msgdb-flag-available-p): Define.
28         (elmo-msgdb-message-number): Ditto.
29         (elmo-msgdb-message-field): Ditto.
30
31         * modb-legacy.el (modb-legacy-flag-list): Fix typo
32         (suppoted -> supported).
33         (modb-legacy-supported-flag-p): Ditto.
34         (elmo-msgdb-set-flag): Ditto.
35         (elmo-msgdb-unset-flag): Ditto.
36         (elmo-msgdb-flag-available-p): Define.
37
38         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
39         is `t', treat it as legacy entity.
40         
41         * elmo.el (elmo-message-flag-available-p): New generic function.
42         (elmo-message-number): Ditto.
43         (elmo-message-field): Use `elmo-msgdb-message-field'.
44
45         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
46
47         * elmo-pipe.el (elmo-message-flag-available-p): Define.
48         (elmo-message-number): Ditto.
49
50         * elmo-multi.el (elmo-message-number): Define.
51         (elmo-message-flag-available-p): Ditto.
52
53         * elmo-filter.el (elmo-message-flag-available-p): Define.
54         (elmo-message-number): Ditto.
55
56         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
57         (elmo-folder-initialize): Load `max-number'.
58         (elmo-folder-commit): Save it.
59         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
60         (elmo-global-flag-set-internal): Set up max-number slot.
61
62 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
63
64         * elmo-version.el (elmo-version): Up to 2.11.31.
65
66 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
67
68         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
69         unibyte string of the current buffer for the argument of `md5'
70         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
71
72 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
73
74         * modb-legacy.el (modb-legacy-flag-list): New constant.
75         (modb-legacy-suppoted-flag-p): New internal function.
76         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
77         (elmo-msgdb-unset-flag): Ditto.
78
79 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
80
81         * elmo.el (elmo-make-folder): Remove text properties for prefix.
82
83         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
84         from msgdb.
85
86 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
87
88         * elmo-multi.el (elmo-folder-count-flags): Changed return value
89         (follow the API change).
90
91         * elmo-filter.el (elmo-folder-count-flags): Ditto.
92
93 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
94
95         * modb-standard.el (modb-standard-digest-flags): Abolish.
96         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
97
98         * elmo-vars.el (elmo-digest-flags): New variable.
99         (elmo-preserved-flags): Moved from elmo-flag.el.
100
101         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
102         (elmo-imap4-flag-to-imap-criteria): Ditto.
103         (elmo-imap4-folder-list-flagged): Use it.
104
105         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
106
107         * elmo.el (elmo-folder-count-flags): Changed return value.
108
109         * elmo-flag.el (elmo-preserved-flags): New variable.
110         (elmo-get-global-flags): Use it.
111
112         * modb-standard.el (modb-standard-digest-flags): New variable.
113         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
114         Changed behavior of `any'.
115
116         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
117         which are defined the Internet draft
118         (draft-melnikov-imap-keywords-03.txt).
119         (elmo-imap4-flags-to-imap): New function.
120         (elmo-folder-append-buffer): Use it.
121
122         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
123         in the docstring.
124
125         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
126         avoid the bug of Emacs 21.3.
127
128 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
129
130         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
131         function find-coding-system does not exist.
132
133 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
134
135         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
136         parsing.
137
138 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
139
140         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
141         response codes.
142
143 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
144
145         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
146         (elmo-network-close-session): Follow the changes in
147         `elmo-pop3-read-response'.
148         (elmo-pop3-auth-user): Ditto.
149         (elmo-pop3-auth-apop): Ditto.
150         (elmo-network-initialize-session): Ditto.
151         (elmo-network-authenticate-session): Ditto.
152         (elmo-network-setup-session): Ditto.
153         (elmo-folder-status): Ditto.
154         (elmo-message-fetch-plugged): Ditto.
155         (elmo-pop3-delete-msg): Ditto.
156
157 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
158
159         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
160         on failure.
161
162 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
163
164         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
165         style.
166         (elmo-bind-directory): Ditto.
167
168 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
169
170         * elmo.el (elmo-folder-append-messages): Note on return value.
171         * elmo-archive.el (elmo-folder-append-messages): Don't return
172         message numbers which could not be appended.
173
174 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
175
176         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
177
178 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
179
180         * elmo-version.el (elmo-version): Up to 2.11.30.
181
182 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
183
184         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
185         `mask'.
186
187         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
188
189         * elmo-multi.el (elmo-folder-synchronize): Likewise.
190         (elmo-multi-split-numbers): Add elmo-folder object into each
191         element of return value at first.
192         (elmo-folder-delete-messages): Follow the above change.
193         (elmo-folder-detach-messages): Ditto.
194
195         * elmo-filter.el (elmo-folder-synchronize): Minimize message
196         number which is synchronized in target folder.
197
198 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
199
200         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
201         Change default value to symbol `all'.
202         (elmo-map-message-fetch): Change condition to update overview
203         follow the above.
204
205 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
206
207         * elmo-shimbun.el (elmo-map-message-fetch): Change default
208         behavior to update overview.
209         (elmo-shimbun-update-overview-folder-list): Note it.
210
211 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
212
213         * modb-standard.el (modb-standard-message-entity): Avoid infinite
214         recursive call.
215
216 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
217
218         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
219         buffer-disable-undo, it is unnecessary.
220         (elmo-spam-register-good-messages): Ditto.
221
222         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
223         Ditto.
224
225         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
226
227 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
228
229         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
230         (elmo-set-work-buf): Use set-buffer-multibyte instead of
231         elmo-set-buffer-multibyte.
232         (elmo-object-load): Ditto.
233         (elmo-save-buffer): Ditto.
234         (elmo-delete-char): Ditto.
235         (elmo-file-field-primitive-condition-match): Ditto.
236         (elmo-mime-string): Ditto.
237
238         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
239         (elmo-archive-field-condition-match): Ditto.
240
241         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
242
243         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
244
245         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
246         (elmo-nntp-msgdb-create-message): Ditto.
247
248         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
249
250         * elmo.el (elmo-message-match-condition): Ditto.
251         (elmo-message-match-condition): Ditto.
252
253         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
254         Ditto.
255
256         * elmo-version.el (elmo-version): Up to 2.11.29.
257
258         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
259         (elsp-header): New backend.
260
261         * elmo-util.el (elmo-decoded-field-body): New function.
262
263 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
264
265         * elmo-version.el (elmo-version): Up to 2.11.28.
266
267 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
268
269         * elmo-filter.el: Rewrite.
270
271         * elmo-version.el (elmo-version): Up to 2.11.27.
272
273 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
274
275         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
276         msgdb path for the localdir folder with absolute path.
277
278         * utf7.el: Synch up with latest gnus/utf7.el;
279         Modified for latest Emacs.
280
281 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
282
283         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
284         shimbun backend couldn't open.
285
286 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
287
288         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
289         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
290         when a destination folder is a filter folder.
291
292 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
293
294         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
295         (elmo-generic-folder-append-messages): Call elmo-message-flags
296         with argument `msgid'.
297
298         * elmo-split.el (elmo-split-subr): Ditto.
299
300         * elmo-pipe.el (elmo-message-flags): Follow the API change.
301
302         * elmo-multi.el (elmo-message-flags): Ditto.
303
304 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
305
306         * elmo.el (elmo-folder): Add new slot `flag-table'.
307         (elmo-folder-flag-table): New API.
308         (elmo-folder-close-flag-table): Ditto.
309         (elmo-folder-preserve-flags): New function.
310         (elmo-generic-folder-append-messages): Use
311         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
312         Flag of a non-registered message, it sets to nil.
313         Does not set flag to flag-table.
314
315         * elmo-maildir.el (elmo-folder-append-buffer): Use
316         `elmo-folder-preserve-flags'.
317         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
318         `elmo-folder-close-flag-table'.
319
320         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
321         (elmo-archive-folder-append-buffer): Use
322         `elmo-folder-preserve-flags'.
323
324         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
325
326         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
327
328         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
329         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
330         `elmo-folder-close-flag-table'.
331
332         * elmo-version.el (elmo-version): Up to 2.11.26.
333
334 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
335
336         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
337
338         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
339         md5's 4th and 5th argument (non-existent in flim one).
340
341 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
342
343         * elmo-split.el (elmo-split-subr): Flag of a non-registered
344         message, It sets to nil.
345
346 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
347
348         * elmo.el (elmo-folder-list-messages): Merge lists only if both
349         list is non-nil.
350
351 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
352
353         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
354
355         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
356
357         * elmo-util.el (elmo-uniq-sorted-list): New function.
358         (elmo-make-number-list): Ditto.
359         (elmo-number-set-to-number-list): Use elmo-make-number-list
360         and don't use nreverse.
361
362 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
363
364         * elmo-version.el (elmo-version): Up to 2.11.25.
365
366 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
367
368         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
369         field not exists in message, Use md5 message digest of header.
370
371 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
372
373         * elmo.el (elmo-folder-append-buffer): Add note on return value.
374         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
375         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
376         * elmo-split.el (elmo-split-subr): Check return value of
377         elmo-folder-append-buffer.
378
379         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
380         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
381
382         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
383         message-id.
384
385 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
386
387         * elmo-split.el (elmo-split-subr): Append message with flag.
388
389         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
390         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
391         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
392
393 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
394
395         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
396         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
397         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
398
399 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
400
401         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
402         with a function call of `process-buffer'.  All callers are updated.
403         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
404         Remove redundant `set-buffer' in a while loop.
405
406 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
407
408         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
409         calls.
410
411 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
412
413         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
414         elsp-spamfilter-register-buffer-internal with current buffer.
415         (elmo-spam-register-spam-buffer): Ditto.
416         (elmo-spam-register-good-buffer): Ditto.
417
418 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
419
420         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
421         if it is not contained in the response(A workaround for courier-imap).
422
423 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
424
425         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
426         parenthesis.
427
428 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
429
430         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
431         range.
432
433 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
434
435         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
436         of nconc.
437
438         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
439         argument handler.
440         (elmo-msgdb-message-match-condition): Follow the change above.
441
442 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
443
444         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
445         folder name.
446
447 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
448
449         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
450
451 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
452
453         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
454
455 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
456
457         * elmo-file.el (elmo-file-find): Fixed the problem when file is
458         not found.
459
460 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
461
462         * elmo-file.el (elmo-file-find): Use expand-file-name for return
463         value.
464         (elmo-file-command-argument): Undo last change for cygwin.
465         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
466         Don't return nil.
467         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
468
469 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
470
471         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
472         value returned from elmo-file-find is nil.
473
474 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
475
476         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
477         to elmo-vars.el.
478
479         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
480         instead of insert-file-contents-as-binary.
481         (elmo-message-set-field): New generic function.
482
483         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
484         behavior change on `split-string'.
485
486         * elmo-file.el (elmo-file-find): New function.
487         (elmo-file-command): New user option.
488         (elmo-file-command-argument): Ditto.
489         (elmo-file-fetch-max-size): Ditto.
490         (elmo-file-detect-format): New function.
491         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
492         Use elmo-file-detect-format.
493         (elmo-map-folder-list-message-locations): Don't treat directories.
494
495 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
496
497         * elmo-util.el (elmo-string-partial-p): Removed unused function.
498         (elmo-passwd-alist-clear): Shred password before clear.
499         (elmo-remove-passwd): Remove all mached pair.
500
501 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
502
503         * elmo.el (elmo-folder-synchronize): Fix description of the return
504         value.
505
506 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
507
508         * elmo.el (elmo-message-fetch-bodystructure): New method.
509         (elmo-message-fetch-bodystructure): Define default.
510
511         * elmo-imap4.el (mime-imap-location-bodystructure): Call
512         elmo-message-fetch-bodystructure.
513         (elmo-message-fetch-bodystructure): Define.
514
515         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
516
517 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
518
519         * elmo-filter.el (elmo-message-folder): Define.
520
521 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
522
523         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
524         elmo-delete-cr-buffer.
525
526         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
527
528         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
529
530         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
531
532         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
533         type seems to be a text.
534
535 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
536
537         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
538         (elmo-spam-register-good-buffer): Ditto.
539         (elmo-spam-spamassassin-register-messages): Ditto.
540
541         * elmo-util.el (elmo-string-member-ignore-case): Define with
542         static-cond.
543
544 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
545
546         * elmo.el (elmo-folder-type): Undo last change.
547
548         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
549
550         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
551         warnings.
552
553         * elmo-file.el: New file.
554         
555         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
556
557         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
558         variable.
559         (elmo-spam-spamassassin-register-messages): New inline function.
560         (elmo-spam-register-spam-messages): Define.
561         (elmo-spam-register-good-messages): Ditto.
562
563         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
564         Fixed typo.
565
566         * elmo.el (toplevel): Added autoload setting for
567         `elmo-get-global-flags'.
568         (elmo-message-has-global-flag-p): New function.
569         (elmo-message-set-global-flags): Ditto.
570         (elmo-folder-type): Improvement for name: format.
571
572         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
573         availability of keyword flags.
574         (elmo-imap4-folder-list-flagged): Treat keyword flags.
575         (elmo-folder-list-flagged-plugged): Renamed from
576         elmo-folder-list-flagged-unplugged.
577         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
578         accept any flag as keyword flag.
579         (elmo-folder-set-flag-plugged): Accept keyword flags.
580         (toplevel): Added autoload setting for `elmo-get-global-flags'.
581
582         * elmo-flag.el (elmo-get-global-flags): New function.
583
584         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
585         folders.
586
587         * elmo-version.el (elmo-version): Up to 2.11.24.
588
589 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
590
591         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
592         elmo-multiple-field-body instead of std11-field-body to check all
593         headers.
594
595 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
596
597         * elmo-util.el (elmo-cache-expire): Completion require match "age"
598         or "size".
599
600 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
601
602         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
603         unintern is unbound.
604
605 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
606
607         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
608         Protect from infinite loop.
609
610 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
611
612         * elsp-bogofilter.el
613         (elmo-spam-bogofilter-max-messages-per-process): New user option.
614         (elmo-spam-bogofilter-register-messages): New internal function.
615         (elmo-spam-register-spam-messages): Define.
616         (elmo-spam-register-good-messages): Ditto.
617
618 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
619
620         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
621         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
622         (elmo-spam-bogofilter-call): Fixed the last change.
623         (elmo-spam-bogofilter-arguments): Ditto.
624
625         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
626         Follow the options change of latest bogofilter.
627
628         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
629         (elmo-spam-bogofilter-good-switch): Ditto.
630         (elmo-spam-bogofilter-arguments-alist): New user option.
631         (elmo-spam-bogofilter-debug): Ditto.
632         (elmo-spam-bogofilter-call): Renamed from
633         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
634         is non-nil, insert output in buffer for debug.
635         (elmo-spam-bogofilter-arguments): New macro.
636         (elmo-spam-buffer-spam-p): Use it.
637         (elsp-bogofilter-register-buffer): Ditto.
638
639 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
640
641         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
642         regexp.
643
644 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
645
646         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
647         value as "ruby".
648         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
649         (elmo-spam-bsfilter-program): Set default value as full path for
650         `bsfilter'.
651         (elmo-spam-bsfilter-debug): New user option.
652         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
653         non-nil, insert output in buffer for debug. Fix treating of
654         argument.
655
656 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
657
658         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
659         `elmo-maildir-flag-specs' element instead of one.
660         (elmo-map-folder-unset-flag): Ditto.
661         (Reported by Ken Makimura <macky@astem.or.jp>)
662
663         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
664         (elmo-folder-unset-flag-plugged): Ditto.
665
666 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
667
668         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
669         to `reads' slot only if `in-msgdb' is nil.
670
671 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
672
673         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
674         and complement argument list.
675
676 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
677
678         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
679         instead of elmo-folder-list-flagged.
680
681 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
682
683         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
684
685         * elsp-bsfilter.el: New file.
686
687         * elmo-pipe.el (elmo-folder-list-unreads,
688         elmo-folder-list-answereds,
689         elmo-folder-list-importants,
690         elmo-folder-flag-as-important,
691         elmo-folder-unflag-important,
692         elmo-folder-flag-as-read,
693         elmo-folder-unflag-read,
694         elmo-folder-flag-as-answered,
695         elmo-folder-unflag-answered): Remove.
696         (elmo-folder-set-flag): Define.
697         (elmo-folder-unset-flag): Ditto.
698
699         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
700         (elmo-folder-set-flag): Define.
701         (elmo-folder-unset-flag): Ditto.
702         (elmo-folder-list-unreads): Remove.
703         (elmo-folder-list-flagged): Define.
704
705         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
706         (elmo-folder-list-unreads,
707         elmo-folder-list-importants,
708         elmo-folder-list-answereds,
709         elmo-folder-list-unreads-plugged,
710         elmo-folder-list-importants-plugged,
711         elmo-folder-list-answereds-plugged): Remove.
712         (elmo-folder-list-flagged-plugged): New method.
713         (elmo-folder-unflag-important,
714         elmo-folder-flag-as-important,
715         elmo-folder-unflag-read,
716         elmo-folder-flag-as-read,
717         elmo-folder-unflag-answered,
718         elmo-folder-flag-as-answered,
719         elmo-folder-flag-as-read-unplugged,
720         elmo-folder-unflag-read-unplugged,
721         elmo-folder-flag-as-important-unplugged,
722         elmo-folder-unflag-important-unplugged,
723         elmo-folder-flag-as-answered-unplugged,
724         elmo-folder-unflag-answered-unplugged): Remove.
725         (elmo-folder-set-flag): Define.
726         (elmo-folder-unset-flag): Ditto.
727         (elmo-folder-set-flag-unplugged): Ditto.
728         (elmo-folder-unset-flag-unplugged): Ditto.
729
730         * elmo-multi.el (elmo-folder-list-unreads,
731         elmo-folder-list-answereds,
732         elmo-folder-list-importants,
733         elmo-folder-flag-as-important,
734         elmo-folder-unflag-important,
735         elmo-folder-flag-as-read,
736         elmo-folder-unflag-read,
737         elmo-folder-flag-as-answered,
738         elmo-folder-unflag-answered): Remove.
739         (elmo-folder-set-flag): Define.
740         (elmo-folder-unset-flag): Ditto.
741
742         * elmo-map.el (elmo-map-folder-unflag-important,
743         elmo-map-folder-flag-as-important,
744         elmo-map-folder-unflag-read,
745         elmo-map-folder-flag-as-read,
746         elmo-map-folder-unflag-answered,
747         elmo-map-folder-flag-as-answered): Remove.
748         (elmo-map-folder-set-flag): New method.
749         (elmo-map-folder-unset-flag): Ditto.
750         (elmo-map-folder-list-unreads,
751         elmo-map-folder-list-importants,
752         elmo-map-folder-list-answereds): Remove.
753         (elmo-folder-list-flagged-internal): Define.
754         (elmo-map-folder-list-flagged): New method.
755
756         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
757         (elmo-map-folder-list-unreads,
758         elmo-map-folder-list-importants,
759         elmo-map-folder-list-flagged): Remove.
760         (elmo-map-folder-list-flagged): Define.
761         (elmo-map-folder-flag-as-important,
762         elmo-map-folder-unflag-important,
763         elmo-map-folder-flag-as-read,
764         elmo-map-folder-unflag-read,
765         elmo-map-folder-flag-as-answered,
766         elmo-map-folder-unflag-answered): Remove.
767         (elmo-maildir-set-mark-messages): New internal function.
768         (elmo-map-folder-set-flag): Define.
769         (elmo-map-folder-unset-flag): Ditto.
770
771         * elmo.el (toplevel): Added autoload setting for
772         `elmo-folder-list-global-flag-messages'.
773         (elmo-folder-list-unreads,
774         elmo-folder-list-importants,
775         elmo-folder-list-answereds): Remove.
776         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
777         Return a list whitch merged with messages have global flag.
778         (elmo-folder-list-flagged-internal): New method.
779         (elmo-folder-unflag-important,
780         elmo-folder-flag-as-important,
781         elmo-folder-unflag-read,
782         elmo-folder-flag-as-read,
783         elmo-folder-unflag-answered,
784         elmo-folder-flag-as-answered): Remove.
785         (elmo-folder-set-flag): New method.
786         (elmo-folder-unset-flag): Ditto.
787         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
788         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
789
790         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
791         (elmo-folder-list-unreads-plugged,
792         elmo-folder-list-importants-plugged,
793         elmo-folder-list-answereds-plugged,
794         elmo-folder-list-flagged-unplugged,
795         elmo-folder-unflag-important-plugged,
796         elmo-folder-flag-as-important-plugged,
797         elmo-folder-unflag-read-plugged,
798         elmo-folder-flag-as-read-plugged,
799         elmo-folder-unflag-answered-plugged,
800         elmo-folder-flag-as-answered-plugged): Remove.
801         (elmo-folder-set-flag-plugged,
802         elmo-folder-unset-flag-plugged): Define.
803
804         * elmo-flag.el (elmo-folder-initialize): Register to
805         `elmo-global-flag-list' if flag is not global.
806         (elmo-folder-append-messages): Set flag to source messages.
807
808         * elmo-filter.el (elmo-filter-folder-list-unreads,
809         elmo-folder-list-unreads,
810         elmo-filter-folder-list-importants,
811         elmo-folder-list-importants,
812         elmo-folder-flag-as-read,
813         elmo-folder-unflag-read,
814         elmo-folder-flag-as-important,
815         elmo-folder-unflag-important,
816         elmo-folder-flag-as-answered,
817         elmo-folder-unflag-answered): Remove.
818         (elmo-folder-set-flag): Define.
819         (elmo-folder-unset-flag): Ditto.
820
821         * elmo-dop.el (elmo-folder-flag-as-read-dop,
822         elmo-folder-unflag-read-dop,
823         elmo-folder-flag-as-important-dop,
824         elmo-folder-unflag-important-dop,
825         elmo-folder-flag-as-answered-dop,
826         elmo-folder-unflag-answered-dop): Remove.
827         (elmo-folder-set-flag-dop,
828         elmo-folder-unset-flag-dop,
829         elmo-folder-set-important-delayed,
830         elmo-folder-unset-important-delayed,
831         elmo-folder-set-read-delayed,
832         elmo-folder-unset-read-delayed,
833         elmo-folder-set-answered-delayed,
834         elmo-folder-unset-answered-delayed): New function.
835         (elmo-dop-queue-merge-method-list): Follow the above chagned.
836         (elmo-dop-queue-method-name-alist): Ditto.
837
838         * elmo-version.el (elmo-version): Up to 2.11.23.
839
840 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
841
842         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
843
844         * elsp-sa.el: New file.
845
846 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
847
848         * modb-standard.el (modb-standard-message-entity): New function.
849         (elmo-msgdb-message-entity): Use it.
850
851 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
852
853         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
854         behavior when one-level is nil.
855
856         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
857
858         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
859
860 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
861
862         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
863         get max number.
864         (elmo-generic-folder-diff): Ditto.
865
866         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
867         (elmo-folder-update-number): Ditto.
868
869         * elmo-dop.el (elmo-folder-status-dop): Ditto.
870         (elmo-folder-next-message-number-dop): Ditto.
871
872 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
873
874         * elmo-filter.el (elmo-folder-msgdb-create): Use
875         `elmo-message-entity' and `elmo-message-flags' instead of
876         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
877
878 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
879
880         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
881         `if-exists'.
882
883 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
884
885         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
886
887         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
888
889         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
890
891 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
892
893         * elmo-version.el (elmo-version): Up to 2.11.22.
894
895 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
896
897         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
898
899 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
900
901         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
902         if the message dose not exist.
903
904 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
905
906         * elmo-version.el (elmo-version): Up to 2.11.21.
907
908 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
909
910         * modb-standard.el (toplevel): Don't require mime.
911
912 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
913
914         * elsp-bogofilter.el (toplevel): Don't require path-util.
915         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
916         (elmo-spam-bogofilter-header): Abolish.
917         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
918         (elmo-spam-bogofilter-args): New user option.
919         (elsp-bogofilter-call-bogofilter): New internal function.
920         (elmo-spam-buffer-spam-p): Use it.
921         (elsp-bogofilter-register-buffer): Renamed from
922         `elmo-spam-bogofilter-register-buffer';
923         Use `elsp-bogofilter-call-bogofilter'.
924         (elmo-spam-register-spam-buffer): Follow the change above.
925         (elmo-spam-register-good-buffer): Ditto.
926
927 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
928
929         * modb-standard.el (elmo-msgdb-append-entity): If entity or
930         message-id is nil do nothing.
931
932 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
933
934         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
935         Revival.
936         (elmo-imap4-session): Removed use-flag slot.
937         (elmo-imap4-session-select-mailbox): Undo last change.
938         (elmo-folder-use-flag-p): Use
939         elmo-imap4-disuse-server-flag-mailbox-regexp.
940
941 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
942
943         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
944         (elmo-imap4-session-select-mailbox): Set it up.
945         (elmo-folder-use-flag-p): Return value of use-flag slot.
946
947 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
948
949         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
950         message-id is nil.
951         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
952
953         * modb-entity.el (elmo-message-entity-handler): Likewise.
954
955 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
956
957         * elmo.el (toplevel): Remove setting of autoloding for
958         elmo-global-flag-initialize.
959         (elmo-init): Don't call elmo-global-flag-initialize.
960         (toplevel): Added autoload setting for elmo-global-mark-migrate.
961
962         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
963         (elmo-global-mark-migrate): Don't call it.
964         (elmo-global-mark-upgrade): Ditto.
965
966 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
967
968         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
969         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
970
971         * elmo-vars.el (elmo-init-hook): New user option.
972
973         * elmo.el (elmo-init): Run the elmo-init-hook.
974
975         * elmo-flag.el (elmo-global-mark-migrate): New function.
976
977 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
978
979         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
980         Undo last change (move to elmo-msgdb-unset-flag).
981         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
982         flag is unset.
983
984 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
985
986         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
987         read flag is set.
988         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
989         (elmo-msgdb-unset-flag): Ditto.
990
991 2003-11-05  Andreas Fuchs <asf@boinkor.net>
992
993         * elmo-split.el (elmo-split): Return split message count.
994
995 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
996
997         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
998         is nil.
999
1000 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1001
1002         * elmo.el (elmo-folder-unflag-important): Call
1003         `elmo-global-flag-detach' with 4th argument delete-if-none that is
1004         a symbol `always'.
1005
1006         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
1007         before unset flag.
1008         (elmo-global-flag-detach): Delete the message from flag folder, if
1009         `delete-if-none' is a symbol `always'.
1010
1011 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1012
1013         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
1014         `elmo-spam-spamfilter-decode-buffer'.
1015         (elsp-spamfilter-register-buffer-internal): New internal function.
1016         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
1017         (elmo-spam-register-spam-buffer): Ditto.
1018         (elmo-spam-register-good-buffer): Ditto.
1019
1020         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
1021         change.
1022         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
1023         (elmo-spam-register-spam-buffer): Follow the API change.
1024         (elmo-spam-register-good-buffer): Ditto.
1025
1026         * elmo-split.el (toplevel): Require elmo-spam when copmile.
1027         (elmo-split-spam-p): Added argument plist; Call
1028         `elmo-spam-buffer-spam-p' with new argument register.
1029
1030         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
1031         `register'.
1032         (elmo-spam-message-spam-p): Ditto.
1033         (elmo-spam-register-spam-buffer): Added optional argument
1034         `restore'.
1035         (elmo-spam-register-good-buffer): Ditto.
1036         (elmo-spam-register-spam-messages): Ditto.
1037         (elmo-spam-register-good-messages): Ditto.
1038
1039 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1040
1041         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
1042         register into good corpus.
1043         (elmo-spam-register-good-buffer): Fixed to register into bad
1044         corpus.
1045
1046 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1047
1048         * elmo-version.el (elmo-version): Up to 2.11.20.
1049
1050         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
1051         change.
1052
1053         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
1054         flag without depending on \Recent flag.
1055
1056 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1057
1058         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
1059         (elmo-spam-modified-p): Defined.
1060         (elmo-spam-save-status): Set `modified' slot to nil.
1061         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
1062         (elmo-spam-register-good-buffer): Ditto.
1063
1064         * elmo-spam.el (elmo-spam-modified-p): New API.
1065
1066 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1067
1068         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
1069         duplicate definition.
1070
1071         * elmo-util.el (elmo-unfold-field-body): New function.
1072         (elmo-msgdb-get-message-id-from-buffer): Use it.
1073
1074         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1075         Fixed the last change; Use elmo-unfold-field-body.
1076
1077 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1078
1079         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1080         Unfold date value.
1081
1082 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1083
1084         * elmo-spam.el (elmo-spam-save-status): New API.
1085
1086         * elsp-spamfilter.el: New file.
1087
1088 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1089
1090         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
1091
1092 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1093
1094         * elmo-split.el (elmo-split-spam-p): New function.
1095
1096         * elmo-spam.el: New file.
1097
1098         * elsp-bogofilter.el: Ditto.
1099
1100 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
1101
1102         * elmo.el (elmo-folder-next-message-number): New API.
1103         (elmo-folder-next-message-number): Define.
1104         (elmo-message-field): Don't check folder length.
1105
1106         * elmo-net.el (elmo-folder-next-message-number): Define.
1107         (elmo-folder-next-message-number-unplugged): Define.
1108
1109         * elmo-map.el (elmo-folder-next-message-number): Define.
1110         (elmo-folder-delete-messages): Clear hash value.
1111
1112         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
1113
1114         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
1115         (elmo-folder-delete-messages-dop-delayed): Always return t.
1116
1117         * elmo-version.el (elmo-version): Up to 2.11.19.
1118
1119 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1120
1121         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
1122         change.
1123
1124         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
1125         identical cons cell into the mark-alist and the hash table.
1126
1127 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
1128
1129         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
1130         elmo-folder-list-messages with argument `visible-only' as t.
1131
1132         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
1133         (elmo-folder-msgdb-create): Check the target folder.
1134
1135 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
1136
1137         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
1138         `permanentflag' instead of `flags'.
1139         (elmo-folder-open): Ditto.
1140         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
1141         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
1142         (elmo-folder-use-flag-p): Always return t.
1143         (elmo-imap4-session-select-mailbox): Use value of `flags' if
1144         `permanentflags' does not exist.
1145         (elmo-folder-open): Ditto.
1146
1147 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
1148
1149         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
1150         is nil.
1151         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
1152
1153         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
1154         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
1155         response.
1156         (elmo-folder-open): Ditto.
1157         (elmo-imap4-set-flag): Send store flag command only when the `flags'
1158         slot of the session includes the flag.
1159         (elmo-imap4-session-flag-available-p): New function.
1160         (elmo-imap4-folder-list-flagged): Ditto.
1161         (elmo-folder-list-unreads-plugged): Use it.
1162         (elmo-folder-list-importants-plugged): Ditto.
1163         (elmo-folder-list-answereds-plugged): Ditto.
1164         (elmo-imap4-search-internal-primitive): Ditto.
1165         (elmo-imap4-folder-list-any-plugged,
1166         elmo-imap4-folder-list-digest-plugged): Abolish.
1167
1168         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
1169         if numbers is nil.
1170
1171 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1172
1173         * elmo-util.el (toplevel): Require emu for char-list-to-string.
1174
1175 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
1176
1177         * elmo-util.el (elmo-get-hash-val): Simplify.
1178         (elmo-set-hash-val): Rewrite.
1179
1180 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1181
1182         * elmo.el (elmo-folder-list-messages): Append killed messages into
1183         result if `visible-only' is nil and `in-msgdb' is non-nil.
1184
1185         * elmo-util.el (elmo-uniq-list): Added optional argument
1186         `delete-function'.
1187
1188         * modb.el (elmo-msgdb-flag-count): New API.
1189
1190         * modb-standard.el (modb-standard): Added slot flag-count.
1191         (modb-standard-countup-flags): New function.
1192         (modb-standard-load-flag): Call it.
1193         (elmo-msgdb-append): Ditto.
1194         (elmo-msgdb-clear): Clear slot flag-count.
1195         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
1196         (elmo-msgdb-unset-flag): Treat `all' flag and call
1197         modb-standard-countup-flags.
1198         (elmo-msgdb-flag-count): Define.
1199         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
1200         (elmo-msgdb-delete-messages): Ditto.
1201
1202         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
1203         (elmo-msgdb-flag-count): Define.
1204
1205         * elmo.el (elmo-folder-list-messages): Undo last change.
1206         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
1207         (elmo-folder-kill-messages): Unset all flags to numbers.
1208
1209         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
1210         elmo-folder-kill-messages.
1211
1212         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
1213         (elmo-nntp-folder-delete-messages): Abolish.
1214
1215         * elmo-version.el (elmo-version): Up to 2.11.18.
1216
1217 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1218
1219         * elmo.el (elmo-folder-kill-messages-before): Abolish.
1220         (elmo-folder-kill-messages-range): New function.
1221         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
1222         instead of elmo-folder-kill-messages-before.
1223
1224 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
1225
1226         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
1227         elmo-imap4-current-msgdb to decide entity handler.
1228
1229 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
1230
1231         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
1232
1233         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
1234         inline function.
1235         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
1236         (elmo-msgdb-overview-entity-set-number,
1237         elmo-msgdb-overview-entity-get-references,
1238         elmo-msgdb-overview-entity-set-references,
1239         elmo-msgdb-overview-entity-get-from-no-decode,
1240         elmo-msgdb-overview-entity-get-from,
1241         elmo-msgdb-overview-entity-set-from,
1242         elmo-msgdb-overview-entity-get-subject,
1243         elmo-msgdb-overview-entity-get-subject-no-decode,
1244         elmo-msgdb-overview-entity-set-subject,
1245         elmo-msgdb-overview-entity-get-date,
1246         elmo-msgdb-overview-entity-set-date,
1247         elmo-msgdb-overview-entity-get-to,
1248         elmo-msgdb-overview-entity-get-cc,
1249         elmo-msgdb-overview-entity-get-size,
1250         elmo-msgdb-overview-entity-set-size,
1251         elmo-msgdb-overview-entity-get-extra,
1252         elmo-msgdb-overview-entity-set-extra,
1253         elmo-msgdb-overview-entity-get-extra-field,
1254         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
1255         (elmo-msgdb-make-index): Use
1256         `elmo-msgdb-overview-entity-get-number-internal'.
1257         (elmo-msgdb-clear-index): Ditto.
1258         (elmo-msgdb-append-entity): Ditto;
1259         Use `elmo-msgdb-overview-entity-get-id-internal'.
1260
1261         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
1262         elmo-msgdb-overview-entity-set-number,
1263         elmo-msgdb-overview-entity-get-references,
1264         elmo-msgdb-overview-entity-set-references,
1265         elmo-msgdb-overview-entity-get-from-no-decode,
1266         elmo-msgdb-overview-entity-get-from,
1267         elmo-msgdb-overview-entity-set-from,
1268         elmo-msgdb-overview-entity-get-subject,
1269         elmo-msgdb-overview-entity-get-subject-no-decode,
1270         elmo-msgdb-overview-entity-set-subject,
1271         elmo-msgdb-overview-entity-get-date,
1272         elmo-msgdb-overview-entity-set-date,
1273         elmo-msgdb-overview-entity-get-to,
1274         elmo-msgdb-overview-entity-get-cc,
1275         elmo-msgdb-overview-entity-get-size,
1276         elmo-msgdb-overview-entity-set-size,
1277         elmo-msgdb-overview-entity-get-extra,
1278         elmo-msgdb-overview-entity-set-extra,
1279         elmo-msgdb-overview-entity-get-extra-field,
1280         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
1281         and rewrote for backward compatibility.
1282
1283 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1284
1285         * elmo.el (elmo-message-entity-number,
1286         elmo-message-entity-set-number,
1287         elmo-message-entity-field,
1288         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
1289
1290         * elmo-msgdb.el (elmo-message-entity-number,
1291         elmo-message-entity-set-number,
1292         elmo-message-entity-field,
1293         elmo-message-entity-set-field): Moved from elmo.el.
1294
1295 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1296
1297         * elmo.el (toplevel): Changed definition orders.
1298
1299 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1300
1301         * modb.el (elmo-msgdb-search): New API .
1302         (elmo-msgdb-match-condition): Ditto.
1303
1304         * modb-standard.el (elmo-msgdb-search): Define.
1305
1306         * modb-legacy.el (elmo-msgdb-search): Ditto.
1307
1308         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
1309         from elmo-msgdb-match-condition-internal.
1310
1311         * elmo.el (elmo-folder-search-fast): Abolish.
1312         (elmo-folder-search): Use elmo-msgdb-search and
1313         elmo-with-progress-display.
1314
1315         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
1316         as msgdb API.
1317
1318         * elmo.el (elmo-folder): Remove slot message-modified and
1319         flag-modified.
1320         (elmo-folder-set-message-modified): Abolish.
1321         (elmo-generic-folder-commit): Follow the change above.
1322         (elmo-folder-synchronize): Ditto.
1323
1324         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
1325
1326         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
1327
1328         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
1329
1330 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
1331
1332         * modb-standard.el (modb-standard-make-message-entity,
1333         elmo-msgdb-make-message-entity,
1334         elmo-msgdb-create-message-entity-from-buffer,
1335         elmo-msgdb-message-entity-number,
1336         elmo-msgdb-message-entity-set-number,
1337         elmo-msgdb-message-entity-field,
1338         elmo-msgdb-message-entity-set-field,
1339         elmo-msgdb-copy-message-entity,
1340         elmo-msgdb-match-condition-internal): Remove.
1341
1342         * modb-entity.el: New file (again).
1343
1344         * modb.el (toplevel): Require modb-entity.
1345         (elmo-msgdb-message-entity-handler): New method.
1346
1347         * modb-standard.el (modb-standard-entity-id): Use
1348         elmo-message-entity-handler.
1349         (modb-standard-load-entity): Ditto.
1350         (elmo-msgdb-append-entity): Ditto.
1351         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1352
1353         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
1354         elmo-msgdb-decoded-cache-hashtb,
1355         (modb-legacy-make-message-entity,
1356         elmo-msgdb-make-message-entity,
1357         elmo-msgdb-create-message-entity-from-buffer,
1358         elmo-msgdb-message-entity-number,
1359         elmo-msgdb-message-entity-set-number,
1360         elmo-msgdb-message-entity-field,
1361         elmo-msgdb-message-entity-set-field,
1362         elmo-msgdb-copy-message-entity,
1363         elmo-msgdb-match-condition-internal,
1364         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
1365
1366         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
1367         (elmo-message-entity-set-number): Ditto.
1368         (elmo-message-entity-field): Ditto.
1369         (elmo-message-entity-set-field): Ditto.
1370
1371         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
1372
1373         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
1374
1375         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1376
1377         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
1378         (elmo-nntp-msgdb-create-message): Ditto.
1379
1380         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1381         (elmo-folder-msgdb-create): Add unread flag.
1382
1383         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
1384
1385         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
1386
1387         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
1388
1389         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
1390
1391         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
1392         elmo-msgdb-messge-entity-handler.
1393         * elmo-version.el (elmo-version): Up to 2.11.17.
1394
1395 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1396
1397         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
1398         change.
1399
1400 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
1401
1402         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
1403
1404         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
1405         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
1406         (elmo-msgdb-flag-table): Ditto.
1407         (elmo-msgdb-sort-by-date): Ditto.
1408
1409         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
1410
1411         * modb-standard.el (toplevel): Require mime.
1412         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
1413         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
1414         elmo-msgdb-message-entity-number.
1415         (elmo-msgdb-append-entity): Ditto.
1416         (elmo-msgdb-create-message-entity-from-file): Remove.
1417         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
1418         corresponds to the entity.
1419         (elmo-msgdb-message-entity-number): Do nothing currently.
1420         (elmo-msgdb-message-entity-field): Ditto.
1421         (elmo-msgdb-message-entity-set-field): Ditto.
1422         (elmo-msgdb-copy-message-entity): Ditto.
1423         (elmo-msgdb-match-condition-internal): Ditto.
1424
1425         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
1426         elmo-util.el.
1427         (elmo-msgdb-create-message-entity-from-file): Remove.
1428
1429         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
1430         modb-legacy.el.
1431         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
1432
1433         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
1434
1435 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
1436
1437         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
1438         (elmo-msgdb-message-entity-field): Ditto.
1439         (elmo-msgdb-message-entity-number): Ditto.
1440
1441 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1442
1443         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
1444         Fixed how to set extra field into entity.
1445         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
1446         symbol.
1447
1448         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
1449         Fixed how to set extra field into entity.
1450         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
1451         symbol.
1452
1453 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
1454
1455         * modb.el (elmo-message-entity-db): New function.
1456         (elmo-msgdb-make-message-entity): New API.
1457         (elmo-msgdb-message-entity-number): Ditto.
1458         (elmo-msgdb-message-entity-set-number): Ditto.
1459         (elmo-msgdb-message-entity-field): Ditto.
1460         (elmo-msgdb-message-entity-set-field): Ditto.
1461         (elmo-msgdb-copy-message-entity): Ditto.
1462         (elmo-msgdb-create-message-entity-from-file): Ditto.
1463         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1464         (elmo-msgdb-match-condition-internal): Ditto.
1465
1466         * modb-standard.el (modb-legacy): Require modb-legacy.
1467         (modb-standard-make-message-entity): New inline function.
1468         (elmo-msgdb-make-message-entity): Define.
1469         (elmo-msgdb-create-message-entity-from-file): Ditto.
1470         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1471         (elmo-msgdb-message-entity-field): Ditto.
1472         (elmo-msgdb-message-entity-set-field): Ditto.
1473         (elmo-msgdb-copy-message-entity): Ditto.
1474         (elmo-msgdb-match-condition-internal): Ditto.
1475
1476         * modb-legacy.el: Don't require modb-entity.
1477         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
1478         (elmo-msgdb-match-condition-primitive): Ditto.
1479         (elmo-msgdb-get-decoded-cache): Ditto.
1480         (elmo-msgdb-overview-entity-get-id): Ditto.
1481         (elmo-msgdb-overview-entity-get-number): Ditto.
1482         (elmo-msgdb-overview-entity-set-number): Ditto.
1483         (elmo-msgdb-overview-entity-get-references): Ditto.
1484         (elmo-msgdb-overview-entity-set-references): Ditto.
1485         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
1486         (elmo-msgdb-overview-entity-get-from): Ditto.
1487         (elmo-msgdb-overview-entity-set-from): Ditto.
1488         (elmo-msgdb-overview-entity-get-subject): Ditto.
1489         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1490         (elmo-msgdb-overview-entity-set-subject): Ditto.
1491         (elmo-msgdb-overview-entity-get-date): Ditto.
1492         (elmo-msgdb-overview-entity-set-date): Ditto.
1493         (elmo-msgdb-overview-entity-get-to): Ditto.
1494         (elmo-msgdb-overview-entity-get-cc): Ditto.
1495         (elmo-msgdb-overview-entity-get-size): Ditto.
1496         (elmo-msgdb-overview-entity-set-size): Ditto.
1497         (elmo-msgdb-overview-entity-get-extra): Ditto.
1498         (elmo-msgdb-overview-entity-set-extra): Ditto.
1499         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
1500         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
1501         (elmo-msgdb-number-load): Ditto.
1502         (elmo-msgdb-overview-load): Ditto.
1503         (elmo-msgdb-mark-load): Ditto.
1504         (elmo-msgdb-number-save): Ditto.
1505         (elmo-msgdb-mark-save): Ditto.
1506         (elmo-msgdb-overview-save): Ditto.
1507         (modb-legacy-make-message-entity): New inline function.
1508         (elmo-msgdb-insert-file-header): Ditto.
1509         (elmo-msgdb-make-message-entity): Define.
1510         (elmo-msgdb-create-message-entity-from-file): Ditto.
1511         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1512         (elmo-msgdb-message-entity-number): Ditto.
1513         (elmo-msgdb-message-entity-set-number): Ditto.
1514         (elmo-msgdb-message-entity-field): Ditto.
1515         (elmo-msgdb-message-entity-set-field): Ditto.
1516         (elmo-msgdb-copy-message-entity): Ditto.
1517         (elmo-msgdb-match-condition-internal): Ditto.
1518
1519         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
1520         (elmo-message-copy-entity): Rewrite.
1521         (elmo-message-entity-number): Ditto.
1522         (elmo-message-entity-set-number): Ditto.
1523         (elmo-message-entity-field): Use elmo-message-entity-db.
1524         (elmo-message-entity-set-field): Ditto.
1525         (elmo-message-field): Rewrite.
1526
1527         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
1528         elmo-msgdb.el
1529         (elmo-msgdb-get-message-id-from-buffer): Ditto.
1530
1531         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
1532         elmo-message-entity-field.
1533         (elmo-shimbun-folder-shimbun-header): Ditto.
1534         (elmo-shimbun-entity-to-header): Ditto.
1535         (elmo-folder-msgdb-create): Ditto.
1536         (elmo-shimbun-msgdb-create-entity): Ditto;
1537         Use elmo-msgdb-create-message-entity-from-buffer.
1538         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
1539         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
1540
1541         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
1542         elmo-msgdb-create-message-entity-from-file and 
1543         elmo-message-entity-field.
1544
1545         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
1546         elmo-message-entity-number.
1547         (elmo-pop3-msgdb-create-message): Use
1548         elmo-msgdb-create-message-entity-from-buffer,
1549         elmo-message-entity-set-field, elmo-message-entity-number and
1550         elmo-message-entity-set-number.
1551
1552         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
1553         the API change in elmo-msgdb-make-message-entity.
1554         (elmo-nntp-msgdb-create-message): Use
1555         elmo-msgdb-create-message-entity-from-buffer.
1556
1557         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
1558         elmo-message-entity-field and
1559         elmo-msgdb-create-message-entity-from-file.
1560
1561         * elmo-msgdb.el (toplevel): Don't require modb-entity.
1562         (elmo-msgdb-get-field): Abolish.
1563         (elmo-msgdb-get-number): Rewrite.
1564         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
1565         (elmo-msgdb-flag-table): Ditto.
1566         (elmo-msgdb-get-last-message-id,
1567         elmo-msgdb-number-load, elmo-msgdb-overview-load,
1568         elmo-msgdb-mark-load, elmo-msgdb-number-save,
1569         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
1570         (elmo-msgdb-create-overview-from-buffer,
1571         elmo-msgdb-overview-get-parent-entity): Abolish.
1572
1573         * elmo-mime.el (elmo-mime-display-as-is): Use
1574         elmo-message-entity-field.
1575
1576         * elmo-map.el (elmo-folder-pack-numbers): Use
1577         elmo-message-entity-set-number.
1578
1579         * elmo-maildir.el (elmo-folder-msgdb-create): 
1580         elmo-msgdb-create-message-entity-from-file instead of
1581         elmo-msgdb-create-overview-entity-from-file.
1582
1583         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
1584         msgdb.
1585         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
1586         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
1587
1588         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
1589         elmo-messge-entity-field and elmo-message-entity-number.
1590         (elmo-imap4-fetch-callback-1): Call
1591         elmo-msgdb-create-message-entity-from-buffer instead of
1592         elmo-msgdb-create-overview-from-buffer. 
1593         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
1594         (elmo-find-fetch-strategy): Likewise.
1595
1596         * elmo-flag.el (elmo-folder-msgdb-create): Call 
1597         elmo-localdir-msgdb-create-entity with argument msgdb.
1598
1599         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
1600         and elmo-message-entity-set-number.
1601
1602         * elmo-cache.el (elmo-folder-msgdb-create): Use
1603         elmo-message-entity-field.
1604         (elmo-folder-msgdb-create): Call
1605         elmo-msgdb-create-message-entity-from-file instead of
1606         elmo-msgdb-create-overview-entity-from-file.
1607
1608         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
1609         argument msgdb; Call elmo-msgdb-create-message-from-buffer
1610         instead of elmo-msgdb-create-overview-from-buffer.
1611         (elmo-archive-msgdb-create-entity): Ditto.
1612         (elmo-archive-msgdb-create-as-numlist-subr1): Use
1613         elmo-message-entity-field.
1614         (elmo-archive-parse-mmdf): Ditto.
1615
1616         * modb-entity.el: Removed.
1617
1618         * elmo-version.el (elmo-version): Up to 2.11.16.
1619
1620 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
1621
1622         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
1623         `is-local'.
1624         (elmo-folder-flag-as-answered): Ditto.
1625
1626 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1627
1628         * modb-standard.el: New file.
1629
1630         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
1631         elmo-msgdb-convert-type is `sync'.
1632
1633         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
1634         (elmo-msgdb-convert-type): New user option.
1635
1636         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
1637         (elmo-load-msgdb): Auto detect saved type.
1638
1639         * elmo-version.el (elmo-version): Up to 2.11.15.
1640
1641 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
1642
1643         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
1644
1645         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
1646         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
1647         with argument `delete-if-none' when dst-folder is 'null.
1648
1649         * elmo-flag.el (elmo-folder-append-messages): Defined.
1650         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
1651
1652 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
1653
1654         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
1655
1656 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1657
1658         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
1659         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
1660         (elmo-folder-commit): Ditto.
1661
1662 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
1663
1664         * elmo-flag.el: New file.
1665
1666         * elmo-mark.el: Removed.
1667
1668         * modb-legacy.el (modb-legacy-new-mark,
1669         modb-legacy-unread-uncached-mark,
1670         modb-legacy-unread-cached-mark,
1671         modb-legacy-read-uncached-mark,
1672         modb-legacy-answered-cached-mark,
1673         modb-legacy-answered-uncached-mark,
1674         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
1675         All other related portions are changed.
1676
1677         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
1678         (elmo-folder-list-messages-with-global-mark): Abolish.
1679         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
1680         (elmo-folder-flag-as-important): Ditto.
1681         (elmo-folder-unflag-read): Ditto.
1682         (elmo-folder-flag-as-read): Ditto.
1683         (elmo-folder-unflag-answered): Ditto.
1684         (elmo-folder-flag-as-answered): Ditto.
1685         (elmo-message-encache): Return the cache path.
1686         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
1687         (elmo-message-set-flag): Transitional implementation.
1688         (elmo-message-unset-flag): Ditto.
1689         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
1690         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
1691         (elmo-init): Call elmo-global-flag-initialize.
1692         (toplevel): Added autoload settings for elmo-flag.
1693
1694         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
1695
1696         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
1697         (elmo-file-cache-delete): Don't treat global-mark.
1698
1699         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
1700
1701         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
1702
1703         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
1704         `elmo-global-flags-set'.
1705
1706         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
1707         `flag'.
1708         (elmo-folder-unflag-read): Ditto.
1709         (elmo-folder-unflag-important): Ditto.
1710         (elmo-folder-flag-as-important): Ditto.
1711         (elmo-folder-unflag-answered): Ditto.
1712         (elmo-folder-flag-as-answered): Ditto.
1713
1714         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
1715         `elmo-global-flags-set'.
1716         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
1717
1718         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
1719
1720         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
1721         `flag'.
1722         (elmo-folder-flag-as-important): Ditto.
1723         (elmo-folder-unflag-important): Ditto.
1724         (elmo-folder-flag-as-important): Ditto.
1725         (elmo-folder-unflag-read): Ditto.
1726         (elmo-folder-flag-as-read): Ditto.
1727         (elmo-folder-unflag-answered): Ditto.
1728         (elmo-folder-flag-as-answered): Ditto.
1729
1730         * elmo-multi.el (elmo-folder-list-importants): Don't call
1731         elmo-folder-list-messages-with-global-mark.
1732         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
1733         (elmo-folder-unflag-important): Ditto.
1734         (elmo-folder-flag-as-read): Ditto.
1735         (elmo-folder-unflag-read): Ditto.
1736         (elmo-folder-flag-as-answered): Ditto.
1737         (elmo-folder-unflag-answered): Ditto.
1738
1739         * elmo-msgdb.el (elmo-msgdb-new-mark,
1740         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
1741         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
1742         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
1743         (Moved to modb-legacy.el).
1744         (elmo-flag-table-get): Treat important flag too.
1745
1746         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
1747         `mark' to `flag'.
1748         (elmo-map-folder-flag-as-important): Ditto.
1749         (elmo-map-folder-unflag-read): Ditto.
1750         (elmo-map-folder-flag-as-read): Ditto.
1751         (elmo-map-folder-unflag-answered): Ditto.
1752         (elmo-map-folder-flag-as-answered): Ditto.
1753         (elmo-folder-unflag-important): Ditto.
1754         (elmo-folder-flag-as-important): Ditto.
1755         (elmo-folder-unflag-read): Ditto.
1756         (elmo-folder-flag-as-read): Ditto.
1757         (elmo-folder-unflag-answered): Ditto.
1758         (elmo-folder-flag-as-answered): Ditto.
1759
1760         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
1761         (elmo-map-folder-flag-as-important): Renamed from `mark' to
1762         `flag'.
1763         (elmo-map-folder-unflag-important): Ditto.
1764         (elmo-map-folder-flag-as-read): Ditto.
1765         (elmo-map-folder-unflag-read): Ditto.
1766         (elmo-map-folder-flag-as-answered): Ditto.
1767         (elmo-map-folder-unflag-answered): Ditto.
1768
1769         * elmo-localdir.el (elmo-folder-msgdb-create): Call
1770         `elmo-global-flags-set'.
1771         (elmo-global-flags-set): Added autoload setting.
1772
1773         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
1774         `flag'.
1775
1776         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
1777         `elmo-msgdb-global-mark-set'.
1778         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
1779         Call `elmo-global-flags-set'.
1780         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
1781         `flag'.
1782         (elmo-folder-flag-as-important-plugged): Ditto.
1783         (elmo-folder-unflag-read-plugged): Ditto.
1784         (elmo-folder-flag-as-read-plugged): Ditto.
1785         (elmo-folder-unflag-answered-plugged): Ditto.
1786         (elmo-folder-flag-as-answered-plugged): Ditto.
1787         (elmo-global-flags-set): Added autoload setting.
1788
1789         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
1790         `flag'.
1791         (elmo-folder-unflag-read): Ditto.
1792         (elmo-folder-flag-as-important): Ditto.
1793         (elmo-folder-unflag-important): Ditto.
1794         (elmo-folder-flag-as-answered): Ditto.
1795         (elmo-folder-unflag-answered): Ditto.
1796
1797         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
1798         change of `mark'->`flag'.
1799         (elmo-dop-queue-method-name-alist): Ditto.
1800         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
1801         (elmo-folder-unflag-read-dop): Ditto.
1802         (elmo-folder-flag-as-important-dop): Ditto.
1803         (elmo-folder-unflag-important-dop): Ditto.
1804         (elmo-folder-flag-as-answered-dop): Ditto.
1805         (elmo-folder-unflag-answered-dop): Ditto.
1806
1807         * elmo-cache.el (elmo-folder-msgdb-create): Call
1808         `elmo-global-flags-set'.
1809
1810         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
1811         Call `elmo-global-flags-set'.
1812         (elmo-archive-msgdb-create-as-numlist-subr2): Call
1813         elmo-archive-parse-mmdf with argument `folder'.
1814         (elmo-archive-parse-mmdf): Added argument `folder';
1815         Call `elmo-global-flags-set'.
1816
1817         * elmo-version.el (elmo-version): Up to 2.11.14.
1818
1819 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1820
1821         * modb.el (elmo-msgdb-length): Define.
1822
1823         * elmo.el (elmo-make-folder): Fixed.
1824         (elmo-generic-folder-append-messages): Follow the API change.
1825
1826         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
1827         API change.
1828
1829 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1830
1831         * modb.el: New file.
1832
1833         * modb-entity.el: Ditto.
1834
1835         * modb-legacy.el: Ditto.
1836
1837         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
1838         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
1839         of `elmo-msgdb-overview-get-entity'.
1840         (elmo-msgdb-get-field): Ditto.
1841         (elmo-msgdb-merge): Moved to `elmo.el'.
1842         (elmo-msgdb-length): Removed; redefine as modb method.
1843         (elmo-msgdb-change-mark): Abolish.
1844         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
1845         (elmo-msgdb-match-condition): Don't use mark.
1846         (elmo-msgdb-overview-get-entity): Abolish.
1847         Split modb part into `modb*.el'.
1848
1849         * elmo-vars.el (elmo-msgdb-default-type): New user option.
1850
1851         * elmo-shimbun.el (shimbun-mua-search-id): Use
1852         `elmo-msgdb-message-entity' instead of
1853         `elmo-msgdb-overview-get-entity'.
1854         (elmo-shimbun-folder-shimbun-header): Ditto.
1855         (elmo-shimbun-get-headers): Ditto.
1856         (elmo-shimbun-update-overview): Ditto.
1857
1858         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
1859
1860         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
1861
1862         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
1863         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
1864
1865         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
1866         `elmo-msgdb-mark-to-flags'.
1867
1868         * elmo-map.el (elmo-folder-pack-numbers): Don't use
1869         `elmo-msgdb-set-path'.
1870
1871         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1872  
1873         * elmo-version.el (elmo-version): Up to 2.11.13.
1874
1875         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
1876
1877         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
1878         of mark.
1879
1880 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1881
1882         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
1883         mismatch.
1884
1885 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1886
1887         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
1888         instead of `elmo-msgdb-get-cached'.
1889         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
1890
1891         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
1892         (elmo-msgdb-set-cached): Ditto.
1893         (elmo-msgdb-set-flag): Rewrite.
1894         (elmo-msgdb-unset-flag): Ditto.
1895
1896         * elmo-msgdb.el: Rewrite with luna.
1897
1898         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
1899         (elmo-folder-msgdb): Follow the change above.
1900         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
1901         (elmo-folder-unmark-important): Follow the API change.
1902         (elmo-folder-mark-as-important): Ditto.
1903         (elmo-folder-unmark-read): Ditto.
1904         (elmo-folder-mark-as-read): Ditto.
1905         (elmo-folder-unmark-answered): Ditto.
1906         (elmo-folder-mark-as-answered): Ditto.
1907         (elmo-folder-clear): Likewise.
1908
1909         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
1910         instead of `elmo-msgdb-load' (renamed).
1911
1912         * elmo-version.el (elmo-version): Up to 2.11.12.
1913
1914 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1915
1916         * elmo.el (elmo-generic-folder-append-messages): Follow the API
1917         change.
1918         (elmo-message-mark): Abolish.
1919         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
1920         instead of `elmo-msgdb-change-mark'.
1921
1922         * elmo-pipe.el (elmo-message-mark): Abolish.
1923
1924         * elmo-multi.el (elmo-message-mark): Ditto.
1925
1926         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
1927         (elmo-msgdb-unread-uncached-mark): Ditto.
1928         (elmo-msgdb-unread-cached-mark): Ditto.
1929         (elmo-msgdb-read-uncached-mark): Ditto.
1930         (elmo-msgdb-answered-cached-mark): Ditto.
1931         (elmo-msgdb-answered-uncached-mark): Ditto.
1932         (elmo-msgdb-important-mark): Ditto.
1933         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
1934         `use-cache'.
1935         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
1936         `flags'.
1937         (elmo-flag-table-load): Changed flag to list of flag.
1938         (elmo-flag-table-set): If flags is nil, set read flag.
1939         (elmo-flag-table-get): Return derived flags from global mark,
1940         cache status and saved flags.
1941         (elmo-msgdb-flag-table): Follow the change above.
1942         (elmo-msgdb-out-of-date-messages): New function.
1943
1944         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
1945
1946         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
1947
1948         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1949
1950         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
1951         (elmo-nntp-msgdb-create-message): Ditto.
1952
1953         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1954
1955         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
1956         independent.
1957         (elmo-folder-msgdb-create): Follow the API change.
1958
1959         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
1960         (elmo-folder-append-messages): Ditto.
1961
1962         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
1963         (elmo-folder-append-buffer): Ditto.
1964
1965         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
1966
1967         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
1968
1969         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
1970         (elmo-archive-parse-mmdf): Ditto.
1971
1972         * elmo-version.el (elmo-version): Up to 2.11.11.
1973
1974 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1975
1976         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
1977         `elmo-msgdb-mark'.
1978
1979         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
1980
1981         * elmo-pipe.el (elmo-message-flags): Defined.
1982
1983         * elmo-multi.el (elmo-message-flags): Ditto.
1984
1985 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1986
1987         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
1988         `elmo-msgdb-delete-msgs'.
1989
1990         * elmo.el (elmo-folder-count-flags): Don't use
1991         `elmo-msgdb-get-mark-alist'.
1992         (elmo-folder-detach-messages): Follow the API change.
1993
1994         * elmo.el (elmo-folder-list-messages): Append killed messages into
1995         result if `visible-only' is nil.
1996
1997         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
1998         canceled messages.
1999         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
2000         (elmo-folder-update-number): Likewise.
2001
2002         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
2003         (elmo-pop3-sort-msgdb-by-original-number): Use
2004         `elmo-msgdb-sort-entities'.
2005
2006         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
2007         (elmo-msgdb-sort-by-date): Use it.
2008         (elmo-msgdb-overview-sort-by-date): Abolish.
2009
2010         * elmo-dop.el (elmo-folder-status-dop): Fixed.
2011
2012         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
2013         (elmo-msgdb-flags): New function.
2014         (elmo-msgdb-merge): Use elmo-msgdb-append.
2015
2016         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
2017         change.
2018
2019         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
2020
2021         * elmo-dop.el (elmo-folder-status-dop): Use
2022         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
2023
2024 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2025
2026         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
2027
2028         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
2029
2030         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
2031
2032         * elmo-util.el (elmo-with-progress-display): New macro.
2033
2034         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
2035
2036 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2037
2038         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2039         `elmo-folder-list-message-entities' instead of
2040         `elmo-msgdb-get-overview'.
2041         (elmo-map-folder-list-message-locations): Ditto.
2042
2043         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
2044         methods instead of treat directly).
2045         (elmo-msgdb-clear): Ditto.
2046         (elmo-msgdb-delete-msgs): Ditto.
2047         (elmo-msgdb-sort-by-date): Ditto.
2048
2049         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
2050         local variables.
2051         (elmo-nntp-folder-msgdb-create): Follow the API change.
2052
2053         * elmo-version.el (elmo-version): Up to 2.11.10.
2054
2055 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2056
2057         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
2058         (elmo-msgdb-flags-to-mark): Ditto.
2059         (elmo-msgdb-append-entity): Ditto.
2060
2061         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
2062         Use `elmo-msgdb-append-entity' instead of construct msgdb.
2063         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
2064         (elmo-archive-parse-mmdf): Ditto.
2065
2066         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2067
2068         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
2069
2070         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
2071
2072         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2073
2074         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
2075
2076         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
2077
2078         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2079
2080         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
2081
2082         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
2083         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
2084         to empty msgdb.
2085
2086         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
2087         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
2088         instead of directly construction.
2089         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
2090         instead of construct msgdb.
2091
2092         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2093         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
2094         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
2095         instead of construct msgdb.
2096
2097 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2098
2099         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
2100         when field is from or subject.
2101
2102 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
2103
2104         * elmo-multi.el (elmo-message-entity-parent): Define.
2105         (elmo-folder-search): Rewrite.
2106
2107 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2108
2109         * elmo-multi.el (elmo-message-cached-p): Define.
2110
2111         * elmo.el (elmo-message-cached-p): New method.
2112         (elmo-message-accessible-p): Use it instead of msgdb API directly.
2113         (elmo-message-flags): New method.
2114         (elmo-message-flagged-p): New function.
2115
2116         * elmo-version.el (elmo-version): Up to 2.11.9.
2117
2118 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2119
2120         * elmo-version.el (elmo-version): Up to 2.11.8.
2121
2122         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
2123
2124         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
2125
2126 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
2127
2128         * elmo.el (elmo-folder-detach-messages): Undo last change.
2129
2130 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
2131
2132         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
2133
2134         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
2135         only when src folder type is pop3.
2136
2137 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
2138
2139         * elmo-msgdb.el (elmo-msgdb-make-index): Use
2140         elmo-msgdb-overview-entity-get-number instead of
2141         elmo-message-entity-number.
2142
2143 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2144
2145         * elmo-version.el (elmo-version): Up to 2.11.7.
2146
2147 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
2148
2149         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
2150         function.
2151
2152         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
2153         (elmo-msgdb-merge): New function.
2154         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
2155         (elmo-msgdb-make-index): Rewrite.
2156
2157         * elmo-version.el (elmo-version): Up to 2.11.6.
2158
2159         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
2160         use it as a the path for loading message entities.
2161
2162         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
2163
2164 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
2165
2166         * elmo-filter.el (elmo-folder-set-message-modified): Set 
2167         message-modified slot of itself if it does not require target msgdb.
2168
2169         * elmo-mime.el (elmo-mime-message-display): Display message entirely
2170         if folder length is zero.
2171         (elmo-mime-display-as-is): Ditto.
2172
2173         * elmo-filter.el (elmo-folder-set-message-modified): Define.
2174
2175         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2176
2177 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2178
2179         * elmo.el (elmo-folder-set-message-modified): New method.
2180         (elmo-generic-folder-commit): Use it.
2181         (elmo-folder-synchronize): Ditto.
2182
2183         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
2184         (elmo-folder-commit): Remove duplicate definition.
2185
2186 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
2187
2188         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
2189
2190 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2191
2192         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
2193         (elmo-strict-folder-diff): Ditto.
2194         (elmo-folder-set-info-max-by-numdb): Simplify.
2195
2196         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
2197         elmo-msgdb-list-messages.
2198
2199         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
2200         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
2201
2202 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
2203
2204         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
2205         visible-only is non-nil.
2206         (elmo-folder-confirm-appends): Changed message.
2207         (elmo-folder-synchronize): Added argument disable-killed.
2208
2209         * elmo-multi.el (elmo-folder-synchronize): Added argument
2210         disable-killed.
2211
2212         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
2213
2214         * elmo-version.el (elmo-version): Up to 2.11.5.
2215
2216         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
2217         elmo-list-filter.
2218
2219         * elmo-util.el (elmo-list-filter): Simplify.
2220
2221         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
2222         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
2223         (elmo-generic-folder-diff): Abolish argument.
2224         (elmo-msgdb-load): Don't use number-alist.
2225
2226         * elmo-filter.el (elmo-folder-diff): Abolish argument.
2227
2228         * elmo-pipe.el (elmo-folder-diff): Ditto.
2229
2230         * elmo-nmz.el (elmo-folder-diff): Ditto.
2231
2232         * elmo-net.el (elmo-folder-diff): Ditto.
2233
2234         * elmo-maildir.el (elmo-folder-diff): Ditto.
2235
2236         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
2237
2238         * elmo-multi.el (elmo-folder-diff): Ditto
2239         (elmo-multi-folder-diff): Rewrite.
2240
2241 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2242
2243         * elmo-pipe.el (elmo-folder-msgdb): Define.
2244
2245 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
2246
2247         * elmo.el (elmo-message-set-cached): Define as a method.
2248
2249         * elmo-pipe.el (elmo-message-set-cached): Define.
2250         (elmo-find-fetch-strategy): Ditto.
2251
2252         * elmo-multi.el (elmo-message-set-cached): Define.
2253         (elmo-find-fetch-strategy): Rewrite.
2254
2255         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
2256
2257         * elmo-pipe.el (elmo-message-folder): Fixed definition.
2258
2259 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
2260
2261         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
2262         instead of number-alist.
2263
2264         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
2265         mark nor message-id when msgdb of source folder is not loaded.
2266
2267         * elmo.el (elmo-generic-folder-append-messages): Ditto.
2268
2269         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
2270
2271 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
2272
2273         * elmo.el (elmo-folder-length): Don't require msgdb.
2274
2275 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
2276
2277         * elmo.el (elmo-message-mark): Cause an error when empty folder.
2278         (elmo-message-field): Ditto.
2279
2280         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
2281         (elmo-map-folder-list-message-locations): Setup `answered-locations'
2282         slot.
2283         (elmo-map-folder-list-answereds): Define.
2284         (elmo-maildir-list-location): Treat 'R' info.
2285         (elmo-folder-msgdb-create): Treat flag-table.
2286         (elmo-folder-append-messages): Save flag-table.
2287
2288 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
2289
2290         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
2291         Use SELECT when elmo-imap4-use-select-to-update-status is t.
2292
2293 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2294
2295         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
2296
2297         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
2298         'read when mark is null.
2299
2300 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
2301
2302         * elmo-version.el (elmo-version): Up to 2.11.4.
2303
2304 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2305
2306         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
2307         (elmo-folder-mark-as-answered): Ditto.
2308
2309 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
2310
2311         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
2312         (elmo-pop3-get-session): Make msgdb directory after session.
2313         (elmo-folder-exists-p): Check exactly at the first time even when the
2314         elmo-pop3-exists-exactly is nil.
2315
2316         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
2317         (elmo-folder-list-messages): Define instead of
2318         elmo-folder-list-messages-internal.
2319         (elmo-folder-check): Check destination folder.
2320         (elmo-folder-synchronize): Drain the pipe.
2321
2322         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
2323         when msgdb is not loaded.
2324
2325         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
2326
2327         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
2328         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
2329         messages.
2330
2331         * elmo.el (elmo-folder-kill-messages-before): New function.
2332         (elmo-folder-kill-messages): Ditto.
2333         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
2334
2335         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
2336         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
2337         killed not by synchronize (e.g. scoring).
2338
2339 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2340
2341         * elmo.el (elmo-folder-search-fast): Return t if condition is not
2342         treated.
2343         (elmo-folder-search): Follow the change above.
2344
2345         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
2346         into the candidates of search field.
2347
2348 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
2349
2350         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
2351         (elmo-msgdb-unset-flag): Ditto.
2352
2353         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
2354
2355 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
2356
2357         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
2358         (elmo-folder-commit): Define.
2359         (elmo-folder-synchronize): Ditto.
2360         (elmo-folder-list-flagged): Ditto.
2361         (elmo-folder-commit): Ditto.
2362         (elmo-folder-length): Ditto.
2363         (elmo-folder-count-flags): Ditto.
2364         (elmo-message-mark): Ditto.
2365         (elmo-message-field): Ditto.
2366         (elmo-message-entity): Ditto.
2367         (elmo-message-folder): Ditto.
2368
2369 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
2370
2371         * elmo.el (elmo-message-field): Define as a method.
2372
2373         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
2374         (elmo-message-field): Define.
2375
2376         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
2377         (elmo-folder-list-importants): Ditto.
2378         (elmo-folder-list-answereds): Ditto.
2379
2380         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
2381         qualifier.
2382         (elmo-folder-mark-as-read): Ditto.
2383         (elmo-folder-unmark-read): Ditto.
2384         (elmo-folder-mark-as-answered): Ditto.
2385         (elmo-folder-unmark-answered): Ditto.
2386         (elmo-folder-list-flagged): Define.
2387         (elmo-folder-commit): Ditto.
2388         (elmo-folder-length): Ditto.
2389         (elmo-folder-count-flags): Ditto.
2390
2391 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
2392
2393         * elmo.el (elmo-folder-detach-messages): New method.
2394         (elmo-folder-move-messages): Use it.
2395         (elmo-folder-synchronize): Ditto.
2396
2397         * elmo-multi.el (elmo-folder-detach-messages): Define.
2398
2399         * elmo.el (elmo-message-copy-entity): New function.
2400         (elmo-message-entity-set-number): Ditto.
2401         (elmo-message-mark): Define as method.
2402
2403         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
2404         (elmo-folder-synchronize): Return 0 (Should be reconsider).
2405         (elmo-message-entity): Fixed last change.
2406         (elmo-message-mark): Define.
2407         (elmo-folder-msgdb-create): Abolish.
2408         (elmo-multi-folder-append-msgdb): Ditto.
2409         (elmo-multi-folder-diff): Fixed.
2410         (elmo-multi-split-number-alist): Removed.
2411         (elmo-multi-split-mark-alist): Removed.
2412         (elmo-folder-list-messages): Define.
2413         (elmo-folder-list-messages-internal): Removed.
2414
2415         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
2416         local file messages.
2417         (elmo-folder-msgdb-create): Fixed read mark.
2418
2419 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2420
2421         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
2422         if mark is nil.
2423
2424 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
2425
2426         * elmo.el (elmo-folder-list-message-entities): Define as inline
2427         function.
2428         (elmo-folder-messages): Abolish.
2429
2430         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
2431         folder.
2432         (elmo-folder-synchronize): Define.
2433         (elmo-message-entity): Define.
2434
2435 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
2436
2437         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
2438         elmo-imap4-session-select-mailbox.
2439
2440         * elmo.el (elmo-folder-move-messages): Don't display any message.
2441
2442         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
2443         parsing.
2444         (elmo-imap4-session-check): Don't wait CHECK response.
2445         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
2446
2447 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
2448
2449         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
2450
2451 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
2452
2453         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
2454         API.
2455         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
2456
2457
2458         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
2459         (elmo-folder-list-message-entities): Added argument in-msgdb and
2460         numbers.
2461         (elmo-folder-synchronize): Define as a method.
2462
2463         * elmo-nntp.el (elmo-folder-initialize): Don't use
2464         elmo-nntp-default-user if zero-length username is specified
2465         explicitly.
2466
2467 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2468
2469         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
2470         server name in case with username.
2471         (XXX: this is ad-hoc fix against username includes "@", it
2472         should be solved fundamentally)
2473
2474 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
2475
2476         * elmo-nntp.el (elmo-nntp-debug): New function.
2477         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
2478         (elmo-network-authenticate-session): Hide auth-info from the log.
2479
2480         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
2481         user name if it is equal to elmo-nntp-default-user.
2482
2483 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
2484
2485         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
2486         instead of shimbun-server-internal;
2487         Use shimbun-current-group instead of shimbun-current-group-internal.
2488         (elmo-folder-plugged-p): Use shimbun-server instead of
2489         shimbun-server-internal.
2490         (elmo-folder-set-plugged): Ditto.
2491         (elmo-net-port-info): Ditto.
2492         (elmo-folder-check): Ditto.
2493         (elmo-folder-expand-msgdb-path): Ditto.
2494         (elmo-folder-list-subfolders): Ditto.
2495
2496 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2497
2498         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
2499         Convert field-name to lower case.
2500         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2501
2502 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2503
2504         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
2505         `message' and `error' take format string.
2506
2507 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2508
2509         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
2510
2511 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2512
2513         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
2514         recursive call (can't byte compile on emacs 20.7).
2515
2516 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
2517
2518         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
2519         (elmo-folder-list-message-entities): New API.
2520         (elmo-message-entity): Ditto.
2521         (elmo-message-entity-parent): Ditto.
2522         (elmo-folder-do-each-message-entity): Ditto.
2523         (elmo-message-entity-number): Ditto.
2524         (elmo-message-entity-field): Ditto.
2525         (elmo-message-entity-set-field): Ditto.
2526         (elmo-folder-count-flags): Ditto.
2527         (elmo-folder-length): Ditto.
2528
2529         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
2530         not.
2531
2532         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
2533         (elmo-msgdb-count-marks): Abolish.
2534         (elmo-msgdb-make-entity): Ditto.
2535         (elmo-msgdb-do-each-entity): Ditto.
2536         (elmo-msgdb-message-entity): New inline function.
2537         (elmo-msgdb-message-entity-field): Ditto.
2538         (elmo-msgdb-message-entity-set-field): Ditto.
2539         (elmo-msgdb-make-message-entity): New function.
2540
2541 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
2542
2543         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
2544         to flag. (All other related portions are changed.)
2545         (elmo-folder-msgdb-create): Likewise.
2546         (elmo-generic-folder-append-messages): Use flag-table instead of
2547         seen-list.
2548         (elmo-folder-move-messages): Removed redundant process.
2549         (elmo-folder-synchronize): Likewise.
2550
2551         * elmo-msgdb.el (elmo-flag-table-get): New function.
2552         (elmo-flag-table-save): Fixed.
2553         (elmo-msgdb-length): New inline function.
2554         (elmo-msgdb-flag-table): New function.
2555         (elmo-msgdb-mark): Add optional argument new.
2556         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
2557         (elmo-msgdb-seen-list): Ditto.
2558         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
2559
2560
2561 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
2562
2563         * elmo.el (elmo-message-set-mark): Abolish.
2564         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
2565         (All related portions are changed.)
2566
2567         * elmo-msgdb.el (toplevel): Added comment.
2568         (elmo-load-msgdb): Added 4th element `path'.
2569         (elmo-msgdb-append): Follow the change above.
2570         (elmo-msgdb-clear): Ditto.
2571         (elmo-msgdb-delete-msgs): Ditto.
2572         (elmo-msgdb-get-path): New inline function.
2573         (elmo-msgdb-set-path): Ditto.
2574         (elmo-flag-table-filename): New variable.
2575         (elmo-flag-table-load): New function.
2576         (elmo-flag-table-set): Ditto.
2577         (elmo-flag-table-save): Ditto.
2578         (elmo-msgdb-get-field-value): Abolish.
2579         (elmo-msgdb-overview-get-entity-by-number): Ditto.
2580
2581 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
2582
2583         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
2584         the folder has been deleted successfully.
2585         * elmo-imap4.el (elmo-folder-delete): Ditto.
2586         * elmo-archive.el (elmo-folder-delete): Ditto.
2587         * elmo-localdir.el (elmo-folder-delete): Ditto.
2588         * elmo-maildir.el (elmo-folder-delete): Ditto.
2589
2590 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
2591
2592         * elmo-util.el (elmo-string-member-ignore-case): New function.
2593         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
2594         (elmo-imap4-fetch-callback-1-subr): Likewise.
2595
2596 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
2597
2598         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
2599         the case of the name attribute "\Noselect".
2600
2601 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2602
2603         * elmo.el (elmo-folder-rename-internal): New method to cause error.
2604
2605         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
2606         flist, is not always a member of onum-alist.
2607
2608 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2609
2610         * elmo-version.el (elmo-version): Up to 2.11.3.
2611
2612 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2613
2614         * elmo-maildir.el (elmo-folder-rename-internal): New method,
2615         copied from localdir's one.
2616
2617         * elmo-pipe.el (elmo-folder-rename): New method, rename
2618         destination folder with leaving source folder as it is.
2619
2620 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
2621
2622         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
2623         replace-regexp.
2624
2625 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2626
2627         * elmo-version.el (elmo-version): Up to 2.11.2.
2628
2629 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2630
2631         * elmo-shimbun.el (elmo-folder-initialize): Do not call
2632         shimbun-open in case of "@".
2633         (elmo-folder-open-internal): Cope with shimbun = nil case.
2634         (elmo-folder-plugged-p): Ditto.
2635         (elmo-folder-list-subfolders): Make list for "@/" group.
2636
2637 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2638
2639         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
2640         mailbox (e.g. for %~/something).
2641
2642 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2643
2644         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
2645         Replace nested conditional with guard clauses.
2646
2647 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
2648
2649         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
2650         error [wl:11327].
2651
2652         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
2653         print-depth.
2654
2655 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2656
2657         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
2658         Replace nested conditional with guard clauses.
2659
2660 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2661
2662         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
2663         (elmo-passwd-alist-save): Ditto.
2664         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
2665
2666 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2667
2668         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
2669         dir-name only if it is absolute path.
2670         (TODO: distinguish +/something and +something)
2671
2672 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2673
2674         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
2675         path for "+~/something".
2676
2677 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2678
2679         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
2680         as non-directory, cause error before rename-file.
2681         * elmo-archive.el (elmo-folder-rename-internal): Create directory
2682         apropriately, mimic localdir's one.
2683         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
2684
2685 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
2686
2687         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
2688
2689 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
2690
2691         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
2692
2693         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
2694         
2695         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
2696         is included in the global-mark or not.
2697
2698 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2699
2700         * utf7.el (toplevel): Avoid error when the function
2701         find-coding-system does not exist.
2702
2703 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2704
2705         * elmo-nntp.el (elmo-folder-search): Body search is to search from
2706         cache even if the folder is plugged.
2707         (elmo-nntp-search-primitive): Do nothing when body search is
2708         invoked (although it is not used by the change above).
2709         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
2710
2711 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
2712
2713         * elmo-version.el (elmo-version): Up to 2.11.1.
2714
2715 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
2716
2717         * elmo-archive.el: Specify charset.
2718
2719 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
2720
2721         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
2722         process buffer lives or not.
2723
2724         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
2725         while flushing queues (It causes infinite loop).
2726
2727 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
2728
2729         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
2730
2731 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
2732
2733         * utf7.el (toplevel): Check the ucs features dynamically.
2734         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
2735
2736         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
2737         folder is creatabe or not if it already exists.
2738
2739 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
2740
2741         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
2742
2743         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
2744
2745         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
2746         (elmo-imap4-read-response): Take care of garbage response.
2747
2748 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2749
2750         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
2751         just return nil instead of error.
2752
2753 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2754
2755         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
2756         search-key is "body".
2757
2758 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
2759
2760         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
2761         of elmo-string-matched-assoc to use match-data.
2762         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
2763
2764 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2765
2766         * elmo-split.el (elmo-split->): New function.
2767         (elmo-split-<): Ditto.
2768
2769 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
2770
2771         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
2772         workaround for invalid message-id.
2773
2774 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
2775
2776         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
2777         return normal pop3 session or pop3 biff session.
2778
2779 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
2780
2781         * elmo-maildir.el (elmo-maildir-update-current): Don't append
2782         info part to the cur files when the new files already have it.
2783         (Adviced by Jared Rhine <jared@wordzoo.com>)
2784
2785 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2786
2787         * elmo-split.el (elmo-split-default-action): New variable.
2788         (elmo-split-subr): Use it if all other conditions are passed.
2789         Extend `fname' and rename it as `action'. (implemented
2790         Teranishi-san's idea in [wl:10800])
2791
2792 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2793
2794         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
2795         * elmo-util.el: Ditto.
2796
2797 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
2798
2799         * elmo.el (elmo-message-accessible-p): Renamed from
2800         elmo-message-cached-p and rewritten.
2801
2802 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
2803
2804         * elmo.el (elmo-folder-list-flagged): New generic function.
2805         (elmo-folder-list-importants): New implementation.
2806         (elmo-folder-list-answereds): Ditto.
2807         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
2808         Added 'digest'.
2809         (elmo-message-cached-p): New function.
2810         (elmo-message-set-flag): Ditto (no content).
2811         (elmo-message-unset-flag): Ditto.
2812         (elmo-folder-list-messages-mark-match): Abolish.
2813
2814         * elmo-util.el (elmo-regexp-opt): New function.
2815
2816         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
2817         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
2818         Added 'digest'.
2819         (elmo-msgdb-list-flagged): New function.
2820
2821         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
2822         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
2823         Added 'digest'.
2824
2825         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
2826
2827 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
2828
2829         * elmo-version.el (elmo-version): Up to 2.11.0.
2830
2831 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2832
2833         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
2834         `elmo-file-cache-exists-p'; use proper mark that depends on
2835         `use-cache'.
2836         (elmo-msgdb-unset-flag): Ditto.
2837         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
2838
2839         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
2840         with 4th argument `use-cache'.
2841
2842 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
2843
2844         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
2845         (elmo-folder-mark-as-important): Ditto.
2846         (elmo-folder-unmark-read): Ditto.
2847         (elmo-folder-mark-as-read): Ditto.
2848         (elmo-folder-unmark-answered): Ditto.
2849         (elmo-folder-mark-as-answered): Ditto.
2850
2851         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
2852         message status.
2853         (elmo-msgdb-mark): Likewise.
2854         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
2855         (elmo-msgdb-unset-flag): Likewise.
2856
2857         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
2858
2859 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2860
2861         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
2862         `last:' filter.
2863
2864 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2865
2866         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
2867         set spool-length to 0.
2868
2869 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2870
2871         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
2872         (elmo-dop-queue-flush): Fixed last change.
2873
2874 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2875
2876         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
2877         if require-msgdb slot is nil.
2878         (elmo-folder-list-importants): Likewise.
2879
2880 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2881
2882         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
2883         mark is changed.
2884
2885         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
2886         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
2887         is changed.
2888
2889 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2890
2891         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
2892
2893 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2894
2895         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
2896
2897         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
2898
2899 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2900
2901         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
2902         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
2903
2904 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2905
2906         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
2907         the problem reported by Sean Rima [wl-en:180].
2908
2909 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
2910
2911         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
2912
2913         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
2914
2915         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
2916
2917         * elmo-map.el (elmo-folder-unmark-read): Ditto.
2918
2919         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
2920
2921         * elmo-net.el (elmo-folder-unmark-read): Ditto.
2922
2923         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
2924
2925 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2926
2927         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
2928         status number.
2929
2930 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
2931
2932         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
2933         (elmo-folder-mark-as-read): Follow the API change.
2934         (elmo-message-set-cached): New function.
2935
2936         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
2937
2938         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
2939
2940         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
2941         (elmo-folder-mark-as-important): Ditto.
2942         (elmo-folder-unmark-read): Ditto.
2943         (elmo-folder-mark-as-read): Ditto.
2944         (elmo-folder-unmark-answered): Ditto.
2945         (elmo-folder-mark-as-answered): Ditto.
2946
2947         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
2948         (elmo-folder-unmark-important): Ditto.
2949         (elmo-folder-mark-as-read): Ditto.
2950         (elmo-folder-unmark-read): Ditto.
2951         (elmo-folder-mark-as-answered): Ditto.
2952         (elmo-folder-unmark-answered): Ditto.
2953
2954         * elmo-mark.el (toplevel): Removed some mark method definitions.
2955
2956         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
2957         (elmo-map-folder-mark-as-answered): Ditto.
2958         (elmo-folder-unmark-important): Add :before qualifier.
2959         (elmo-folder-mark-as-important): Ditto.
2960         (elmo-folder-unmark-read): Ditto.
2961         (elmo-folder-mark-as-read): Ditto.
2962         (elmo-folder-unmark-answered): Define.
2963         (elmo-folder-mark-as-answered): Ditto.
2964
2965         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
2966         (elmo-map-folder-unmark-answered): Ditto.
2967
2968         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
2969
2970         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
2971         (elmo-folder-mark-as-important): Ditto.
2972         (elmo-folder-unmark-read): Ditto.
2973         (elmo-folder-mark-as-read): Ditto.
2974         (elmo-folder-unmark-answered): Ditto.
2975         (elmo-folder-mark-as-answered): Ditto.
2976
2977         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
2978         `mark'; evaluate mark condition.
2979         (elmo-msgdb-match-condition-internal): New function.
2980         (elmo-msgdb-match-condition): Call it; changed argument.
2981
2982         * elmo.el (elmo-folder-search): Follow the API change on
2983         `elmo-msgdb-match-condition'.
2984
2985 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2986
2987         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
2988         original mark is non-nil.
2989
2990 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
2991
2992         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
2993         (elmo-map-folder-list-answereds): New method.
2994         (elmo-folder-list-unreads): Add :around qualifier.
2995         (elmo-folder-list-importants): Ditto.
2996         (elmo-folder-list-answereds): Ditto.
2997
2998 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
2999
3000         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
3001
3002         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
3003         method if msgdb is not required.
3004         (elmo-filter-folder-list-importants): Don't treat global-mark.
3005
3006         * elmo.el (elmo-folder-list-importants): Ditto.
3007
3008         * elmo-net.el (elmo-folder-list-importants): Ditto.
3009
3010         * elmo-map.el (elmo-folder-list-importants): Ditto.
3011
3012         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
3013
3014         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
3015         (elmo-imap4-folder-list-any-plugged): New function.
3016         (elmo-imap4-search-internal-primitive): Use it.
3017
3018         * elmo-filter.el (elmo-folder-check): Synchronize original folder
3019         only when require-msgdb slot is non-nil.
3020         (elmo-folder-close): Clear target folder's msgdb.
3021
3022 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
3023
3024         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
3025         (elmo-pop3-msgdb-create-by-header): Ditto.
3026         (elmo-pop3-msgdb-create-message): Ditto.
3027
3028         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3029
3030         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3031
3032         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3033
3034         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3035         (elmo-folder-msgdb-create): Ditto.
3036         (elmo-nntp-folder-msgdb-create): Ditto.
3037         (elmo-nntp-msgdb-create-by-header): Ditto.
3038         (elmo-nntp-msgdb-create-message): Ditto.
3039         (elmo-folder-list-unreads): Define.
3040
3041         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
3042         (elmo-folder-append-messages): Ditto.
3043         (elmo-folder-list-unreads): Define.
3044         (elmo-folder-list-importants): Ditto.
3045         (elmo-folder-list-answereds): Ditto.
3046
3047         * elmo-net.el (elmo-folder-list-unreads): Define.
3048         (elmo-folder-list-importants): Ditto.
3049         (elmo-folder-list-answereds): Ditto.
3050         (elmo-folder-list-answereds-plugged): Ditto.
3051         (elmo-folder-msgdb-create): Follow the API change.
3052         (elmo-folder-msgdb-create-unplugged): Ditto.
3053         (elmo-folder-unmark-answered): Define.
3054         (elmo-folder-mark-as-answered-unplugged): Ditto.
3055         (elmo-folder-unmark-answered-unplugged): Ditto.
3056
3057         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
3058         (elmo-msgdb-unread-uncached-mark): Ditto.
3059         (elmo-msgdb-unread-cached-mark): Ditto.
3060         (elmo-msgdb-read-uncached-mark): Ditto.
3061         (elmo-msgdb-answered-cached-mark): Ditto.
3062         (elmo-msgdb-answered-uncached-mark): Ditto.
3063         (elmo-msgdb-important-mark): Ditto.
3064         (elmo-msgdb-set-mark): Rewrite.
3065         (elmo-msgdb-count-marks): Rewrite.
3066         (elmo-msgdb-mark-alist-set): Abolish.
3067         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
3068         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
3069
3070         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
3071         (elmo-folder-close): Define.
3072         (elmo-folder-msgdb-create): Follow the API change.
3073         (elmo-folder-list-unreads): Rewrite.
3074         (elmo-folder-mark-as-important): Ditto.
3075         (elmo-folder-unmark-important): Ditto.
3076         (elmo-folder-mark-as-read): Ditto.
3077         (elmo-folder-unmark-read): Ditto.
3078         (elmo-folder-mark-as-answered): Define.
3079         (elmo-folder-unmark-answered): Ditto.
3080
3081         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
3082         (elmo-folder-append-messages): Ditto.
3083
3084         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
3085
3086         * elmo-map.el (elmo-folder-list-unreads): Ditto.
3087         (elmo-folder-list-importants): Ditto.
3088
3089         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3090         (elmo-folder-append-messages): Ditto.
3091
3092         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
3093         change.
3094         (elmo-folder-msgdb-create-plugged): Ditto.
3095         (elmo-folder-append-messages): Ditto.
3096         (elmo-folder-list-answereds-plugged): Define.
3097         (elmo-imap4-search-internal-primitive): Add `mark' processing.
3098         (elmo-folder-unmark-answered-plugged): Define.
3099         (elmo-folder-mark-as-answered-plugged): Ditto.
3100         (elmo-folder-search-requires-msgdb-p): Ditto.
3101
3102         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
3103         (elmo-folder-initialize): Set it.
3104         (elmo-folder-msgdb): Define.
3105         (elmo-folder-check): Call elmo-folder-synchronize.
3106         (elmo-folder-close): Define.
3107         (elmo-folder-commit): Ditto.
3108         (elmo-folder-msgdb-create): Rewrite.
3109         (elmo-folder-list-unreads): Ditto.
3110         (elmo-folder-list-importants): Ditto.
3111         (elmo-folder-mark-as-read): Ditto.
3112         (elmo-folder-unmark-read): Ditto.
3113         (elmo-folder-mark-as-important): Ditto.
3114         (elmo-folder-unmark-important): Ditto.
3115         (elmo-folder-mark-as-answered): Define.
3116         (elmo-folder-unmark-answered): Ditto.
3117
3118         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
3119         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
3120         (elmo-dop-queue-method-name-alist): Likewise.
3121         (elmo-folder-mark-as-answered-dop): New inline function.
3122         (elmo-folder-unmark-answered-dop): Ditto.
3123         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
3124
3125         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
3126         (elmo-folder-msgdb-create): Ditto.
3127         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3128         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3129         (elmo-archive-parse-mmdf): Ditto.
3130
3131         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3132         (elmo-folder-list-unreads-internal): Ditto.
3133
3134         * elmo.el (elmo-folder-msgdb): Define as generic function.
3135         (elmo-folder-list-messages): Added argument `in-msgdb'.
3136         (elmo-folder-list-unreads): Define as generic function.
3137         (elmo-folder-list-importants): Ditto.
3138         (elmo-folder-list-answereds): Ditto.
3139         (elmo-folder-list-messages-with-global-mark): New function.
3140         (elmo-folder-msgdb-create): Removed mark arguments.
3141         (elmo-folder-unmark-answered): New generic function.
3142         (elmo-folder-mark-as-answered): Ditto.
3143         (elmo-folder-append-messages): Removed argunment `unread-marks'
3144         (elmo-folder-list-unreads-internal): Abolish.
3145         (elmo-folder-list-importants-internal): Ditto.
3146         (elmo-folder-search-requires-msgdb-p): New generic function.
3147         (elmo-folder-search-requires-msgdb-p-internal): New function.
3148         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
3149         elmo-msgdb-load.
3150         (elmo-folder-search-fast): Added key 'mark'.
3151         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
3152         instead of unread-marks argument.
3153         (elmo-folder-move-messages): Removed argunment `unread-marks'
3154         (elmo-folder-unmark-important): Define.
3155         (elmo-folder-mark-as-important): Ditto.
3156         (elmo-folder-unmark-read): Ditto.
3157         (elmo-folder-mark-as-read): Ditto.
3158         (elmo-folder-unmark-answered): Ditto.
3159         (elmo-folder-mark-as-answered): Ditto.
3160         (elmo-folder-replace-marks): Abolish.
3161         (elmo-generic-folder-append-msgdb): Append msgdb before checking
3162         duplicates.
3163         (elmo-folder-synchronize): Removed mark arguments;
3164         return crosspost only number.
3165
3166 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3167
3168         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
3169         Remove redundunt connectivity check.
3170
3171 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3172
3173         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
3174         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
3175
3176 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
3177
3178         * pldap.el (ldap-decode-string): Return string as-is if
3179         `ldap-coding-system' is nil.
3180         (ldap-encode-string): Ditto.
3181         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
3182         (ldap-default-host): Fixed docstring.
3183
3184 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
3185
3186         * elmo-util.el (elmo-warning): Define as a macro which uses
3187         `display-warning' if it is defined as a function.
3188
3189         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
3190         (elmo-split-equal): Use it.
3191         (elmo-split-match): Ditto.
3192         (elmo-split-message-entity): New buffer-local variable.
3193         (elmo-split-subr): Set it.
3194
3195         * elmo-version.el (elmo-version): Up to 2.9.15.
3196
3197 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
3198
3199         * elmo-imap4.el (elmo-network-initialize-session):
3200         Check capability after starttls.
3201
3202 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
3203
3204         * elmo-util.el (elmo-list-delete): Added optional argument
3205         DELETE-FUNCTION.
3206
3207         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
3208
3209         * elmo-util.el (elmo-warning): Ignore errors while recenter.
3210
3211         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
3212
3213         * elmo-imap4.el (elmo-folder-initialize): Don't use
3214         elmo-imap4-default-mailbox.
3215
3216 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3217
3218         * elmo-split.el (toplevel): Use `product-provide'.
3219         (elmo-split): Checkdoc.
3220
3221 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
3222
3223         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
3224         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
3225         the function `elmo-imap4-debug-1'.
3226
3227 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3228
3229         * elmo-split.el (elmo-split): Moved to run hooks and to show
3230         message from elmo-split-subr.
3231         (elmo-split-subr): Follow the change above.
3232
3233         * elmo-split.el (elmo-split-subr): New function (renamed from
3234         elmo-split-subr).
3235         (elmo-split): Changed to call elmo-split-subr by element of
3236         elmo-split-folder.
3237         (elmo-split-folder): Changed customization type to choice.
3238
3239 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3240
3241         * elmo-split.el (elmo-split-and): Fixed condition.
3242
3243 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3244
3245         * elmo-split.el: New file.
3246         (elmo-split): Fixed logic.
3247         Display "Test:" instead of "Folder:" when reharsal.
3248
3249         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
3250         explicitly.
3251
3252         * elmo-version.el (elmo-version): Up to 2.9.14.
3253
3254         * elmo-util.el (elmo-expand-newtext): New function (renamed from
3255         wl-expand-newtext).
3256
3257 2002-06-10  Kenichi Sato <ksato@sonycom.com>
3258
3259         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
3260         message with no message-id field.
3261
3262 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
3263
3264         * elmo-version.el (elmo-version): Up to 2.9.13.
3265
3266         * elmo-dop.el (elmo-folder-status-dop): Fix.
3267
3268 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
3269
3270         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
3271
3272         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
3273         changing default value of default-mime-charset.
3274         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
3275
3276         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
3277
3278         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
3279         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
3280         instead of elmo-dop-queue-method-name-alist to check merging queue.
3281         (elmo-folder-delete-messages-dop): Delete from queue if negative
3282         message number.
3283         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
3284         file is already removed.
3285
3286 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
3287
3288         * elmo-vars.el: Bind colon keywords for old Emacsen.
3289
3290 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3291
3292         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
3293         against non-exsisting charset.
3294
3295 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
3296
3297         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
3298         Use eword-decode-and-unfold-unstructured-field-body.
3299
3300         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
3301         (elmo-msgdb-create-overview-from-buffer): Use document charset if
3302         exists to decode raw subject string.
3303         (toplevel): Require 'mime.
3304
3305         * elmo-version.el (elmo-version): Up to 2.9.12.
3306
3307 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
3308
3309         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
3310         (elmo-msgdb-set-mark): Ditto.
3311
3312         * elmo-version.el (elmo-version): Up to 2.9.11.
3313
3314 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
3315
3316         * elmo-util.el (elmo-delete-match-files): New function.
3317
3318         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
3319         instead of elmo-delete-directory.
3320
3321         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
3322         elmo-hash-minimun-size as 63.
3323
3324         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
3325         elmo-diff-unread is nil.
3326
3327         * elmo-imap4.el (elmo-folder-open): Fix.
3328
3329         * elmo.el (elmo-message-mark): Rewrite.
3330         (elmo-message-field): Ditto.
3331         (elmo-message-set-mark): Ditto.
3332         (elmo-folder-replace-marks): New function.
3333         (elmo-generic-folder-append-msgdb): Removed third argument for
3334         elmo-msgdb-append.
3335         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
3336         (elmo-msgdb-load): New implementation.
3337
3338         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
3339
3340         * elmo-util.el (elmo-list-insert): New implementation.
3341
3342         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
3343         argument for elmo-msgdb-append.
3344         
3345
3346         * elmo-msgdb.el (elmo-load-msgdb): New function.
3347         (elmo-make-msgdb): Ditto.
3348         (elmo-msgdb-get-index): New inline function.
3349         (elmo-msgdb-set-index): Ditto.
3350         (elmo-msgdb-get-entity-hashtb): Ditto.
3351         (elmo-msgdb-get-mark-hashtb): Ditto.
3352         (elmo-msgdb-get-mark): Ditto.
3353         (elmo-msgdb-set-mark): Ditto.
3354         (elmo-msgdb-count-marks): Ditto.
3355         (elmo-msgdb-get-number): Ditto.
3356         (elmo-msgdb-get-field): Ditto.
3357         (elmo-msgdb-seen-list): Ditto.
3358         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
3359         (elmo-msgdb-delete-msgs): Follow the changes above.
3360         (elmo-msgdb-overview-get-entity): Ditto.
3361         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3362         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
3363         and rewritten.
3364         (elmo-msgdb-make-index): Likewise.
3365         (elmo-msgdb-append): Removed third argument.
3366         (elmo-msgdb-clear): Clear index as nil.
3367         (elmo-folder-set-info-hashtb): Removed.
3368         (elmo-folder-set-info-max-by-numdb): Ditto.
3369         (elmo-folder-info-make-hashtb): Ditto.
3370
3371         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
3372
3373         * elmo-map.el (elmo-folder-pack-number): Ditto.
3374
3375 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
3376
3377         * elmo-version.el (elmo-version): Up to 2.9.10.
3378
3379         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
3380
3381         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
3382
3383 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
3384
3385         * elmo-utils.el (elmo-make-directory): Add option.
3386         Default file mode is 700.
3387
3388 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3389
3390         * elmo-shimbun.el (elmo-folder-local-p): Defined.
3391
3392 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
3393
3394         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
3395         mime-charset.
3396
3397         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
3398         and "smaller".
3399
3400 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3401
3402         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
3403         (elmo-shimbun-folder-entity-hash): New function.
3404         (elmo-shimbun-folder-shimbun-header): Ditto.
3405         (elmo-shimbun-entity-to-header): Ditto.
3406         (elmo-shimbun-msgdb-to-headers): Removed.
3407         (elmo-shimbun-folder-setup): Ditto.
3408         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
3409         for hash key.
3410         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
3411         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
3412         Removed useless local bind.
3413         (elmo-folder-open-internal): Don't call
3414         `elmo-shimbun-folder-setup'.
3415         (elmo-folder-close-internal): Clear entity-hash slot.
3416         (elmo-folder-clear): Ditto.
3417         (elmo-shimbun-msgdb-create-entity): Use
3418         `elmo-shimbun-folder-shimbun-header'.
3419         (elmo-map-message-fetch): Ditto.
3420         (elmo-shimbun-update-overview): Use overview entity instead of
3421         shimbun header to lookup id by references.
3422         (elmo-map-folder-list-message-locations): Use not only headers but
3423         also overviews to list locations.
3424
3425 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3426
3427         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
3428         msgdb path.
3429
3430         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
3431
3432 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3433
3434         * elmo-util.el (elmo-read-search-condition-internal): Give default
3435         value for date.
3436
3437 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
3438
3439         * elmo-util.el (elmo-condition-parse-search-value): Accept
3440         YYYY-MM-DD format to search.
3441         * elmo-date.el (elmo-date-get-datevec): Likewise.
3442
3443 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
3444
3445         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
3446         debugging code.
3447
3448 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3449
3450         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
3451         from t.
3452
3453         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
3454
3455         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
3456         case from `elmo-folder-exists-p'.
3457         (elmo-folder-exists-p): Removed.
3458         (elmo-folder-creatable-p) Ditto.
3459
3460         * elmo-net.el (elmo-folder-create): Defined.
3461         (elmo-folder-create-unplugged): New function.
3462         (elmo-folder-exists-p): Changed default value to nil from t.
3463
3464         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
3465         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
3466
3467         * elmo-dop.el (elmo-folder-create-dop): Renamed from
3468         `elmo-create-folder-dop' and append queue
3469         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
3470         (elmo-folder-create-dop-delayed): New function.
3471
3472         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
3473
3474         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
3475
3476         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
3477         (elmo-folder-writable-p) : Ditto.
3478
3479         * elmo-version.el (elmo-version): Up to 2.9.9.
3480
3481 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3482
3483         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
3484         `elmo-message-use-cache-p' returns nil.
3485         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3486         (ignore cache file and refer the substance in local folders)
3487
3488 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3489
3490         * elmo-version.el (elmo-version): Up to 2.9.8.
3491
3492 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
3493
3494         * elmo-version.el (elmo-version): Up to 2.9.7.
3495
3496         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
3497
3498 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
3499
3500         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
3501
3502 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
3503
3504         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
3505         from --early.
3506         (elmo-map-folder-list-message-locations): Reverse location list.
3507
3508 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
3509
3510         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
3511
3512 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
3513
3514         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
3515         as a key.
3516         (elmo-nntp-folder-list-subfolders): Follow the change above.
3517
3518 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
3519
3520         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
3521         name if authentication type is specified.
3522
3523 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
3524
3525         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
3526         variable.
3527         (elmo-default-nntp-stream-type): Ditto.
3528         (elmo-default-pop3-stream-type): Ditto.
3529
3530 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
3531
3532         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
3533
3534 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3535
3536         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
3537         elmo-vars.el.
3538         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
3539
3540         * elmo-vars.el (elmo-localnews-folder-path): Removed.
3541         (elmo-maildir-folder-path): Ditto.
3542         (elmo-maildir-list): Ditto (abolished).
3543
3544 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
3545
3546         * elmo-version.el (elmo-version): Up to 2.9.6.
3547
3548 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3549
3550         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
3551         (elmo-maildir-folder-path): Ditto.
3552         (elmo-msgdb-directory): Ditto.
3553         (elmo-passwd-life-time): Ditto.
3554         (elmo-msgdb-extra-fields): Ditto.
3555         (elmo-enable-disconnected-operation): Ditto.
3556
3557 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
3558
3559         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
3560         other choices.
3561         (elmo-pop3-default-authenticate-type): Ditto.
3562
3563 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3564
3565         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
3566         choices for custom.
3567         (elmo-pop3-default-authenticate-type): Ditto.
3568
3569 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
3570
3571         * elmo-imap4.el (elmo-folder-rename-internal): Change current
3572         mailbox to new-folder.
3573
3574 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
3575
3576         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
3577         less than new, set new as unread.
3578
3579         * elmo-util.el (elmo-string): Don't put text-property if nil.
3580
3581 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
3582
3583         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
3584         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
3585
3586 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
3587
3588         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
3589         is nil on `completing-read'.
3590
3591 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
3592
3593         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
3594         for namespace part.
3595         (elmo-imap4-parse-namespace-subr): Ditto.
3596         (elmo-folder-list-subfolders): Append a delimiter when the specified
3597         folder path is a root with namespace and does not end with delimiter.
3598
3599 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3600
3601         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
3602         was used.
3603
3604 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3605
3606         * elmo-util.el (elmo-save-buffer): The first argument of message
3607         is a format control string.
3608
3609 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3610
3611         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
3612         `elmo-folder-diff').
3613         (elmo-diff-unread): Likewise.
3614
3615 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
3616
3617         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
3618         is t on `completing-read'.
3619
3620 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3621
3622         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
3623         method of target folder with self mark-alist if MARK-ALIST is nil.
3624
3625 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
3626
3627         * elmo-version.el (elmo-version): Up to 2.9.5.
3628
3629 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
3630
3631         * elmo-dop.el (elmo-dop-queue-merge): Implement.
3632         (elmo-dop-merge-funcs): Remove.
3633
3634 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3635
3636         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
3637         Return t if PATH is directory, too.
3638         Use `dolist' instead of while loop.
3639
3640 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3641
3642         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
3643         is deleted.
3644
3645 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3646
3647         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
3648         return value to t.
3649         (elmo-folder-list-messages-unplugged): Return t if
3650         elmo-enable-disconnected-operation is nil.
3651
3652         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
3653         `elmo-folder-list-messages-internal'.
3654
3655 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
3656
3657         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
3658         Change to looking-at `[23][0-9]+'.
3659         (elmo-network-initialize-session): Use 'error-msg'
3660         * elmo-net.el (elmo-network-open-session): Set unplugged
3661         if elmo-network-initialize-session returns 'elmo-open-err.
3662
3663 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
3664
3665         * elmo-version.el (elmo-version): Up to 2.9.4.
3666
3667 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
3668
3669         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
3670         `elmo-folder-list-messages-internal'.
3671
3672 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3673
3674         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
3675         (elmo-message-match-condition): New method.
3676         (elmo-folder-search-fast): New inline function.
3677         (elmo-msgdb-search): Removed.
3678
3679         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
3680         target folder if it is unplugged.
3681         (elmo-folder-list-messages-internal): Return t if target folder is
3682         unplugged and itself is persistent; In this case, use list be
3683         searched already.
3684
3685         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
3686         (elmo-msgdb-search-internal-primitive): Ditto.
3687         (elmo-msgdb-match-condition): New function.
3688         (elmo-msgdb-match-condition-primitive): Ditto.
3689
3690         * elmo-util.el (elmo-filter-condition-p): New macro.
3691
3692         * elmo-cache.el (elmo-folder-search): Removed.
3693
3694         * elmo-localdir.el (elmo-folder-search): Ditto.
3695
3696         * elmo-maildir.el (elmo-folder-search): Ditto.
3697
3698         * elmo-mark.el (elmo-folder-search): Ditto.
3699
3700         * elmo-nmz.el (elmo-folder-search): Ditto.
3701
3702         * elmo-sendlog.el (elmo-folder-search): Ditto.
3703
3704         * elmo-shimbun.el (elmo-folder-search): Ditto.
3705
3706         * elmo-imap4.el (elmo-folder-search): Call method of parent class
3707         if folder is unplugged.
3708
3709         * elmo-nntp.el (elmo-folder-search): Likewise.
3710         (elmo-nntp-search-internal): New function.
3711
3712         * elmo-version.el (elmo-version): Up to 2.9.3.
3713
3714 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3715
3716         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
3717
3718 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
3719
3720         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
3721
3722 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
3723
3724         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
3725
3726 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
3727
3728         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
3729         (elmo-map-folder-list-message-locations): Do drive letter conversion
3730         on Windows environment.
3731         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
3732         (elmo-map-message-fetch): Ditto.
3733
3734 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
3735
3736         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
3737         (elmo-network-initialize-session): Ditto.
3738
3739 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
3740
3741         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
3742
3743         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
3744
3745         * elmo-util.el (elmo-progress-clear): Ditto.
3746
3747         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
3748         `DD-Mon-YYYY' type date.
3749
3750 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3751
3752         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
3753         `elmo-date-make-sortable-string' instead of
3754         `timezone-make-date-sortable'.
3755
3756         * elmo-date.el (elmo-date-make-sortable-string): Use
3757         `timezone-make-time-string'.
3758
3759 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
3760
3761         * elmo.el (elmo-folder-synchronize): Delete important messages too.
3762
3763         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
3764         `since'; Fix timezone.
3765
3766         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
3767
3768         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
3769
3770 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3771
3772         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
3773
3774 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3775
3776         * elmo.el (elmo-generic-folder-append-messages): Make
3777         fetch-strategy with `use-cache' as 'maybe. Check return value of
3778         `elmo-message-fetch'.
3779         (elmo-message-fetch): Return return value of
3780         `elmo-message-fetch-with-cache-process'.
3781         (elmo-message-fetch-with-cache-process): Return non-nil if
3782         fetching was succeed. Load cache when fetching was failed and
3783         fetch-strategy-use-cache is 'maybe.
3784
3785         * elmo-util.el (elmo-file-cache-load): New function.
3786
3787         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
3788         defun.
3789
3790         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
3791         non-nil if fetching was succeed.
3792
3793         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
3794
3795         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
3796
3797         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
3798         (elmo-message-fetch-with-cache-process): Likwise.
3799
3800         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
3801
3802         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
3803
3804         * elmo-version.el (elmo-version): Up to 2.9.2.
3805
3806 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
3807
3808         * elmo.el (elmo-folder-delete): Delete msgdb path.
3809
3810         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
3811
3812         * elmo-maildir.el (elmo-folder-delete): Ditto.
3813
3814         * elmo-localdir.el (elmo-folder-delete): Ditto.
3815
3816         * elmo-imap4.el (elmo-folder-delete): Ditto.
3817
3818 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
3819
3820         * elmo.el (luna-define-class): Added `biff' slot.
3821
3822         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
3823         (elmo-pop3-debug-inhibit-logging): Abolished.
3824         (elmo-network-close-session): Eliminated needless let.
3825         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
3826         (elmo-pop3-send-command): Added `no-log' argument.
3827         (elmo-pop3-process-filter): Use `with-current-buffer'.
3828         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
3829         if login failure.
3830         (elmo-pop3-auth-apop): Likewise.
3831         (elmo-network-authenticate-session): Likewise.
3832
3833         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
3834         if biff folder.
3835
3836         * elmo-net.el (elmo-network-session-password-key): Use class symbol
3837         string to determine protocol.
3838         (elmo-network-session-name-prefix): Abolished.
3839         (elmo-network-session-cache-key): Follow the change above.
3840         (elmo-network-open-session): Ditto.
3841
3842         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
3843         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
3844
3845         * elmo-version.el (elmo-version): Up to 2.9.1.
3846
3847         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
3848         unmatch condition checking.
3849
3850         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
3851         condition.
3852
3853 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3854
3855         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
3856
3857 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
3858
3859         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
3860         test for while loop to execute at least one SEARCH command.
3861
3862 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
3863
3864         * elmo-version.el (elmo-version): Up to 2.9.0.
3865
3866 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
3867
3868         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
3869         (elmo-archive-folder-path): Define.
3870         (elmo-folder-initialize): Setup `dir-name' slot.
3871         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
3872         Use `dir-name' as prefix of each subfolders.
3873         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
3874
3875 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3876
3877         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
3878         (elmo-pipe-folder-list-target-messages): New internal function.
3879         (elmo-pipe-drain): Use new argument `ignore-list' instead of
3880         `killed-list'.
3881         (elmo-pipe-folder-copied-list-load): New function.
3882         (elmo-pipe-folder-copied-list-save): Ditto.
3883         (elmo-folder-open-internal): Follow the change above.
3884         (elmo-folder-status): Fixed for copy.
3885
3886 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
3887
3888         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
3889
3890 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
3891
3892         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
3893         elmo-copy-file instead of elmo-add-name-to-file.
3894
3895         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
3896
3897         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
3898         "file://..." index.
3899
3900         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
3901         of accept-process-output as 1.
3902         (elmo-pop3-read-contents): Ditto.
3903         (elmo-pop3-read-body): Ditto.
3904
3905 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3906
3907         * elmo-version.el (product-version-as-string): Remove define.
3908
3909 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
3910
3911         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
3912         (elmo-imap4-copy-messages): Chop number set using
3913         `elmo-imap4-number-set-chop-length'.
3914         (elmo-imap4-set-flag): Ditto.
3915         (elmo-imap4-search-internal-primitive): Ditto.
3916
3917 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3918
3919         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
3920         `elmo-folder-make-temp-dir'
3921
3922         * elmo-vars.el (elmo-cache-directory): New variable.
3923         (elmo-cache-dir): Abolished.
3924         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
3925
3926         * elmo-version.el (elmo-version): Up to 2.7.7.
3927
3928 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
3929
3930         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
3931         defcustom; Set default value as t.
3932
3933 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
3934
3935         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
3936         (ldap-search-program-arguments): Changed default value.
3937         (ldap-search-basic): Accept exit status 4.
3938         (ldap/field-body): Parse options.
3939         (ldap/collect-field): Ditto.
3940         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
3941
3942         * elmo-imap4.el (elmo-imap4-process-bye): New function.
3943         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
3944         (elmo-imap4-accept-ok): Ditto.
3945         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
3946         'notify-bye, only BYE error is reported.
3947         (elmo-folder-exists-p-plugged): Set no-error argument of
3948         `elmo-imap4-session-select-mailbox' as 'notify-bye.
3949
3950         * elmo.el (elmo-imap4-bye-error): Changed message.
3951
3952         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
3953         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
3954         queues (It causes infinite loop).
3955
3956 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3957
3958         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
3959         (RECENT UNSEEN MESSAGES) extension.
3960
3961 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
3962
3963         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
3964         Check number of overview fields.
3965
3966 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
3967
3968         * elmo.el (elmo-folder-confirm-appends): Changed message.
3969         (elmo-folder-confirm-appends): Ditto.
3970
3971         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
3972         `with-temp-buffer'.
3973         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
3974
3975 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
3976
3977         * elmo.el (elmo-folder-confirm-appends): Check whether the value
3978         of elmo-folder-update-threshold is nil, which can be set by
3979         wl-summary-update-confirm-threshold.
3980
3981 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
3982
3983         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
3984         (elmo-nmz-index-alias-alist): Ditto.
3985         (elmo-map-folder-list-message-locations): Follow the change above.
3986
3987 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3988
3989         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
3990
3991         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
3992
3993         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
3994
3995         * elmo-util.el (elmo-read): Ditto.
3996         (elmo-display-error): Ditto.
3997
3998         * elmo-vars.el (elmo-date-match): Ditto.
3999
4000         * pldap.el (ldap-coding-system): Ditto.
4001
4002         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
4003         `elmo-inhibit-number-mapping' as nil.
4004
4005 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
4006
4007         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
4008         space delimiter for list response.
4009
4010 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4011
4012         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
4013
4014 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4015
4016         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
4017         (elmo-map-message-fetch): Fix.
4018         * elmo-map.el (elmo-folder-status): Fix for killed.
4019
4020 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4021
4022         * elmo-sendlog.el: New file.
4023         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
4024
4025 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
4026
4027         * acap.el (acap-logging-out): New buffer local variable.
4028         (acap-close): Set it.
4029         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
4030         an error.
4031
4032 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
4033
4034         * acap.el (acap-response-bye-p): New function.
4035         (acap-response-bye-message): Ditto.
4036         (acap-wait-for-response): If bye response is received, cause an error.
4037         (acap-parse-response): Make bye response when 'Bye' is received.
4038
4039 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
4040
4041         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
4042
4043 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4044
4045         * elmo-util.el (elmo-copy-file): Added argument
4046         `ok-if-already-exists'.
4047         (elmo-copy-file): Fixed typo.
4048
4049 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
4050
4051         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
4052
4053 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
4054
4055         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
4056
4057 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
4058
4059         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
4060         to killed-list.
4061
4062 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
4063
4064         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
4065         (elmo-folder-initialize): Fix for `copy'.
4066         (elmo-pipe-drain): Ditto.
4067         (elmo-folder-open-internal): Ditto.
4068         (elmo-folder-newsgroups): Fix.
4069
4070 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4071
4072         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
4073         for each message.
4074
4075         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
4076         recent value is returned from imap folder.
4077
4078         * elmo.el (elmo-folder-newsgroups): New generic function.
4079
4080         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
4081         (elmo-folder-initialize): Set it.
4082         (elmo-folder-expand-msgdb-path): Use it.
4083         (elmo-folder-newsgroups): Define.
4084
4085         * elmo-filter.el (elmo-folder-newsgroups): Define.
4086
4087         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
4088
4089         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
4090
4091         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
4092
4093 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4094
4095         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
4096         user option.
4097         (elmo-shimbun-header-extra-field): New inline function.
4098         (elmo-shimbun-header-set-extra-field): Ditto.
4099         (elmo-shimbun-folder-header-hash-setup): Ditto.
4100         (elmo-shimbun-update-overview): Ditto.
4101         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
4102         (elmo-shimbun-folder-setup): Use
4103         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
4104         (elmo-shimbun-get-headers): Ditto.
4105         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
4106         Insert `X-Shimbun-Id:' header if extra field is set.
4107         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
4108         field's value instead of `shimbun-header-id'.
4109
4110         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
4111         inline function.
4112         (elmo-msgdb-overview-entity-set-date): Ditto.
4113         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4114
4115 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
4116
4117         * mmimap.el (mmimap-entity-section): Changed body node number from
4118         "0" to "1".
4119
4120 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4121
4122         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
4123         `elmo-folder-delete-messages'.
4124
4125         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
4126         (elmo-folder-initialize): Changed to expand alias into index path.
4127
4128         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
4129         `elmo-mime-insert-header-from-buffer' with 6th arg
4130         `sorted-fields'.
4131
4132 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4133
4134         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
4135
4136         * elmo.el (elmo-diff-new): New inline function.
4137         (elmo-diff-unread): Ditto.
4138         (elmo-diff-all): Ditto.
4139
4140         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
4141         value from responseb.
4142         (elmo-imap4-folder-diff-plugged): Ditto.
4143         (elmo-imap4-server-diff-async): Added recent argument.
4144         (elmo-server-diff-async): Ditto.
4145         (elmo-imap4-folder-diff-plugged): Ditto.
4146
4147         * elmo-version.el (elmo-version): Up to 2.7.6.
4148
4149 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4150
4151         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
4152         in quoted-stirng.
4153
4154 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
4155
4156         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
4157
4158         * elmo-imap4.el (elmo-folder-initialize): Ditto.
4159
4160         * elmo-nntp.el (elmo-folder-initialize): Ditto.
4161
4162         * elmo-multi.el (elmo-folder-initialize): Ditto.
4163
4164         * elmo-util.el (elmo-parse-token): New function.
4165         (elmo-parse-prefixed-element): Ditto.
4166
4167 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
4168
4169         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
4170         delete process.
4171         (elmo-imap4-accept-ok): Ditto.
4172
4173 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4174
4175         * mmimap.el (mime-imap-entity-header-string): Don't check first
4176         element of node-id is `0' (Follow last change).
4177
4178 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4179
4180         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
4181         assigned irregular node-id to nested multipart section.
4182         (initialize-instance): Followed above change.
4183
4184 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4185
4186         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
4187         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
4188         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
4189         `elmo-shimbun-get-headers');
4190         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
4191         visible article on summary exists in headers).
4192         (elmo-map-message-fetch): Cause an error when folder is unplugged.
4193
4194 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4195
4196         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
4197         definition.
4198
4199 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
4200
4201         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
4202
4203 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4204
4205         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
4206         header separator into loop condition.
4207
4208 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4209
4210         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
4211         Return duplicate folder if it has subfolder.
4212
4213 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
4214
4215         * elmo.el (elmo-make-folder): Add folder name error check.
4216
4217         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
4218         (elmo-nntp-encode-group-string): New inline function.
4219         (elmo-nntp-decode-group-string): Ditto.
4220         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
4221         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
4222         Use `not' instead of `null';
4223         Use elmo-nntp-decode-group-string.
4224
4225         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
4226
4227         * elmo-version.el (elmo-version): Up to 2.7.5.
4228
4229 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4230
4231         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
4232         Hide progress gauge if `elmo-folder-move-messages' exits
4233         nonlocally.
4234
4235 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
4236
4237         * elmo-imap4.el (elmo-folder-initialize): Use
4238         `elmo-imap4-encode-folder-string' for folder name.
4239
4240 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4241
4242         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
4243         `done'.
4244
4245 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4246
4247         * elmo-util.el (elmo-progress-counter-alist): New internal
4248         variable.
4249         (elmo-progress-counter-value): New macro.
4250         (elmo-progress-counter-all-value): Ditto.
4251         (elmo-progress-counter-format): Ditto.
4252         (elmo-progress-counter-set-value): Ditto.
4253         (elmo-progress-set): New function.
4254         (elmo-progress-clear): Ditto.
4255         (elmo-progress-notify): Ditto.
4256
4257         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
4258         counter.
4259
4260         * elmo.el (elmo-generic-folder-append-messages): Call
4261         `elmo-progress-notify'.
4262         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
4263
4264         * elmo-archive.el (elmo-folder-append-messages): Call
4265         `elmo-progress-notify'.
4266
4267         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
4268
4269         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
4270
4271         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4272
4273 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
4274
4275         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
4276         'Create'.
4277         (elmo-message-encache-dop): Added argument `read'.
4278
4279         * elmo-shimbun.el (elmo-message-encache): Ditto.
4280
4281         * elmo-net.el (elmo-message-encache): Ditto.
4282
4283         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
4284         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
4285         elmo-imap4-seen-messages.
4286         (elmo-folder-msgdb-create-plugged): Initialize
4287         elmo-imap4-seen-messages;
4288         Set seen mark on elmo-imap4-seen-messages.
4289
4290         * elmo-pipe.el (elmo-folder-message-file-p): Define.
4291
4292         * elmo.el (elmo-generic-folder-append-messages): Check return value of
4293         elmo-folder-append-buffer.
4294         (elmo-folder-encache): Added optional argument `read'.
4295         (elmo-message-encache): Ditto.
4296
4297         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
4298
4299         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
4300
4301         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
4302         if append buffer content succeds.
4303
4304 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
4305
4306         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
4307         elmo-display-progress.
4308
4309         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
4310         Set 4th argument of mime-display-message.
4311         (elmo-mime-display-as-is): Ditto.
4312
4313 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
4314
4315         * elmo-nmz.el (toplevel): Require 'mime-edit.
4316         (elmo-nmz-content-type-alist): Abolished.
4317         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
4318         content is not a message.
4319         (elmo-map-message-fetch): Changed behavior exept for message content;
4320         Detect mime-charset automatically, Use `mime-find-file-type' to detect
4321         content-type, Add From: and Subject: field.
4322
4323 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4324
4325         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
4326         (elmo-map-message-fetch): Add `Content-Type' field if contents is
4327         not a message.
4328
4329 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4330
4331         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
4332         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
4333
4334         * elmo-archive.el (elmo-folder-writable-p): Defined.
4335
4336         * elmo-cache.el (elmo-folder-writable-p): Ditto.
4337
4338         * elmo-filter.el (elmo-folder-writable-p): Ditto.
4339
4340         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
4341
4342         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
4343
4344         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
4345
4346         * elmo-mark.el (elmo-folder-writable-p): Ditto.
4347
4348         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
4349
4350         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
4351
4352 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
4353
4354         * elmo-util.el (elmo-address-quote-specials): New function;
4355         Renamed from `wl-address-quote-specials'.
4356
4357 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4358
4359         * elmo-version.el (elmo-version): Up to 2.7.4.
4360
4361 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
4362
4363         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
4364
4365 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
4366
4367         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
4368         both compile-time and run-time to avoid byte-compile warning.
4369
4370 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
4371
4372         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
4373
4374 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4375
4376         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
4377         option.
4378         (elmo-mime-display-as-is-internal): Use it.
4379
4380         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
4381         if `read-passwd' is not defined.
4382
4383 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
4384
4385         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
4386         by original number.
4387         (elmo-folder-status): Call `elmo-folder-open-internal';
4388         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
4389         (elmo-folder-close-internal): Set location-alist as nil.
4390         (elmo-folder-clear): Define.
4391         (elmo-folder-check): Don't set location-alist as nil.
4392
4393         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
4394
4395 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
4396
4397         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
4398         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
4399
4400         * mmimap.el (mime-imap-entity::requested): New slot.
4401         (mime-imap-location-fetch-entity-p): New generic function.
4402         (mime-decode-parameters): Define using `defun-maybe'.
4403         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
4404         content-type structure.
4405         (mime-entity-body): Return empty body if
4406         `mime-imap-location-fetch-entity-p' returns nil in the first request.
4407
4408         * elmo.el (elmo-message-displaying): New variable.
4409
4410         * elmo-mime.el (elmo-mime-message-display): Bind
4411         elmo-message-displaying as t.
4412
4413         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
4414
4415 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
4416
4417         * acap.el (acap-open): erase buffer before starting network process.
4418         (acap-store): Rewrite.
4419
4420 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
4421
4422         * elmo-imap4.el (elmo-imap4-default-mailbox,
4423         elmo-imap4-default-server
4424         elmo-imap4-default-authenticate-type,
4425         elmo-imap4-default-user,
4426         elmo-imap4-default-port,
4427         elmo-imap4-default-stream-type,
4428         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
4429
4430         * elmo-pop3.el (elmo-pop3-default-user,
4431         elmo-pop3-default-server,
4432         elmo-pop3-default-authenticate-type,
4433         elmo-pop3-default-port,
4434         elmo-pop3-default-stream-type,
4435         elmo-pop3-stream-type-alist): Ditto.
4436
4437         * elmo-nntp.el (elmo-nntp-default-server,
4438         elmo-nntp-default-user,
4439         elmo-nntp-default-port,
4440         elmo-nntp-default-stream-type,
4441         elmo-nntp-stream-type-alist): Ditto.
4442
4443         * elmo-vars.el: Follow changes above.
4444         (elmo-setting): New custom group; added 'elmo-setting group to
4445         above variables.
4446
4447         * elmo-version.el (elmo-version): Up to 2.7.3.
4448
4449         * acap.el (acap-parse-response): Don't delete process when BYE
4450         response (It causes hang-up on slow network environment).
4451         (toplevel): Added comment.
4452
4453 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
4454
4455         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
4456
4457         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
4458         parsing NIL.
4459         (acap-parse-return-metadata): Ditto.
4460
4461         * slp.el: New file.
4462         (toplevel): Fixed typo.
4463
4464         * acap.el: New file.
4465         (acap-network-stream-open): Show "Connecting..." message.
4466         (acap-parse-response): Fixed problem for BYE untagged response.
4467         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
4468         (toplevel): Added tiny comments.
4469
4470 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
4471
4472         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
4473         space delimiter for uidl response.
4474
4475 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
4476
4477         * elmo-vars.el (elmo-use-semi): Eliminated.
4478
4479         * elmo-util.el (elmo-string-assoc-all): New function.
4480
4481 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4482
4483         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
4484         property 'mime-preview-situation for `mime-preview-quit'.
4485
4486 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4487
4488         * elmo.el (elmo-message-fetch-with-cache-process): Call
4489         elmo-message-fetch-internal instead of causing an error when fetch
4490         strategy is 'entire but only 'section cache is available.
4491
4492 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
4493
4494         * elmo-version.el (elmo-version): Up to 2.7.2.
4495
4496         * elmo.el (elmo-generic-folder-append-messages): Make
4497         fetch-strategy with `use-cache'.
4498
4499         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
4500         (elmo-dop-queue-method-name): New macro.
4501
4502 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4503
4504         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
4505         unbalanced parenthesis.
4506
4507 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
4508
4509         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
4510
4511 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
4512
4513         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
4514         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
4515
4516 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4517
4518         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
4519         local variables.
4520
4521 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4522
4523         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
4524         (elmo-message-use-cache-p): Define.
4525         (elmo-folder-msgdb-create): Treat cache.
4526
4527 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
4528
4529         * elmo-nntp.el (elmo-network-initialize-session): Call
4530         `elmo-nntp-send-mode-reader'.
4531         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
4532
4533 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
4534
4535         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
4536         alist.
4537         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
4538         assoc.
4539
4540         * elmo-net.el (elmo-network-get-session): Set stream-type argument
4541         for `elmo-plugged-p'.
4542         (elmo-open-network-stream): Fixed stream-type argument.
4543
4544 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
4545
4546         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
4547         unknown archive type is specified.
4548
4549 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
4550
4551         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
4552
4553         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
4554         while loading msgdb.
4555
4556         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
4557         (elmo-folder-open-internal): Rewrite.
4558
4559 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4560
4561         * elmo-mime.el (elmo-mime-display-as-is-internal):
4562         Adjust buffer-multibyte status.
4563
4564 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4565
4566         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
4567         of elmo-condition-find-key.
4568
4569         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
4570         (elmo-condition-in-msgdb-p): Ditto.
4571         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
4572         argument.
4573
4574 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4575
4576         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
4577
4578 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
4579
4580         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
4581         label for elmo-display-progress.
4582
4583 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
4584
4585         * elmo.el (elmo-folder-clear): New method.
4586         (elmo-folder-clear): Define.
4587         (elmo-folder-synchronize): Call `elmo-folder-clear'.
4588
4589         * elmo-shimbun.el (elmo-folder-check): Rewrite.
4590         (elmo-folder-clear): Define.
4591
4592         * elmo-map.el (elmo-folder-clear): Define.
4593
4594         * elmo-version.el (elmo-version): Up to 2.7.1.
4595
4596 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
4597
4598         * elmo.el (elmo-folder-synchronize): Return list of nil when no
4599         updates.
4600
4601 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
4602
4603         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
4604         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
4605
4606 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
4607
4608         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
4609
4610         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
4611         and re-written.
4612
4613         * elmo-imap4.el (elmo-folder-initialize): Use
4614         elmo-get-network-stream-type.
4615
4616         * elmo-nntp.el (elmo-folder-initialize): Ditto.
4617
4618         * elmo-pop3.el (elmo-folder-initialize): Ditto.
4619
4620 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
4621
4622         * elmo.el (elmo-message-encache): Set unread argument for
4623         elmo-message-fetch.
4624
4625         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
4626
4627         * elmo.el (elmo-net-port-info): New method.
4628
4629         * elmo-shimbun.el (elmo-net-port-info): Define.
4630         (elmo-message-encache): Ditto.
4631
4632         * elmo-net.el (elmo-net-port-info): Define as method.
4633
4634         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
4635         unplugged status when elmo-enable-disconnected-operation is t.
4636
4637         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
4638         of spool folder before checking new number.
4639
4640 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
4641
4642         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
4643         (elmo-network-setup-session): Ditto.
4644         (elmo-message-fetch-plugged): Ditto.
4645         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
4646         (elmo-network-initialize-session): Ditto.
4647         (elmo-pop3-read-response): Abolish 3rd argument.
4648         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
4649         (elmo-pop3-read-contents): Ditto.
4650         (elmo-pop3-read-body): Ditto.
4651         (elmo-folder-status): Call elmo-folder-close.
4652         (elmo-pop3-lock): Abolish.
4653         (elmo-pop3-unlock): Ditto.
4654         (elmo-pop3-locked-p): Ditto.
4655         (elmo-folder-check): Don't call elmo-pop3-locked-p.
4656
4657 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
4658
4659         * elmo-version.el (elmo-version): Up to 2.7.0.
4660
4661         * elmo-pop3.el (elmo-pop3-debug): New variable.
4662         (elmo-pop3-debug-inhibit-logging): Ditto.
4663         (elmo-pop3-debug): New function.
4664         (elmo-pop3-send-command): Call elmo-pop3-debug.
4665         (elmo-pop3-read-response): Added keep-lock optional argument;
4666         Don't unlock if keep-lock is non-nil.
4667         (elmo-pop3-process-filter): Call elmo-pop3-debug.
4668         (elmo-network-authenticate-session): Bind
4669         elmo-pop3-debug-inhibit-logging as t.
4670         (elmo-network-setup-session): Call elmo-pop3-read-response with
4671         keep-lock argument.
4672         (elmo-pop3-read-msg): Ditto.
4673         (elmo-pop3-locked-p): Call elmo-pop3-debug.
4674         (elmo-pop3-read-body): Call elmo-pop3-unlock.
4675         (elmo-network-initialize-session): Call elmo-pop3-lock.
4676         (elmo-folder-close-internal): Don't clear location-alist slot.
4677         (elmo-folder-check): Clear location-alist slot.
4678
4679 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
4680
4681         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
4682         (elmo-pop3-send-command): Call elmo-pop3-lock.
4683         (elmo-pop3-read-response): Call elmo-pop3-unlock.
4684         (elmo-pop3-read-contents): Ditto.
4685         (elmo-pop3-lock): New function.
4686         (elmo-pop3-unlock): Ditto.
4687         (elmo-pop3-locked-p): Ditto.
4688         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
4689         returns t.
4690
4691 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
4692
4693         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
4694
4695         * elmo-util.el (elmo-file-field-primitive-condition-match):
4696         New inline function (Don't fetch file content if "first" or "last").
4697         (elmo-file-field-condition-match): Use
4698         elmo-file-field-primitive-condition-match.
4699
4700         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
4701         "first".
4702
4703         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
4704         (elmo-message-fetch-plugged): Fixed.
4705
4706         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
4707
4708 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
4709
4710         * elmo.el (elmo-folder-move-messages): Bind
4711         elmo-inhibit-display-retrieval-progress as t while moving messages.
4712
4713         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
4714         New variable.
4715         (elmo-inhibit-display-retrieval-progress): Ditto.
4716
4717         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
4718         for retrieval progress;
4719         Don't display progress when total buffer size is smaller than
4720         elmo-display-retrieval-progress-threshold.
4721         (elmo-message-fetch-plugged): Don't display progress when
4722         elmo-inhibit-display-retrieval-progress is non-nil.
4723
4724         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
4725         for retrieval progress;
4726         Don't display progress when literal size is smaller than
4727         elmo-display-retrieval-progress-threshold.
4728         (elmo-imap4-message-fetch): Don't display progress when
4729         elmo-inhibit-display-retrieval-progress is non-nil.
4730
4731 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4732
4733         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
4734         (elmo-imap4-find-next-line): Display progress whille literal fetching.
4735         (elmo-imap4-message-fetch): Likewise.
4736
4737         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
4738         (elmo-shimbun-index-range-alist): Ditto.
4739         (elmo-shimbun-use-entire-index): Abolish.
4740         (shimbun-mua-use-entire-index): Ditto.
4741         (elmo-shimbun-folder): Added new slot `range'.
4742         (elmo-folder-initialize): Setup slot `range'.
4743
4744 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
4745
4746         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
4747         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
4748         (elmo-shimbun-get-headers): Use return value of
4749         `shimbun-article-expiration-days'.
4750         (elmo-folder-close-internal): Clean up last-check slot.
4751
4752         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
4753         (elmo-pop3-total-size): New variable.
4754         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
4755
4756         * elmo.el (elmo-folder-reserve-status-p): New method.
4757
4758         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
4759         (elmo-shimbun-use-entire-index): New user option.
4760         (shimbun-elmo-mua): New class.
4761         (shimbun-mua-search-id): Define.
4762         (shimbun-mua-use-entire-index): Ditto.
4763         (elmo-shimbun-folder:last-check): New slot.
4764         (elmo-shimbun-headers-cache-header-list): Abolish.
4765         (elmo-shimbun-headers-cache-set-header-list): Ditto.
4766         (elmo-shimbun-headers-cache-header-hash): Ditto.
4767         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
4768         (elmo-shimbun-headers-cache-last-check): Ditto.
4769         (elmo-shimbun-headers-cache-set-last-check): Ditto.
4770         (elmo-shimbun-headers-check-p): Rewrite.
4771         (elmo-shimbun-msgdb-to-headers): New function.
4772         (elmo-shimbun-get-headers): Rewrite.
4773         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
4774         (elmo-folder-open-internal): Get headers only if
4775         `elmo-shimbun-headers-check-p' is non-nil.
4776         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
4777         is non-nil.
4778         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
4779         (elmo-quit): Removed.
4780
4781         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
4782         function.
4783         (elmo-msgdb-overview-entity-set-extra): Ditto.
4784         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
4785
4786         * elmo-map.el (elmo-folder-status): Don't call
4787         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
4788         is non-nil.
4789
4790 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4791
4792         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
4793         of `elmo-msgdb-search-internal-primitive' when condition's car is
4794         `and' or `or'.
4795
4796 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
4797
4798         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
4799
4800 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4801
4802         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
4803         call `elmo-pipe-drain'.
4804
4805 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
4806
4807         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
4808         typo. (elmo-cache-folder -> elmo-mark-folder)
4809
4810 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4811
4812         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
4813         `elmo-message-fetch'.
4814
4815 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4816
4817         * elmo-net.el (elmo-message-encache): Fixed typo.
4818         (elmo-message-fetch-unplugged): Changed call
4819         `elmo-message-fetch-internal' without argument `outbuf'.
4820
4821 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
4822
4823         * elmo.el (elmo-message-encache): Define as generic function.
4824         (elmo-message-fetch-field): New generic function.
4825         (elmo-message-fetch-with-cache-process): Cause an error when
4826         fetch strategy is 'entire but only 'section cache is available.
4827         (toplevel): Fixed nmz folder definition.
4828
4829         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
4830         (elmo-msgdb-resume-list-filename): Ditto.
4831         (elmo-queue-filename): Ditto.
4832         (elmo-enable-disconnected-operation): Changed default value to t.
4833
4834         * elmo-util.el (elmo-cache-path-section-p): New function.
4835         (elmo-file-cache-get): Use it.
4836         (elmo-dop-queue-filename): Moved from elmo-dop.el.
4837         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
4838         (elmo-dop-queue-save): Ditto.
4839
4840         * elmo-net.el (elmo-folder-status-unplugged): Call
4841         elmo-folder-status-dop.
4842         (elmo-folder-list-messages-unplugged): Implemented.
4843         (elmo-folder-delete-messages-unplugged): Define.
4844         (elmo-folder-msgdb-create): Define.
4845         (elmo-folder-msgdb-create-unplugged): Define.
4846         (elmo-folder-mark-as-read-unplugged): Ditto.
4847         (elmo-folder-unmark-read-unplugged): Ditto.
4848         (elmo-folder-mark-as-important-unplugged): Ditto.
4849         (elmo-folder-unmark-important-unplugged): Ditto.
4850         (elmo-message-encache): Ditto.
4851
4852         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
4853         (elmo-dop-queue-save): Ditto.
4854
4855         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
4856         `elmo-folder-msgdb-create'.
4857         (elmo-folder-append-buffer): Implemented unplugged operation.
4858         (elmo-folder-append-messages): Call parent method in unplugged status.
4859         (elmo-message-fetch-unplugged): Removed definition.
4860         (elmo-message-fetch-field): Implemented.
4861
4862         * elmo-dop.el (toplevel): Require 'elmo-localdir.
4863         (elmo-dop-folder): Removed variable definition.
4864         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
4865         (elmo-dop-queue-flush): Implemented.
4866         (elmo-dop-queue-merge): Removed definition (TODO).
4867         (elmo-dop-spool-folder): New function.
4868         (elmo-dop-spool-folder-append-buffer): Ditto.
4869         (elmo-dop-spool-folder-list-messages): Ditto.
4870         (elmo-dop-list-deleting-messages): Ditto.
4871         (elmo-folder-append-buffer-dop): Ditto.
4872         (elmo-folder-delete-messages-dop): Ditto.
4873         (elmo-message-encache-dop): New inline function.
4874         (elmo-create-folder-dop): Ditto.
4875         (elmo-folder-mark-as-read-dop): Ditto.
4876         (elmo-folder-unmark-read-dop): Ditto.
4877         (elmo-folder-mark-as-important-dop): Ditto.
4878         (elmo-folder-unmark-important-dop): Ditto.
4879         (elmo-folder-status-dop): Fixed.
4880         (elmo-folder-append-buffer-dop-delayed): New function.
4881         (elmo-folder-delete-messages-dop-delayed): Ditto.
4882         (elmo-dop-msgdb): Ditto.
4883
4884 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4885
4886         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
4887
4888 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4889
4890         * elmo.el (elmo-folder-move-messages): Fixed problem when
4891         `dst-folder' is 'null.
4892
4893 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4894
4895         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
4896         instead of current mark.
4897
4898         * elmo-multi.el (elmo-folder-list-importants-internal): No
4899         operation if importants is not list.
4900
4901         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
4902         Return t if importants is not list.
4903
4904         * elmo-map.el (elmo-map-folder-list-importants): Define.
4905         (elmo-folder-list-importants-internal): Check return value of
4906         `elmo-map-folder-list-importants-internal'.
4907
4908         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
4909
4910         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
4911
4912         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
4913
4914         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
4915
4916 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
4917
4918         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
4919         (Patch is provided by <kita@coe.nttdata.co.jp>).
4920
4921 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4922
4923         * elmo.el (elmo-folder-synchronize): Don't check important mark in
4924         mark folder.
4925
4926 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4927
4928         * elmo.el (elmo-message-fetch): Define.
4929         (elmo-message-fetch-with-cache-process): New generic method.
4930         (elmo-message-fetch-internal): New generic method.
4931         (elmo-folder-synchronize):
4932
4933         * elmo-archive.el (elmo-message-fetch-internal): Define.
4934         (elmo-message-fetch): Eliminated.
4935
4936         * elmo-localdir.el (elmo-message-fetch-internal): Define.
4937         (elmo-message-fetch): Eliminated.
4938
4939         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
4940         argument OUTBUF.
4941         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
4942
4943         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
4944         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
4945
4946         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
4947         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
4948
4949         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
4950
4951         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
4952
4953         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
4954
4955         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
4956         (elmo-message-fetch-unplugged): New generic method.
4957         (elmo-message-fetch-internal): Remove cache process (Renamed from
4958         `elmo-message-fetch').
4959
4960         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
4961         (elmo-message-fetch): Eliminated.
4962         (elmo-message-fetch-unplugged): Ditto.
4963
4964         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
4965
4966 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4967
4968         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
4969         of `to-be-deleted' from number-alist to number-list.
4970
4971 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4972
4973         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
4974         (elmo-folder-mark-as-important): Ditto.
4975
4976 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
4977
4978         * elmo.el (elmo-folder): Added process-duplicates slot.
4979
4980         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
4981         (elmo-folder-unmark-read): Ditto.
4982         (elmo-folder-unmark-important): Ditto.
4983         (elmo-folder-mark-as-important): Ditto.
4984
4985         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
4986         duplicated message processing.
4987
4988         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
4989
4990 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4991
4992         * elmo-util.el (elmo-list-subdirectories-1): New function.
4993         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
4994         (elmo-mapcar-list-of-list): New function.
4995
4996         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
4997         `elmo-mapcar-list-of-list' instead of `mapcar'.
4998
4999         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
5000
5001         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
5002         `elmo-have-link-count'. Return the fully qualified folder name.
5003
5004 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
5005
5006         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
5007         (elmo-shimbun-headers-cache): New internal variable.
5008         (elmo-shimbun-headers-cache-header-list): New inline function.
5009         (elmo-shimbun-headers-cache-set-header-list): Ditto.
5010         (elmo-shimbun-headers-cache-header-hash): Ditto.
5011         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
5012         (elmo-shimbun-headers-cache-last-check): Ditto.
5013         (elmo-shimbun-headers-cache-set-last-check): Ditto.
5014         (elmo-shimbun-lapse-seconds): Ditto.
5015         (elmo-shimbun-headers-cache-check-p): Ditto.
5016         (elmo-shimbun-get-headers): New function.
5017         (elmo-folder-open-internal): Call it.
5018         (elmo-quit): Define (Clear headers-cache).
5019
5020 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
5021
5022         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
5023
5024         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
5025         (elmo-msgdb-flist-save): Ditto.
5026
5027         * elmo-shimbun.el (elmo-folder-list-subfolders):
5028         Use `shimbun-groups' instead of `shimbun-groups-internal'.
5029         (elmo-folder-exists-p): Ditto.
5030
5031         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
5032         argument for `shimbun-header-insert'.
5033
5034 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
5035
5036         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
5037         at first time.
5038
5039         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
5040         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
5041
5042 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
5043
5044         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
5045         (elmo-folder-plugged-p): Define.
5046         (elmo-folder-set-plugged): Ditto.
5047         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
5048         (elmo-folder-list-messages-internal): Return t if unplugged.
5049         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
5050
5051         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
5052         when elmo-folder-list-messages-internal method of children returns t.
5053
5054         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
5055         pair is nil.
5056         (elmo-folder-open-internal): Don't update if unplugged status.
5057
5058 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
5059
5060         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
5061         new message.
5062
5063 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
5064
5065         * elmo-util.el (elmo-file-cache-save): Ignore errors.
5066
5067         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
5068         saving.
5069
5070 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
5071
5072         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
5073
5074         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
5075         (elmo-folder-open-internal): Set up headers slot.
5076         (elmo-folder-check): Call elmo-folder-close-internal and
5077         elmo-folder-open-internal.
5078         (elmo-folder-close-internal): Clean up headers slot.
5079
5080 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
5081
5082         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
5083         exactly folder list.
5084         (elmo-folder-append-messages): Fixed append archive with prefix.
5085
5086         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
5087         make temp files with start-number.
5088
5089         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
5090
5091 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5092
5093         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
5094         argument `visible-only'.
5095         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
5096         instead of `if'.
5097
5098         * elmo-pop3.el (elmo-folder-open-internal): Check
5099         `elmo-inhibit-number-mapping' is non-nil.
5100
5101         * elmo-pipe.el (elmo-folder-status): Fixed.
5102
5103 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
5104
5105         * elmo.el (elmo-dop-queue-flush): Added autload setting.
5106
5107         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
5108         (elmo-folder-open-internal): Setup `header-hash' slot.
5109         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
5110         information.
5111         (elmo-map-message-fetch): Ditto.
5112
5113 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
5114
5115         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
5116         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
5117         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
5118         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
5119
5120         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
5121
5122 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
5123
5124         * sb-airs.el: Added footer.
5125
5126         * shimbun.el (shimbun-article): Define as luna-method.
5127
5128         * sb-tcup.el: New file.
5129
5130         * sb-airs.el (toplevel): Require 'sb-mhonarc.
5131         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
5132
5133 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
5134
5135         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
5136         (shimbun-get-headers): Ditto.
5137
5138         * elmo.el: Moved obsolete variable definitions from
5139         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
5140
5141         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
5142         groups.
5143
5144         * shimbun.el: New file.
5145
5146         * elmo-shimbun.el: New file.
5147
5148         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
5149         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
5150         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
5151         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
5152
5153 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
5154
5155         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
5156         hierarchy is t.
5157
5158 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
5159
5160         * elmo.el (elmo-folder-msgdb): Define as macro.
5161         (elmo-folder-open): Added argument `load-msgdb'.
5162         (elmo-generic-folder-open): Ditto.
5163         (elmo-folder-encache): New function.
5164
5165         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
5166
5167         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
5168
5169         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
5170         Eliminated argument FOLDER and added argument MSGDB.
5171         (elmo-dop-queue-load): Moved from elmo-dop.el.
5172         (elmo-dop-queue-save): Ditto.
5173
5174         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
5175
5176         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
5177
5178         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
5179         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
5180         (elmo-filter-folder-list-importants-internal): Ditto.
5181
5182         * elmo-map.el (elmo-folder-pack-number): Ditto.
5183
5184         * elmo-mime.el (elmo-mime-message-display): Ditto.
5185
5186         * elmo.el (elmo-generic-folder-commit): Ditto.
5187         (elmo-folder-list-unreads): Ditto.
5188         (elmo-folder-list-importants): Ditto.
5189         (elmo-generic-folder-commit): Ditto.
5190         (elmo-message-set-mark): Ditto.
5191         (elmo-generic-folder-append-msgdb): Ditto.
5192         (elmo-folder-synchronize): Ditto.
5193         (elmo-folder-messages): Ditto.
5194         (elmo-init): Call elmo-dop-queue-load.
5195         (elmo-folder-list-messages): Ditto.
5196
5197         * elmo-nntp.el (elmo-folder-update-number): Ditto.
5198         (elmo-nntp-folder-process-crosspost): Ditto.
5199         (elmo-folder-list-unreads-internal): Ditto.
5200
5201         * elmo-dop.el: Removed old functions.
5202
5203 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
5204
5205         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
5206         `folder' to `msgdb'.
5207
5208 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
5209
5210         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
5211         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
5212
5213         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
5214         case-fold-search.
5215
5216 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
5217
5218         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
5219         defined.
5220
5221         * mmimap.el (toplevel): Require 'mime-parse and 'static.
5222         (mmimap-parse-parameters-from-list): Define as alias for
5223         `mime-decode-parameter-plist' if it is defined as function.
5224         (mmimap-make-mime-entity): Added argument `number'.
5225         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
5226         as 0.
5227         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
5228
5229         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
5230
5231         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
5232
5233         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
5234
5235 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
5236
5237         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
5238
5239         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
5240         when elmo-imap4-default-authenticate-type is nil.
5241         (elmo-folder-list-subfolders): Ditto
5242         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
5243         (elmo-imap4-fetch-callback-1-subr): Renamed from
5244         `elmo-imap4-fetch-callback-1' and define as inline function.
5245         (elmo-imap4-fetch-callback-1):
5246         Renamed from `elmo-imap4-fetch-callback'.
5247         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
5248
5249         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
5250         msgdb path (To keep compatibility with main trunk).
5251
5252         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
5253
5254         * elmo-util.el (elmo-make-file-cache): Moved position of
5255         some macros.
5256
5257         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
5258         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
5259         instead of `elmo-pop3-inhibit-uidl'.
5260         (elmo-folder-exists-p): Ditto.
5261         (elmo-pop3-folder-list-messages): Ditto.
5262
5263         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
5264         instead of `elmo-pop3-inhibit-uidl'.
5265         (elmo-folder-status): Ditto.
5266
5267         * elmo-dop.el (elmo-dop-folder): New variable.
5268         (elmo-dop-lock-message): Eliminated.
5269         (elmo-dop-unlock-message): Ditto.
5270         (elmo-dop-lock-list-load): Ditto.
5271         (elmo-dop-lock-list-save): Ditto.
5272         (elmo-dop-delete-folder): Ditto.
5273         (elmo-dop-rename-folder): Ditto.
5274
5275         * elmo.el: Removed incomplete commentary.
5276
5277 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5278
5279         * elmo.el (toplevel): Require 'elmo-version first;
5280         for little `recursive-load-depth' settings.
5281         Fix "ends here" comment.
5282
5283 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
5284
5285         * elmo-util.el (toplevel): Require 'poem;
5286         Some functions are moved from elmo-cache.el.
5287
5288         * elmo-net.el (toplevel): Require 'elmo-cache.
5289
5290         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
5291
5292         * elmo.el (toplevel): Ditto.
5293
5294         * elmo-cache.el: Rewrite with luna;
5295         Some functions are moved to elmo-util.el.
5296
5297         * elmo-internal.el (elmo-internal-folder-list): New variable.
5298         (elmo-internal-folder-initialize): Rewrite.
5299         (elmo-folder-list-subfolders): Ditto.
5300
5301         * elmo-cache.el (elmo-cache-search-all): Eliminated.
5302         (elmo-cache-collect-sub-directories): Ditto.
5303
5304 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
5305
5306         * elmo-version.el (elmo-version): Up to 2.5.8.
5307
5308         * elmo.el (elmo-folder-list-messages-mark-match): New function.
5309
5310         * elmo-util.el (elmo-list-insert): New function.
5311
5312 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
5313
5314         * elmo.el (elmo-init): New function.
5315         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
5316
5317         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
5318         (Renamed from `elmo-localdir-header-chop-length').
5319
5320         * elmo-pop3.el (elmo-pop3-use-cache,
5321         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
5322
5323         * elmo-nntp.el (elmo-message-fetch): Define.
5324         (elmo-message-fetch-unplugged): Ditto.
5325         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
5326         (elmo-nntp-use-cache): Ditto.
5327         (elmo-nntp-max-number-precedes-list-active): Ditto.
5328
5329         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
5330
5331         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
5332         `elmo-msgdb-insert-file-header'.
5333         Use `elmo-msgdb-file-header-chop-length'.
5334
5335         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
5336         `elmo-vars.el'.
5337
5338         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
5339         (elmo-cache-msgdb-create-overview-entity-from-file): Use
5340         `elmo-msgdb-insert-file-header'.
5341
5342         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
5343         Use new variable;
5344         Define obsolete variables with `elmo-define-obsolete-variable',
5345
5346         * elmo-util.el (elmo-warning-buffer-name): New constant.
5347         (elmo-warning): New function.
5348         (elmo-obsolete-variable-alist): New variable.
5349         (elmo-obsolete-variable-show-warnings): New variable.
5350         (elmo-define-obsolete-variable): New function.
5351         (elmo-resque-obsolete-variable): Ditto.
5352         (elmo-resque-obsolete-variables): Ditto.
5353
5354 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
5355
5356         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
5357         Eliminated.
5358
5359         * elmo-pop3.el, elmo-nntp.el: Use custom.
5360
5361 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
5362
5363         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
5364         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
5365
5366 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
5367
5368         * Luna-fy Kenichi OKADA's following changes.
5369         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
5370         `nohide'.
5371         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
5372
5373 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
5374
5375         * elmo-util.el (elmo-display-progress): Prefer
5376         `progress-feedback-with-label' to `lprogress-display'.
5377
5378 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
5379
5380         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
5381
5382 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
5383
5384         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
5385         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
5386         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
5387         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
5388         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
5389         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
5390         * elmo-archive.el (elmo-archive-list-folder): Ditto.
5391         * elmo-filter.el (elmo-filter-list-folder): Ditto.
5392         * elmo-internal.el (elmo-internal-list-folder): Ditto.
5393         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
5394         * elmo-multi.el (elmo-multi-list-folder): Ditto.
5395         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
5396         * elmo-dop.el (elmo-dop-list-folder): Ditto.
5397
5398 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
5399
5400         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
5401         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
5402
5403 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
5404
5405         * elmo.el (elmo-folder-process-crosspost): New generic method.
5406         (elmo-folder-writable-p): Ditto.
5407         (elmo-folder-message-appendable-p): Eliminated.
5408         (elmo-generic-folder-append-msgdb): Rewrite.
5409         (elmo-newsgroups-hashtb): New internal variable.
5410         (elmo-crosspost-message-set): Eliminated.
5411         (elmo-crosspost-message-delete): Ditto.
5412         (elmo-setup-subscribed-newsgroups): New function.
5413         (elmo-crosspost-message-alist-modified): New internal variable.
5414         (elmo-crosspost-message-alist-load): New function (Renamed from
5415         `wl-crosspost-alist-load').
5416         (elmo-crosspost-message-alist-save): Ditto (Renamed from
5417         `wl-crosspost-alist-save').
5418
5419         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
5420
5421         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
5422         `unreads'.
5423         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
5424         elmo-newsgroups-hashtb).
5425         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
5426         `elmo-nntp-folder-update-crosspost-message-alist'.
5427         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
5428         `elmo-nntp-groups-hashtb'.
5429         (elmo-nntp-make-groups-hashtb): Eliminated.
5430         (elmo-nntp-parse-newsgroups): New function (Renamed from
5431         `wl-parse-newsgroups').
5432         (elmo-folder-creatable-p, elmo-folder-writable-p,
5433         elmo-folder-close-internal, elmo-folder-mark-as-read,
5434         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
5435         Define.
5436         (elmo-nntp-folder-update-crosspost-message-alist): New function.
5437
5438         * elmo-net.el (elmo-message-fetch): Check buffer size.
5439
5440         * elmo-multi.el (elmo-multi-split-number-alist): New function.
5441
5442         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
5443
5444         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
5445         before `close' command.
5446
5447         * elmo.el (elmo-folder-list-unreads-internal): Added argument
5448         `mark-alist' (All other related portions are changed).
5449
5450 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
5451
5452         * elmo-util.el (elmo-create-hash-size): Eliminated.
5453         (elmo-make-hash) Make a hash with `one less than a power of two'
5454         length.
5455
5456         * elmo-vars.el (elmo-hash-minimum-size): New variable.
5457         (elmo-hash-maximum-size): Changed value.
5458
5459 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
5460
5461         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
5462         (elmo-mime-message-display-as-is): Ditto.
5463
5464 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
5465
5466         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
5467         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
5468
5469 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
5470
5471         * elmo-mark.el: New file.
5472
5473         * elmo-internal.el: Rewrite (Almost empty).
5474
5475 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
5476
5477         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
5478         (mime-imap-entity-header-string): Ditto.
5479         (mmimap-entity-section): Rewrite.
5480
5481 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
5482
5483         * elmo-nmz.el: New file.
5484
5485         * elmo-pipe.el: Rewrite with luna.
5486
5487 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
5488
5489         * elmo-archive.el: Rewrite with luna.
5490
5491         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
5492         (elmo-folder-list-importants-internal): Ditto.
5493
5494 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
5495
5496         * elmo-archive.el (elmo-archive-version): Abolish.
5497         (toplevel) Removed `boso' comment.
5498
5499 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
5500
5501         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
5502         elmo-msgdb-add-msgs-to-seen-list-subr;
5503         Changed argument seen-marks to unread-marks.
5504
5505         * elmo-nntp.el: Rewrite with luna.
5506
5507 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
5508
5509         * elmo-filter.el: Rewrite with luna.
5510
5511 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
5512
5513         * elmo-pop3.el: Rewrite with luna.
5514
5515 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
5516
5517         * elmo-multi.el: Rewrite with luna.
5518
5519         * elmo-vars.el (elmo-use-killed-list): Abolish.
5520         All other related portions are changed.
5521         (elmo-filename-replace-string-alist): Renamed from
5522         elmo-msgid-replace-string-alist.
5523
5524 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
5525
5526         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
5527
5528         * elmo-map.el: New file.
5529         * elmo-maildir.el: Rewrite with luna.
5530
5531 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
5532
5533         * elmo.el: Changed meaning of `elmo-folder-commit'.
5534         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
5535
5536 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5537
5538         * elmo.el (elmo-folder-append-buffer): New function.
5539         (Renamed from `elmo-append-msg')
5540
5541 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
5542
5543         * elmo-mime.el: New file.
5544
5545 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5546
5547         * elmo-cache.el: Rewrite.
5548
5549 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
5550
5551         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
5552
5553 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5554
5555         * elmo-vars.el (elmo): New group.
5556         (elmo-strict-diff-folder-regexp): New variable.
5557
5558         * elmo-util.el (elmo-call-func): Abolish.
5559         (elmo-folder-get-type): Ditto.
5560         (elmo-*-get-spec): Ditto.
5561         (elmo-*-spec-*): Ditto.
5562         (elmo-imap4-identical-name-space-p): Ditto.
5563         (elmo-folder-identical-system-p): Ditto.
5564         (elmo-folder-direct-copy-alist): Ditto.
5565         (elmo-folder-direct-copy-p): Ditto.
5566
5567         * elmo-pipe.el (elmo-pipe-folder): New luna class.
5568         (elmo-folder-initialize): Define.
5569         (elmo-folder-get-primitive-list): Ditto.
5570
5571         * elmo-nntp.el (elmo-nntp-folder): New luna class.
5572         (elmo-folder-initialize): Define.
5573         Renamed `elmo-network-session-host-internal' to
5574         `elmo-network-session-server-internal'.
5575
5576         * elmo-multi.el (elmo-multi-folder): New luna class.
5577         (elmo-folder-initialize): Define.
5578         (elmo-folder-get-primitive-list): Ditto.
5579         (elmo-folder-contains-type): Ditto.
5580         (elmo-message-use-cache-p): Ditto.
5581
5582         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
5583         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
5584
5585         * elmo-maildir.el (elmo-maildir-folder): New luna class.
5586         (elmo-folder-initialize): Define.
5587
5588         * elmo-filter.el (elmo-filter-folder): New luna class.
5589         (elmo-folder-initialize): Define.
5590         (elmo-folder-get-primitive-list): Ditto.
5591         (elmo-folder-contains-type): Ditto.
5592
5593 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
5594
5595         * elmo-imap4.el: Rewrite with luna.
5596
5597         * mmimap.el: New file.
5598
5599         * mmelmo.el, mmelmo-imap4.el: Removed.
5600
5601         * elmo-net.el: Ditto.
5602
5603         * elmo-pop3.el (elmo-pop3-folder): New luna class.
5604         (elmo-folder-initialize): Define.
5605
5606         * elmo-archive.el (elmo-archive-folder): New luna class.
5607         (elmo-folder-initialize): Define.
5608
5609         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
5610         `elmo-folder-msgdb-path'.
5611         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
5612         `elmo-make-folder'.
5613
5614 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
5615
5616         * elmo.el: New file.
5617
5618         * elmo2.el: Renamed to elmo.el.
5619
5620 \f
5621 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
5622
5623         * elmo-cache.el (elmo-cache-expire-by-size): Count
5624         a disk usage for a cache file entry in KB even when
5625         its kind is a directory.
5626
5627 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
5628
5629         * elmo-version.el (elmo-version): Up to 2.5.7.
5630
5631 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5632
5633         * elmo-version.el (elmo-version): Up to 2.5.6.
5634
5635 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
5636
5637         * elmo-version.el (elmo-version): Up to 2.5.5.
5638
5639 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
5640
5641         * elmo-imap4.el (elmo-network-authenticate-session):
5642         Fixed a logic for response checking.
5643
5644 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
5645
5646         * elmo-net.el: Add autoload settings for `starttls-negotiate',
5647         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
5648         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
5649         `sasl-mechanisms'.
5650
5651         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
5652         for `starttls-open-stream' and `starttls-negotiate'.
5653
5654         * elmo-nntp.el: Remove autoload settings for
5655         `starttls-open-stream' and `starttls-negotiate'.
5656
5657         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
5658         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
5659         `luna-define-class' with `eval-and-compile'.
5660
5661 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
5662
5663         * elmo-util.el (elmo-read-search-condition-internal):
5664         Require an element of table for searching field.
5665
5666 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5667
5668         * elmo-version.el (elmo-version): Up to 2.5.4.
5669
5670 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
5671
5672         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
5673
5674 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
5675
5676         * elmo-nntp.el (elmo-network-initialize-session): omitted.
5677
5678 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
5679
5680         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
5681         before greeting.
5682
5683 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5684
5685         * elmo-imap4.el (elmo-imap4-delete-folder):
5686         Send "close" before "delete" (Use commented out line).
5687         (elmo-imap4-rename-folder): Ditto.
5688
5689         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
5690         folder string itself.
5691         (elmo-dop-list-deleted): New function.
5692         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
5693         killed.
5694
5695         * elmo-util.el (elmo-string-rassoc-all): New function.
5696
5697 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
5698
5699         * elmo-version.el (elmo-version): Up to 2.5.3.
5700
5701         * elmo-net.el (elmo-network-get-session): Changed logic for
5702         checking process status.
5703
5704         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
5705         process is nil;
5706         Changed logic for checking process status.
5707
5708 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
5709
5710         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
5711         before greeting.
5712         (elmo-network-setup-session): Set UIDL hash size according to
5713         the length of list response.
5714         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
5715         according to the length of list response;
5716         Return the length of list response.
5717         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
5718
5719 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
5720
5721         * elmo-imap4.el (toplevel): Require 'ssl.
5722         Add autoload 'starttls.
5723         * elmo-pop3.el (toplevel): Ditto.
5724         * elmo-nntp.el (toplevel): Ditto.
5725
5726 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5727
5728         * elmo-imap4.el (toplevel): defun at compile time.
5729         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
5730         sasl-next-step, sasl-step-data, sasl-step-set-data.
5731         * elmo-pop3.el (toplevel): Ditto.
5732
5733 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5734
5735         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
5736
5737 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5738
5739         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
5740         if error.
5741         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
5742         and `elmo-pop-auth-apop'.
5743
5744 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5745
5746         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
5747
5748 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5749
5750         * elmo-pop3.el (elmo-network-authenticate-session): Split
5751         encoded response value.
5752
5753 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5754
5755         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
5756         `elmo-pop3-force-login'.
5757         Redefine `sasl-mechanisms'.
5758         * elmo-vars.el (elmo-pop3-force-login): Ditto.
5759
5760 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5761
5762         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
5763         Delete `elmo-imap4-authenticator-alist'.
5764         (elmo-imap4-auth-cram-md5): Delete.
5765         (elmo-imap4-auth-digest-md5): Delete.
5766
5767 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5768
5769         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
5770         (elmo-pop3-auth-scram-md5): Ditto.
5771         (elmo-pop3-auth-cram-md5): Ditto.
5772
5773 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5774
5775         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
5776         Delete `elmo-pop3-authenticator-alist'.
5777
5778 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5779
5780         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
5781         new SASL API.
5782         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
5783
5784 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
5785
5786         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
5787
5788 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
5789
5790         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
5791         Fixed problem when `elmo-pop3-use-uidl' is nil.
5792         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
5793
5794 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5795
5796         * elmo-version.el (elmo-version): Up to 2.5.2.
5797
5798 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
5799
5800         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
5801         New function.
5802         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
5803         (elmo-pop3-msgdb-create-as-numlist): Use it.
5804
5805         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
5806         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
5807
5808         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
5809         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
5810
5811 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
5812
5813         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
5814         when elmo-mark-as-read is called with second argument nil.
5815
5816 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
5817
5818         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
5819         Moved to elmo-util.el.
5820
5821         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
5822         Moved from elmo-pipe.el
5823
5824         * elmo-archive.el (elmo-archive-call-process): Enclose with
5825         static-if.
5826
5827         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
5828         "RFC822" (because RFC822.PEEK is obsolete).
5829         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
5830
5831 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
5832
5833         * elmo-archive.el (elmo-archive-call-process): Don't check for
5834         the exit status when Nemacs is running.
5835
5836 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
5837
5838         * elmo-net.el (elmo-network-session-password-key): Don't set default to
5839         'plain.
5840
5841         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
5842         (elmo-pop3-get-spec): Set default of auth to 'user.
5843
5844         * elmo-imap4.el (elmo-imap4-session-check):
5845         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
5846         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
5847         (elmo-imap4-auth-login): New function; Revival.
5848         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
5849         `elmo-imap4-auth-login'.
5850
5851 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5852
5853         * elmo2.el (toplevel): Move `product-provide' declare.
5854         * mmelmo.el (toplevel): Ditto.
5855
5856 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5857
5858         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
5859
5860 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
5861
5862         * elmo-util.el (elmo-folder-get-store-type): New function.
5863         (elmo-folder-direct-copy-p): Use it.
5864
5865 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5866
5867         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
5868         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
5869         and result of `elmo-imap4-use-flag-p'.
5870         (elmo-imap4-fetch-callback-1): Set mark according to
5871         the result of `elmo-imap4-use-flag-p'.
5872
5873 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
5874
5875         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
5876         (elmo-generic-list-folder-unread): Ditto.
5877         (elmo-folder-get-info): Ditto.
5878         (elmo-folder-set-info-max-by-numdb): Ditto.
5879         (elmo-folder-get-info-max): Ditto.
5880         (elmo-folder-get-info-length): Ditto.
5881         (elmo-folder-get-info-unread): Ditto.
5882         (elmo-folder-info-make-hashtb): Ditto.
5883
5884         * elmo2.el: Removed above functions.
5885
5886 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
5887
5888         * elmo-imap4.el (toplevel): Require 'ssl.
5889         Add autoload 'starttls.
5890         * elmo-pop3.el (toplevel): Ditto.
5891         * elmo-nntp.el (toplevel): Ditto.
5892
5893 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5894
5895         * elmo-imap4.el (toplevel): defun at compile time.
5896         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
5897         sasl-next-step, sasl-step-data, sasl-step-set-data.
5898         * elmo-pop3.el (toplevel): Ditto.
5899
5900 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5901
5902         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
5903
5904 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5905
5906         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
5907         if error.
5908         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
5909         and `elmo-pop-auth-apop'.
5910
5911 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5912
5913         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
5914
5915 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5916
5917         * elmo-pop3.el (elmo-network-authenticate-session): Split
5918         encoded response value.
5919
5920 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5921
5922         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
5923         `elmo-pop3-force-login'.
5924         Redefine `sasl-mechanisms'.
5925         * elmo-vars.el (elmo-pop3-force-login): Ditto.
5926
5927 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5928
5929         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
5930         Delete `elmo-imap4-authenticator-alist'.
5931         (elmo-imap4-auth-cram-md5): Delete.
5932         (elmo-imap4-auth-digest-md5): Delete.
5933
5934 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5935
5936         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
5937         (elmo-pop3-auth-scram-md5): Ditto.
5938         (elmo-pop3-auth-cram-md5): Ditto.
5939
5940 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5941
5942         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
5943         Delete `elmo-pop3-authenticator-alist'.
5944
5945 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5946
5947         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
5948         new SASL API.
5949         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
5950
5951 \f
5952 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
5953
5954         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
5955
5956 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
5957
5958         * elmo-nntp.el (elmo-nntp-get-folders-info):
5959         Fixed problem when '\' character is contained in user-id.
5960         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
5961
5962 \f
5963 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5964
5965         * elmo-imap4.el (elmo-imap4-delete-folder):
5966         Send "close" before "delete" (Use commented out line).
5967         (elmo-imap4-rename-folder): Ditto.
5968
5969         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
5970         folder string itself.
5971         (elmo-dop-list-deleted): New function.
5972         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
5973         killed.
5974
5975         * elmo-util.el (elmo-string-rassoc-all): New function.
5976
5977         * elmo-version.el (elmo-version): Up to 2.5.1.
5978
5979 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
5980
5981         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
5982
5983         * elmo-internal.el (elmo-internal-search): Fix last change.
5984
5985 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5986
5987         * elmo-internal.el (elmo-internal-search): Rewrite.
5988         (Fixed problem which is pointed out by Akihiro MOTOKI
5989         <motoki@da.jp.nec.com>)
5990
5991         * elmo-version.el (elmo-version): Up to 2.5.0.
5992
5993 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
5994
5995         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
5996
5997 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
5998
5999         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
6000         non-nil, make hierarchy.
6001
6002 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
6003
6004         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
6005         `elmo-pop3-use-uidl' must be bound to nil.
6006         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
6007
6008 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
6009
6010         * elmo-util.el (elmo-copy-file): Don't cause an error after
6011         `add-name-to-file' failed.
6012
6013         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
6014         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
6015
6016 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6017
6018         * elmo-version.el (elmo-version): Up to 2.3.93.
6019
6020 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6021
6022         * elmo-util.el (elmo-flatten): New function.
6023
6024 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6025
6026         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
6027         sync Author header.
6028         * elmo-cache.el (toplevel): Ditto.
6029         * elmo-database.el (toplevel): Ditto.
6030         * elmo-date.el (toplevel): Ditto.
6031         * elmo-dop.el (toplevel): Ditto.
6032         * elmo-filter.el (toplevel): Ditto.
6033         * elmo-imap4.el (toplevel): Ditto.
6034         * elmo-internal.el (toplevel): Ditto.
6035         * elmo-localdir.el (toplevel): Ditto.
6036         * elmo-localnews.el (toplevel): Ditto.
6037         * elmo-maildir.el (toplevel): Ditto.
6038         * elmo-msgdb.el (toplevel): Ditto.
6039         * elmo-multi.el (toplevel): Ditto.
6040         * elmo-net.el (toplevel): Ditto.
6041         * elmo-nntp.el (toplevel): Ditto.
6042         * elmo-pipe.el (toplevel): Ditto.
6043         * elmo-pop3.el (toplevel): Ditto.
6044         * elmo-util.el (toplevel): Ditto.
6045         * elmo-vars.el (toplevel): Ditto.
6046         * elmo2.el (toplevel): Ditto.
6047         * mmelmo-imap4.el (toplevel): Ditto.
6048         * mmelmo.el (toplevel): Ditto.
6049
6050         * elmo-version.el (elmo-version): Move to top.
6051
6052         * elmo-cache.el (toplevel): Fixed multiple Author header format.
6053         * elmo-imap4.el (toplevel): Ditto.
6054         * elmo-localdir.el (toplevel): Ditto.
6055         * elmo-msgdb.el (toplevel): Ditto.
6056         * elmo-nntp.el (toplevel): Ditto.
6057         * elmo-pop3.el (toplevel): Ditto.
6058         * elmo-version.el (toplevel): Ditto.
6059
6060         * elmo-localnews.el (toplevel): Added Keyword header.
6061
6062 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
6063
6064         * elmo-version.el (product-version-as-string): Defined using
6065         `defun-maybe'.
6066         (toplevel): Use it.
6067
6068         * elmo-localdir.el (toplevel): Updated copyright notice.
6069         * elmo-version.el (toplevel): Ditto.
6070         * elmo-msgdb.el (toplevel): Ditto.
6071         * elmo-imap4.el (toplevel): Ditto.
6072         * elmo-nntp.el (toplevel): Ditto.
6073         * elmo-pop3.el (toplevel): Ditto.
6074
6075 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
6076
6077         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
6078         messages.
6079
6080         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
6081         parameter value (It sometimes contains raw kanji).
6082
6083 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6084
6085         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
6086         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
6087
6088 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6089
6090         * elmo-imap4.el (elmo-network-initialize-session): Fix.
6091
6092 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6093
6094         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
6095         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
6096
6097 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
6098
6099         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
6100         value if selecting folder succceeded.
6101         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
6102
6103 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6104
6105         * elmo-util.el (elmo-make-directory): Fixed permission lateral
6106         representation.
6107
6108         * elmo-util.el (elmo-string-matched-member): New function.
6109
6110 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
6111
6112         * elmo-util.el (elmo-unintern): New macro.
6113         (elmo-number-set-member): Fixed docstring.
6114
6115         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
6116         tag token.
6117
6118 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
6119
6120         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
6121         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
6122
6123 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
6124
6125         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
6126         `no-error'.
6127         Added docstring.
6128         Return non-nil if selecting folder succeeded.
6129         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
6130
6131 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
6132
6133         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
6134         `file-name-completion' returns t.
6135         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
6136         (elmo-maildir-set-mark): Put `info' part to the files in the cur
6137         directory if it does not exist.
6138         (elmo-maildir-update-current): Use `while' instead of `mapcar'
6139         for iteration.
6140
6141 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
6142
6143         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
6144         enclosure (It's harmful in unplugged status).
6145
6146         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
6147
6148         * mmelmo-1.el: Removed.
6149
6150         * mmelmo-2.el: Ditto.
6151
6152         * mmelmo-imap4-1.el: Ditto.
6153
6154         * mmelmo-imap4-2.el: Ditto.
6155
6156         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
6157
6158         * mmelmo.el: Merged mmelmo-2.el.
6159
6160         * elmo-version.el (elmo-version): Up to 2.3.92.
6161
6162 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6163
6164         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
6165         elmo-update-number): Remove last period in "...done." message.
6166         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
6167         Ditto.
6168         * elmo-cache.el (elmo-cache-expire-by-size,
6169         elmo-cache-get-sorted-cache-file-list,
6170         elmo-cache-msgdb-create-as-numlist): Ditto.
6171         * elmo-dop.el (elmo-dop-save-pending-messages,
6172         (elmo-dop-flush-pending-append-operations): Ditto.
6173         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
6174         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
6175         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
6176         (elmo-localdir-pack-number): Ditto.
6177         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
6178         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
6179         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
6180         mime-write-entity-content): Ditto.
6181         * pldap.el (ldap-search-basic): Ditto.
6182
6183 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
6184
6185         * elmo-version.el (elmo-version): Up to 2.3.91.
6186
6187         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
6188         Only when filter is 'last'.
6189
6190         * elmo-util.el (elmo-condition-atom-regexp): New constant.
6191         (elmo-condition-parse-search-value): Use it.
6192         (elmo-read-search-condition-internal): Quote value only when
6193         it is not an atom.
6194
6195 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
6196
6197         * elmo2.el (elmo-generic-folder-diff): Fix.
6198
6199 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
6200
6201         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
6202         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
6203         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
6204         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
6205         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
6206         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
6207
6208 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
6209
6210         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
6211         extra-fields.
6212
6213 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
6214
6215         * elmo-version.el (elmo-version): Up to 2.3.90.
6216
6217         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
6218         (elmo-imap4-list-folder-important): Ditto.
6219
6220 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
6221
6222         * elmo-nntp.el (elmo-network-initialize-session): Fix.
6223
6224 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
6225
6226         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
6227
6228 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
6229
6230         * elmo-nntp.el (elmo-network-initialize-session):
6231         Add starttls negotiation.
6232
6233 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6234
6235         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
6236         response.
6237         (elmo-network-setup-session): Define.
6238         Call `elmo-nntp-send-mode-reader' when session opened.
6239
6240 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
6241
6242         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
6243
6244 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
6245
6246         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
6247         an invalid SPACE character ahead of `SEARCH' command.  Move
6248         a valid SPACE character following `SEARCH' from conditional
6249         `format' arguments to control-strings.
6250
6251 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
6252
6253         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
6254         was succeeded.
6255
6256         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
6257
6258 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
6259
6260         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
6261         `w32-get-true-file-link-count' as t.
6262
6263         * elmo-imap4.el (elmo-imap4-read): Abolished.
6264         (Renamed to `elmo-read' and moved to elmo-util.el)
6265         All other related portions are changed.
6266
6267         * elmo-util.el (elmo-read): New function.
6268         (elmo-condition-parse-search-value): Use it.
6269
6270 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6271
6272         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
6273
6274         * elmo-nntp.el (elmo-nntp-session): Define.
6275         (elmo-nntp-setting): Abolished.
6276         All other related portions are changed.
6277         (elmo-nntp-get-server-command): Changed argument.
6278         (elmo-nntp-set-server-command): Ditto.
6279         (elmo-nntp-xover-p): Ditto.
6280         (elmo-nntp-set-xover): Ditto.
6281         (elmo-nntp-listgroup-p): Ditto.
6282         (elmo-nntp-set-listgroup): Ditto.
6283         (elmo-nntp-list-active-p): Ditto.
6284         (elmo-nntp-set-list-active): Ditto.
6285         (elmo-nntp-xhdr-p): Ditto.
6286         (elmo-nntp-set-xhdr): Ditto.
6287         (elmo-nntp-flush-connection): Abolished.
6288         (elmo-nntp-get-connection): Abolished.
6289         (elmo-nntp-get-session): New function.
6290         (elmo-network-initialize-session): Defined.
6291         (elmo-network-authenticate-session): Ditto.
6292         (elmo-nntp-send-mode-reader): Changed argument.
6293         (elmo-nntp-send-command): Changed argument.
6294         All other related portions are changed.
6295         (elmo-nntp-read-response): Ditto.
6296         (elmo-nntp-read-raw-response): Ditto.
6297         (elmo-nntp-read-contents): Ditto.
6298         (elmo-nntp-read-body): Ditto.
6299         (elmo-nntp-goto-folder): Abolished.
6300         (elmo-nntp-select-group): New function.
6301         All other related portions are changed.
6302         (This function substitutes `elmo-nntp-goto-folder')
6303         (elmo-nntp-msgdb-create-by-header): Rewrite.
6304         (elmo-nntp-get-overview): Eliminated.
6305         (elmo-nntp-get-message): Ditto.
6306         (elmo-nntp-open-connection) Abolished.
6307         (elmo-nntp-read-msg): Rewrite.
6308         (elmo-nntp-post): Ditto.
6309         (elmo-nntp-send-data): Abolished.
6310         (elmo-nntp-send-buffer): New function.
6311         (elmo-nntp-send-data-line): Define as inline function.
6312         (elmo-nntp-get-folders-info-prepare): Use session as key.
6313         (elmo-nntp-groups-read-response): Changed argument.
6314         (elmo-nntp-retrieve-headers): Ditto.
6315         (elmo-nntp-msgdb-create-message): Ditto.
6316
6317         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
6318         when searching by 'since' or 'before'.
6319
6320 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6321
6322         * elmo-version.el (toplevel): Use product-version-as-string for set
6323         verstion-string, if defined.
6324
6325 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
6326
6327         * elmo-util.el: Doc fixes.
6328
6329 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6330
6331         * elmo-archive.el (toplevel): Use product-provide.
6332         * elmo-cache.el (toplevel): Ditto.
6333         * elmo-database.el (toplevel): Ditto.
6334         * elmo-date.el (toplevel): Ditto.
6335         * elmo-dop.el (toplevel): Ditto.
6336         * elmo-filter.el (toplevel): Ditto.
6337         * elmo-imap4.el (toplevel): Ditto.
6338         * elmo-internal.el (toplevel): Ditto.
6339         * elmo-localdir.el (toplevel): Ditto.
6340         * elmo-localnews.el (toplevel): Ditto.
6341         * elmo-maildir.el (toplevel): Ditto.
6342         * elmo-msgdb.el (toplevel): Ditto.
6343         * elmo-multi.el (toplevel): Ditto.
6344         * elmo-net.el (toplevel): Ditto.
6345         * elmo-nntp.el (toplevel): Ditto.
6346         * elmo-pipe.el (toplevel): Ditto.
6347         * elmo-pop3.el (toplevel): Ditto.
6348         * elmo-util.el (toplevel): Ditto.
6349         * elmo-vars.el (toplevel): Ditto.
6350         * elmo2.el (toplevel): Ditto.
6351         * mmelmo-1.el (toplevel): Ditto.
6352         * mmelmo-2.el (toplevel): Ditto.
6353         * mmelmo-imap4-1.el (toplevel): Ditto.
6354         * mmelmo-imap4-2.el (toplevel): Ditto.
6355         * mmelmo-imap4.el (toplevel): Ditto.
6356         * mmelmo.el (toplevel): Ditto.
6357
6358 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
6359
6360         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
6361         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
6362
6363 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
6364
6365         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
6366         before splitting.
6367         (elmo-multi-split-number-alist): Ditto.
6368
6369 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6370
6371         * elmo-version.el: New file.  Use product.el.
6372         * elmo2.el: Add (require 'elmo-version).
6373         * elmo-vars.el (elmo-appname, elmo-version): Move to
6374         elmo-version.el
6375
6376 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6377
6378         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
6379         `elmo-msgdb-expand-path'.
6380         (elmo-msgdb-load): Ditto.
6381         Abolished 2nd argument. If 1st argument is not string, treat as spec.
6382         (elmo-generic-list-folder-unread): Rewrite.
6383         (elmo-generic-list-folder-important): Changed argument.
6384         (elmo-list-folder-unread): Ditto.
6385         (elmo-list-folder-important): Ditto.
6386         (elmo-folder-diff): Rewrite.
6387         (elmo-generic-folder-diff): New function.
6388         (elmo-multi-get-number-alist-list): Abolished
6389         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
6390         (elmo-multi-folder-diff): Moved to elmo-multi.el
6391         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
6392
6393         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
6394         `elmo-msgdb-expand-path'.
6395         (elmo-pop3-msgdb-create-as-numlist): Ditto.
6396         (elmo-pop3-read-msg): Ditto.
6397         (elmo-pop3-delete-msgs): Ditto.
6398         (elmo-pop3-folder-diff): New alias.
6399
6400         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
6401         `elmo-msgdb-expand-path'.
6402         (elmo-pipe-list-folder-unread): Changed arguments.
6403         (elmo-pipe-list-folder-important): Ditto.
6404         (elmo-pipe-folder-diff): New alias.
6405
6406         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
6407         `elmo-msgdb-expand-path'.
6408         (elmo-nntp-max-of-folder): Ditto.
6409         (elmo-nntp-msgdb-create): Ditto.
6410         (elmo-nntp-delete-msgs): Ditto.
6411         (elmo-nntp-folder-diff): New alias.
6412
6413         * elmo-multi.el (elmo-multi-folder-diff): New function.
6414         (elmo-multi-split-mark-alist): Ditto.
6415         (elmo-multi-split-number-alist): Ditto.
6416         (elmo-multi-mark-alist-list): Abolished (Renamed to
6417         elmo-multi-split-mark-alist).
6418         (elmo-multi-list-folder-unread): Rewrite.
6419         (elmo-multi-list-folder-important): Ditto.
6420         (elmo-multi-list-folder): Set `spec' as 1st argument for
6421         `elmo-msgdb-expand-path'.
6422         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
6423         instead of `elmo-multi-get-number-alist-list'.
6424
6425         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
6426         If 1st argument is not string, treat as spec.
6427         (elmo-list-folder-by-location): Set `spec' as 1st argument for
6428         `elmo-msgdb-expand-path'.
6429         (elmo-msgdb-flist-load): Ditto.
6430         (elmo-msgdb-flist-save): Ditto.
6431         (elmo-msgdb-delete-path): Ditto.
6432         (elmo-msgdb-rename-path): Ditto.
6433
6434         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
6435         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6436         (elmo-maildir-delete-mark-msgs): Ditto.
6437         (elmo-maildir-msgdb-create): Ditto.
6438         (elmo-maildir-read-msg): Ditto.
6439         (elmo-maildir-delete-msgs): Ditto.
6440         (elmo-maildir-list-folder-subr): Ditto.
6441         (elmo-maildir-search): Ditto.
6442         (elmo-maildir-get-msg-filename): Ditto.
6443         (elmo-maildir-pack-number): Ditto.
6444         (elmo-maildir-folder-diff): New alias.
6445
6446         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
6447
6448         * elmo-localdir.el (elmo-localdir-list-folder-subr):
6449         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6450         (elmo-localdir-folder-diff): New alias.
6451
6452         * elmo-internal.el (elmo-internal-list-folder-subr):
6453         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6454         (elmo-internal-list-folder-by-location): Ditto.
6455         (elmo-internal-msgdb-create): Ditto.
6456         (elmo-internal-delete-msgs): Ditto.
6457         (elmo-internal-read-msg): Ditto.
6458         (elmo-internal-folder-diff): New alias.
6459
6460         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
6461         (elmo-imap4-list-folder): Set `spec' as 1st argument for
6462         `elmo-msgdb-expand-path'.
6463         (elmo-imap4-list-folder-unread): Changed arguments.
6464         (elmo-imap4-list-folder-important): Ditto.
6465
6466         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
6467         (elmo-filter-list-folder-important): Ditto.
6468         (elmo-filter-folder-diff): New function.
6469
6470         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
6471
6472         * elmo-cache.el (elmo-cache-list-folder):
6473         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6474         (elmo-cache-copy-msgs): Ditto.
6475         (elmo-cache-folder-diff): New alias.
6476
6477         * elmo-archive.el (elmo-archive-list-folder-subr):
6478         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6479         (elmo-archive-get-archive-name): Ditto.
6480         (elmo-archive-create-file): Ditto.
6481         (elmo-archive-append-msg): Ditto.
6482         (elmo-archive-copy-msgs): Ditto.
6483         (elmo-archive-copy-msgs-froms): Ditto.
6484         (elmo-archive-get-msg-filename): Ditto.
6485         (elmo-archive-folder-diff): New alias.
6486
6487 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
6488
6489         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
6490         (elmo-pop3-stream-type-alist): New variable.
6491         (elmo-nntp-stream-type-alist): New variable.
6492
6493         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
6494         (elmo-kill-buffer): Ditto.
6495         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
6496         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
6497         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
6498         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
6499         (elmo-imap4-get-spec): Take into account
6500         `elmo-imap4-stream-type-alist'.
6501
6502 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
6503
6504         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
6505         (elmo-nntp-list-folders-get-cache): Ditto.
6506
6507 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
6508
6509         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
6510         character before 'uid'.
6511
6512 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
6513
6514         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
6515
6516         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
6517
6518         * elmo-util.el (elmo-number-set-member): New function.
6519         (elmo-number-set-append-list): Ditto.
6520         (elmo-number-set-append): Ditto.
6521
6522         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
6523         Use `elmo-number-set-member'.
6524         (elmo-living-messages): Ditto.
6525         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
6526         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
6527
6528         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
6529         (elmo-imap4-add-to-cont-list): Abolished.
6530         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
6531         instead of elmo-imap4-add-to-cont-list.
6532
6533         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
6534         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
6535
6536         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
6537
6538 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
6539
6540         * elmo-util.el (elmo-condition-parse-search-value):
6541         Fixed date parsing.
6542
6543 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6544
6545         * elmo-util.el (elmo-condition-find-key-internal): New function.
6546         (elmo-condition-find-key): Ditto.
6547
6548         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
6549         (elmo-msgdb-search-internal): Ditto.
6550         (elmo-msgdb-search): Ditto.
6551
6552 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6553
6554         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
6555         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
6556
6557         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
6558         (elmo-nntp-search-primitive): Fixed problem when condition is
6559         'unmatch'.
6560
6561         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
6562
6563         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
6564         (elmo-nntp-xhdr-p): New macro.
6565         (elmo-nntp-set-xhdr): Ditto.
6566         (elmo-nntp-parse-xhdr-response): New function.
6567         (elmo-nntp-retrieve-field): Ditto.
6568         (elmo-nntp-search-primitive): Ditto.
6569         (elmo-nntp-search): Implemented.
6570
6571         * elmo-date.el (elmo-date-make-sortable-string): New macro.
6572
6573         * elmo-archive.el (elmo-archive-search): Set all number list to
6574         `elmo-archive-field-condition-match'
6575
6576         * elmo-localdir.el (elmo-localdir-search): Likewise.
6577
6578         * elmo-maildir.el (elmo-maildir-search): Likewise.
6579
6580 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
6581
6582         * elmo-msgdb.el (elmo-living-messages): New function.
6583         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
6584         * elmo-cache.el (elmo-cache-list-folder): Ditto.
6585         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6586         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
6587         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
6588         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
6589         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
6590         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6591         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6592         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6593         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6594
6595 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
6596
6597         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
6598
6599         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
6600
6601         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
6602
6603         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
6604         arguments for `SEARCH' command.
6605         (elmo-imap4-parse-string): Set `POS' argument for char-after.
6606         All other related portions are changed.
6607
6608         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
6609
6610         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
6611         (elmo-list-folder-unread): Rewrite.
6612         (elmo-list-folder-important): Ditto.
6613
6614         * elmo-util.el (elmo-filter-get-spec): Rewrite.
6615         (elmo-condition-parse-error): New inline function.
6616         (elmo-read-search-condition): New function.
6617         (elmo-read-search-condition-internal): Ditto.
6618         (elmo-parse-search-condition): Rewrite.
6619         (elmo-condition-parse): New function.
6620         (elmo-condition-parse-or-expr): Ditto.
6621         (elmo-condition-parse-and-expr): Ditto.
6622         (elmo-condition-parse-primitive): Ditto.
6623         (elmo-condition-parse-search-value): Ditto.
6624         (elmo-buffer-field-primitive-condition-match): Ditto.
6625         (elmo-buffer-field-condition-match): Rewrite.
6626         (elmo-file-field-condition-match): Ditto.
6627
6628         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
6629         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
6630
6631         * elmo-internal.el (elmo-internal-search): Set `number' and
6632         `number-list' argument of `elmo-file-field-condition-match'.
6633
6634         * elmo-maildir.el (elmo-maildir-search): Ditto.
6635
6636         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
6637         `msgdb' as argument instead of `mark-alist'.
6638         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
6639         `overview'.
6640
6641         * elmo-multi.el: Likewise.
6642
6643         * elmo-pipe.el: Likewise.
6644
6645         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
6646         (elmo-imap4-search-internal): Rewrite.
6647         (elmo-imap4-search): Ditto.
6648
6649         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
6650         (elmo-filter-list-folder-unread): Ditto.
6651         (elmo-filter-list-folder-important): Ditto.
6652         (elmo-filter-search): Rewrite.
6653
6654         * elmo-cache.el (elmo-cache-search-all): Set `number' and
6655         `number-list' argument of `elmo-file-field-condition-match'.
6656         (elmo-cache-search): Ditto.
6657
6658         * elmo-localdir.el: Likewise.
6659
6660         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
6661         number-list and pass it to `elmo-buffer-field-condition-match'.
6662         (elmo-archive-field-condition-match): Pass `number-list' to
6663         `elmo-archive-field-condition-match'
6664
6665 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
6666
6667         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
6668         `listgroup'.
6669
6670         * elmo2.el (elmo-folder-diff-async-callback): New variable.
6671         (elmo-folder-diff-async-callback-data): Ditto.
6672         (elmo-folder-diff-async): New function.
6673
6674         * elmo-net.el (elmo-network-session-name-prefix): New variable.
6675         (elmo-network-session-cache-key): Use it as a prefix of the session
6676         name.
6677         (elmo-network-open-session): Ditto.
6678
6679         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
6680         (elmo-imap4-status-callback-data): Ditto.
6681         (elmo-imap4-server-diff-async-callback): New variable.
6682         (elmo-imap4-server-diff-async-callback-data): Ditto.
6683         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
6684         `elmo-imap4-status-callback-data'.
6685         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
6686         `elmo-imap4-status-callback-data' as nil.
6687         (elmo-imap4-server-diff): Ditto.
6688         (elmo-imap4-server-diff-async-callback-1): New function.
6689         (elmo-imap4-server-diff-async): Ditto.
6690         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
6691
6692 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
6693
6694         * elmo-util.el (elmo-list-delete): Doc fix.
6695         (elmo-delete-lists): Abolish.
6696         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
6697         instead of `elmo-delete-lists'.
6698
6699 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
6700
6701         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
6702         before `sort'.
6703
6704 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
6705
6706         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
6707         `elmo-imap4-literal-subr'.
6708         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
6709         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
6710
6711 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
6712
6713         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
6714         (elmo-archive-list-folder): Fix.
6715         (elmo-archive-max-of-folder): Fix.
6716
6717 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
6718
6719         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
6720          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
6721         (elmo-localdir-append-msg): Ditto.
6722         (elmo-localdir-list-folder): Fix for `nonsort'.
6723         (elmo-localdir-list-folder-subr): Fix for `killed'.
6724         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6725         (elmo-maildir-list-folder-subr): Ditto.
6726         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6727         (elmo-archive-list-folder-subr): Ditto.
6728         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6729         (elmo-internal-list-folder-subr): Ditto.
6730
6731 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6732
6733         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
6734
6735 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
6736
6737         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
6738
6739 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6740
6741         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
6742         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
6743
6744         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
6745         before greeting.
6746         (elmo-imap4-read-part): Use "body.peek" to fetch part.
6747         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
6748
6749 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
6750
6751         * mmelmo-imap4-2.el (mime-entity-children): Defined.
6752
6753         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
6754         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
6755         before STORE command.
6756
6757 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
6758
6759         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
6760
6761         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
6762         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
6763         of `response'.
6764         (elmo-imap4-list-folders): Removed unused local variable.
6765         (elmo-network-initialize-session): Ditto.
6766         (elmo-imap4-delete-msg-by-id): Ditto.
6767         (elmo-imap4-parse-fetch): Ditto.
6768         (elmo-imap4-copy-msgs): Ditto.
6769         Use `dst-spec' instead of `dst-folder'.
6770         (elmo-network-authenticate-session): Check authenticate type `plain'.
6771
6772 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
6773
6774         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
6775         garbage checking.
6776         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
6777         `elmo-imap4-response-value'.
6778         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
6779
6780 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6781
6782         * elmo-imap4.el (elmo-imap4-send-command):
6783         Cause elmo-imap4-bye-error when current response is BYE.
6784         (elmo-imap4-arrival-filter): Changed greeting response value.
6785
6786         * elmo2.el (elmo-imap4-bye-error): Define.
6787
6788         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
6789         (elmo-imap4-server-diff): Ditto.
6790         (elmo-imap4-response-bye-p): New macro.
6791         (elmo-imap4-response-error-text): Get text from BYE response.
6792         (elmo-imap4-read-response): Return if BYE response.
6793         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
6794         (elmo-imap4-folder-exists-p): Ditto.
6795         (elmo-imap4-commit): Do nothing when different mailbox is selected.
6796         (elmo-imap4-parse-bye): New function.
6797         (elmo-imap4-parse-response): Remove needless let.
6798         Call `elmo-imap4-parse-bye'.
6799
6800 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
6801
6802         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
6803         the mailbox does not exist.
6804         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
6805
6806 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
6807
6808         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
6809
6810 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6811
6812         * elmo-vars.el (elmo-search-mime-charset): Abolished.
6813
6814         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
6815         (elmo-network-initialize-session-buffer): Defined.
6816
6817         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
6818         Abolished.
6819         (mmelmo-imap4-get-mime-entity): Rewrite.
6820
6821         * elmo2.el (elmo-error): Capitalize error message.
6822
6823         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
6824         (elmo-network-session-buffer): New macro.
6825         (elmo-network-open-session): Use it.
6826
6827         * elmo-imap4.el: Rewrite.
6828
6829 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
6830
6831         * elmo-nntp.el (Toplevel): Require 'elmo-net.
6832
6833 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
6834
6835         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
6836         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
6837         (elmo-imap4-create-msgdb-from-overview-string): Use
6838         `elmo-msgdb-create-overview-from-buffer'.
6839
6840 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
6841
6842         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
6843         (elmo-imap4-default-hierarchy-delimiter): New variable.
6844         (elmo-imap4-list-folders): Use it.
6845
6846 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
6847
6848         * elmo-net.el (elmo-network-open-session): Add user and
6849         stream-type for process-buffer name.
6850
6851         * elmo-pop3.el (elmo-network-initialize-session): Call
6852         buffer-disable-undo.
6853
6854         * elmo-imap4.el (elmo-network-initialize-session):
6855         Set current-buffer as an argument for `buffer-disable-undo'.
6856
6857         * elmo-pop3.el (elmo-network-close-session): Don't use
6858         `process-live-p'.
6859
6860         * elmo-vars.el (elmo-default-pop3-authenticate-type):
6861         Set default as 'user.
6862
6863         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
6864
6865         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
6866         and `elmo-imap4-flush-connection'.
6867
6868         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
6869         (elmo-pop3-get-spec): Assume auth as symbol.
6870         (elmo-open-network-stream): Moved to `elmo-net'.
6871
6872         * elmo-pop3.el (toplevel): Require 'elmo-net.
6873         Define `sasl-cram-md5' to silence byte compilier.
6874         (elmo-pop3-connection-cache) Abolished.
6875         (elmo-pop3-authenticator-alist) New variable.
6876         (elmo-pop3-session): Define.
6877         (elmo-pop3-connection-get-process): Abolished.
6878         (elmo-pop3-connection-get-buffer): Ditto.
6879         (elmo-pop3-close-connection): Ditto.
6880         (elmo-pop3-flush-connection): Ditto.
6881         (elmo-pop3-get-connection): Ditto.
6882         (elmo-pop3-get-session): New function.
6883         (Replacement for `elmo-pop3-get-connection').
6884         All other related modules are changed.
6885         (elmo-network-close-session): Define.
6886         (elmo-pop3-send-command): Abolished argument `buffer'.
6887         All other related modules are changed.
6888         (elmo-pop3-read-response): Likewise.
6889         (elmo-pop3-open-connection): Abolished.
6890         (elmo-pop3-auth-user): New function.
6891         (elmo-pop3-auth-apop): Ditto.
6892         (elmo-pop3-auth-cram-md5): Ditto.
6893         (elmo-pop3-auth-scram-md5): Ditto.
6894         (elmo-pop3-auth-digest-md5): Ditto.
6895         (elmo-network-initialize-session): Define.
6896         (elmo-network-authenticate-session): Ditto.
6897         (elmo-network-setup-session): Ditto.
6898
6899         * elmo-imap4.el (toplevel): Require 'elmo-net.
6900         (elmo-imap4-session): Define.
6901         (elmo-imap4-connection-cache): Abolished.
6902         (elmo-imap4-password-key): Ditto.
6903         (elmo-imap4-flush-connection): Ditto.
6904         (elmo-imap4-get-connection): Ditto.
6905         All other related modules are changed.
6906         (elmo-imap4-get-session): New function
6907         (Replacement for `elmo-imap4-get-connection').
6908         (elmo-imap4-read-response): Abolished argument `buffer'.
6909         All other related modules are changed.
6910         (elmo-imap4-send-command): Likewise.
6911         (elmo-imap4-select-folder): Abolished.
6912         All other related modules are changed.
6913         (elmo-imap4-select-mailbox): New function.
6914         (Replacement for `elmo-imap4-select-folder').
6915         (elmo-imap4-auth-login): Simplify.
6916         (Assume current buffer as process buffer)
6917         (elmo-imap4-auth-cram-md5): Ditto.
6918         (elmo-imap4-auth-digest-md5): Ditto.
6919         (elmo-imap4-login): Ditto.
6920         (elmo-imap4-open-connection): Abolished.
6921         (elmo-imap4-open-connection-1): Abolished.
6922         (elmo-network-initialize-sessoin): Define.
6923         (elmo-network-authenticate-session): Ditto.
6924         (elmo-network-setup-session): Ditto.
6925
6926         * elmo-net.el: New module.
6927
6928 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
6929
6930         * elmo-util.el (elmo-define-error): New function.
6931
6932         * elmo2.el (elmo-error): Define.
6933         (elmo-open-error): Define.
6934         (elmo-authenticate-error): Define.
6935
6936         * elmo-imap4.el (elmo-imap4-error): Abolish.
6937         (elmo-imap4-error-type): Abolish.
6938         (elmo-imap4-error-process): Abolish.
6939         (elmo-imap4-error-message): Abolish
6940         (elmo-imap4-list-folders): Don't quote lambda.
6941         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
6942         (elmo-imap4-parse-namespace): Ditto.
6943         (elmo-imap4-open-connection): Rewrite.
6944         (elmo-imap4-open-connection-1): Simplified (authenticate only).
6945         (elmo-imap4-get-connection): Abolish local variable `result'.
6946
6947 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
6948
6949         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
6950         wrong-type-argument error when auth is nil.
6951
6952 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
6953
6954         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
6955         (elmo-default-nntp-stream-type): Ditto.
6956         (elmo-default-pop3-stream-type): Ditto.
6957         (elmo-network-stream-type-alist): Ditto.
6958         (elmo-default-imap4-ssl): Abolished.
6959         (elmo-default-nntp-ssl): Ditto.
6960         (elmo-default-pop3-ssl): Ditto.
6961
6962         * elmo-util.el: (toplevel): Removed needless requires.
6963         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
6964         (elmo-open-network-stream): Open network stream according to
6965         the value of `elmo-network-stream-type-alist'.
6966         (elmo-get-network-stream-type): New function.
6967         (elmo-network-stream-type-spec-string): New macro.
6968         (elmo-network-stream-type-symbol): Ditto.
6969         (elmo-network-stream-type-function): Ditto.
6970
6971         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
6972         network-stream-type. All other related portions are changed.
6973         (elmo-pop3-open-connection): Ditto.
6974
6975         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
6976         network-stream-type. All other related portions are changed.
6977
6978         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
6979         network-stream-type.All other related portions are changed.
6980         (elmo-imap4-error): New macro.
6981         (elmo-imap4-error-type): Ditto.
6982         (elmo-imap4-error-process): Ditto.
6983         (elmo-imap4-error-message): Ditto.
6984         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
6985         (elmo-imap4-auth-cram-md5): Ditto.
6986         (elmo-imap4-auth-digest-md5): Ditto.
6987         (elmo-imap4-login): Ditto.
6988         (elmo-imap4-open-connection): Remove password entry if authentication
6989         was in vain.
6990         (elmo-imap4-user-at-host): Abolished.
6991         (elmo-imap4-password-key): New buffer local variable.
6992         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
6993         using protocol, port, auth and stream-type.
6994
6995         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
6996
6997 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
6998
6999         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
7000
7001         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
7002
7003         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
7004         (elmo-imap4-authenticator-alist): New variable.
7005         (elmo-imap4-open-connection-1): Rename from
7006         elmo-imap4-open-connection.
7007         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
7008         only wraps elmo-imap4-open-connection-1.
7009         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
7010         user-at-host.
7011         (elmo-imap4-auth-login): New function.
7012         (elmo-imap4-auth-cram-md5): New function.
7013         (elmo-imap4-auth-digest-md5): New function.
7014         (elmo-imap4-login): New function.
7015
7016 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
7017
7018         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
7019         function `error'.
7020
7021 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
7022
7023         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
7024
7025 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
7026
7027         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
7028
7029 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
7030
7031         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
7032         for server responses, quote `*' regardless of where it appears.
7033
7034 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
7035
7036         * elmo-maildir.el (elmo-maildir-commit): New alias.
7037
7038 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
7039
7040         * elmo-util.el (elmo-display-progress):
7041                 Use `progress-feedback-with-label'.
7042
7043 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
7044
7045         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
7046         (elmo-imap4-non-atom-char-regex): Ditto.
7047         (elmo-imap4-non-text-char-regex): Ditto.
7048         (elmo-imap4-literal-threshold): Ditto.
7049         (elmo-imap4-atom-p): New function.
7050         (elmo-imap4-quotable-p): Ditto.
7051         (elmo-imap4-nil): Ditto.
7052         (elmo-imap4-atom): Ditto.
7053         (elmo-imap4-quoted): Ditto.
7054         (elmo-imap4-literal-subr): Ditto.
7055         (elmo-imap4-literal): Ditto.
7056         (elmo-imap4-buffer-literal): Ditto.
7057         (elmo-imap4-string-subr): Ditto.
7058         (elmo-imap4-string): Ditto.
7059         (elmo-imap4-buffer-string): Ditto.
7060         (elmo-imap4-astring-subr): Ditto.
7061         (elmo-imap4-astring): Ditto.
7062         (elmo-imap4-buffer-astring): Ditto.
7063         (elmo-imap4-nstring): Ditto.
7064         (elmo-imap4-buffer-nstring): Ditto.
7065         (elmo-imap4-mailbox): New alias.
7066         (elmo-imap4-field-body): Ditto.
7067         (elmo-imap4-userid): Ditto.
7068         (elmo-imap4-password): Ditto.
7069         (elmo-imap4-format-quoted): New function.
7070         (elmo-imap4-send-command): Rewritten.  Accept a list of command
7071         arguments and handle "atom", "quoted" and "literal" string here.
7072         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
7073         `elmo-imap4-send-command'.
7074         (elmo-imap4-folder-exists-p): Likewise.
7075         (elmo-imap4-create-folder): Likewise.
7076         (elmo-imap4-delete-folder): Likewise.
7077         (elmo-imap4-rename-folder): Likewise.
7078         (elmo-imap4-max-of-folder): Likewise.
7079         (elmo-imap4-check-validity): Likewise.
7080         (elmo-imap4-sync-validity): Likewise.
7081         (elmo-imap4-server-diff): Likewise.
7082         (elmo-imap4-select-folder): Likewise.
7083         (elmo-imap4-copy-msgs): Likewise.
7084         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
7085         (elmo-imap4-mark-set-on-msgs): Likewise.
7086         (elmo-imap4-read-part): Likewise.
7087         (elmo-imap4-read-msg): Likewise.
7088         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
7089         `elmo-imap4-password' for `elmo-imap4-send-command'.
7090         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
7091         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
7092         `elmo-imap4-buffer-literal'.
7093         (elmo-imap4-append-msg): Likewise.
7094
7095         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
7096         `delete' for removing dead connection from the connection cache.
7097         Move deletion of the process buffer after that.
7098         (elmo-imap4-list): Change `defsubst' to `defun'.
7099         (elmo-imap4-commit): Make error message verbose.
7100         (elmo-imap4-search): Ditto.
7101         (elmo-imap4-list): Ditto.
7102         (elmo-imap4-select-folder): Ditto.
7103         (elmo-imap4-copy-msgs): Ditto.
7104         (elmo-imap4-delete-msg-by-id): Ditto.
7105         (elmo-imap4-append-msg-by-id): Ditto.
7106         (elmo-imap4-append-msg): Ditto.
7107
7108 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7109
7110         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
7111         when dired is used on XEmacs.
7112
7113 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
7114
7115         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
7116         instead of `append'.
7117         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
7118         `elmo-plugged-p' directly.
7119         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
7120         of `elmo-plugged-p' directly.
7121
7122         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
7123         Eliminate unused variable.  Use `memq' for checking a process status.
7124         Use `cons' instead of `append' for updating the connection cache.
7125         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
7126         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
7127
7128 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
7129
7130         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
7131         `elmo-imap4-read-point' exactly.
7132
7133         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
7134         the local variable `folder' to `mailbox'.
7135         Rename the argument `fld' to `folder'.
7136
7137 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
7138
7139         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
7140         * elmo-imap4.el (elmo-imap4-commit): Ditto.
7141
7142 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
7143
7144         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
7145         (elmo-pop3-number-uidl-hash): New buffer-local variable.
7146         (elmo-pop3-uidl-number-hash): Ditto.
7147         (elmo-pop3-size-hash): Ditto.
7148         (elmo-pop3-uidl-done): Ditto.
7149         (elmo-pop3-list-done): Ditto.
7150         (elmo-pop3-connection-get-process): New defmacro.
7151         (elmo-pop3-connection-get-buffer): Ditto.
7152         (elmo-pop3-close-connection): Delete buffer and process.
7153         (elmo-pop3-flush-connection): Don't delete buffer and process.
7154         (elmo-pop3-get-connection): Added optional argument `if-exists'.
7155         Setup UIDL and size hash.
7156         (elmo-pop3-send-command-no-erase): Deleted
7157         (elmo-pop3-send-command): Added optional argument `no-erase'.
7158         (elmo-pop3-parse-uidl-response): New function.
7159         (elmo-pop3-parse-list-response): Set size hash.
7160         (elmo-pop3-list-location): New function.
7161         (elmo-pop3-list-by-uidl-subr): Ditto.
7162         (elmo-pop3-list-by-list): Ditto.
7163         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
7164         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
7165         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
7166         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
7167         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
7168         Use uidl.
7169         (elmo-pop3-uidl-to-number): New function.
7170         (elmo-pop3-number-to-uidl): Ditto.
7171         (elmo-pop3-number-to-size): Ditto.
7172         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
7173         Set number by use of uidl.
7174         (elmo-pop3-msgdb-create-message): Likewise.
7175         Set size, loc-alist in msgdb.
7176         (elmo-pop3-read-msg): Set number by use of uidl.
7177         Added optional argument `msgdb'.
7178         (elmo-pop3-delete-msg): Ditto.
7179         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
7180         (elmo-pop3-commit): Close connection.
7181
7182         * elmo-pipe.el (elmo-pipe-max-of-folder):
7183         Bind `elmo-pop3-use-uidl' as nil.
7184         (elmo-pipe-drain): Ditto.
7185         Call `elmo-commit'.
7186
7187         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
7188         (elmo-msgdb-overview-entity-set-size): New defsubst.
7189
7190 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
7191
7192         * elmo-vars.el (elmo-use-killed-list): New variable
7193         (Renamed from `elmo-nntp-use-killed-list').
7194         (elmo-nntp-use-killed-list): Eliminated.
7195
7196         * elmo-msgdb.el (elmo-msgdb-expand-path):
7197         Changed expanding msgdb path for elmo-multi.
7198
7199         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
7200         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
7201         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
7202         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
7203         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
7204         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
7205         (toplevel): Deleted time-stamp line.
7206
7207         * elmo2.el (elmo-clear-killed ): Defined as function
7208         (Abolished defining as a backend function).
7209         All other related modules are changed.
7210
7211 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
7212
7213         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
7214
7215 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
7216
7217         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
7218
7219 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7220
7221         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
7222
7223 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
7224
7225         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
7226         asynchronous folder check.
7227
7228         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
7229
7230         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
7231         `elmo-nntp-use-killed-list'.
7232         (elmo-nntp-list-folder): Use killed list.
7233         (elmo-nntp-max-of-folder): Ditto.
7234         (elmo-nntp-msgdb-create): Set killed list.
7235
7236         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
7237
7238         * elmo2.el (elmo-clear-killed): New backend function.
7239         All other related modules are changed.
7240
7241 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
7242
7243         * elmo-util.el (elmo-imap4-spec-folder): Use
7244         `elmo-imap4-spec-mailbox'; Mark as obsolete.
7245         All callers changed.
7246
7247 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
7248
7249         * mmelmo-2.el (initialize-instance):
7250         Use `mime-buffer-entity-buffer-internal' instead of
7251         `mime-entity-buffer'.
7252
7253         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
7254         (mime-entity-body): Implemented.
7255         (mime-goto-header-start-point): Deleted.
7256         (mime-goto-body-end-point): Ditto.
7257         (mime-entity-point-min): Ditto.
7258         (mime-entity-point-max): Ditto.
7259         (mime-entity-children): Ditto.
7260         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
7261         instead of `mime-entity-buffer'.
7262         (mime-entity-header-buffer): Ditto.
7263         (mime-entity-body-buffer): Ditto.
7264         (mime-write-entity-content): Ditto.
7265
7266         * pldap.el (ldap-static-if): New macro.
7267         (toplevel): Use it instead of `static-if'.
7268
7269 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
7270
7271         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
7272         included in `attrs' argument.
7273
7274 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
7275
7276         * elmo-util.el (elmo-get-passwd): Use old backquote style.
7277
7278         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
7279         (ldap-ldif-safe-init-char-regexp): Ditto.
7280         (ldap-ldif-safe-string-regexp): Ditto.
7281         (ldap/ldif-safe-string-p): New macro.
7282         (ldap/ldif-insert-field): Ditto.
7283         (ldap-modify): Use it.
7284         (ldap-add): Ditto.
7285         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
7286         (ldap-decode-attribute): Decode only when `attr' is consp.
7287         (ldap-delete): Bind `ret'.
7288         (toplevel): Require 'cl at compile time.
7289         Removed (require 'poe) and (require 'std11).
7290         (pldap-version): Eliminated.
7291         (ldap-search-basic): Removed auth and dn binding.
7292         (ldap-ldif-field-name-regexp): New constant.
7293         (ldap-ldif-field-head-regexp): Ditto.
7294         (ldap-ldif-next-field-head-regexp): Ditto.
7295         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
7296         (ldap/field-end): New function.
7297         (ldap/field-body): Use it.
7298         (ldap/collect-field): Ditto.
7299         (ldap-search-basic): Use `ldap/field-body'.
7300
7301 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
7302
7303         * pldap.el (ldap-default-attribute-encoder): New user option.
7304         (ldap/field-body): Decode base64 string.
7305         (ldap/collect-field): Ditto.
7306         (ldap-encode-attribute): New function.
7307         (ldap-add-entries): Use it.
7308         (ldap-modify-entries): Ditto.
7309         (ldap-search-entries): Enclosed decoding function with
7310         `with-temp-buffer' and set as unibyte.
7311         (ldap-search-basic): Set process buffer as unibyte.
7312
7313         * elmo-util.el (elmo-folder-identical-system-p):
7314         Eliminated name space checking.
7315
7316         * pldap.el: New module.
7317         toplevel: Changed condition to detect built-in ldap feature.
7318         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
7319         (ldap-add): Added error handling.
7320         (ldap-modify): Ditto.
7321         (ldap-delete): Ditto.
7322
7323 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
7324
7325         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
7326         Initialize local variables with `let'.  Inline a temporary
7327         variable for the progress percentage.  Sort `setq' to reduce
7328         function call in the while-loop.
7329
7330         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
7331         into the conditional branch.
7332
7333 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
7334
7335         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
7336         Move a conditional out of the while-loop.
7337
7338 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7339
7340         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
7341         elmo-msgdb-overview-get-entity-by-number.
7342         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
7343         throw.
7344
7345 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
7346
7347         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
7348         the local variable for a packed number self descriptively.
7349
7350 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7351
7352         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
7353         * elmo-localdir.el (elmo-localdir-pack-number): Use
7354         `elmo-msgdb-overview-get-entity' instead of
7355         `elmo-msgdb-overview-get-entity-by-number'.
7356         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
7357         (elmo-msgdb-search-overview-entity): Removed.
7358         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
7359         by message-id or number.
7360         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
7361         instead of `elmo-msgdb-overview-get-entity-by-number'.
7362
7363 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7364
7365         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
7366         non-nil, use hash table for overview.
7367         (elmo-hash-maximum-size): New variable.
7368         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
7369         (elmo-msgdb-make-overview-hashtb): New function.
7370         (elmo-msgdb-clear-overview-hashtb): New function.
7371         (elmo-clear-hash-val): New macro.
7372         All other related modules are changed.
7373
7374 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
7375
7376         * elmo2.el (elmo-move-msgs): If there's other message with
7377         same message-id, don't use cache.
7378
7379 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
7380
7381         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
7382         number is already packed.
7383
7384 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
7385
7386         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
7387
7388 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7389
7390         * elmo-vars.el (elmo-display-progress-threshold): New variable.
7391         All other related modules are changed.
7392
7393 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
7394
7395         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
7396         of refiling failure on Maildir.
7397
7398 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7399
7400         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
7401         decoded mime-charset with cache.
7402         (elmo-msgdb-overview-entity-get-from): Ditto.
7403         (elmo-msgdb-overview-entity-get-subject): Ditto.
7404         * elmo-vars.el (elmo-use-decoded-cache): New variable.
7405
7406 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
7407
7408         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
7409         (elmo-remove-passwd): Fill password with 0 before erase.
7410         * elmo-vars.el (elmo-passwd-life-time): New variable.
7411
7412 \f
7413 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
7414
7415         * elmo-cache.el (elmo-buffer-cache-add):
7416         Set message cache buffer as unibyte.
7417
7418 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7419
7420         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
7421         become nil.
7422
7423 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
7424
7425         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
7426         when display is finished.
7427         (elmo-nntp-msgdb-create): Ditto.
7428         (elmo-nntp-groups-read-response): Ditto.
7429         (elmo-nntp-retrieve-headers): Ditto.
7430         (elmo-nntp-msgdb-create-message): Ditto.
7431         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
7432         (elmo-pop3-msgdb-create-message): Ditto.
7433
7434 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
7435
7436         * elmo-maildir.el (elmo-maildir-msgdb-create):
7437         Use `elmo-msgdb-sort-by-date'.
7438
7439 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
7440
7441         * elmo2.el (elmo-read-msg-no-cache):
7442         Eliminated arguments after `outbuf'.
7443         Don't use cache even if it exists.
7444         (elmo-read-msg): Don't pass arguments after `outbuf' to
7445         `elmo-read-msg-no-cache'.
7446
7447 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
7448
7449         * elmo-archive.el (elmo-archive-list-folders):
7450         Use `file-name-directory' if base folder does not exist.
7451
7452 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
7453
7454         * elmo-archive.el (elmo-archive-list-folders): Don't use
7455         `file-name-directory'.
7456
7457 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
7458
7459         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
7460         If `force' is non-nil, try flushing all operation queues.
7461
7462 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7463
7464         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
7465         as-binary-process.
7466
7467 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
7468
7469         * elmo-util.el (elmo-display-progress): Fixed.
7470
7471 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
7472
7473         * elmo-util.el (elmo-display-progress): New function.
7474         All other related modules are changed.
7475