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