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