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