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