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