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