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