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