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