(elmo-spam-message-fetch): Disable multibyte
[elisp/wanderlust.git] / elmo / ChangeLog
1 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
4         characters of working buffer.
5
6         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
7         Does not bind `default-mime-charset'.
8         (elmo-msgdb-create-message-entity-from-buffer): Removed
9         unnecessary local bind.
10
11         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
12         function.
13         (modb-entity-extract-mailing-list-info-functions): Added it.
14
15 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
16
17         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
18         when number and message-id are non-nil.
19
20         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
21
22         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
23         conditional steatment.
24         (elmo-pop3-auth-apop): Likewise.
25         (elmo-network-authenticate-session): Likewise.
26
27 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
28
29         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
30         symbol `fill-column'.
31         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
32         decode field value.
33
34         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
35         (elmo-decoded-field-body): Ditto.
36
37 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
38
39         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
40         `tokens' to `params'.
41
42 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
43
44         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
45         working buffer.
46
47 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
48
49         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
50         decide index.
51
52 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
53
54         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
55         Set default value as nil.
56         (toplevel): Register search engines by
57         `elmo-search-register-engine' if there are not defined.
58
59         * elmo.el (autoload): Added autoload setting for
60         `elmo-search-register-engine'.
61
62 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
63
64         * elmo.el (toplevel): `[' is redefined as the prefix of the search
65         folder instead of nmz folder.
66         (elmo-nmz-default-index-path): Added obsolete variable setting.
67         (elmo-nmz-index-alias-alist): Ditto.
68         (elmo-nmz-use-drive-letter): Ditto.
69
70         * elmo-search.el (elmo-search-register-engine): New function.
71
72         * elmo-nmz.el: Removed.
73
74         * elmo-version.el (elmo-version): Up to 2.15.2.
75
76 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
77
78         * elmo-search.el: New file.
79
80 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
81
82         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
83         condition `larger' and `smaller'.
84
85 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
86
87         * elmo-util.el (elmo-safe-filename): Rewrite to replace
88         `"' (double quote) into "_Q_".
89
90 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
91
92         * elmo-net.el (elmo-net-quote-chars): Abolish.
93         (elmo-net-format-quoted): Ditto.
94
95 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
96
97         * elmo.el (elmo-get-folder-function): New variable.
98         (elmo-get-folder): New function.
99         (elmo-folder-rename): Call `elmo-make-folder' with specified
100         mime-charset.
101
102         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
103         `elmo-make-folder'.
104         (elmo-split-subr): Ditto.
105
106         * elmo-multi.el (elmo-folder-initialize): Ditto.
107
108         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
109
110         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
111         (elmo-flag-get-folder): Ditto.
112
113         * elmo-filter.el (elmo-folder-initialize): Ditto.
114
115         * elmo-access.el (elmo-folder-initialize): Ditto.
116         (elmo-access-folder-update-children): Ditto.
117
118         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
119         (elmo-dop-queue-flush): Ditto.
120         (elmo-folder-append-buffer-dop-delayed): Ditto.
121         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
122         mime-charset.
123
124         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
125         instead of `elmo-make-folder'.
126         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
127         destination folder instead of send `elmo-folder-rename-internal'.
128
129         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
130         slot of subfolder instead of create it.
131
132 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
133
134         * elmo-util.el (elmo-collect-separators): New function.
135         (elmo-collect-separators-internal): Ditto.
136         (elmo-collect-trail-separators): Ditto.
137         (elmo-parse-separated-tokens): Ditto.
138         (elmo-parse-separated-tokens-internal): Ditto.
139         (elmo-quote-syntactical-element): Ditto.
140
141         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
142         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
143
144         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
145         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
146         (elmo-nntp-folder-list-subfolders): Quote a user name.
147
148         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
149         (elmo-net-parse-network): Abolish.
150         (elmo-net-folder-set-parameters): New function.
151         (elmo-folder-initialize): Follow the above change.
152
153         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
154         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
155         (elmo-folder-list-subfolders): Use
156         `elmo-quote-syntactical-element' instead of
157         `elmo-net-format-quoted' to quote mailbox and user name.
158
159 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
160
161         * elmo-util.el (elmo-token-valid-p): New function.
162         (elmo-parse-token): Add optional argument `requirement'.
163         (elmo-parse-prefixed-element): Likewise.
164
165         * elmo-net.el (elmo-net-quote-chars): Renamed from
166         `elmo-net-quote-chars-regexp'.
167         (elmo-net-format-quoted): Add optional argument `extra-chars'.
168
169         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
170         by info document. Check token `uidl' is started an alphabet.
171
172         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
173         by info document. Check token `user' is started an alphabet.
174
175         * elmo-imap4.el (elmo-folder-initialize): Ditto.
176         (elmo-folder-list-subfolders): Quote user.
177
178 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
179
180         * elmo-util.el (elmo-quoted-specials-list): New constant.
181         (elmo-quoted-token): New function.
182
183         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
184         (elmo-net-format-quoted): New function.
185         (elmo-net-parse-network): Ditto.
186         (elmo-folder-initialize): Use it.
187
188         * elmo-nntp.el (elmo-folder-initialize): Use
189         `elmo-net-parse-network' to parse network specification instead of
190         `elmo-folder-initialize#elmo-net'.
191
192         * elmo-pop3.el (elmo-folder-initialize): Ditto.
193
194         * elmo-imap4.el (elmo-folder-initialize): Ditto.
195         (elmo-folder-list-subfolders): Quote folder name by
196         `elmo-net-format-quoted'.
197
198 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
199
200         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
201         (elmo-folder-search): Use it.
202
203 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
204
205         * modb-standard.el (modb-standard-loaded-message-id): Use
206         `elmo-msgdb-message-entity-field'.
207
208 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
209
210         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
211         without filename.
212
213 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
214
215         * elmo-util.el (elmo-set-auto-coding): New function.
216         (elmo-object-load): Use it.
217
218 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
219
220         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
221         (elmo-time<): Define as alias of `elmo-time-less-p'.
222         (elmo-time-to-datevec): New function.
223
224         * elmo-date.el (elmo-time-to-days): New function.
225
226 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
227
228         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
229         is not cons cell.
230
231 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
232
233         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
234         parenthesis.
235
236         * elmo-util.el (elmo-map-recursive): New function.
237
238         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
239         (modb-entity-encode-string-recursive): Ditto.
240
241 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
242
243         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
244         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
245         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
246         compare sequence number when last modified time is nil.
247
248 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
249
250         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
251
252         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
253
254 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
255
256         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
257         modification time of the file.
258
259 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
260
261         * elmo-util.el (elmo-condition-optimize): Discriminated against
262         preserved fields, extra fields and the other weight.
263
264 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
265
266         * modb-entity.el (initialize-instance): Define.
267         (modb-entity-handler-mime-charset): New internal function.
268         (modb-standard-entity-set-field): Use it.
269         (elmo-msgdb-message-entity-field): Ditto.
270         (elmo-msgdb-message-entity-field): Ditto.
271
272         * modb.el (elmo-msgdb-match-condition): Rewrite with
273         `elmo-condition-match'.
274         (elmo-msgdb-match-condition-primitive): New function.
275
276         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
277         arguments `flags' and `numbers'.
278         (elmo-msgdb-match-condition-primitive): Abolished (merged to
279         `elmo-msgdb-message-match-condition').
280         (modb-buffer-entity-handler): New class.
281
282         * elmo.el (elmo-folder-search): Optimize condition to use
283         `elmo-condition-optimize'.
284         (elmo-message-buffer-match-condition): New function.
285         (elmo-message-match-condition): Use
286         `elmo-message-buffer-match-condition' instead of
287         `elmo-buffer-field-condition-match'.
288
289         * elmo-util.el (elmo-condition-match): New function.
290         (elmo-condition-optimize): Ditto.
291         (elmo-buffer-field-primitive-condition-match): Abolish.
292         (elmo-buffer-field-condition-match): Ditto.
293
294         * elmo-archive.el (elmo-archive-field-condition-match): Use
295         `elmo-message-buffer-match-condition' instead of
296         `elmo-buffer-field-condition-match'.
297
298 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
299
300         * elmo-flag.el (elmo-global-flags-initialize): Check the
301         existence of the flag directory.
302
303 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
304
305         * elmo-access.el (elmo-folder-initialize): Call
306         `elmo-multi-connect-signals'.
307
308         * elmo-pipe.el (elmo-folder-close): Define.
309
310         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
311         children folders.
312
313         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
314         with target folder.
315
316         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
317         `number'.
318
319         * elmo-multi.el (elmo-message-entity): Don't use return value of
320         `elmo-message-entity-set-number'.
321
322 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
323
324         * modb.el (modb-generic): Added slot `mime-charset'.
325
326         * modb-standard.el (modb-standard): Added slot `overview-handler'.
327         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
328         and `modb-entity-handler-dump-parameters'.
329         (modb-standard-default-entity-handler): Abolish.
330         (elmo-msgdb-message-entity-handler): Save created handler by
331         instance slot.
332
333         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
334         (modb-entity-handler-list-parameters): New method.
335         (modb-entity-handler-equal-p): New function.
336         (modb-entity-handler-dump-parameters): Ditto.
337         (modb-entity-parse-address-string): Encode return value.
338         (modb-entity-make-address-string): Decode argument value.
339         (modb-entity-decode-string-recursive): New function.
340         (modb-entity-encode-string-recursive): Ditto.
341         (modb-standard-entity-normalizer): Set to encode field value.
342         (modb-standard-entity-specializer): Follow the above change.
343         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
344         mime-charset of handler.
345         (elmo-msgdb-message-entity-field): Ditto.
346         (elmo-msgdb-copy-message-entity): Fixed reference to internal
347         structure.
348         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
349
350         * elmo.el (elmo-folder): Added slot `mime-charset'.
351         (elmo-make-folder): Added argument `mime-charset'.
352         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
353         `mime-charest'.
354
355         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
356         (elmo-make-msgdb): Likewise.
357
358         * elmo-internal.el (elmo-internal-folder-initialize): Call
359         `luna-make-entity' with :mime-charset parameter.
360
361 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
362
363         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
364         encoded words in `from' and `subject' field.
365
366 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
367
368         * modb.el (elmo-msgdb-message-field): Add argument `type'.
369         (elmo-msgdb-match-condition): Get handler from entity instead of
370         msgdb.
371
372         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
373         (modb-standard-load-entity): Treat new file format.
374         (modb-standard-save-entity-1): Save as new file format.
375         (modb-standard-save-entity): Split messages into section here.
376         (elmo-msgdb-message-field): Follow the API change.
377         (modb-standard-default-entity-handler): New internal variable.
378         (elmo-msgdb-message-entity-handler): Define.
379
380         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
381         to `elmo-vars.el'.
382         (modb-entity-field-extractor-alist): New user option.
383         (elmo-msgdb-message-entity-field): Removed argument `decode' and
384         added argument `type'.
385         (elmo-msgdb-copy-message-entity): Add optional argument
386         `make-handler'.
387         (modb-set-field-converter): New function.
388         (modb-convert-field-value): Ditto.
389         (modb-entity-string-decoder): Ditto.
390         (modb-entity-string-encoder): Ditto.
391         (modb-entity-parse-date-string): Ditto.
392         (modb-entity-make-date-string): Ditto.
393         (modb-entity-mime-decoder): Ditto.
394         (modb-entity-mime-encoder): Ditto.
395         (modb-entity-address-list-decoder): Ditto.
396         (modb-entity-address-list-encoder): Ditto.
397         (modb-entity-parse-address-string): Ditto.
398         (modb-entity-make-address-string): Ditto.
399         (modb-entity-create-field-indices): Ditto.
400         (modb-legacy-entity-field-slots): New constant.
401         (modb-legacy-entity-field-indices): Ditto.
402         (modb-legacy-entity-normalizer): New variable.
403         (modb-legacy-entity-specializer): Ditto.
404         (modb-legacy-entity-field-index): New macro.
405         (modb-legacy-entity-set-field): New function.
406         (modb-legacy-make-message-entity): Rewrite.
407         (elmo-msgdb-create-message-entity-from-buffer): Use
408         `elmo-msgdb-get-references-from-buffer'. Use
409         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
410         Use `modb-legacy-entity-set-field' instead of
411         `elmo-msgdb-message-entity-set-field'.
412         (elmo-msgdb-message-entity-field): Rewrite.
413         (elmo-msgdb-message-entity-set-field): Ditto.
414         (elmo-msgdb-copy-message-entity): Make new entity by
415         `make-handler' if it specified.
416         (elmo-msgdb-message-match-condition): Define a method of
417         `modb-entity-handler' and follow the API change.
418         (modb-standard-entity-handler): New class.
419         (modb-entity-extract-ml-info-from-x-sequence): New function.
420         (modb-entity-extract-ml-info-from-subject): Ditto.
421         (modb-entity-extract-ml-info-from-return-path): Ditto.
422         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
423         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
424         (modb-entity-extract-mailing-list-info): Ditto.
425         (modb-entity-extract-mailing-list-info-functions): New variable.
426
427         * elmo.el (elmo-message-field): Add optional argument `type'.
428
429         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
430         from `modb-entity.el'.
431
432         * elmo-util.el (elmo-object-load): Decode by coding-system from
433         `set-auto-coding-function'.
434         (elmo-object-save): Use `detect-mime-charset-region' and add
435         coding cookie if encode.
436         (elmo-msgdb-get-references-from-buffer): New function.
437         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
438
439         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
440
441         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
442         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
443         instead of `shimbun-make-header' and follow the API change.
444         (elmo-shimbun-update-overview): Follow the API change.
445         (elmo-map-folder-list-message-locations): Ditto.
446
447         * elmo-pipe.el (elmo-message-field): Ditto.
448
449         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
450         Ditto.
451
452         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
453
454         * elmo-multi.el (elmo-message-field): Ditto.
455
456         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
457         (elmo-msgdb-sort-by-date): Ditto.
458         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
459         `elmo-message-entity-field'.
460         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
461         change.
462         (elmo-msgdb-overview-entity-get-from): Ditto.
463         (elmo-msgdb-overview-entity-get-subject): Ditto.
464         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
465         (elmo-msgdb-overview-entity-get-date): Ditto.
466         (elmo-msgdb-overview-entity-get-to): Ditto.
467         (elmo-msgdb-overview-entity-get-cc): Ditto.
468
469         * elmo-mime.el (elmo-message-mime-entity): Ditto.
470         (elmo-mime-collect-message/partial-pieces): Ditto.
471
472         * elmo-filter.el (elmo-message-field): Ditto.
473
474         * elmo-date.el (elmo-datevec-to-time): New function.
475         (elmo-time-parse-date-string): Ditto.
476         (elmo-time-make-date-string): Ditto.
477         (elmo-time<): Ditto.
478
479         * elmo-version.el (elmo-version): Up to 2.15.1.
480
481 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
482
483         * elmo-flag.el (elmo-global-flags-initialize): Don't include
484         member of elmo-local-flags.
485
486 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
487
488         * elmo-version.el (elmo-version): Up to 2.15.0.
489
490 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
491
492         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
493         `ignore-msgdb' is non-nil.
494
495 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
496
497         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
498         (elmo-condition-in-msgdb-p): Ditto.
499         (elmo-file-field-primitive-condition-match): Ditto.
500         (elmo-file-field-condition-match): Ditto.
501
502         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
503
504 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
505
506         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
507         subdirectories here.
508         (elmo-global-flags-initialize): New function.
509
510         * elmo.el (toplevel): Added autoload setting for
511         `elmo-global-flags-initialize'.
512
513 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
514
515         * elmo.el (message-number-changed): Define new signal.
516         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
517         message-number-changed signal.
518         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
519         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
520         Respect `elmo-pack-number-check-strict'.
521
522 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
523
524         * elmo-signal.el (elmo-connect-signal): Document.
525         (elmo-emit-signal): Ditto.
526         (elmo-emit-signal): It should pass source argument to filter and
527         handler, not slot-source.
528
529 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
530
531         * modb.el (elmo-msgdb-update-entity): New API and define generic
532         implement.
533
534         * modb-standard.el (elmo-msgdb-update-entity): Define.
535
536         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
537         API and define generic implement.
538
539         * elmo.el (update-overview): New singnal.
540
541         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
542         `elmo-msgdb-update-entity' and emit signal `update-overview'.
543         (elmo-message-entity-parent): Define.
544
545         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
546         `update-overview'.
547
548         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
549
550         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
551
552 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
553
554         * elmo.el (elmo-folder-synchronize): Sort the return value of
555         `elmo-list-diff'.
556
557         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
558         list.
559
560 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
561
562         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
563         `default-enable-multibyte-characters'.
564         (elmo-object-load): Use `with-temp-buffer' instead of
565         `elmo-set-work-buf'.
566         (elmo-object-save): Ditto.
567         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
568         `elmo-set-work-buf'.
569         (elmo-decoded-field-body): Ditto.
570
571         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
572
573         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
574         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
575
576         * elmo-version.el (elmo-version): Up to 2.13.3.
577
578 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
579
580         * elmo-util.el (elmo-list-diff): Fix the last change.
581         Reverse order of result lists.
582
583 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
584
585         * modb-standard.el (elmo-msgdb-set-flag): Use
586         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
587         (elmo-msgdb-unset-flag): Ditto.
588
589         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
590         `elmo-list-diff'.
591
592         * elmo-util.el (elmo-list-diff): Rewrite.
593         (elmo-list-diff-nonsortable): New function.
594
595 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
596
597         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
598         `elmo-multibypte-buffer-name'.  All referers are updated.
599
600 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
601
602         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
603         (elmo-mime-entity-fragment-p): New function.
604         (mime-elmo-buffer-entity): Added slot `reassembled'.
605         (elmo-message-mime-entity): Added 4th argument `reassemble'.
606         (elmo-message-mime-entity-internal): New function (renamed from
607         `elmo-message-mime-entity').
608         (elmo-mime-inherit-field-list-from-enclosed): New constant.
609         (elmo-mime-make-reassembled-mime-entity): New function.
610         (elmo-message-reassembled-mime-entity): Ditto.
611         (elmo-mime-collect-message/partial-pieces): Ditto.
612
613 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
614
615         * elmo.el (elmo-message-fetch-string): Disable multibyte.
616
617         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
618         (elmo-with-enable-multibyte): New macro.
619
620         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
621
622 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
623
624         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
625         argument `number'.
626         (elmo-filter-connect-signals): Follow the above change.
627
628 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
629
630         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
631
632         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
633         that only the first flag is used.
634
635 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
636
637         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
638         if available.
639
640 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
641
642         * elmo-signal.el: New file.
643
644         * elmo.el (toplevel): Require elmo-signal.
645         (flag-changing, flag-changed, cache-changed): New signal.
646         (elmo-folder): Remove slog `handlers'.
647         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
648         `elmo-folder-notify-event'.
649         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
650         (elmo-folder-unset-flag): Ditto.
651         (elmo-event-handler): Abolish.
652         (elmo-event-handler-flag-changed): Ditto.
653         (elmo-event-handler-cache-changed): Ditto.
654         (elmo-folder-add-handler): Ditto.
655         (elmo-folder-remove-handler): Ditto.
656         (elmo-folder-notify-event): Ditto.
657
658         * elmo-pipe.el (toplevel): Require elmo-signal.
659         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
660         (elmo-pipe-connect-signals): New function.
661         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
662         (elmo-folder-set-flag): Ditto.
663         (elmo-folder-unset-flag): Ditto.
664         (elmo-message-set-cached): Ditto.
665
666         * elmo-multi.el (toplevel): Require elmo-signal.
667         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
668         (elmo-multi-connect-signals): New function.
669         (elmo-multi-map-numbers): Ditto.
670         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
671         (elmo-message-fetch): Ditto.
672         (elmo-folder-set-flag): Ditto.
673         (elmo-folder-unset-flag): Ditto.
674
675         * elmo-filter.el (toplevel): Require elmo-signal.
676         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
677         (elmo-filter-connect-signals): New function.
678         (elmo-filter-add-flag-count): Ditto.
679         (elmo-message-fetch): Does not call
680         `elmo-filter-folder-countup-message-flags' and
681         `elmo-folder-notify-event'.
682         (elmo-message-set-cached): Ditto.
683         (elmo-folder-set-flag): Ditto.
684         (elmo-folder-unset-flag): Ditto.
685
686         * elmo-version.el (elmo-version): Up to 2.13.2.
687
688 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
689
690         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
691         `flags'.
692
693 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
694
695         * elmo-filter.el (elmo-message-set-cached): Call
696         `elmo-folder-notify-event' with event `cache-changed'.
697
698         * elmo-multi.el (elmo-message-set-cached): Ditto.
699
700         * elmo-pipe.el (elmo-message-set-cached): Ditto.
701
702 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
703
704         * elmo.el (elmo-folder-encache): Abolish.
705
706 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
707
708         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
709         (elmo-folder-next-message-number-dop): Return appropriate negative
710         integer.
711
712 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
713
714         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
715         clearing pending operations.
716         (elmo-folder-next-message-number-dop): Return appropriate negative
717         integer.
718
719 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
720
721         * elmo.el (toplevel): Added autoload setting for `md5'.
722         (elmo-msgdb-path-encode-threshold): New user option.
723         (elmo-folder-msgdb-path): Encode msgdb path if its length is
724         longer than `elmo-msgdb-path-encode-threshold'.
725
726         * elmo-flag.el (elmo-global-mark-migrate): Use
727         `elmo-folder-expand-msgdb-path' instead of
728         `elmo-folder-msgdb-path'.
729
730 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
731
732         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
733         element of the difference is nil.
734
735 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
736
737         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
738         to the check logic of file systems which are weak in colon character.
739
740 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
741
742         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
743
744 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
745
746         * elmo-maildir.el (elmo-maildir-move-file): New function.
747         (elmo-folder-append-buffer): Use it.
748         (elmo-folder-append-messages): Ditto.
749         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
750
751         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
752         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
753
754         * elmo-maildir.el (elmo-maildir-separator): New user option.
755         (elmo-maildir-adjust-separator): New macro.
756         (elmo-maildir-list-location): Use it.
757         (elmo-maildir-update-current): Ditto.
758         (elmo-maildir-set-mark): Ditto.
759         (elmo-maildir-delete-mark): Ditto.
760         (These changes are based on Hiroya Murata's patch [wl: 13437])
761
762 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
763
764         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
765
766 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
767
768         * elmo-flag.el (elmo-flag-valid-p): Simplify.
769         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
770         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
771
772 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
773
774         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
775         Use `with-temp-buffer'.
776
777 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
778
779         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
780
781         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
782         `wl-read-search-condition').
783         (elmo-read-search-condition-internal): Likewise.
784
785         * elmo-flag.el (elmo-flag-char-regexp): New constant.
786         (elmo-flag-valid-p): New function.
787         (elmo-folder-initialize): Check flag name is valid.
788
789 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
790
791         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
792         delimiter to obtain root mailbox itself.
793
794 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
795
796         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
797         type mismatch.
798
799 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
800
801         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
802         as t.
803
804 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
805
806         * elmo-shimbun.el (toplevel): Require cl at compile.
807
808         * elmo-nntp.el (toplevel): Ditto.
809
810         * elmo-nmz.el (toplevel): Ditto.
811
812         * elmo-multi.el (toplevel): Ditto.
813
814         * elmo-file.el (toplevel): Ditto.
815
816         * elmo-dop.el (toplevel): Ditto.
817
818         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
819
820 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
821
822         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
823         as nil.
824
825         * elmo.el (elmo-message-fetch): Return t even when the output buffer
826         size of elmo-message-fetch-internal is 0 byte.
827
828 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
829
830         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
831
832 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
833
834         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
835         always plugged.
836
837 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
838
839         * elmo-maildir.el (elmo-map-message-fetch): Call
840         `elmo-map-folder-set-flag'.
841
842         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
843         (elmo-message-fetch): Merge from
844         `elmo-message-fetch-with-cache-process'.
845
846         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
847         (elmo-message-fetch): Define.
848
849         * elmo-nntp.el (elmo-message-fetch): Renamed from
850         `elmo-message-fetch-with-cache-process'.
851
852         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
853         (elmo-message-fetch): Define.
854
855         * elmo-util.el (elmo-condition-parse-primitive): Downcase
856         search-key.
857
858         * elmo-shimbun.el (shimbun-mua-search-id): Use
859         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
860         (elmo-shimbun-folder-shimbun-header): Ditto.
861         (elmo-shimbun-get-headers): Ditto.
862         (elmo-shimbun-update-overview): Ditto.
863
864         * elmo-pipe.el (elmo-folder-detach-messages): Define.
865
866         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
867         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
868
869 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
870
871         * elmo.el (elmo-message-fetch): Unset unread flag on server when
872         message is cached.
873         (elmo-message-fetch-string): Fixed argument.
874
875 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
876
877         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
878         exchange order of arguments `section' and `unread'.
879         (elmo-message-encache): Follow the API change.
880         (elmo-message-match-condition): Ditto.
881         (elmo-generic-folder-append-messages): Ditto.
882         (elmo-message-fetch-string): New function.
883
884         * elmo-split.el (elmo-split-subr): Ditto.
885
886         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
887
888         * elmo-pipe.el (elmo-message-fetch): Ditto.
889
890         * elmo-multi.el (elmo-message-fetch): Ditto.
891
892         * elmo-mime.el (elmo-message-mime-entity): Ditto.
893
894         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
895
896         * elmo-filter.el (elmo-message-fetch): Ditto.
897
898         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
899
900         * elmo-imap4.el (mime-imap-location-section-body): Use
901         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
902         follow the API change.
903
904 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
905
906         * elmo-access.el: New file.
907
908         * elmo-null.el: Ditto.
909
910         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
911
912 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
913
914         * elmo-net.el (elmo-network-session-idle-timeout): New option.
915         (elmo-network-session): New attribute `last-accessed'.
916         (elmo-network-get-session): Discard network cache if elapsed time
917         since last-accessed is larger than elmo-network-session-idle-timeout.
918
919 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
920
921         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
922         and added `number', `require-entireness'.
923         (elmo-find-fetch-strategy): Rewrite.
924         (elmo-message-fetch): Unset `unread' flag when argument unread is
925         non-nil.
926
927         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
928
929         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
930         (elmo-message-fetch): Notify event `flag-changed'.
931
932         * elmo-pipe.el: Likewise.
933
934         * elmo-mime.el (elmo-mime-entity): New class.
935         (elmo-mime-entity-display-p): New generic function.
936         (elmo-mime-entity-display): Ditto.
937         (elmo-mime-entity-display-as-is): Ditto.
938         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
939         elmo-mime-entity.
940         (elmo-make-mime-message-location): Removed.
941         (elmo-mime-message-display): Ditto.
942         (elmo-mime-display-as-is): Ditto.
943         (elmo-message-mime-entity): New function.
944
945         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
946
947         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
948         change.
949         (elmo-message-fetch): Re-count flagged message number and notify
950         event `flag-changed'.
951
952         * elmo-version.el (elmo-version): Up to 2.13.1.
953
954 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
955
956         * elmo-filter.el (elmo-message-field): Define.
957         (elmo-message-set-field): Ditto.
958
959 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
960
961         * elmo.el (elmo-message-set-cached): Call
962         `elmo-folder-notify-event' with cache-changed.
963         (elmo-event-handler-cache-changed): New generic function.
964
965 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
966
967         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
968         instead of elmo-add-name-to-file.
969         (elmo-folder-append-messages): Ditto.
970
971 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
972
973         * elmo.el (elmo-folder-update-threshold): Add nil to range.
974
975 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
976
977         * elmo-version.el (elmo-version): Up to 2.13.0.
978
979         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
980         `auto'.
981
982         * modb-standard.el (modb-standard-economize-entity-size): Changed
983         default value to `t'.
984
985         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
986         `standard'.
987
988         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
989         after parsing greeting string.
990
991 2004-11-23  Daishi Kato <daishi@axlight.com>
992
993         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
994         New user option.
995         (elmo-spam-spamoracle-call): Use it.
996
997 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
998
999         * elmo.el (elmo-message-accessible-p): Message in dop spool
1000         is accessible.
1001
1002 2004-11-23  Daishi Kato <daishi@axlight.com>
1003
1004         * elsp-spamoracle.el: New file.
1005
1006 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1007
1008         * elmo.el (elmo-message-flags-for-append): New function.
1009         (elmo-generic-folder-append-messages): Use it.
1010
1011         * elmo-split.el (elmo-split-subr): Ditto.
1012
1013         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1014         `flags' and use elmo-folder-append-buffer instead of
1015         write-region-as-binary.
1016         (elmo-dop-filter-pending-messages): New function.
1017         (elmo-folder-append-buffer-dop): Call
1018         elmo-dop-spool-folder-append-buffer with `flag'.
1019         (elmo-folder-set-flag-dop): Filter messages by
1020         elmo-dop-filter-pending-messages.
1021         (elmo-folder-unset-flag-dop): Ditto.
1022         (elmo-folder-append-buffer-dop-delayed): Use
1023         elmo-message-flags-for-append to get flags of the message and
1024         simplify.
1025
1026 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1027
1028         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1029
1030 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1031
1032         * elmo.el (elmo-folder): Added handlers slot.
1033         (elmo-event-handler): New class.
1034         (elmo-event-handler-flag-changed): New API.
1035         (elmo-folder-add-handler): New function.
1036         (elmo-folder-remove-handler): Ditto.
1037         (elmo-folder-notify-event): Ditto.
1038         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1039         `flag-changed'.
1040         (elmo-folder-unset-flag): Ditto.
1041
1042         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1043         (elmo-folder-unset-flag): Ditto.
1044
1045         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1046         (elmo-folder-unset-flag): Ditto.
1047
1048         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1049         (elmo-folder-unset-flag): Ditto.
1050
1051         * elmo-version.el (elmo-version): Up to 2.11.33.
1052
1053 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1054
1055         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1056
1057 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1058
1059         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1060
1061         * elmo-flag.el (elmo-folder-unset-flag): Define.
1062         (elmo-global-flag-detach): Do process when the flag is not target
1063         flag.
1064
1065 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1066
1067         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1068         variable.
1069         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1070
1071 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1072
1073         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1074         function.
1075         (elmo-folder-delete-messages): Detach messages before delete
1076         messages from target folder.
1077         (elmo-folder-detach-messages): Set updated number-list to slot.
1078
1079 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1080
1081         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1082
1083 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1084
1085         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1086
1087 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1088
1089         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1090         internal use only).
1091         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1092         not modified.
1093         (elmo-folder-delete-messages): Define.
1094         (elmo-folder-move-messages): Don't call
1095         `elmo-folder-detach-messages'.
1096         (elmo-folder-synchronize): Rewrite.
1097         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1098
1099         * elmo-util.el (elmo-last): New function.
1100         (elmo-set-list): Ditto.
1101         (elmo-number-set-delete-list): Ditto.
1102         (elmo-number-set-delete): Ditto.
1103
1104         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1105
1106         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1107         `elmo-folder-delete-messages' and don't delete location map.
1108         (elmo-folder-detach-messages): Define.
1109
1110         * elmo-imap4.el (elmo-folder-delete): Use
1111         `elmo-folder-delete-messages-internal' instead of
1112         `elmo-folder-delete-messages'.
1113
1114         * elmo-filter.el (elmo-folder-delete-messages): Call
1115         `elmo-folder-detach-messages'.
1116         (elmo-folder-detach-messages): Don't call
1117         `elmo-folder-detach-messages' for target folder.
1118
1119         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1120         message deletion is succeeded.
1121
1122         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1123
1124         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1125         from `elmo-folder-delete-messages'.
1126
1127         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1128
1129         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1130
1131         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1132
1133         * elmo-version.el (elmo-version): Up to 2.11.32.
1134
1135 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1136
1137         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1138         (elmo-global-flag-list): Added obsolete variable setting.
1139
1140         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1141
1142         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1143         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1144         `elmo-mime-display-header-analysis' is nil.
1145
1146         * elmo-flag.el (elmo-global-flags): Renamed from
1147         `elmo-global-flag-list' (All other related portions are changed).
1148         (elmo-local-flags): New variable.
1149         (elmo-local-flag-p): New function.
1150         (elmo-global-flag-set-internal): Cause an error when flag is not
1151         global.
1152
1153 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1154
1155         * elmo-util.el (elmo-concat-path): Treat empty path.
1156
1157 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1158
1159         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1160         field-or-fields).
1161         (elmo-split-address-match): Ditto.
1162         (elmo-split-equal): Ditto.
1163         (elmo-split-match): Ditto.
1164
1165 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1166
1167         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1168         (elmo-generic-folder-append-messages): If src message exists but
1169         has no flag, pass (read) for the FLAG argument of
1170         `elmo-folder-append-buffer'. Otherwise, pass nil.
1171
1172         * elmo-split.el (elmo-split-subr): Likewise.
1173
1174         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1175
1176         * elmo-multi.el (elmo-message-flags): Ditto.
1177
1178         * elmo-filter.el (elmo-message-flags): Ditto.
1179
1180         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1181         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1182         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1183         
1184 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1185
1186         * elmo-split.el (elmo-split-rule): Update comment.
1187         (elmo-split-address-equal): Allow 2nd argument to be a list.
1188         (elmo-split-address-match): Ditto.
1189         (elmo-split-equal): Ditto.
1190         (elmo-split-match): Ditto.
1191
1192 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1193
1194         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1195         (elmo-folder-append-msgdb): Don't treat `read'.
1196         (elmo-message-flags): Don't return `read'.
1197
1198         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1199         (elmo-folder-unset-read-delayed): Ditto.
1200
1201         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1202
1203 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1204
1205         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1206         deletion.
1207
1208 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1209
1210         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1211         header.
1212
1213 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1214
1215         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1216         here.
1217         (elmo-msgdb-save): Bind inhibit-quit.
1218         (modb-standard-message-entity): Ditto.
1219
1220 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1221
1222         * elmo-database.el: No need to require elmo-msgdb.
1223
1224 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1225
1226         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1227         instead of `elmo-list-subdirectories'.
1228
1229 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1230
1231         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1232         group entry.
1233         (elmo-folder-exists-p): "[" is empty.
1234         (elmo-folder-list-subfolders): Define.
1235         (elmo-folder-have-subfolder-p): Ditto.
1236
1237 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1238
1239         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1240
1241 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1242
1243         * elmo-filter.el (elmo-folder-local-p): Define.
1244
1245 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1246
1247         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1248         when entity is garbaged.
1249         (modb-standard-save-entity-1): Don't modify the original entity.
1250
1251 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1252
1253         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1254
1255 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1256
1257         * elmo.el (elmo-strict-folder-diff): Use
1258         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1259
1260 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1261
1262         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1263         (elmo-msgdb-message-number): Ditto.
1264         (elmo-msgdb-message-field): Ditto.
1265
1266         * modb-standard.el (modb-standard-economize-entity-size): New user
1267         option.
1268         (modb-standard-loaded-message-id): New inline function.
1269         (modb-standard-load-entity): Use it.
1270         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1271         throw message-id string away.
1272         (elmo-msgdb-flag-available-p): Define.
1273         (elmo-msgdb-message-number): Ditto.
1274         (elmo-msgdb-message-field): Ditto.
1275
1276         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1277         (suppoted -> supported).
1278         (modb-legacy-supported-flag-p): Ditto.
1279         (elmo-msgdb-set-flag): Ditto.
1280         (elmo-msgdb-unset-flag): Ditto.
1281         (elmo-msgdb-flag-available-p): Define.
1282
1283         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1284         is `t', treat it as legacy entity.
1285         
1286         * elmo.el (elmo-message-flag-available-p): New generic function.
1287         (elmo-message-number): Ditto.
1288         (elmo-message-field): Use `elmo-msgdb-message-field'.
1289
1290         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1291
1292         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1293         (elmo-message-number): Ditto.
1294
1295         * elmo-multi.el (elmo-message-number): Define.
1296         (elmo-message-flag-available-p): Ditto.
1297
1298         * elmo-filter.el (elmo-message-flag-available-p): Define.
1299         (elmo-message-number): Ditto.
1300
1301         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1302         (elmo-folder-initialize): Load `max-number'.
1303         (elmo-folder-commit): Save it.
1304         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1305         (elmo-global-flag-set-internal): Set up max-number slot.
1306
1307 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1308
1309         * elmo-version.el (elmo-version): Up to 2.11.31.
1310
1311 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1312
1313         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1314         unibyte string of the current buffer for the argument of `md5'
1315         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1316
1317 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1318
1319         * modb-legacy.el (modb-legacy-flag-list): New constant.
1320         (modb-legacy-suppoted-flag-p): New internal function.
1321         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1322         (elmo-msgdb-unset-flag): Ditto.
1323
1324 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1325
1326         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1327
1328         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1329         from msgdb.
1330
1331 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1332
1333         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1334         (follow the API change).
1335
1336         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1337
1338 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1339
1340         * modb-standard.el (modb-standard-digest-flags): Abolish.
1341         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1342
1343         * elmo-vars.el (elmo-digest-flags): New variable.
1344         (elmo-preserved-flags): Moved from elmo-flag.el.
1345
1346         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1347         (elmo-imap4-flag-to-imap-criteria): Ditto.
1348         (elmo-imap4-folder-list-flagged): Use it.
1349
1350         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1351
1352         * elmo.el (elmo-folder-count-flags): Changed return value.
1353
1354         * elmo-flag.el (elmo-preserved-flags): New variable.
1355         (elmo-get-global-flags): Use it.
1356
1357         * modb-standard.el (modb-standard-digest-flags): New variable.
1358         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1359         Changed behavior of `any'.
1360
1361         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1362         which are defined the Internet draft
1363         (draft-melnikov-imap-keywords-03.txt).
1364         (elmo-imap4-flags-to-imap): New function.
1365         (elmo-folder-append-buffer): Use it.
1366
1367         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1368         in the docstring.
1369
1370         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1371         avoid the bug of Emacs 21.3.
1372
1373 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1374
1375         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1376         function find-coding-system does not exist.
1377
1378 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1379
1380         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1381         parsing.
1382
1383 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1384
1385         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1386         response codes.
1387
1388 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1389
1390         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1391         (elmo-network-close-session): Follow the changes in
1392         `elmo-pop3-read-response'.
1393         (elmo-pop3-auth-user): Ditto.
1394         (elmo-pop3-auth-apop): Ditto.
1395         (elmo-network-initialize-session): Ditto.
1396         (elmo-network-authenticate-session): Ditto.
1397         (elmo-network-setup-session): Ditto.
1398         (elmo-folder-status): Ditto.
1399         (elmo-message-fetch-plugged): Ditto.
1400         (elmo-pop3-delete-msg): Ditto.
1401
1402 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1403
1404         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1405         on failure.
1406
1407 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1408
1409         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1410         style.
1411         (elmo-bind-directory): Ditto.
1412
1413 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1414
1415         * elmo.el (elmo-folder-append-messages): Note on return value.
1416         * elmo-archive.el (elmo-folder-append-messages): Don't return
1417         message numbers which could not be appended.
1418
1419 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1420
1421         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1422
1423 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1424
1425         * elmo-version.el (elmo-version): Up to 2.11.30.
1426
1427 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1428
1429         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1430         `mask'.
1431
1432         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1433
1434         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1435         (elmo-multi-split-numbers): Add elmo-folder object into each
1436         element of return value at first.
1437         (elmo-folder-delete-messages): Follow the above change.
1438         (elmo-folder-detach-messages): Ditto.
1439
1440         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1441         number which is synchronized in target folder.
1442
1443 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1444
1445         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1446         Change default value to symbol `all'.
1447         (elmo-map-message-fetch): Change condition to update overview
1448         follow the above.
1449
1450 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1451
1452         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1453         behavior to update overview.
1454         (elmo-shimbun-update-overview-folder-list): Note it.
1455
1456 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1457
1458         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1459         recursive call.
1460
1461 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1462
1463         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1464         buffer-disable-undo, it is unnecessary.
1465         (elmo-spam-register-good-messages): Ditto.
1466
1467         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1468         Ditto.
1469
1470         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1471
1472 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1473
1474         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1475         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1476         elmo-set-buffer-multibyte.
1477         (elmo-object-load): Ditto.
1478         (elmo-save-buffer): Ditto.
1479         (elmo-delete-char): Ditto.
1480         (elmo-file-field-primitive-condition-match): Ditto.
1481         (elmo-mime-string): Ditto.
1482
1483         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1484         (elmo-archive-field-condition-match): Ditto.
1485
1486         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1487
1488         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1489
1490         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1491         (elmo-nntp-msgdb-create-message): Ditto.
1492
1493         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1494
1495         * elmo.el (elmo-message-match-condition): Ditto.
1496         (elmo-message-match-condition): Ditto.
1497
1498         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1499         Ditto.
1500
1501         * elmo-version.el (elmo-version): Up to 2.11.29.
1502
1503         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1504         (elsp-header): New backend.
1505
1506         * elmo-util.el (elmo-decoded-field-body): New function.
1507
1508 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1509
1510         * elmo-version.el (elmo-version): Up to 2.11.28.
1511
1512 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1513
1514         * elmo-filter.el: Rewrite.
1515
1516         * elmo-version.el (elmo-version): Up to 2.11.27.
1517
1518 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1519
1520         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1521         msgdb path for the localdir folder with absolute path.
1522
1523         * utf7.el: Synch up with latest gnus/utf7.el;
1524         Modified for latest Emacs.
1525
1526 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1527
1528         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1529         shimbun backend couldn't open.
1530
1531 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1532
1533         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1534         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1535         when a destination folder is a filter folder.
1536
1537 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1538
1539         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1540         (elmo-generic-folder-append-messages): Call elmo-message-flags
1541         with argument `msgid'.
1542
1543         * elmo-split.el (elmo-split-subr): Ditto.
1544
1545         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1546
1547         * elmo-multi.el (elmo-message-flags): Ditto.
1548
1549 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1550
1551         * elmo.el (elmo-folder): Add new slot `flag-table'.
1552         (elmo-folder-flag-table): New API.
1553         (elmo-folder-close-flag-table): Ditto.
1554         (elmo-folder-preserve-flags): New function.
1555         (elmo-generic-folder-append-messages): Use
1556         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1557         Flag of a non-registered message, it sets to nil.
1558         Does not set flag to flag-table.
1559
1560         * elmo-maildir.el (elmo-folder-append-buffer): Use
1561         `elmo-folder-preserve-flags'.
1562         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1563         `elmo-folder-close-flag-table'.
1564
1565         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1566         (elmo-archive-folder-append-buffer): Use
1567         `elmo-folder-preserve-flags'.
1568
1569         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1570
1571         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1572
1573         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1574         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1575         `elmo-folder-close-flag-table'.
1576
1577         * elmo-version.el (elmo-version): Up to 2.11.26.
1578
1579 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1580
1581         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1582
1583         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1584         md5's 4th and 5th argument (non-existent in flim one).
1585
1586 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1587
1588         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1589         message, It sets to nil.
1590
1591 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1592
1593         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1594         list is non-nil.
1595
1596 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1597
1598         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1599
1600         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1601
1602         * elmo-util.el (elmo-uniq-sorted-list): New function.
1603         (elmo-make-number-list): Ditto.
1604         (elmo-number-set-to-number-list): Use elmo-make-number-list
1605         and don't use nreverse.
1606
1607 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1608
1609         * elmo-version.el (elmo-version): Up to 2.11.25.
1610
1611 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1612
1613         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1614         field not exists in message, Use md5 message digest of header.
1615
1616 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1617
1618         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1619         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1620         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1621         * elmo-split.el (elmo-split-subr): Check return value of
1622         elmo-folder-append-buffer.
1623
1624         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1625         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1626
1627         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1628         message-id.
1629
1630 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1631
1632         * elmo-split.el (elmo-split-subr): Append message with flag.
1633
1634         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1635         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1636         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1637
1638 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1639
1640         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1641         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1642         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1643
1644 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1645
1646         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1647         with a function call of `process-buffer'.  All callers are updated.
1648         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1649         Remove redundant `set-buffer' in a while loop.
1650
1651 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1652
1653         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1654         calls.
1655
1656 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1657
1658         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1659         elsp-spamfilter-register-buffer-internal with current buffer.
1660         (elmo-spam-register-spam-buffer): Ditto.
1661         (elmo-spam-register-good-buffer): Ditto.
1662
1663 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1664
1665         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1666         if it is not contained in the response(A workaround for courier-imap).
1667
1668 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1669
1670         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1671         parenthesis.
1672
1673 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1674
1675         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1676         range.
1677
1678 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1679
1680         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1681         of nconc.
1682
1683         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1684         argument handler.
1685         (elmo-msgdb-message-match-condition): Follow the change above.
1686
1687 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1688
1689         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1690         folder name.
1691
1692 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1693
1694         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1695
1696 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1697
1698         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1699
1700 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1701
1702         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1703         not found.
1704
1705 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1706
1707         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1708         value.
1709         (elmo-file-command-argument): Undo last change for cygwin.
1710         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1711         Don't return nil.
1712         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1713
1714 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1715
1716         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1717         value returned from elmo-file-find is nil.
1718
1719 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1720
1721         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1722         to elmo-vars.el.
1723
1724         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1725         instead of insert-file-contents-as-binary.
1726         (elmo-message-set-field): New generic function.
1727
1728         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1729         behavior change on `split-string'.
1730
1731         * elmo-file.el (elmo-file-find): New function.
1732         (elmo-file-command): New user option.
1733         (elmo-file-command-argument): Ditto.
1734         (elmo-file-fetch-max-size): Ditto.
1735         (elmo-file-detect-format): New function.
1736         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1737         Use elmo-file-detect-format.
1738         (elmo-map-folder-list-message-locations): Don't treat directories.
1739
1740 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1741
1742         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1743         (elmo-passwd-alist-clear): Shred password before clear.
1744         (elmo-remove-passwd): Remove all mached pair.
1745
1746 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1747
1748         * elmo.el (elmo-folder-synchronize): Fix description of the return
1749         value.
1750
1751 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1752
1753         * elmo.el (elmo-message-fetch-bodystructure): New method.
1754         (elmo-message-fetch-bodystructure): Define default.
1755
1756         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1757         elmo-message-fetch-bodystructure.
1758         (elmo-message-fetch-bodystructure): Define.
1759
1760         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1761
1762 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1763
1764         * elmo-filter.el (elmo-message-folder): Define.
1765
1766 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1767
1768         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1769         elmo-delete-cr-buffer.
1770
1771         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1772
1773         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1774
1775         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1776
1777         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1778         type seems to be a text.
1779
1780 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1781
1782         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1783         (elmo-spam-register-good-buffer): Ditto.
1784         (elmo-spam-spamassassin-register-messages): Ditto.
1785
1786         * elmo-util.el (elmo-string-member-ignore-case): Define with
1787         static-cond.
1788
1789 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1790
1791         * elmo.el (elmo-folder-type): Undo last change.
1792
1793         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1794
1795         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1796         warnings.
1797
1798         * elmo-file.el: New file.
1799         
1800         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1801
1802         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1803         variable.
1804         (elmo-spam-spamassassin-register-messages): New inline function.
1805         (elmo-spam-register-spam-messages): Define.
1806         (elmo-spam-register-good-messages): Ditto.
1807
1808         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1809         Fixed typo.
1810
1811         * elmo.el (toplevel): Added autoload setting for
1812         `elmo-get-global-flags'.
1813         (elmo-message-has-global-flag-p): New function.
1814         (elmo-message-set-global-flags): Ditto.
1815         (elmo-folder-type): Improvement for name: format.
1816
1817         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1818         availability of keyword flags.
1819         (elmo-imap4-folder-list-flagged): Treat keyword flags.
1820         (elmo-folder-list-flagged-plugged): Renamed from
1821         elmo-folder-list-flagged-unplugged.
1822         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1823         accept any flag as keyword flag.
1824         (elmo-folder-set-flag-plugged): Accept keyword flags.
1825         (toplevel): Added autoload setting for `elmo-get-global-flags'.
1826
1827         * elmo-flag.el (elmo-get-global-flags): New function.
1828
1829         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1830         folders.
1831
1832         * elmo-version.el (elmo-version): Up to 2.11.24.
1833
1834 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1835
1836         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1837         elmo-multiple-field-body instead of std11-field-body to check all
1838         headers.
1839
1840 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1841
1842         * elmo-util.el (elmo-cache-expire): Completion require match "age"
1843         or "size".
1844
1845 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1846
1847         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
1848         unintern is unbound.
1849
1850 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1851
1852         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1853         Protect from infinite loop.
1854
1855 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1856
1857         * elsp-bogofilter.el
1858         (elmo-spam-bogofilter-max-messages-per-process): New user option.
1859         (elmo-spam-bogofilter-register-messages): New internal function.
1860         (elmo-spam-register-spam-messages): Define.
1861         (elmo-spam-register-good-messages): Ditto.
1862
1863 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1864
1865         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1866         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
1867         (elmo-spam-bogofilter-call): Fixed the last change.
1868         (elmo-spam-bogofilter-arguments): Ditto.
1869
1870         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1871         Follow the options change of latest bogofilter.
1872
1873         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
1874         (elmo-spam-bogofilter-good-switch): Ditto.
1875         (elmo-spam-bogofilter-arguments-alist): New user option.
1876         (elmo-spam-bogofilter-debug): Ditto.
1877         (elmo-spam-bogofilter-call): Renamed from
1878         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
1879         is non-nil, insert output in buffer for debug.
1880         (elmo-spam-bogofilter-arguments): New macro.
1881         (elmo-spam-buffer-spam-p): Use it.
1882         (elsp-bogofilter-register-buffer): Ditto.
1883
1884 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1885
1886         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
1887         regexp.
1888
1889 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1890
1891         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
1892         value as "ruby".
1893         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
1894         (elmo-spam-bsfilter-program): Set default value as full path for
1895         `bsfilter'.
1896         (elmo-spam-bsfilter-debug): New user option.
1897         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
1898         non-nil, insert output in buffer for debug. Fix treating of
1899         argument.
1900
1901 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1902
1903         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
1904         `elmo-maildir-flag-specs' element instead of one.
1905         (elmo-map-folder-unset-flag): Ditto.
1906         (Reported by Ken Makimura <macky@astem.or.jp>)
1907
1908         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
1909         (elmo-folder-unset-flag-plugged): Ditto.
1910
1911 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1912
1913         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
1914         to `reads' slot only if `in-msgdb' is nil.
1915
1916 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1917
1918         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
1919         and complement argument list.
1920
1921 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1922
1923         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
1924         instead of elmo-folder-list-flagged.
1925
1926 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1927
1928         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
1929
1930         * elsp-bsfilter.el: New file.
1931
1932         * elmo-pipe.el (elmo-folder-list-unreads,
1933         elmo-folder-list-answereds,
1934         elmo-folder-list-importants,
1935         elmo-folder-flag-as-important,
1936         elmo-folder-unflag-important,
1937         elmo-folder-flag-as-read,
1938         elmo-folder-unflag-read,
1939         elmo-folder-flag-as-answered,
1940         elmo-folder-unflag-answered): Remove.
1941         (elmo-folder-set-flag): Define.
1942         (elmo-folder-unset-flag): Ditto.
1943
1944         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
1945         (elmo-folder-set-flag): Define.
1946         (elmo-folder-unset-flag): Ditto.
1947         (elmo-folder-list-unreads): Remove.
1948         (elmo-folder-list-flagged): Define.
1949
1950         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
1951         (elmo-folder-list-unreads,
1952         elmo-folder-list-importants,
1953         elmo-folder-list-answereds,
1954         elmo-folder-list-unreads-plugged,
1955         elmo-folder-list-importants-plugged,
1956         elmo-folder-list-answereds-plugged): Remove.
1957         (elmo-folder-list-flagged-plugged): New method.
1958         (elmo-folder-unflag-important,
1959         elmo-folder-flag-as-important,
1960         elmo-folder-unflag-read,
1961         elmo-folder-flag-as-read,
1962         elmo-folder-unflag-answered,
1963         elmo-folder-flag-as-answered,
1964         elmo-folder-flag-as-read-unplugged,
1965         elmo-folder-unflag-read-unplugged,
1966         elmo-folder-flag-as-important-unplugged,
1967         elmo-folder-unflag-important-unplugged,
1968         elmo-folder-flag-as-answered-unplugged,
1969         elmo-folder-unflag-answered-unplugged): Remove.
1970         (elmo-folder-set-flag): Define.
1971         (elmo-folder-unset-flag): Ditto.
1972         (elmo-folder-set-flag-unplugged): Ditto.
1973         (elmo-folder-unset-flag-unplugged): Ditto.
1974
1975         * elmo-multi.el (elmo-folder-list-unreads,
1976         elmo-folder-list-answereds,
1977         elmo-folder-list-importants,
1978         elmo-folder-flag-as-important,
1979         elmo-folder-unflag-important,
1980         elmo-folder-flag-as-read,
1981         elmo-folder-unflag-read,
1982         elmo-folder-flag-as-answered,
1983         elmo-folder-unflag-answered): Remove.
1984         (elmo-folder-set-flag): Define.
1985         (elmo-folder-unset-flag): Ditto.
1986
1987         * elmo-map.el (elmo-map-folder-unflag-important,
1988         elmo-map-folder-flag-as-important,
1989         elmo-map-folder-unflag-read,
1990         elmo-map-folder-flag-as-read,
1991         elmo-map-folder-unflag-answered,
1992         elmo-map-folder-flag-as-answered): Remove.
1993         (elmo-map-folder-set-flag): New method.
1994         (elmo-map-folder-unset-flag): Ditto.
1995         (elmo-map-folder-list-unreads,
1996         elmo-map-folder-list-importants,
1997         elmo-map-folder-list-answereds): Remove.
1998         (elmo-folder-list-flagged-internal): Define.
1999         (elmo-map-folder-list-flagged): New method.
2000
2001         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2002         (elmo-map-folder-list-unreads,
2003         elmo-map-folder-list-importants,
2004         elmo-map-folder-list-flagged): Remove.
2005         (elmo-map-folder-list-flagged): Define.
2006         (elmo-map-folder-flag-as-important,
2007         elmo-map-folder-unflag-important,
2008         elmo-map-folder-flag-as-read,
2009         elmo-map-folder-unflag-read,
2010         elmo-map-folder-flag-as-answered,
2011         elmo-map-folder-unflag-answered): Remove.
2012         (elmo-maildir-set-mark-messages): New internal function.
2013         (elmo-map-folder-set-flag): Define.
2014         (elmo-map-folder-unset-flag): Ditto.
2015
2016         * elmo.el (toplevel): Added autoload setting for
2017         `elmo-folder-list-global-flag-messages'.
2018         (elmo-folder-list-unreads,
2019         elmo-folder-list-importants,
2020         elmo-folder-list-answereds): Remove.
2021         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2022         Return a list whitch merged with messages have global flag.
2023         (elmo-folder-list-flagged-internal): New method.
2024         (elmo-folder-unflag-important,
2025         elmo-folder-flag-as-important,
2026         elmo-folder-unflag-read,
2027         elmo-folder-flag-as-read,
2028         elmo-folder-unflag-answered,
2029         elmo-folder-flag-as-answered): Remove.
2030         (elmo-folder-set-flag): New method.
2031         (elmo-folder-unset-flag): Ditto.
2032         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2033         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2034
2035         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2036         (elmo-folder-list-unreads-plugged,
2037         elmo-folder-list-importants-plugged,
2038         elmo-folder-list-answereds-plugged,
2039         elmo-folder-list-flagged-unplugged,
2040         elmo-folder-unflag-important-plugged,
2041         elmo-folder-flag-as-important-plugged,
2042         elmo-folder-unflag-read-plugged,
2043         elmo-folder-flag-as-read-plugged,
2044         elmo-folder-unflag-answered-plugged,
2045         elmo-folder-flag-as-answered-plugged): Remove.
2046         (elmo-folder-set-flag-plugged,
2047         elmo-folder-unset-flag-plugged): Define.
2048
2049         * elmo-flag.el (elmo-folder-initialize): Register to
2050         `elmo-global-flag-list' if flag is not global.
2051         (elmo-folder-append-messages): Set flag to source messages.
2052
2053         * elmo-filter.el (elmo-filter-folder-list-unreads,
2054         elmo-folder-list-unreads,
2055         elmo-filter-folder-list-importants,
2056         elmo-folder-list-importants,
2057         elmo-folder-flag-as-read,
2058         elmo-folder-unflag-read,
2059         elmo-folder-flag-as-important,
2060         elmo-folder-unflag-important,
2061         elmo-folder-flag-as-answered,
2062         elmo-folder-unflag-answered): Remove.
2063         (elmo-folder-set-flag): Define.
2064         (elmo-folder-unset-flag): Ditto.
2065
2066         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2067         elmo-folder-unflag-read-dop,
2068         elmo-folder-flag-as-important-dop,
2069         elmo-folder-unflag-important-dop,
2070         elmo-folder-flag-as-answered-dop,
2071         elmo-folder-unflag-answered-dop): Remove.
2072         (elmo-folder-set-flag-dop,
2073         elmo-folder-unset-flag-dop,
2074         elmo-folder-set-important-delayed,
2075         elmo-folder-unset-important-delayed,
2076         elmo-folder-set-read-delayed,
2077         elmo-folder-unset-read-delayed,
2078         elmo-folder-set-answered-delayed,
2079         elmo-folder-unset-answered-delayed): New function.
2080         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2081         (elmo-dop-queue-method-name-alist): Ditto.
2082
2083         * elmo-version.el (elmo-version): Up to 2.11.23.
2084
2085 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2086
2087         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2088
2089         * elsp-sa.el: New file.
2090
2091 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2092
2093         * modb-standard.el (modb-standard-message-entity): New function.
2094         (elmo-msgdb-message-entity): Use it.
2095
2096 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2097
2098         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2099         behavior when one-level is nil.
2100
2101         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2102
2103         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2104
2105 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2106
2107         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2108         get max number.
2109         (elmo-generic-folder-diff): Ditto.
2110
2111         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2112         (elmo-folder-update-number): Ditto.
2113
2114         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2115         (elmo-folder-next-message-number-dop): Ditto.
2116
2117 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2118
2119         * elmo-filter.el (elmo-folder-msgdb-create): Use
2120         `elmo-message-entity' and `elmo-message-flags' instead of
2121         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2122
2123 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2124
2125         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2126         `if-exists'.
2127
2128 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2129
2130         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2131
2132         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2133
2134         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2135
2136 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2137
2138         * elmo-version.el (elmo-version): Up to 2.11.22.
2139
2140 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2141
2142         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2143
2144 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2145
2146         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2147         if the message dose not exist.
2148
2149 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2150
2151         * elmo-version.el (elmo-version): Up to 2.11.21.
2152
2153 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2154
2155         * modb-standard.el (toplevel): Don't require mime.
2156
2157 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2158
2159         * elsp-bogofilter.el (toplevel): Don't require path-util.
2160         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2161         (elmo-spam-bogofilter-header): Abolish.
2162         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2163         (elmo-spam-bogofilter-args): New user option.
2164         (elsp-bogofilter-call-bogofilter): New internal function.
2165         (elmo-spam-buffer-spam-p): Use it.
2166         (elsp-bogofilter-register-buffer): Renamed from
2167         `elmo-spam-bogofilter-register-buffer';
2168         Use `elsp-bogofilter-call-bogofilter'.
2169         (elmo-spam-register-spam-buffer): Follow the change above.
2170         (elmo-spam-register-good-buffer): Ditto.
2171
2172 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2173
2174         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2175         message-id is nil do nothing.
2176
2177 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2178
2179         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2180         Revival.
2181         (elmo-imap4-session): Removed use-flag slot.
2182         (elmo-imap4-session-select-mailbox): Undo last change.
2183         (elmo-folder-use-flag-p): Use
2184         elmo-imap4-disuse-server-flag-mailbox-regexp.
2185
2186 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2187
2188         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2189         (elmo-imap4-session-select-mailbox): Set it up.
2190         (elmo-folder-use-flag-p): Return value of use-flag slot.
2191
2192 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2193
2194         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2195         message-id is nil.
2196         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2197
2198         * modb-entity.el (elmo-message-entity-handler): Likewise.
2199
2200 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2201
2202         * elmo.el (toplevel): Remove setting of autoloding for
2203         elmo-global-flag-initialize.
2204         (elmo-init): Don't call elmo-global-flag-initialize.
2205         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2206
2207         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2208         (elmo-global-mark-migrate): Don't call it.
2209         (elmo-global-mark-upgrade): Ditto.
2210
2211 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2212
2213         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2214         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2215
2216         * elmo-vars.el (elmo-init-hook): New user option.
2217
2218         * elmo.el (elmo-init): Run the elmo-init-hook.
2219
2220         * elmo-flag.el (elmo-global-mark-migrate): New function.
2221
2222 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2223
2224         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2225         Undo last change (move to elmo-msgdb-unset-flag).
2226         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2227         flag is unset.
2228
2229 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2230
2231         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2232         read flag is set.
2233         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2234         (elmo-msgdb-unset-flag): Ditto.
2235
2236 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2237
2238         * elmo-split.el (elmo-split): Return split message count.
2239
2240 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2241
2242         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2243         is nil.
2244
2245 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2246
2247         * elmo.el (elmo-folder-unflag-important): Call
2248         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2249         a symbol `always'.
2250
2251         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2252         before unset flag.
2253         (elmo-global-flag-detach): Delete the message from flag folder, if
2254         `delete-if-none' is a symbol `always'.
2255
2256 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2257
2258         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2259         `elmo-spam-spamfilter-decode-buffer'.
2260         (elsp-spamfilter-register-buffer-internal): New internal function.
2261         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2262         (elmo-spam-register-spam-buffer): Ditto.
2263         (elmo-spam-register-good-buffer): Ditto.
2264
2265         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2266         change.
2267         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2268         (elmo-spam-register-spam-buffer): Follow the API change.
2269         (elmo-spam-register-good-buffer): Ditto.
2270
2271         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2272         (elmo-split-spam-p): Added argument plist; Call
2273         `elmo-spam-buffer-spam-p' with new argument register.
2274
2275         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2276         `register'.
2277         (elmo-spam-message-spam-p): Ditto.
2278         (elmo-spam-register-spam-buffer): Added optional argument
2279         `restore'.
2280         (elmo-spam-register-good-buffer): Ditto.
2281         (elmo-spam-register-spam-messages): Ditto.
2282         (elmo-spam-register-good-messages): Ditto.
2283
2284 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2285
2286         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2287         register into good corpus.
2288         (elmo-spam-register-good-buffer): Fixed to register into bad
2289         corpus.
2290
2291 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2292
2293         * elmo-version.el (elmo-version): Up to 2.11.20.
2294
2295         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2296         change.
2297
2298         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2299         flag without depending on \Recent flag.
2300
2301 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2302
2303         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2304         (elmo-spam-modified-p): Defined.
2305         (elmo-spam-save-status): Set `modified' slot to nil.
2306         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2307         (elmo-spam-register-good-buffer): Ditto.
2308
2309         * elmo-spam.el (elmo-spam-modified-p): New API.
2310
2311 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2312
2313         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2314         duplicate definition.
2315
2316         * elmo-util.el (elmo-unfold-field-body): New function.
2317         (elmo-msgdb-get-message-id-from-buffer): Use it.
2318
2319         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2320         Fixed the last change; Use elmo-unfold-field-body.
2321
2322 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2323
2324         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2325         Unfold date value.
2326
2327 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2328
2329         * elmo-spam.el (elmo-spam-save-status): New API.
2330
2331         * elsp-spamfilter.el: New file.
2332
2333 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2334
2335         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2336
2337 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2338
2339         * elmo-split.el (elmo-split-spam-p): New function.
2340
2341         * elmo-spam.el: New file.
2342
2343         * elsp-bogofilter.el: Ditto.
2344
2345 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2346
2347         * elmo.el (elmo-folder-next-message-number): New API.
2348         (elmo-folder-next-message-number): Define.
2349         (elmo-message-field): Don't check folder length.
2350
2351         * elmo-net.el (elmo-folder-next-message-number): Define.
2352         (elmo-folder-next-message-number-unplugged): Define.
2353
2354         * elmo-map.el (elmo-folder-next-message-number): Define.
2355         (elmo-folder-delete-messages): Clear hash value.
2356
2357         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2358
2359         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2360         (elmo-folder-delete-messages-dop-delayed): Always return t.
2361
2362         * elmo-version.el (elmo-version): Up to 2.11.19.
2363
2364 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2365
2366         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2367         change.
2368
2369         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2370         identical cons cell into the mark-alist and the hash table.
2371
2372 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2373
2374         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2375         elmo-folder-list-messages with argument `visible-only' as t.
2376
2377         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2378         (elmo-folder-msgdb-create): Check the target folder.
2379
2380 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2381
2382         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2383         `permanentflag' instead of `flags'.
2384         (elmo-folder-open): Ditto.
2385         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2386         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2387         (elmo-folder-use-flag-p): Always return t.
2388         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2389         `permanentflags' does not exist.
2390         (elmo-folder-open): Ditto.
2391
2392 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2393
2394         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2395         is nil.
2396         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2397
2398         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2399         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2400         response.
2401         (elmo-folder-open): Ditto.
2402         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2403         slot of the session includes the flag.
2404         (elmo-imap4-session-flag-available-p): New function.
2405         (elmo-imap4-folder-list-flagged): Ditto.
2406         (elmo-folder-list-unreads-plugged): Use it.
2407         (elmo-folder-list-importants-plugged): Ditto.
2408         (elmo-folder-list-answereds-plugged): Ditto.
2409         (elmo-imap4-search-internal-primitive): Ditto.
2410         (elmo-imap4-folder-list-any-plugged,
2411         elmo-imap4-folder-list-digest-plugged): Abolish.
2412
2413         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2414         if numbers is nil.
2415
2416 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2417
2418         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2419
2420 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2421
2422         * elmo-util.el (elmo-get-hash-val): Simplify.
2423         (elmo-set-hash-val): Rewrite.
2424
2425 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2426
2427         * elmo.el (elmo-folder-list-messages): Append killed messages into
2428         result if `visible-only' is nil and `in-msgdb' is non-nil.
2429
2430         * elmo-util.el (elmo-uniq-list): Added optional argument
2431         `delete-function'.
2432
2433         * modb.el (elmo-msgdb-flag-count): New API.
2434
2435         * modb-standard.el (modb-standard): Added slot flag-count.
2436         (modb-standard-countup-flags): New function.
2437         (modb-standard-load-flag): Call it.
2438         (elmo-msgdb-append): Ditto.
2439         (elmo-msgdb-clear): Clear slot flag-count.
2440         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2441         (elmo-msgdb-unset-flag): Treat `all' flag and call
2442         modb-standard-countup-flags.
2443         (elmo-msgdb-flag-count): Define.
2444         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2445         (elmo-msgdb-delete-messages): Ditto.
2446
2447         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2448         (elmo-msgdb-flag-count): Define.
2449
2450         * elmo.el (elmo-folder-list-messages): Undo last change.
2451         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2452         (elmo-folder-kill-messages): Unset all flags to numbers.
2453
2454         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2455         elmo-folder-kill-messages.
2456
2457         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2458         (elmo-nntp-folder-delete-messages): Abolish.
2459
2460         * elmo-version.el (elmo-version): Up to 2.11.18.
2461
2462 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2463
2464         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2465         (elmo-folder-kill-messages-range): New function.
2466         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2467         instead of elmo-folder-kill-messages-before.
2468
2469 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2470
2471         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2472         elmo-imap4-current-msgdb to decide entity handler.
2473
2474 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2475
2476         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2477
2478         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2479         inline function.
2480         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2481         (elmo-msgdb-overview-entity-set-number,
2482         elmo-msgdb-overview-entity-get-references,
2483         elmo-msgdb-overview-entity-set-references,
2484         elmo-msgdb-overview-entity-get-from-no-decode,
2485         elmo-msgdb-overview-entity-get-from,
2486         elmo-msgdb-overview-entity-set-from,
2487         elmo-msgdb-overview-entity-get-subject,
2488         elmo-msgdb-overview-entity-get-subject-no-decode,
2489         elmo-msgdb-overview-entity-set-subject,
2490         elmo-msgdb-overview-entity-get-date,
2491         elmo-msgdb-overview-entity-set-date,
2492         elmo-msgdb-overview-entity-get-to,
2493         elmo-msgdb-overview-entity-get-cc,
2494         elmo-msgdb-overview-entity-get-size,
2495         elmo-msgdb-overview-entity-set-size,
2496         elmo-msgdb-overview-entity-get-extra,
2497         elmo-msgdb-overview-entity-set-extra,
2498         elmo-msgdb-overview-entity-get-extra-field,
2499         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2500         (elmo-msgdb-make-index): Use
2501         `elmo-msgdb-overview-entity-get-number-internal'.
2502         (elmo-msgdb-clear-index): Ditto.
2503         (elmo-msgdb-append-entity): Ditto;
2504         Use `elmo-msgdb-overview-entity-get-id-internal'.
2505
2506         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2507         elmo-msgdb-overview-entity-set-number,
2508         elmo-msgdb-overview-entity-get-references,
2509         elmo-msgdb-overview-entity-set-references,
2510         elmo-msgdb-overview-entity-get-from-no-decode,
2511         elmo-msgdb-overview-entity-get-from,
2512         elmo-msgdb-overview-entity-set-from,
2513         elmo-msgdb-overview-entity-get-subject,
2514         elmo-msgdb-overview-entity-get-subject-no-decode,
2515         elmo-msgdb-overview-entity-set-subject,
2516         elmo-msgdb-overview-entity-get-date,
2517         elmo-msgdb-overview-entity-set-date,
2518         elmo-msgdb-overview-entity-get-to,
2519         elmo-msgdb-overview-entity-get-cc,
2520         elmo-msgdb-overview-entity-get-size,
2521         elmo-msgdb-overview-entity-set-size,
2522         elmo-msgdb-overview-entity-get-extra,
2523         elmo-msgdb-overview-entity-set-extra,
2524         elmo-msgdb-overview-entity-get-extra-field,
2525         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2526         and rewrote for backward compatibility.
2527
2528 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2529
2530         * elmo.el (elmo-message-entity-number,
2531         elmo-message-entity-set-number,
2532         elmo-message-entity-field,
2533         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2534
2535         * elmo-msgdb.el (elmo-message-entity-number,
2536         elmo-message-entity-set-number,
2537         elmo-message-entity-field,
2538         elmo-message-entity-set-field): Moved from elmo.el.
2539
2540 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2541
2542         * elmo.el (toplevel): Changed definition orders.
2543
2544 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2545
2546         * modb.el (elmo-msgdb-search): New API .
2547         (elmo-msgdb-match-condition): Ditto.
2548
2549         * modb-standard.el (elmo-msgdb-search): Define.
2550
2551         * modb-legacy.el (elmo-msgdb-search): Ditto.
2552
2553         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2554         from elmo-msgdb-match-condition-internal.
2555
2556         * elmo.el (elmo-folder-search-fast): Abolish.
2557         (elmo-folder-search): Use elmo-msgdb-search and
2558         elmo-with-progress-display.
2559
2560         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2561         as msgdb API.
2562
2563         * elmo.el (elmo-folder): Remove slot message-modified and
2564         flag-modified.
2565         (elmo-folder-set-message-modified): Abolish.
2566         (elmo-generic-folder-commit): Follow the change above.
2567         (elmo-folder-synchronize): Ditto.
2568
2569         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2570
2571         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2572
2573         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2574
2575 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2576
2577         * modb-standard.el (modb-standard-make-message-entity,
2578         elmo-msgdb-make-message-entity,
2579         elmo-msgdb-create-message-entity-from-buffer,
2580         elmo-msgdb-message-entity-number,
2581         elmo-msgdb-message-entity-set-number,
2582         elmo-msgdb-message-entity-field,
2583         elmo-msgdb-message-entity-set-field,
2584         elmo-msgdb-copy-message-entity,
2585         elmo-msgdb-match-condition-internal): Remove.
2586
2587         * modb-entity.el: New file (again).
2588
2589         * modb.el (toplevel): Require modb-entity.
2590         (elmo-msgdb-message-entity-handler): New method.
2591
2592         * modb-standard.el (modb-standard-entity-id): Use
2593         elmo-message-entity-handler.
2594         (modb-standard-load-entity): Ditto.
2595         (elmo-msgdb-append-entity): Ditto.
2596         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2597
2598         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2599         elmo-msgdb-decoded-cache-hashtb,
2600         (modb-legacy-make-message-entity,
2601         elmo-msgdb-make-message-entity,
2602         elmo-msgdb-create-message-entity-from-buffer,
2603         elmo-msgdb-message-entity-number,
2604         elmo-msgdb-message-entity-set-number,
2605         elmo-msgdb-message-entity-field,
2606         elmo-msgdb-message-entity-set-field,
2607         elmo-msgdb-copy-message-entity,
2608         elmo-msgdb-match-condition-internal,
2609         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2610
2611         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2612         (elmo-message-entity-set-number): Ditto.
2613         (elmo-message-entity-field): Ditto.
2614         (elmo-message-entity-set-field): Ditto.
2615
2616         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2617
2618         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2619
2620         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2621
2622         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2623         (elmo-nntp-msgdb-create-message): Ditto.
2624
2625         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2626         (elmo-folder-msgdb-create): Add unread flag.
2627
2628         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2629
2630         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2631
2632         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2633
2634         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2635
2636         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2637         elmo-msgdb-messge-entity-handler.
2638         * elmo-version.el (elmo-version): Up to 2.11.17.
2639
2640 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2641
2642         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2643         change.
2644
2645 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2646
2647         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2648
2649         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2650         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2651         (elmo-msgdb-flag-table): Ditto.
2652         (elmo-msgdb-sort-by-date): Ditto.
2653
2654         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2655
2656         * modb-standard.el (toplevel): Require mime.
2657         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2658         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2659         elmo-msgdb-message-entity-number.
2660         (elmo-msgdb-append-entity): Ditto.
2661         (elmo-msgdb-create-message-entity-from-file): Remove.
2662         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2663         corresponds to the entity.
2664         (elmo-msgdb-message-entity-number): Do nothing currently.
2665         (elmo-msgdb-message-entity-field): Ditto.
2666         (elmo-msgdb-message-entity-set-field): Ditto.
2667         (elmo-msgdb-copy-message-entity): Ditto.
2668         (elmo-msgdb-match-condition-internal): Ditto.
2669
2670         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2671         elmo-util.el.
2672         (elmo-msgdb-create-message-entity-from-file): Remove.
2673
2674         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2675         modb-legacy.el.
2676         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2677
2678         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2679
2680 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2681
2682         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2683         (elmo-msgdb-message-entity-field): Ditto.
2684         (elmo-msgdb-message-entity-number): Ditto.
2685
2686 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2687
2688         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2689         Fixed how to set extra field into entity.
2690         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2691         symbol.
2692
2693         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2694         Fixed how to set extra field into entity.
2695         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2696         symbol.
2697
2698 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2699
2700         * modb.el (elmo-message-entity-db): New function.
2701         (elmo-msgdb-make-message-entity): New API.
2702         (elmo-msgdb-message-entity-number): Ditto.
2703         (elmo-msgdb-message-entity-set-number): Ditto.
2704         (elmo-msgdb-message-entity-field): Ditto.
2705         (elmo-msgdb-message-entity-set-field): Ditto.
2706         (elmo-msgdb-copy-message-entity): Ditto.
2707         (elmo-msgdb-create-message-entity-from-file): Ditto.
2708         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2709         (elmo-msgdb-match-condition-internal): Ditto.
2710
2711         * modb-standard.el (modb-legacy): Require modb-legacy.
2712         (modb-standard-make-message-entity): New inline function.
2713         (elmo-msgdb-make-message-entity): Define.
2714         (elmo-msgdb-create-message-entity-from-file): Ditto.
2715         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2716         (elmo-msgdb-message-entity-field): Ditto.
2717         (elmo-msgdb-message-entity-set-field): Ditto.
2718         (elmo-msgdb-copy-message-entity): Ditto.
2719         (elmo-msgdb-match-condition-internal): Ditto.
2720
2721         * modb-legacy.el: Don't require modb-entity.
2722         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2723         (elmo-msgdb-match-condition-primitive): Ditto.
2724         (elmo-msgdb-get-decoded-cache): Ditto.
2725         (elmo-msgdb-overview-entity-get-id): Ditto.
2726         (elmo-msgdb-overview-entity-get-number): Ditto.
2727         (elmo-msgdb-overview-entity-set-number): Ditto.
2728         (elmo-msgdb-overview-entity-get-references): Ditto.
2729         (elmo-msgdb-overview-entity-set-references): Ditto.
2730         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2731         (elmo-msgdb-overview-entity-get-from): Ditto.
2732         (elmo-msgdb-overview-entity-set-from): Ditto.
2733         (elmo-msgdb-overview-entity-get-subject): Ditto.
2734         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2735         (elmo-msgdb-overview-entity-set-subject): Ditto.
2736         (elmo-msgdb-overview-entity-get-date): Ditto.
2737         (elmo-msgdb-overview-entity-set-date): Ditto.
2738         (elmo-msgdb-overview-entity-get-to): Ditto.
2739         (elmo-msgdb-overview-entity-get-cc): Ditto.
2740         (elmo-msgdb-overview-entity-get-size): Ditto.
2741         (elmo-msgdb-overview-entity-set-size): Ditto.
2742         (elmo-msgdb-overview-entity-get-extra): Ditto.
2743         (elmo-msgdb-overview-entity-set-extra): Ditto.
2744         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2745         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2746         (elmo-msgdb-number-load): Ditto.
2747         (elmo-msgdb-overview-load): Ditto.
2748         (elmo-msgdb-mark-load): Ditto.
2749         (elmo-msgdb-number-save): Ditto.
2750         (elmo-msgdb-mark-save): Ditto.
2751         (elmo-msgdb-overview-save): Ditto.
2752         (modb-legacy-make-message-entity): New inline function.
2753         (elmo-msgdb-insert-file-header): Ditto.
2754         (elmo-msgdb-make-message-entity): Define.
2755         (elmo-msgdb-create-message-entity-from-file): Ditto.
2756         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2757         (elmo-msgdb-message-entity-number): Ditto.
2758         (elmo-msgdb-message-entity-set-number): Ditto.
2759         (elmo-msgdb-message-entity-field): Ditto.
2760         (elmo-msgdb-message-entity-set-field): Ditto.
2761         (elmo-msgdb-copy-message-entity): Ditto.
2762         (elmo-msgdb-match-condition-internal): Ditto.
2763
2764         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2765         (elmo-message-copy-entity): Rewrite.
2766         (elmo-message-entity-number): Ditto.
2767         (elmo-message-entity-set-number): Ditto.
2768         (elmo-message-entity-field): Use elmo-message-entity-db.
2769         (elmo-message-entity-set-field): Ditto.
2770         (elmo-message-field): Rewrite.
2771
2772         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2773         elmo-msgdb.el
2774         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2775
2776         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2777         elmo-message-entity-field.
2778         (elmo-shimbun-folder-shimbun-header): Ditto.
2779         (elmo-shimbun-entity-to-header): Ditto.
2780         (elmo-folder-msgdb-create): Ditto.
2781         (elmo-shimbun-msgdb-create-entity): Ditto;
2782         Use elmo-msgdb-create-message-entity-from-buffer.
2783         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2784         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2785
2786         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2787         elmo-msgdb-create-message-entity-from-file and 
2788         elmo-message-entity-field.
2789
2790         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2791         elmo-message-entity-number.
2792         (elmo-pop3-msgdb-create-message): Use
2793         elmo-msgdb-create-message-entity-from-buffer,
2794         elmo-message-entity-set-field, elmo-message-entity-number and
2795         elmo-message-entity-set-number.
2796
2797         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2798         the API change in elmo-msgdb-make-message-entity.
2799         (elmo-nntp-msgdb-create-message): Use
2800         elmo-msgdb-create-message-entity-from-buffer.
2801
2802         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2803         elmo-message-entity-field and
2804         elmo-msgdb-create-message-entity-from-file.
2805
2806         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2807         (elmo-msgdb-get-field): Abolish.
2808         (elmo-msgdb-get-number): Rewrite.
2809         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2810         (elmo-msgdb-flag-table): Ditto.
2811         (elmo-msgdb-get-last-message-id,
2812         elmo-msgdb-number-load, elmo-msgdb-overview-load,
2813         elmo-msgdb-mark-load, elmo-msgdb-number-save,
2814         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2815         (elmo-msgdb-create-overview-from-buffer,
2816         elmo-msgdb-overview-get-parent-entity): Abolish.
2817
2818         * elmo-mime.el (elmo-mime-display-as-is): Use
2819         elmo-message-entity-field.
2820
2821         * elmo-map.el (elmo-folder-pack-numbers): Use
2822         elmo-message-entity-set-number.
2823
2824         * elmo-maildir.el (elmo-folder-msgdb-create): 
2825         elmo-msgdb-create-message-entity-from-file instead of
2826         elmo-msgdb-create-overview-entity-from-file.
2827
2828         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2829         msgdb.
2830         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2831         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2832
2833         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2834         elmo-messge-entity-field and elmo-message-entity-number.
2835         (elmo-imap4-fetch-callback-1): Call
2836         elmo-msgdb-create-message-entity-from-buffer instead of
2837         elmo-msgdb-create-overview-from-buffer. 
2838         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
2839         (elmo-find-fetch-strategy): Likewise.
2840
2841         * elmo-flag.el (elmo-folder-msgdb-create): Call 
2842         elmo-localdir-msgdb-create-entity with argument msgdb.
2843
2844         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
2845         and elmo-message-entity-set-number.
2846
2847         * elmo-cache.el (elmo-folder-msgdb-create): Use
2848         elmo-message-entity-field.
2849         (elmo-folder-msgdb-create): Call
2850         elmo-msgdb-create-message-entity-from-file instead of
2851         elmo-msgdb-create-overview-entity-from-file.
2852
2853         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
2854         argument msgdb; Call elmo-msgdb-create-message-from-buffer
2855         instead of elmo-msgdb-create-overview-from-buffer.
2856         (elmo-archive-msgdb-create-entity): Ditto.
2857         (elmo-archive-msgdb-create-as-numlist-subr1): Use
2858         elmo-message-entity-field.
2859         (elmo-archive-parse-mmdf): Ditto.
2860
2861         * modb-entity.el: Removed.
2862
2863         * elmo-version.el (elmo-version): Up to 2.11.16.
2864
2865 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
2866
2867         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
2868         `is-local'.
2869         (elmo-folder-flag-as-answered): Ditto.
2870
2871 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2872
2873         * modb-standard.el: New file.
2874
2875         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
2876         elmo-msgdb-convert-type is `sync'.
2877
2878         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
2879         (elmo-msgdb-convert-type): New user option.
2880
2881         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
2882         (elmo-load-msgdb): Auto detect saved type.
2883
2884         * elmo-version.el (elmo-version): Up to 2.11.15.
2885
2886 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
2887
2888         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
2889
2890         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
2891         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
2892         with argument `delete-if-none' when dst-folder is 'null.
2893
2894         * elmo-flag.el (elmo-folder-append-messages): Defined.
2895         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
2896
2897 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2898
2899         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
2900
2901 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2902
2903         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
2904         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
2905         (elmo-folder-commit): Ditto.
2906
2907 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2908
2909         * elmo-flag.el: New file.
2910
2911         * elmo-mark.el: Removed.
2912
2913         * modb-legacy.el (modb-legacy-new-mark,
2914         modb-legacy-unread-uncached-mark,
2915         modb-legacy-unread-cached-mark,
2916         modb-legacy-read-uncached-mark,
2917         modb-legacy-answered-cached-mark,
2918         modb-legacy-answered-uncached-mark,
2919         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
2920         All other related portions are changed.
2921
2922         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
2923         (elmo-folder-list-messages-with-global-mark): Abolish.
2924         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
2925         (elmo-folder-flag-as-important): Ditto.
2926         (elmo-folder-unflag-read): Ditto.
2927         (elmo-folder-flag-as-read): Ditto.
2928         (elmo-folder-unflag-answered): Ditto.
2929         (elmo-folder-flag-as-answered): Ditto.
2930         (elmo-message-encache): Return the cache path.
2931         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
2932         (elmo-message-set-flag): Transitional implementation.
2933         (elmo-message-unset-flag): Ditto.
2934         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
2935         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
2936         (elmo-init): Call elmo-global-flag-initialize.
2937         (toplevel): Added autoload settings for elmo-flag.
2938
2939         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
2940
2941         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
2942         (elmo-file-cache-delete): Don't treat global-mark.
2943
2944         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
2945
2946         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2947
2948         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
2949         `elmo-global-flags-set'.
2950
2951         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
2952         `flag'.
2953         (elmo-folder-unflag-read): Ditto.
2954         (elmo-folder-unflag-important): Ditto.
2955         (elmo-folder-flag-as-important): Ditto.
2956         (elmo-folder-unflag-answered): Ditto.
2957         (elmo-folder-flag-as-answered): Ditto.
2958
2959         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
2960         `elmo-global-flags-set'.
2961         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
2962
2963         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
2964
2965         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
2966         `flag'.
2967         (elmo-folder-flag-as-important): Ditto.
2968         (elmo-folder-unflag-important): Ditto.
2969         (elmo-folder-flag-as-important): Ditto.
2970         (elmo-folder-unflag-read): Ditto.
2971         (elmo-folder-flag-as-read): Ditto.
2972         (elmo-folder-unflag-answered): Ditto.
2973         (elmo-folder-flag-as-answered): Ditto.
2974
2975         * elmo-multi.el (elmo-folder-list-importants): Don't call
2976         elmo-folder-list-messages-with-global-mark.
2977         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
2978         (elmo-folder-unflag-important): Ditto.
2979         (elmo-folder-flag-as-read): Ditto.
2980         (elmo-folder-unflag-read): Ditto.
2981         (elmo-folder-flag-as-answered): Ditto.
2982         (elmo-folder-unflag-answered): Ditto.
2983
2984         * elmo-msgdb.el (elmo-msgdb-new-mark,
2985         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
2986         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
2987         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
2988         (Moved to modb-legacy.el).
2989         (elmo-flag-table-get): Treat important flag too.
2990
2991         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
2992         `mark' to `flag'.
2993         (elmo-map-folder-flag-as-important): Ditto.
2994         (elmo-map-folder-unflag-read): Ditto.
2995         (elmo-map-folder-flag-as-read): Ditto.
2996         (elmo-map-folder-unflag-answered): Ditto.
2997         (elmo-map-folder-flag-as-answered): Ditto.
2998         (elmo-folder-unflag-important): Ditto.
2999         (elmo-folder-flag-as-important): Ditto.
3000         (elmo-folder-unflag-read): Ditto.
3001         (elmo-folder-flag-as-read): Ditto.
3002         (elmo-folder-unflag-answered): Ditto.
3003         (elmo-folder-flag-as-answered): Ditto.
3004
3005         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3006         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3007         `flag'.
3008         (elmo-map-folder-unflag-important): Ditto.
3009         (elmo-map-folder-flag-as-read): Ditto.
3010         (elmo-map-folder-unflag-read): Ditto.
3011         (elmo-map-folder-flag-as-answered): Ditto.
3012         (elmo-map-folder-unflag-answered): Ditto.
3013
3014         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3015         `elmo-global-flags-set'.
3016         (elmo-global-flags-set): Added autoload setting.
3017
3018         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3019         `flag'.
3020
3021         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3022         `elmo-msgdb-global-mark-set'.
3023         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3024         Call `elmo-global-flags-set'.
3025         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3026         `flag'.
3027         (elmo-folder-flag-as-important-plugged): Ditto.
3028         (elmo-folder-unflag-read-plugged): Ditto.
3029         (elmo-folder-flag-as-read-plugged): Ditto.
3030         (elmo-folder-unflag-answered-plugged): Ditto.
3031         (elmo-folder-flag-as-answered-plugged): Ditto.
3032         (elmo-global-flags-set): Added autoload setting.
3033
3034         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3035         `flag'.
3036         (elmo-folder-unflag-read): Ditto.
3037         (elmo-folder-flag-as-important): Ditto.
3038         (elmo-folder-unflag-important): Ditto.
3039         (elmo-folder-flag-as-answered): Ditto.
3040         (elmo-folder-unflag-answered): Ditto.
3041
3042         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3043         change of `mark'->`flag'.
3044         (elmo-dop-queue-method-name-alist): Ditto.
3045         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3046         (elmo-folder-unflag-read-dop): Ditto.
3047         (elmo-folder-flag-as-important-dop): Ditto.
3048         (elmo-folder-unflag-important-dop): Ditto.
3049         (elmo-folder-flag-as-answered-dop): Ditto.
3050         (elmo-folder-unflag-answered-dop): Ditto.
3051
3052         * elmo-cache.el (elmo-folder-msgdb-create): Call
3053         `elmo-global-flags-set'.
3054
3055         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3056         Call `elmo-global-flags-set'.
3057         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3058         elmo-archive-parse-mmdf with argument `folder'.
3059         (elmo-archive-parse-mmdf): Added argument `folder';
3060         Call `elmo-global-flags-set'.
3061
3062         * elmo-version.el (elmo-version): Up to 2.11.14.
3063
3064 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3065
3066         * modb.el (elmo-msgdb-length): Define.
3067
3068         * elmo.el (elmo-make-folder): Fixed.
3069         (elmo-generic-folder-append-messages): Follow the API change.
3070
3071         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3072         API change.
3073
3074 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3075
3076         * modb.el: New file.
3077
3078         * modb-entity.el: Ditto.
3079
3080         * modb-legacy.el: Ditto.
3081
3082         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3083         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3084         of `elmo-msgdb-overview-get-entity'.
3085         (elmo-msgdb-get-field): Ditto.
3086         (elmo-msgdb-merge): Moved to `elmo.el'.
3087         (elmo-msgdb-length): Removed; redefine as modb method.
3088         (elmo-msgdb-change-mark): Abolish.
3089         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3090         (elmo-msgdb-match-condition): Don't use mark.
3091         (elmo-msgdb-overview-get-entity): Abolish.
3092         Split modb part into `modb*.el'.
3093
3094         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3095
3096         * elmo-shimbun.el (shimbun-mua-search-id): Use
3097         `elmo-msgdb-message-entity' instead of
3098         `elmo-msgdb-overview-get-entity'.
3099         (elmo-shimbun-folder-shimbun-header): Ditto.
3100         (elmo-shimbun-get-headers): Ditto.
3101         (elmo-shimbun-update-overview): Ditto.
3102
3103         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3104
3105         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3106
3107         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3108         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3109
3110         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3111         `elmo-msgdb-mark-to-flags'.
3112
3113         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3114         `elmo-msgdb-set-path'.
3115
3116         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3117  
3118         * elmo-version.el (elmo-version): Up to 2.11.13.
3119
3120         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3121
3122         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3123         of mark.
3124
3125 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3126
3127         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3128         mismatch.
3129
3130 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3131
3132         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3133         instead of `elmo-msgdb-get-cached'.
3134         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3135
3136         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3137         (elmo-msgdb-set-cached): Ditto.
3138         (elmo-msgdb-set-flag): Rewrite.
3139         (elmo-msgdb-unset-flag): Ditto.
3140
3141         * elmo-msgdb.el: Rewrite with luna.
3142
3143         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3144         (elmo-folder-msgdb): Follow the change above.
3145         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3146         (elmo-folder-unmark-important): Follow the API change.
3147         (elmo-folder-mark-as-important): Ditto.
3148         (elmo-folder-unmark-read): Ditto.
3149         (elmo-folder-mark-as-read): Ditto.
3150         (elmo-folder-unmark-answered): Ditto.
3151         (elmo-folder-mark-as-answered): Ditto.
3152         (elmo-folder-clear): Likewise.
3153
3154         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3155         instead of `elmo-msgdb-load' (renamed).
3156
3157         * elmo-version.el (elmo-version): Up to 2.11.12.
3158
3159 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3160
3161         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3162         change.
3163         (elmo-message-mark): Abolish.
3164         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3165         instead of `elmo-msgdb-change-mark'.
3166
3167         * elmo-pipe.el (elmo-message-mark): Abolish.
3168
3169         * elmo-multi.el (elmo-message-mark): Ditto.
3170
3171         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3172         (elmo-msgdb-unread-uncached-mark): Ditto.
3173         (elmo-msgdb-unread-cached-mark): Ditto.
3174         (elmo-msgdb-read-uncached-mark): Ditto.
3175         (elmo-msgdb-answered-cached-mark): Ditto.
3176         (elmo-msgdb-answered-uncached-mark): Ditto.
3177         (elmo-msgdb-important-mark): Ditto.
3178         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3179         `use-cache'.
3180         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3181         `flags'.
3182         (elmo-flag-table-load): Changed flag to list of flag.
3183         (elmo-flag-table-set): If flags is nil, set read flag.
3184         (elmo-flag-table-get): Return derived flags from global mark,
3185         cache status and saved flags.
3186         (elmo-msgdb-flag-table): Follow the change above.
3187         (elmo-msgdb-out-of-date-messages): New function.
3188
3189         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3190
3191         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3192
3193         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3194
3195         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3196         (elmo-nntp-msgdb-create-message): Ditto.
3197
3198         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3199
3200         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3201         independent.
3202         (elmo-folder-msgdb-create): Follow the API change.
3203
3204         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3205         (elmo-folder-append-messages): Ditto.
3206
3207         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3208         (elmo-folder-append-buffer): Ditto.
3209
3210         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3211
3212         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3213
3214         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3215         (elmo-archive-parse-mmdf): Ditto.
3216
3217         * elmo-version.el (elmo-version): Up to 2.11.11.
3218
3219 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3220
3221         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3222         `elmo-msgdb-mark'.
3223
3224         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3225
3226         * elmo-pipe.el (elmo-message-flags): Defined.
3227
3228         * elmo-multi.el (elmo-message-flags): Ditto.
3229
3230 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3231
3232         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3233         `elmo-msgdb-delete-msgs'.
3234
3235         * elmo.el (elmo-folder-count-flags): Don't use
3236         `elmo-msgdb-get-mark-alist'.
3237         (elmo-folder-detach-messages): Follow the API change.
3238
3239         * elmo.el (elmo-folder-list-messages): Append killed messages into
3240         result if `visible-only' is nil.
3241
3242         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3243         canceled messages.
3244         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3245         (elmo-folder-update-number): Likewise.
3246
3247         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3248         (elmo-pop3-sort-msgdb-by-original-number): Use
3249         `elmo-msgdb-sort-entities'.
3250
3251         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3252         (elmo-msgdb-sort-by-date): Use it.
3253         (elmo-msgdb-overview-sort-by-date): Abolish.
3254
3255         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3256
3257         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3258         (elmo-msgdb-flags): New function.
3259         (elmo-msgdb-merge): Use elmo-msgdb-append.
3260
3261         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3262         change.
3263
3264         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3265
3266         * elmo-dop.el (elmo-folder-status-dop): Use
3267         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3268
3269 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3270
3271         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3272
3273         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3274
3275         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3276
3277         * elmo-util.el (elmo-with-progress-display): New macro.
3278
3279         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3280
3281 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3282
3283         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3284         `elmo-folder-list-message-entities' instead of
3285         `elmo-msgdb-get-overview'.
3286         (elmo-map-folder-list-message-locations): Ditto.
3287
3288         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3289         methods instead of treat directly).
3290         (elmo-msgdb-clear): Ditto.
3291         (elmo-msgdb-delete-msgs): Ditto.
3292         (elmo-msgdb-sort-by-date): Ditto.
3293
3294         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3295         local variables.
3296         (elmo-nntp-folder-msgdb-create): Follow the API change.
3297
3298         * elmo-version.el (elmo-version): Up to 2.11.10.
3299
3300 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3301
3302         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3303         (elmo-msgdb-flags-to-mark): Ditto.
3304         (elmo-msgdb-append-entity): Ditto.
3305
3306         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3307         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3308         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3309         (elmo-archive-parse-mmdf): Ditto.
3310
3311         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3312
3313         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3314
3315         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3316
3317         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3318
3319         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3320
3321         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3322
3323         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3324
3325         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3326
3327         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3328         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3329         to empty msgdb.
3330
3331         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3332         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3333         instead of directly construction.
3334         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3335         instead of construct msgdb.
3336
3337         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3338         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3339         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3340         instead of construct msgdb.
3341
3342 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3343
3344         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3345         when field is from or subject.
3346
3347 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3348
3349         * elmo-multi.el (elmo-message-entity-parent): Define.
3350         (elmo-folder-search): Rewrite.
3351
3352 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3353
3354         * elmo-multi.el (elmo-message-cached-p): Define.
3355
3356         * elmo.el (elmo-message-cached-p): New method.
3357         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3358         (elmo-message-flags): New method.
3359         (elmo-message-flagged-p): New function.
3360
3361         * elmo-version.el (elmo-version): Up to 2.11.9.
3362
3363 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3364
3365         * elmo-version.el (elmo-version): Up to 2.11.8.
3366
3367         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3368
3369         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3370
3371 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3372
3373         * elmo.el (elmo-folder-detach-messages): Undo last change.
3374
3375 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3376
3377         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3378
3379         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3380         only when src folder type is pop3.
3381
3382 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3383
3384         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3385         elmo-msgdb-overview-entity-get-number instead of
3386         elmo-message-entity-number.
3387
3388 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3389
3390         * elmo-version.el (elmo-version): Up to 2.11.7.
3391
3392 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3393
3394         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3395         function.
3396
3397         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3398         (elmo-msgdb-merge): New function.
3399         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3400         (elmo-msgdb-make-index): Rewrite.
3401
3402         * elmo-version.el (elmo-version): Up to 2.11.6.
3403
3404         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3405         use it as a the path for loading message entities.
3406
3407         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3408
3409 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3410
3411         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3412         message-modified slot of itself if it does not require target msgdb.
3413
3414         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3415         if folder length is zero.
3416         (elmo-mime-display-as-is): Ditto.
3417
3418         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3419
3420         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3421
3422 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3423
3424         * elmo.el (elmo-folder-set-message-modified): New method.
3425         (elmo-generic-folder-commit): Use it.
3426         (elmo-folder-synchronize): Ditto.
3427
3428         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3429         (elmo-folder-commit): Remove duplicate definition.
3430
3431 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3432
3433         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3434
3435 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3436
3437         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3438         (elmo-strict-folder-diff): Ditto.
3439         (elmo-folder-set-info-max-by-numdb): Simplify.
3440
3441         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3442         elmo-msgdb-list-messages.
3443
3444         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3445         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3446
3447 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3448
3449         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3450         visible-only is non-nil.
3451         (elmo-folder-confirm-appends): Changed message.
3452         (elmo-folder-synchronize): Added argument disable-killed.
3453
3454         * elmo-multi.el (elmo-folder-synchronize): Added argument
3455         disable-killed.
3456
3457         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3458
3459         * elmo-version.el (elmo-version): Up to 2.11.5.
3460
3461         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3462         elmo-list-filter.
3463
3464         * elmo-util.el (elmo-list-filter): Simplify.
3465
3466         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3467         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3468         (elmo-generic-folder-diff): Abolish argument.
3469         (elmo-msgdb-load): Don't use number-alist.
3470
3471         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3472
3473         * elmo-pipe.el (elmo-folder-diff): Ditto.
3474
3475         * elmo-nmz.el (elmo-folder-diff): Ditto.
3476
3477         * elmo-net.el (elmo-folder-diff): Ditto.
3478
3479         * elmo-maildir.el (elmo-folder-diff): Ditto.
3480
3481         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3482
3483         * elmo-multi.el (elmo-folder-diff): Ditto
3484         (elmo-multi-folder-diff): Rewrite.
3485
3486 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3487
3488         * elmo-pipe.el (elmo-folder-msgdb): Define.
3489
3490 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3491
3492         * elmo.el (elmo-message-set-cached): Define as a method.
3493
3494         * elmo-pipe.el (elmo-message-set-cached): Define.
3495         (elmo-find-fetch-strategy): Ditto.
3496
3497         * elmo-multi.el (elmo-message-set-cached): Define.
3498         (elmo-find-fetch-strategy): Rewrite.
3499
3500         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3501
3502         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3503
3504 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3505
3506         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3507         instead of number-alist.
3508
3509         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3510         mark nor message-id when msgdb of source folder is not loaded.
3511
3512         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3513
3514         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3515
3516 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3517
3518         * elmo.el (elmo-folder-length): Don't require msgdb.
3519
3520 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3521
3522         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3523         (elmo-message-field): Ditto.
3524
3525         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3526         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3527         slot.
3528         (elmo-map-folder-list-answereds): Define.
3529         (elmo-maildir-list-location): Treat 'R' info.
3530         (elmo-folder-msgdb-create): Treat flag-table.
3531         (elmo-folder-append-messages): Save flag-table.
3532
3533 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3534
3535         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3536         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3537
3538 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3539
3540         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3541
3542         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3543         'read when mark is null.
3544
3545 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3546
3547         * elmo-version.el (elmo-version): Up to 2.11.4.
3548
3549 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3550
3551         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3552         (elmo-folder-mark-as-answered): Ditto.
3553
3554 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3555
3556         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3557         (elmo-pop3-get-session): Make msgdb directory after session.
3558         (elmo-folder-exists-p): Check exactly at the first time even when the
3559         elmo-pop3-exists-exactly is nil.
3560
3561         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3562         (elmo-folder-list-messages): Define instead of
3563         elmo-folder-list-messages-internal.
3564         (elmo-folder-check): Check destination folder.
3565         (elmo-folder-synchronize): Drain the pipe.
3566
3567         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3568         when msgdb is not loaded.
3569
3570         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3571
3572         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3573         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3574         messages.
3575
3576         * elmo.el (elmo-folder-kill-messages-before): New function.
3577         (elmo-folder-kill-messages): Ditto.
3578         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3579
3580         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3581         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3582         killed not by synchronize (e.g. scoring).
3583
3584 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3585
3586         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3587         treated.
3588         (elmo-folder-search): Follow the change above.
3589
3590         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3591         into the candidates of search field.
3592
3593 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3594
3595         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3596         (elmo-msgdb-unset-flag): Ditto.
3597
3598         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3599
3600 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3601
3602         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3603         (elmo-folder-commit): Define.
3604         (elmo-folder-synchronize): Ditto.
3605         (elmo-folder-list-flagged): Ditto.
3606         (elmo-folder-commit): Ditto.
3607         (elmo-folder-length): Ditto.
3608         (elmo-folder-count-flags): Ditto.
3609         (elmo-message-mark): Ditto.
3610         (elmo-message-field): Ditto.
3611         (elmo-message-entity): Ditto.
3612         (elmo-message-folder): Ditto.
3613
3614 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3615
3616         * elmo.el (elmo-message-field): Define as a method.
3617
3618         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3619         (elmo-message-field): Define.
3620
3621         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3622         (elmo-folder-list-importants): Ditto.
3623         (elmo-folder-list-answereds): Ditto.
3624
3625         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3626         qualifier.
3627         (elmo-folder-mark-as-read): Ditto.
3628         (elmo-folder-unmark-read): Ditto.
3629         (elmo-folder-mark-as-answered): Ditto.
3630         (elmo-folder-unmark-answered): Ditto.
3631         (elmo-folder-list-flagged): Define.
3632         (elmo-folder-commit): Ditto.
3633         (elmo-folder-length): Ditto.
3634         (elmo-folder-count-flags): Ditto.
3635
3636 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3637
3638         * elmo.el (elmo-folder-detach-messages): New method.
3639         (elmo-folder-move-messages): Use it.
3640         (elmo-folder-synchronize): Ditto.
3641
3642         * elmo-multi.el (elmo-folder-detach-messages): Define.
3643
3644         * elmo.el (elmo-message-copy-entity): New function.
3645         (elmo-message-entity-set-number): Ditto.
3646         (elmo-message-mark): Define as method.
3647
3648         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3649         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3650         (elmo-message-entity): Fixed last change.
3651         (elmo-message-mark): Define.
3652         (elmo-folder-msgdb-create): Abolish.
3653         (elmo-multi-folder-append-msgdb): Ditto.
3654         (elmo-multi-folder-diff): Fixed.
3655         (elmo-multi-split-number-alist): Removed.
3656         (elmo-multi-split-mark-alist): Removed.
3657         (elmo-folder-list-messages): Define.
3658         (elmo-folder-list-messages-internal): Removed.
3659
3660         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3661         local file messages.
3662         (elmo-folder-msgdb-create): Fixed read mark.
3663
3664 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3665
3666         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3667         if mark is nil.
3668
3669 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3670
3671         * elmo.el (elmo-folder-list-message-entities): Define as inline
3672         function.
3673         (elmo-folder-messages): Abolish.
3674
3675         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3676         folder.
3677         (elmo-folder-synchronize): Define.
3678         (elmo-message-entity): Define.
3679
3680 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3681
3682         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3683         elmo-imap4-session-select-mailbox.
3684
3685         * elmo.el (elmo-folder-move-messages): Don't display any message.
3686
3687         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3688         parsing.
3689         (elmo-imap4-session-check): Don't wait CHECK response.
3690         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3691
3692 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3693
3694         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3695
3696 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3697
3698         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3699         API.
3700         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3701
3702
3703         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3704         (elmo-folder-list-message-entities): Added argument in-msgdb and
3705         numbers.
3706         (elmo-folder-synchronize): Define as a method.
3707
3708         * elmo-nntp.el (elmo-folder-initialize): Don't use
3709         elmo-nntp-default-user if zero-length username is specified
3710         explicitly.
3711
3712 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3713
3714         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3715         server name in case with username.
3716         (XXX: this is ad-hoc fix against username includes "@", it
3717         should be solved fundamentally)
3718
3719 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3720
3721         * elmo-nntp.el (elmo-nntp-debug): New function.
3722         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3723         (elmo-network-authenticate-session): Hide auth-info from the log.
3724
3725         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3726         user name if it is equal to elmo-nntp-default-user.
3727
3728 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3729
3730         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3731         instead of shimbun-server-internal;
3732         Use shimbun-current-group instead of shimbun-current-group-internal.
3733         (elmo-folder-plugged-p): Use shimbun-server instead of
3734         shimbun-server-internal.
3735         (elmo-folder-set-plugged): Ditto.
3736         (elmo-net-port-info): Ditto.
3737         (elmo-folder-check): Ditto.
3738         (elmo-folder-expand-msgdb-path): Ditto.
3739         (elmo-folder-list-subfolders): Ditto.
3740
3741 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3742
3743         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3744         Convert field-name to lower case.
3745         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3746
3747 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3748
3749         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3750         `message' and `error' take format string.
3751
3752 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3753
3754         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3755
3756 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3757
3758         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3759         recursive call (can't byte compile on emacs 20.7).
3760
3761 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3762
3763         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3764         (elmo-folder-list-message-entities): New API.
3765         (elmo-message-entity): Ditto.
3766         (elmo-message-entity-parent): Ditto.
3767         (elmo-folder-do-each-message-entity): Ditto.
3768         (elmo-message-entity-number): Ditto.
3769         (elmo-message-entity-field): Ditto.
3770         (elmo-message-entity-set-field): Ditto.
3771         (elmo-folder-count-flags): Ditto.
3772         (elmo-folder-length): Ditto.
3773
3774         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3775         not.
3776
3777         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3778         (elmo-msgdb-count-marks): Abolish.
3779         (elmo-msgdb-make-entity): Ditto.
3780         (elmo-msgdb-do-each-entity): Ditto.
3781         (elmo-msgdb-message-entity): New inline function.
3782         (elmo-msgdb-message-entity-field): Ditto.
3783         (elmo-msgdb-message-entity-set-field): Ditto.
3784         (elmo-msgdb-make-message-entity): New function.
3785
3786 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3787
3788         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3789         to flag. (All other related portions are changed.)
3790         (elmo-folder-msgdb-create): Likewise.
3791         (elmo-generic-folder-append-messages): Use flag-table instead of
3792         seen-list.
3793         (elmo-folder-move-messages): Removed redundant process.
3794         (elmo-folder-synchronize): Likewise.
3795
3796         * elmo-msgdb.el (elmo-flag-table-get): New function.
3797         (elmo-flag-table-save): Fixed.
3798         (elmo-msgdb-length): New inline function.
3799         (elmo-msgdb-flag-table): New function.
3800         (elmo-msgdb-mark): Add optional argument new.
3801         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3802         (elmo-msgdb-seen-list): Ditto.
3803         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3804
3805
3806 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3807
3808         * elmo.el (elmo-message-set-mark): Abolish.
3809         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3810         (All related portions are changed.)
3811
3812         * elmo-msgdb.el (toplevel): Added comment.
3813         (elmo-load-msgdb): Added 4th element `path'.
3814         (elmo-msgdb-append): Follow the change above.
3815         (elmo-msgdb-clear): Ditto.
3816         (elmo-msgdb-delete-msgs): Ditto.
3817         (elmo-msgdb-get-path): New inline function.
3818         (elmo-msgdb-set-path): Ditto.
3819         (elmo-flag-table-filename): New variable.
3820         (elmo-flag-table-load): New function.
3821         (elmo-flag-table-set): Ditto.
3822         (elmo-flag-table-save): Ditto.
3823         (elmo-msgdb-get-field-value): Abolish.
3824         (elmo-msgdb-overview-get-entity-by-number): Ditto.
3825
3826 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
3827
3828         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3829         the folder has been deleted successfully.
3830         * elmo-imap4.el (elmo-folder-delete): Ditto.
3831         * elmo-archive.el (elmo-folder-delete): Ditto.
3832         * elmo-localdir.el (elmo-folder-delete): Ditto.
3833         * elmo-maildir.el (elmo-folder-delete): Ditto.
3834
3835 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
3836
3837         * elmo-util.el (elmo-string-member-ignore-case): New function.
3838         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
3839         (elmo-imap4-fetch-callback-1-subr): Likewise.
3840
3841 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
3842
3843         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
3844         the case of the name attribute "\Noselect".
3845
3846 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3847
3848         * elmo.el (elmo-folder-rename-internal): New method to cause error.
3849
3850         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
3851         flist, is not always a member of onum-alist.
3852
3853 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3854
3855         * elmo-version.el (elmo-version): Up to 2.11.3.
3856
3857 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3858
3859         * elmo-maildir.el (elmo-folder-rename-internal): New method,
3860         copied from localdir's one.
3861
3862         * elmo-pipe.el (elmo-folder-rename): New method, rename
3863         destination folder with leaving source folder as it is.
3864
3865 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
3866
3867         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
3868         replace-regexp.
3869
3870 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3871
3872         * elmo-version.el (elmo-version): Up to 2.11.2.
3873
3874 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3875
3876         * elmo-shimbun.el (elmo-folder-initialize): Do not call
3877         shimbun-open in case of "@".
3878         (elmo-folder-open-internal): Cope with shimbun = nil case.
3879         (elmo-folder-plugged-p): Ditto.
3880         (elmo-folder-list-subfolders): Make list for "@/" group.
3881
3882 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3883
3884         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
3885         mailbox (e.g. for %~/something).
3886
3887 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3888
3889         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
3890         Replace nested conditional with guard clauses.
3891
3892 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
3893
3894         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
3895         error [wl:11327].
3896
3897         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
3898         print-depth.
3899
3900 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3901
3902         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
3903         Replace nested conditional with guard clauses.
3904
3905 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3906
3907         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
3908         (elmo-passwd-alist-save): Ditto.
3909         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
3910
3911 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3912
3913         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
3914         dir-name only if it is absolute path.
3915         (TODO: distinguish +/something and +something)
3916
3917 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3918
3919         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
3920         path for "+~/something".
3921
3922 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3923
3924         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
3925         as non-directory, cause error before rename-file.
3926         * elmo-archive.el (elmo-folder-rename-internal): Create directory
3927         apropriately, mimic localdir's one.
3928         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
3929
3930 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
3931
3932         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
3933
3934 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
3935
3936         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
3937
3938         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
3939         
3940         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
3941         is included in the global-mark or not.
3942
3943 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3944
3945         * utf7.el (toplevel): Avoid error when the function
3946         find-coding-system does not exist.
3947
3948 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3949
3950         * elmo-nntp.el (elmo-folder-search): Body search is to search from
3951         cache even if the folder is plugged.
3952         (elmo-nntp-search-primitive): Do nothing when body search is
3953         invoked (although it is not used by the change above).
3954         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
3955
3956 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
3957
3958         * elmo-version.el (elmo-version): Up to 2.11.1.
3959
3960 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
3961
3962         * elmo-archive.el: Specify charset.
3963
3964 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
3965
3966         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
3967         process buffer lives or not.
3968
3969         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
3970         while flushing queues (It causes infinite loop).
3971
3972 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
3973
3974         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
3975
3976 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
3977
3978         * utf7.el (toplevel): Check the ucs features dynamically.
3979         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
3980
3981         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
3982         folder is creatabe or not if it already exists.
3983
3984 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
3985
3986         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
3987
3988         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
3989
3990         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
3991         (elmo-imap4-read-response): Take care of garbage response.
3992
3993 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3994
3995         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
3996         just return nil instead of error.
3997
3998 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3999
4000         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4001         search-key is "body".
4002
4003 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4004
4005         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4006         of elmo-string-matched-assoc to use match-data.
4007         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4008
4009 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4010
4011         * elmo-split.el (elmo-split->): New function.
4012         (elmo-split-<): Ditto.
4013
4014 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4015
4016         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4017         workaround for invalid message-id.
4018
4019 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4020
4021         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4022         return normal pop3 session or pop3 biff session.
4023
4024 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4025
4026         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4027         info part to the cur files when the new files already have it.
4028         (Adviced by Jared Rhine <jared@wordzoo.com>)
4029
4030 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4031
4032         * elmo-split.el (elmo-split-default-action): New variable.
4033         (elmo-split-subr): Use it if all other conditions are passed.
4034         Extend `fname' and rename it as `action'. (implemented
4035         Teranishi-san's idea in [wl:10800])
4036
4037 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4038
4039         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4040         * elmo-util.el: Ditto.
4041
4042 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4043
4044         * elmo.el (elmo-message-accessible-p): Renamed from
4045         elmo-message-cached-p and rewritten.
4046
4047 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4048
4049         * elmo.el (elmo-folder-list-flagged): New generic function.
4050         (elmo-folder-list-importants): New implementation.
4051         (elmo-folder-list-answereds): Ditto.
4052         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4053         Added 'digest'.
4054         (elmo-message-cached-p): New function.
4055         (elmo-message-set-flag): Ditto (no content).
4056         (elmo-message-unset-flag): Ditto.
4057         (elmo-folder-list-messages-mark-match): Abolish.
4058
4059         * elmo-util.el (elmo-regexp-opt): New function.
4060
4061         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4062         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4063         Added 'digest'.
4064         (elmo-msgdb-list-flagged): New function.
4065
4066         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4067         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4068         Added 'digest'.
4069
4070         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4071
4072 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4073
4074         * elmo-version.el (elmo-version): Up to 2.11.0.
4075
4076 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4077
4078         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4079         `elmo-file-cache-exists-p'; use proper mark that depends on
4080         `use-cache'.
4081         (elmo-msgdb-unset-flag): Ditto.
4082         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4083
4084         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4085         with 4th argument `use-cache'.
4086
4087 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4088
4089         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4090         (elmo-folder-mark-as-important): Ditto.
4091         (elmo-folder-unmark-read): Ditto.
4092         (elmo-folder-mark-as-read): Ditto.
4093         (elmo-folder-unmark-answered): Ditto.
4094         (elmo-folder-mark-as-answered): Ditto.
4095
4096         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4097         message status.
4098         (elmo-msgdb-mark): Likewise.
4099         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4100         (elmo-msgdb-unset-flag): Likewise.
4101
4102         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4103
4104 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4105
4106         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4107         `last:' filter.
4108
4109 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4110
4111         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4112         set spool-length to 0.
4113
4114 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4115
4116         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4117         (elmo-dop-queue-flush): Fixed last change.
4118
4119 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4120
4121         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4122         if require-msgdb slot is nil.
4123         (elmo-folder-list-importants): Likewise.
4124
4125 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4126
4127         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4128         mark is changed.
4129
4130         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4131         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4132         is changed.
4133
4134 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4135
4136         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4137
4138 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4139
4140         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4141
4142         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4143
4144 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4145
4146         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4147         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4148
4149 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4150
4151         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4152         the problem reported by Sean Rima [wl-en:180].
4153
4154 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4155
4156         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4157
4158         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4159
4160         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4161
4162         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4163
4164         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4165
4166         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4167
4168         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4169
4170 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4171
4172         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4173         status number.
4174
4175 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4176
4177         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4178         (elmo-folder-mark-as-read): Follow the API change.
4179         (elmo-message-set-cached): New function.
4180
4181         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4182
4183         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4184
4185         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4186         (elmo-folder-mark-as-important): Ditto.
4187         (elmo-folder-unmark-read): Ditto.
4188         (elmo-folder-mark-as-read): Ditto.
4189         (elmo-folder-unmark-answered): Ditto.
4190         (elmo-folder-mark-as-answered): Ditto.
4191
4192         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4193         (elmo-folder-unmark-important): Ditto.
4194         (elmo-folder-mark-as-read): Ditto.
4195         (elmo-folder-unmark-read): Ditto.
4196         (elmo-folder-mark-as-answered): Ditto.
4197         (elmo-folder-unmark-answered): Ditto.
4198
4199         * elmo-mark.el (toplevel): Removed some mark method definitions.
4200
4201         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4202         (elmo-map-folder-mark-as-answered): Ditto.
4203         (elmo-folder-unmark-important): Add :before qualifier.
4204         (elmo-folder-mark-as-important): Ditto.
4205         (elmo-folder-unmark-read): Ditto.
4206         (elmo-folder-mark-as-read): Ditto.
4207         (elmo-folder-unmark-answered): Define.
4208         (elmo-folder-mark-as-answered): Ditto.
4209
4210         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4211         (elmo-map-folder-unmark-answered): Ditto.
4212
4213         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4214
4215         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4216         (elmo-folder-mark-as-important): Ditto.
4217         (elmo-folder-unmark-read): Ditto.
4218         (elmo-folder-mark-as-read): Ditto.
4219         (elmo-folder-unmark-answered): Ditto.
4220         (elmo-folder-mark-as-answered): Ditto.
4221
4222         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4223         `mark'; evaluate mark condition.
4224         (elmo-msgdb-match-condition-internal): New function.
4225         (elmo-msgdb-match-condition): Call it; changed argument.
4226
4227         * elmo.el (elmo-folder-search): Follow the API change on
4228         `elmo-msgdb-match-condition'.
4229
4230 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4231
4232         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4233         original mark is non-nil.
4234
4235 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4236
4237         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4238         (elmo-map-folder-list-answereds): New method.
4239         (elmo-folder-list-unreads): Add :around qualifier.
4240         (elmo-folder-list-importants): Ditto.
4241         (elmo-folder-list-answereds): Ditto.
4242
4243 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4244
4245         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4246
4247         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4248         method if msgdb is not required.
4249         (elmo-filter-folder-list-importants): Don't treat global-mark.
4250
4251         * elmo.el (elmo-folder-list-importants): Ditto.
4252
4253         * elmo-net.el (elmo-folder-list-importants): Ditto.
4254
4255         * elmo-map.el (elmo-folder-list-importants): Ditto.
4256
4257         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4258
4259         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4260         (elmo-imap4-folder-list-any-plugged): New function.
4261         (elmo-imap4-search-internal-primitive): Use it.
4262
4263         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4264         only when require-msgdb slot is non-nil.
4265         (elmo-folder-close): Clear target folder's msgdb.
4266
4267 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4268
4269         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4270         (elmo-pop3-msgdb-create-by-header): Ditto.
4271         (elmo-pop3-msgdb-create-message): Ditto.
4272
4273         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4274
4275         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4276
4277         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4278
4279         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4280         (elmo-folder-msgdb-create): Ditto.
4281         (elmo-nntp-folder-msgdb-create): Ditto.
4282         (elmo-nntp-msgdb-create-by-header): Ditto.
4283         (elmo-nntp-msgdb-create-message): Ditto.
4284         (elmo-folder-list-unreads): Define.
4285
4286         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4287         (elmo-folder-append-messages): Ditto.
4288         (elmo-folder-list-unreads): Define.
4289         (elmo-folder-list-importants): Ditto.
4290         (elmo-folder-list-answereds): Ditto.
4291
4292         * elmo-net.el (elmo-folder-list-unreads): Define.
4293         (elmo-folder-list-importants): Ditto.
4294         (elmo-folder-list-answereds): Ditto.
4295         (elmo-folder-list-answereds-plugged): Ditto.
4296         (elmo-folder-msgdb-create): Follow the API change.
4297         (elmo-folder-msgdb-create-unplugged): Ditto.
4298         (elmo-folder-unmark-answered): Define.
4299         (elmo-folder-mark-as-answered-unplugged): Ditto.
4300         (elmo-folder-unmark-answered-unplugged): Ditto.
4301
4302         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4303         (elmo-msgdb-unread-uncached-mark): Ditto.
4304         (elmo-msgdb-unread-cached-mark): Ditto.
4305         (elmo-msgdb-read-uncached-mark): Ditto.
4306         (elmo-msgdb-answered-cached-mark): Ditto.
4307         (elmo-msgdb-answered-uncached-mark): Ditto.
4308         (elmo-msgdb-important-mark): Ditto.
4309         (elmo-msgdb-set-mark): Rewrite.
4310         (elmo-msgdb-count-marks): Rewrite.
4311         (elmo-msgdb-mark-alist-set): Abolish.
4312         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4313         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4314
4315         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4316         (elmo-folder-close): Define.
4317         (elmo-folder-msgdb-create): Follow the API change.
4318         (elmo-folder-list-unreads): Rewrite.
4319         (elmo-folder-mark-as-important): Ditto.
4320         (elmo-folder-unmark-important): Ditto.
4321         (elmo-folder-mark-as-read): Ditto.
4322         (elmo-folder-unmark-read): Ditto.
4323         (elmo-folder-mark-as-answered): Define.
4324         (elmo-folder-unmark-answered): Ditto.
4325
4326         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4327         (elmo-folder-append-messages): Ditto.
4328
4329         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4330
4331         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4332         (elmo-folder-list-importants): Ditto.
4333
4334         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4335         (elmo-folder-append-messages): Ditto.
4336
4337         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4338         change.
4339         (elmo-folder-msgdb-create-plugged): Ditto.
4340         (elmo-folder-append-messages): Ditto.
4341         (elmo-folder-list-answereds-plugged): Define.
4342         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4343         (elmo-folder-unmark-answered-plugged): Define.
4344         (elmo-folder-mark-as-answered-plugged): Ditto.
4345         (elmo-folder-search-requires-msgdb-p): Ditto.
4346
4347         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4348         (elmo-folder-initialize): Set it.
4349         (elmo-folder-msgdb): Define.
4350         (elmo-folder-check): Call elmo-folder-synchronize.
4351         (elmo-folder-close): Define.
4352         (elmo-folder-commit): Ditto.
4353         (elmo-folder-msgdb-create): Rewrite.
4354         (elmo-folder-list-unreads): Ditto.
4355         (elmo-folder-list-importants): Ditto.
4356         (elmo-folder-mark-as-read): Ditto.
4357         (elmo-folder-unmark-read): Ditto.
4358         (elmo-folder-mark-as-important): Ditto.
4359         (elmo-folder-unmark-important): Ditto.
4360         (elmo-folder-mark-as-answered): Define.
4361         (elmo-folder-unmark-answered): Ditto.
4362
4363         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4364         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4365         (elmo-dop-queue-method-name-alist): Likewise.
4366         (elmo-folder-mark-as-answered-dop): New inline function.
4367         (elmo-folder-unmark-answered-dop): Ditto.
4368         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4369
4370         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4371         (elmo-folder-msgdb-create): Ditto.
4372         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4373         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4374         (elmo-archive-parse-mmdf): Ditto.
4375
4376         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4377         (elmo-folder-list-unreads-internal): Ditto.
4378
4379         * elmo.el (elmo-folder-msgdb): Define as generic function.
4380         (elmo-folder-list-messages): Added argument `in-msgdb'.
4381         (elmo-folder-list-unreads): Define as generic function.
4382         (elmo-folder-list-importants): Ditto.
4383         (elmo-folder-list-answereds): Ditto.
4384         (elmo-folder-list-messages-with-global-mark): New function.
4385         (elmo-folder-msgdb-create): Removed mark arguments.
4386         (elmo-folder-unmark-answered): New generic function.
4387         (elmo-folder-mark-as-answered): Ditto.
4388         (elmo-folder-append-messages): Removed argunment `unread-marks'
4389         (elmo-folder-list-unreads-internal): Abolish.
4390         (elmo-folder-list-importants-internal): Ditto.
4391         (elmo-folder-search-requires-msgdb-p): New generic function.
4392         (elmo-folder-search-requires-msgdb-p-internal): New function.
4393         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4394         elmo-msgdb-load.
4395         (elmo-folder-search-fast): Added key 'mark'.
4396         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4397         instead of unread-marks argument.
4398         (elmo-folder-move-messages): Removed argunment `unread-marks'
4399         (elmo-folder-unmark-important): Define.
4400         (elmo-folder-mark-as-important): Ditto.
4401         (elmo-folder-unmark-read): Ditto.
4402         (elmo-folder-mark-as-read): Ditto.
4403         (elmo-folder-unmark-answered): Ditto.
4404         (elmo-folder-mark-as-answered): Ditto.
4405         (elmo-folder-replace-marks): Abolish.
4406         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4407         duplicates.
4408         (elmo-folder-synchronize): Removed mark arguments;
4409         return crosspost only number.
4410
4411 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4412
4413         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4414         Remove redundunt connectivity check.
4415
4416 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4417
4418         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4419         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4420
4421 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4422
4423         * pldap.el (ldap-decode-string): Return string as-is if
4424         `ldap-coding-system' is nil.
4425         (ldap-encode-string): Ditto.
4426         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4427         (ldap-default-host): Fixed docstring.
4428
4429 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4430
4431         * elmo-util.el (elmo-warning): Define as a macro which uses
4432         `display-warning' if it is defined as a function.
4433
4434         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4435         (elmo-split-equal): Use it.
4436         (elmo-split-match): Ditto.
4437         (elmo-split-message-entity): New buffer-local variable.
4438         (elmo-split-subr): Set it.
4439
4440         * elmo-version.el (elmo-version): Up to 2.9.15.
4441
4442 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4443
4444         * elmo-imap4.el (elmo-network-initialize-session):
4445         Check capability after starttls.
4446
4447 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4448
4449         * elmo-util.el (elmo-list-delete): Added optional argument
4450         DELETE-FUNCTION.
4451
4452         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4453
4454         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4455
4456         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4457
4458         * elmo-imap4.el (elmo-folder-initialize): Don't use
4459         elmo-imap4-default-mailbox.
4460
4461 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4462
4463         * elmo-split.el (toplevel): Use `product-provide'.
4464         (elmo-split): Checkdoc.
4465
4466 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4467
4468         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4469         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4470         the function `elmo-imap4-debug-1'.
4471
4472 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4473
4474         * elmo-split.el (elmo-split): Moved to run hooks and to show
4475         message from elmo-split-subr.
4476         (elmo-split-subr): Follow the change above.
4477
4478         * elmo-split.el (elmo-split-subr): New function (renamed from
4479         elmo-split-subr).
4480         (elmo-split): Changed to call elmo-split-subr by element of
4481         elmo-split-folder.
4482         (elmo-split-folder): Changed customization type to choice.
4483
4484 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4485
4486         * elmo-split.el (elmo-split-and): Fixed condition.
4487
4488 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4489
4490         * elmo-split.el: New file.
4491         (elmo-split): Fixed logic.
4492         Display "Test:" instead of "Folder:" when reharsal.
4493
4494         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4495         explicitly.
4496
4497         * elmo-version.el (elmo-version): Up to 2.9.14.
4498
4499         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4500         wl-expand-newtext).
4501
4502 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4503
4504         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4505         message with no message-id field.
4506
4507 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4508
4509         * elmo-version.el (elmo-version): Up to 2.9.13.
4510
4511         * elmo-dop.el (elmo-folder-status-dop): Fix.
4512
4513 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4514
4515         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4516
4517         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4518         changing default value of default-mime-charset.
4519         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4520
4521         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4522
4523         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4524         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4525         instead of elmo-dop-queue-method-name-alist to check merging queue.
4526         (elmo-folder-delete-messages-dop): Delete from queue if negative
4527         message number.
4528         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4529         file is already removed.
4530
4531 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4532
4533         * elmo-vars.el: Bind colon keywords for old Emacsen.
4534
4535 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4536
4537         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4538         against non-exsisting charset.
4539
4540 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4541
4542         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4543         Use eword-decode-and-unfold-unstructured-field-body.
4544
4545         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4546         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4547         exists to decode raw subject string.
4548         (toplevel): Require 'mime.
4549
4550         * elmo-version.el (elmo-version): Up to 2.9.12.
4551
4552 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4553
4554         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4555         (elmo-msgdb-set-mark): Ditto.
4556
4557         * elmo-version.el (elmo-version): Up to 2.9.11.
4558
4559 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4560
4561         * elmo-util.el (elmo-delete-match-files): New function.
4562
4563         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4564         instead of elmo-delete-directory.
4565
4566         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4567         elmo-hash-minimun-size as 63.
4568
4569         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4570         elmo-diff-unread is nil.
4571
4572         * elmo-imap4.el (elmo-folder-open): Fix.
4573
4574         * elmo.el (elmo-message-mark): Rewrite.
4575         (elmo-message-field): Ditto.
4576         (elmo-message-set-mark): Ditto.
4577         (elmo-folder-replace-marks): New function.
4578         (elmo-generic-folder-append-msgdb): Removed third argument for
4579         elmo-msgdb-append.
4580         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4581         (elmo-msgdb-load): New implementation.
4582
4583         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4584
4585         * elmo-util.el (elmo-list-insert): New implementation.
4586
4587         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4588         argument for elmo-msgdb-append.
4589         
4590
4591         * elmo-msgdb.el (elmo-load-msgdb): New function.
4592         (elmo-make-msgdb): Ditto.
4593         (elmo-msgdb-get-index): New inline function.
4594         (elmo-msgdb-set-index): Ditto.
4595         (elmo-msgdb-get-entity-hashtb): Ditto.
4596         (elmo-msgdb-get-mark-hashtb): Ditto.
4597         (elmo-msgdb-get-mark): Ditto.
4598         (elmo-msgdb-set-mark): Ditto.
4599         (elmo-msgdb-count-marks): Ditto.
4600         (elmo-msgdb-get-number): Ditto.
4601         (elmo-msgdb-get-field): Ditto.
4602         (elmo-msgdb-seen-list): Ditto.
4603         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4604         (elmo-msgdb-delete-msgs): Follow the changes above.
4605         (elmo-msgdb-overview-get-entity): Ditto.
4606         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4607         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4608         and rewritten.
4609         (elmo-msgdb-make-index): Likewise.
4610         (elmo-msgdb-append): Removed third argument.
4611         (elmo-msgdb-clear): Clear index as nil.
4612         (elmo-folder-set-info-hashtb): Removed.
4613         (elmo-folder-set-info-max-by-numdb): Ditto.
4614         (elmo-folder-info-make-hashtb): Ditto.
4615
4616         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4617
4618         * elmo-map.el (elmo-folder-pack-number): Ditto.
4619
4620 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4621
4622         * elmo-version.el (elmo-version): Up to 2.9.10.
4623
4624         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4625
4626         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4627
4628 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4629
4630         * elmo-utils.el (elmo-make-directory): Add option.
4631         Default file mode is 700.
4632
4633 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4634
4635         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4636
4637 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4638
4639         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4640         mime-charset.
4641
4642         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4643         and "smaller".
4644
4645 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4646
4647         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4648         (elmo-shimbun-folder-entity-hash): New function.
4649         (elmo-shimbun-folder-shimbun-header): Ditto.
4650         (elmo-shimbun-entity-to-header): Ditto.
4651         (elmo-shimbun-msgdb-to-headers): Removed.
4652         (elmo-shimbun-folder-setup): Ditto.
4653         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4654         for hash key.
4655         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4656         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4657         Removed useless local bind.
4658         (elmo-folder-open-internal): Don't call
4659         `elmo-shimbun-folder-setup'.
4660         (elmo-folder-close-internal): Clear entity-hash slot.
4661         (elmo-folder-clear): Ditto.
4662         (elmo-shimbun-msgdb-create-entity): Use
4663         `elmo-shimbun-folder-shimbun-header'.
4664         (elmo-map-message-fetch): Ditto.
4665         (elmo-shimbun-update-overview): Use overview entity instead of
4666         shimbun header to lookup id by references.
4667         (elmo-map-folder-list-message-locations): Use not only headers but
4668         also overviews to list locations.
4669
4670 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4671
4672         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4673         msgdb path.
4674
4675         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4676
4677 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4678
4679         * elmo-util.el (elmo-read-search-condition-internal): Give default
4680         value for date.
4681
4682 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4683
4684         * elmo-util.el (elmo-condition-parse-search-value): Accept
4685         YYYY-MM-DD format to search.
4686         * elmo-date.el (elmo-date-get-datevec): Likewise.
4687
4688 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4689
4690         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4691         debugging code.
4692
4693 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4694
4695         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4696         from t.
4697
4698         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4699
4700         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4701         case from `elmo-folder-exists-p'.
4702         (elmo-folder-exists-p): Removed.
4703         (elmo-folder-creatable-p) Ditto.
4704
4705         * elmo-net.el (elmo-folder-create): Defined.
4706         (elmo-folder-create-unplugged): New function.
4707         (elmo-folder-exists-p): Changed default value to nil from t.
4708
4709         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4710         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4711
4712         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4713         `elmo-create-folder-dop' and append queue
4714         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4715         (elmo-folder-create-dop-delayed): New function.
4716
4717         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4718
4719         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4720
4721         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4722         (elmo-folder-writable-p) : Ditto.
4723
4724         * elmo-version.el (elmo-version): Up to 2.9.9.
4725
4726 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4727
4728         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4729         `elmo-message-use-cache-p' returns nil.
4730         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4731         (ignore cache file and refer the substance in local folders)
4732
4733 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4734
4735         * elmo-version.el (elmo-version): Up to 2.9.8.
4736
4737 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4738
4739         * elmo-version.el (elmo-version): Up to 2.9.7.
4740
4741         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4742
4743 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4744
4745         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4746
4747 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4748
4749         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4750         from --early.
4751         (elmo-map-folder-list-message-locations): Reverse location list.
4752
4753 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4754
4755         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4756
4757 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4758
4759         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4760         as a key.
4761         (elmo-nntp-folder-list-subfolders): Follow the change above.
4762
4763 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4764
4765         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4766         name if authentication type is specified.
4767
4768 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4769
4770         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4771         variable.
4772         (elmo-default-nntp-stream-type): Ditto.
4773         (elmo-default-pop3-stream-type): Ditto.
4774
4775 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4776
4777         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4778
4779 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4780
4781         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4782         elmo-vars.el.
4783         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4784
4785         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4786         (elmo-maildir-folder-path): Ditto.
4787         (elmo-maildir-list): Ditto (abolished).
4788
4789 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4790
4791         * elmo-version.el (elmo-version): Up to 2.9.6.
4792
4793 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4794
4795         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4796         (elmo-maildir-folder-path): Ditto.
4797         (elmo-msgdb-directory): Ditto.
4798         (elmo-passwd-life-time): Ditto.
4799         (elmo-msgdb-extra-fields): Ditto.
4800         (elmo-enable-disconnected-operation): Ditto.
4801
4802 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4803
4804         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4805         other choices.
4806         (elmo-pop3-default-authenticate-type): Ditto.
4807
4808 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4809
4810         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4811         choices for custom.
4812         (elmo-pop3-default-authenticate-type): Ditto.
4813
4814 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4815
4816         * elmo-imap4.el (elmo-folder-rename-internal): Change current
4817         mailbox to new-folder.
4818
4819 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
4820
4821         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4822         less than new, set new as unread.
4823
4824         * elmo-util.el (elmo-string): Don't put text-property if nil.
4825
4826 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4827
4828         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4829         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4830
4831 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4832
4833         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4834         is nil on `completing-read'.
4835
4836 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
4837
4838         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
4839         for namespace part.
4840         (elmo-imap4-parse-namespace-subr): Ditto.
4841         (elmo-folder-list-subfolders): Append a delimiter when the specified
4842         folder path is a root with namespace and does not end with delimiter.
4843
4844 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4845
4846         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
4847         was used.
4848
4849 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4850
4851         * elmo-util.el (elmo-save-buffer): The first argument of message
4852         is a format control string.
4853
4854 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4855
4856         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
4857         `elmo-folder-diff').
4858         (elmo-diff-unread): Likewise.
4859
4860 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4861
4862         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4863         is t on `completing-read'.
4864
4865 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4866
4867         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
4868         method of target folder with self mark-alist if MARK-ALIST is nil.
4869
4870 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4871
4872         * elmo-version.el (elmo-version): Up to 2.9.5.
4873
4874 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
4875
4876         * elmo-dop.el (elmo-dop-queue-merge): Implement.
4877         (elmo-dop-merge-funcs): Remove.
4878
4879 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4880
4881         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
4882         Return t if PATH is directory, too.
4883         Use `dolist' instead of while loop.
4884
4885 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4886
4887         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
4888         is deleted.
4889
4890 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4891
4892         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
4893         return value to t.
4894         (elmo-folder-list-messages-unplugged): Return t if
4895         elmo-enable-disconnected-operation is nil.
4896
4897         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
4898         `elmo-folder-list-messages-internal'.
4899
4900 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
4901
4902         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
4903         Change to looking-at `[23][0-9]+'.
4904         (elmo-network-initialize-session): Use 'error-msg'
4905         * elmo-net.el (elmo-network-open-session): Set unplugged
4906         if elmo-network-initialize-session returns 'elmo-open-err.
4907
4908 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
4909
4910         * elmo-version.el (elmo-version): Up to 2.9.4.
4911
4912 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
4913
4914         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
4915         `elmo-folder-list-messages-internal'.
4916
4917 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4918
4919         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
4920         (elmo-message-match-condition): New method.
4921         (elmo-folder-search-fast): New inline function.
4922         (elmo-msgdb-search): Removed.
4923
4924         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
4925         target folder if it is unplugged.
4926         (elmo-folder-list-messages-internal): Return t if target folder is
4927         unplugged and itself is persistent; In this case, use list be
4928         searched already.
4929
4930         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
4931         (elmo-msgdb-search-internal-primitive): Ditto.
4932         (elmo-msgdb-match-condition): New function.
4933         (elmo-msgdb-match-condition-primitive): Ditto.
4934
4935         * elmo-util.el (elmo-filter-condition-p): New macro.
4936
4937         * elmo-cache.el (elmo-folder-search): Removed.
4938
4939         * elmo-localdir.el (elmo-folder-search): Ditto.
4940
4941         * elmo-maildir.el (elmo-folder-search): Ditto.
4942
4943         * elmo-mark.el (elmo-folder-search): Ditto.
4944
4945         * elmo-nmz.el (elmo-folder-search): Ditto.
4946
4947         * elmo-sendlog.el (elmo-folder-search): Ditto.
4948
4949         * elmo-shimbun.el (elmo-folder-search): Ditto.
4950
4951         * elmo-imap4.el (elmo-folder-search): Call method of parent class
4952         if folder is unplugged.
4953
4954         * elmo-nntp.el (elmo-folder-search): Likewise.
4955         (elmo-nntp-search-internal): New function.
4956
4957         * elmo-version.el (elmo-version): Up to 2.9.3.
4958
4959 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4960
4961         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
4962
4963 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
4964
4965         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
4966
4967 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
4968
4969         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
4970
4971 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
4972
4973         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
4974         (elmo-map-folder-list-message-locations): Do drive letter conversion
4975         on Windows environment.
4976         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
4977         (elmo-map-message-fetch): Ditto.
4978
4979 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
4980
4981         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
4982         (elmo-network-initialize-session): Ditto.
4983
4984 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
4985
4986         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
4987
4988         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
4989
4990         * elmo-util.el (elmo-progress-clear): Ditto.
4991
4992         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
4993         `DD-Mon-YYYY' type date.
4994
4995 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4996
4997         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
4998         `elmo-date-make-sortable-string' instead of
4999         `timezone-make-date-sortable'.
5000
5001         * elmo-date.el (elmo-date-make-sortable-string): Use
5002         `timezone-make-time-string'.
5003
5004 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5005
5006         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5007
5008         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5009         `since'; Fix timezone.
5010
5011         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5012
5013         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5014
5015 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5016
5017         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5018
5019 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5020
5021         * elmo.el (elmo-generic-folder-append-messages): Make
5022         fetch-strategy with `use-cache' as 'maybe. Check return value of
5023         `elmo-message-fetch'.
5024         (elmo-message-fetch): Return return value of
5025         `elmo-message-fetch-with-cache-process'.
5026         (elmo-message-fetch-with-cache-process): Return non-nil if
5027         fetching was succeed. Load cache when fetching was failed and
5028         fetch-strategy-use-cache is 'maybe.
5029
5030         * elmo-util.el (elmo-file-cache-load): New function.
5031
5032         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5033         defun.
5034
5035         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5036         non-nil if fetching was succeed.
5037
5038         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5039
5040         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5041
5042         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5043         (elmo-message-fetch-with-cache-process): Likwise.
5044
5045         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5046
5047         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5048
5049         * elmo-version.el (elmo-version): Up to 2.9.2.
5050
5051 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5052
5053         * elmo.el (elmo-folder-delete): Delete msgdb path.
5054
5055         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5056
5057         * elmo-maildir.el (elmo-folder-delete): Ditto.
5058
5059         * elmo-localdir.el (elmo-folder-delete): Ditto.
5060
5061         * elmo-imap4.el (elmo-folder-delete): Ditto.
5062
5063 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5064
5065         * elmo.el (luna-define-class): Added `biff' slot.
5066
5067         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5068         (elmo-pop3-debug-inhibit-logging): Abolished.
5069         (elmo-network-close-session): Eliminated needless let.
5070         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5071         (elmo-pop3-send-command): Added `no-log' argument.
5072         (elmo-pop3-process-filter): Use `with-current-buffer'.
5073         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5074         if login failure.
5075         (elmo-pop3-auth-apop): Likewise.
5076         (elmo-network-authenticate-session): Likewise.
5077
5078         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5079         if biff folder.
5080
5081         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5082         string to determine protocol.
5083         (elmo-network-session-name-prefix): Abolished.
5084         (elmo-network-session-cache-key): Follow the change above.
5085         (elmo-network-open-session): Ditto.
5086
5087         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5088         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5089
5090         * elmo-version.el (elmo-version): Up to 2.9.1.
5091
5092         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5093         unmatch condition checking.
5094
5095         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5096         condition.
5097
5098 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5099
5100         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5101
5102 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5103
5104         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5105         test for while loop to execute at least one SEARCH command.
5106
5107 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5108
5109         * elmo-version.el (elmo-version): Up to 2.9.0.
5110
5111 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5112
5113         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5114         (elmo-archive-folder-path): Define.
5115         (elmo-folder-initialize): Setup `dir-name' slot.
5116         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5117         Use `dir-name' as prefix of each subfolders.
5118         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5119
5120 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5121
5122         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5123         (elmo-pipe-folder-list-target-messages): New internal function.
5124         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5125         `killed-list'.
5126         (elmo-pipe-folder-copied-list-load): New function.
5127         (elmo-pipe-folder-copied-list-save): Ditto.
5128         (elmo-folder-open-internal): Follow the change above.
5129         (elmo-folder-status): Fixed for copy.
5130
5131 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5132
5133         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5134
5135 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5136
5137         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5138         elmo-copy-file instead of elmo-add-name-to-file.
5139
5140         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5141
5142         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5143         "file://..." index.
5144
5145         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5146         of accept-process-output as 1.
5147         (elmo-pop3-read-contents): Ditto.
5148         (elmo-pop3-read-body): Ditto.
5149
5150 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5151
5152         * elmo-version.el (product-version-as-string): Remove define.
5153
5154 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5155
5156         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5157         (elmo-imap4-copy-messages): Chop number set using
5158         `elmo-imap4-number-set-chop-length'.
5159         (elmo-imap4-set-flag): Ditto.
5160         (elmo-imap4-search-internal-primitive): Ditto.
5161
5162 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5163
5164         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5165         `elmo-folder-make-temp-dir'
5166
5167         * elmo-vars.el (elmo-cache-directory): New variable.
5168         (elmo-cache-dir): Abolished.
5169         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5170
5171         * elmo-version.el (elmo-version): Up to 2.7.7.
5172
5173 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5174
5175         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5176         defcustom; Set default value as t.
5177
5178 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5179
5180         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5181         (ldap-search-program-arguments): Changed default value.
5182         (ldap-search-basic): Accept exit status 4.
5183         (ldap/field-body): Parse options.
5184         (ldap/collect-field): Ditto.
5185         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5186
5187         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5188         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5189         (elmo-imap4-accept-ok): Ditto.
5190         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5191         'notify-bye, only BYE error is reported.
5192         (elmo-folder-exists-p-plugged): Set no-error argument of
5193         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5194
5195         * elmo.el (elmo-imap4-bye-error): Changed message.
5196
5197         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5198         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5199         queues (It causes infinite loop).
5200
5201 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5202
5203         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5204         (RECENT UNSEEN MESSAGES) extension.
5205
5206 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5207
5208         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5209         Check number of overview fields.
5210
5211 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5212
5213         * elmo.el (elmo-folder-confirm-appends): Changed message.
5214         (elmo-folder-confirm-appends): Ditto.
5215
5216         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5217         `with-temp-buffer'.
5218         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5219
5220 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5221
5222         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5223         of elmo-folder-update-threshold is nil, which can be set by
5224         wl-summary-update-confirm-threshold.
5225
5226 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5227
5228         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5229         (elmo-nmz-index-alias-alist): Ditto.
5230         (elmo-map-folder-list-message-locations): Follow the change above.
5231
5232 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5233
5234         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5235
5236         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5237
5238         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5239
5240         * elmo-util.el (elmo-read): Ditto.
5241         (elmo-display-error): Ditto.
5242
5243         * elmo-vars.el (elmo-date-match): Ditto.
5244
5245         * pldap.el (ldap-coding-system): Ditto.
5246
5247         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5248         `elmo-inhibit-number-mapping' as nil.
5249
5250 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5251
5252         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5253         space delimiter for list response.
5254
5255 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5256
5257         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5258
5259 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5260
5261         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5262         (elmo-map-message-fetch): Fix.
5263         * elmo-map.el (elmo-folder-status): Fix for killed.
5264
5265 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5266
5267         * elmo-sendlog.el: New file.
5268         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5269
5270 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5271
5272         * acap.el (acap-logging-out): New buffer local variable.
5273         (acap-close): Set it.
5274         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5275         an error.
5276
5277 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5278
5279         * acap.el (acap-response-bye-p): New function.
5280         (acap-response-bye-message): Ditto.
5281         (acap-wait-for-response): If bye response is received, cause an error.
5282         (acap-parse-response): Make bye response when 'Bye' is received.
5283
5284 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5285
5286         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5287
5288 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5289
5290         * elmo-util.el (elmo-copy-file): Added argument
5291         `ok-if-already-exists'.
5292         (elmo-copy-file): Fixed typo.
5293
5294 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5295
5296         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5297
5298 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5299
5300         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5301
5302 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5303
5304         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5305         to killed-list.
5306
5307 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5308
5309         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5310         (elmo-folder-initialize): Fix for `copy'.
5311         (elmo-pipe-drain): Ditto.
5312         (elmo-folder-open-internal): Ditto.
5313         (elmo-folder-newsgroups): Fix.
5314
5315 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5316
5317         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5318         for each message.
5319
5320         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5321         recent value is returned from imap folder.
5322
5323         * elmo.el (elmo-folder-newsgroups): New generic function.
5324
5325         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5326         (elmo-folder-initialize): Set it.
5327         (elmo-folder-expand-msgdb-path): Use it.
5328         (elmo-folder-newsgroups): Define.
5329
5330         * elmo-filter.el (elmo-folder-newsgroups): Define.
5331
5332         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5333
5334         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5335
5336         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5337
5338 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5339
5340         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5341         user option.
5342         (elmo-shimbun-header-extra-field): New inline function.
5343         (elmo-shimbun-header-set-extra-field): Ditto.
5344         (elmo-shimbun-folder-header-hash-setup): Ditto.
5345         (elmo-shimbun-update-overview): Ditto.
5346         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5347         (elmo-shimbun-folder-setup): Use
5348         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5349         (elmo-shimbun-get-headers): Ditto.
5350         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5351         Insert `X-Shimbun-Id:' header if extra field is set.
5352         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5353         field's value instead of `shimbun-header-id'.
5354
5355         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5356         inline function.
5357         (elmo-msgdb-overview-entity-set-date): Ditto.
5358         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5359
5360 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5361
5362         * mmimap.el (mmimap-entity-section): Changed body node number from
5363         "0" to "1".
5364
5365 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5366
5367         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5368         `elmo-folder-delete-messages'.
5369
5370         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5371         (elmo-folder-initialize): Changed to expand alias into index path.
5372
5373         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5374         `elmo-mime-insert-header-from-buffer' with 6th arg
5375         `sorted-fields'.
5376
5377 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5378
5379         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5380
5381         * elmo.el (elmo-diff-new): New inline function.
5382         (elmo-diff-unread): Ditto.
5383         (elmo-diff-all): Ditto.
5384
5385         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5386         value from responseb.
5387         (elmo-imap4-folder-diff-plugged): Ditto.
5388         (elmo-imap4-server-diff-async): Added recent argument.
5389         (elmo-server-diff-async): Ditto.
5390         (elmo-imap4-folder-diff-plugged): Ditto.
5391
5392         * elmo-version.el (elmo-version): Up to 2.7.6.
5393
5394 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5395
5396         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5397         in quoted-stirng.
5398
5399 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5400
5401         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5402
5403         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5404
5405         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5406
5407         * elmo-multi.el (elmo-folder-initialize): Ditto.
5408
5409         * elmo-util.el (elmo-parse-token): New function.
5410         (elmo-parse-prefixed-element): Ditto.
5411
5412 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5413
5414         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5415         delete process.
5416         (elmo-imap4-accept-ok): Ditto.
5417
5418 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5419
5420         * mmimap.el (mime-imap-entity-header-string): Don't check first
5421         element of node-id is `0' (Follow last change).
5422
5423 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5424
5425         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5426         assigned irregular node-id to nested multipart section.
5427         (initialize-instance): Followed above change.
5428
5429 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5430
5431         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5432         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5433         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5434         `elmo-shimbun-get-headers');
5435         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5436         visible article on summary exists in headers).
5437         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5438
5439 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5440
5441         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5442         definition.
5443
5444 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5445
5446         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5447
5448 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5449
5450         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5451         header separator into loop condition.
5452
5453 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5454
5455         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5456         Return duplicate folder if it has subfolder.
5457
5458 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5459
5460         * elmo.el (elmo-make-folder): Add folder name error check.
5461
5462         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5463         (elmo-nntp-encode-group-string): New inline function.
5464         (elmo-nntp-decode-group-string): Ditto.
5465         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5466         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5467         Use `not' instead of `null';
5468         Use elmo-nntp-decode-group-string.
5469
5470         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5471
5472         * elmo-version.el (elmo-version): Up to 2.7.5.
5473
5474 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5475
5476         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5477         Hide progress gauge if `elmo-folder-move-messages' exits
5478         nonlocally.
5479
5480 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5481
5482         * elmo-imap4.el (elmo-folder-initialize): Use
5483         `elmo-imap4-encode-folder-string' for folder name.
5484
5485 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5486
5487         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5488         `done'.
5489
5490 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5491
5492         * elmo-util.el (elmo-progress-counter-alist): New internal
5493         variable.
5494         (elmo-progress-counter-value): New macro.
5495         (elmo-progress-counter-all-value): Ditto.
5496         (elmo-progress-counter-format): Ditto.
5497         (elmo-progress-counter-set-value): Ditto.
5498         (elmo-progress-set): New function.
5499         (elmo-progress-clear): Ditto.
5500         (elmo-progress-notify): Ditto.
5501
5502         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5503         counter.
5504
5505         * elmo.el (elmo-generic-folder-append-messages): Call
5506         `elmo-progress-notify'.
5507         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5508
5509         * elmo-archive.el (elmo-folder-append-messages): Call
5510         `elmo-progress-notify'.
5511
5512         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5513
5514         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5515
5516         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5517
5518 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5519
5520         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5521         'Create'.
5522         (elmo-message-encache-dop): Added argument `read'.
5523
5524         * elmo-shimbun.el (elmo-message-encache): Ditto.
5525
5526         * elmo-net.el (elmo-message-encache): Ditto.
5527
5528         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5529         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5530         elmo-imap4-seen-messages.
5531         (elmo-folder-msgdb-create-plugged): Initialize
5532         elmo-imap4-seen-messages;
5533         Set seen mark on elmo-imap4-seen-messages.
5534
5535         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5536
5537         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5538         elmo-folder-append-buffer.
5539         (elmo-folder-encache): Added optional argument `read'.
5540         (elmo-message-encache): Ditto.
5541
5542         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5543
5544         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5545
5546         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5547         if append buffer content succeds.
5548
5549 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5550
5551         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5552         elmo-display-progress.
5553
5554         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5555         Set 4th argument of mime-display-message.
5556         (elmo-mime-display-as-is): Ditto.
5557
5558 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5559
5560         * elmo-nmz.el (toplevel): Require 'mime-edit.
5561         (elmo-nmz-content-type-alist): Abolished.
5562         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5563         content is not a message.
5564         (elmo-map-message-fetch): Changed behavior exept for message content;
5565         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5566         content-type, Add From: and Subject: field.
5567
5568 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5569
5570         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5571         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5572         not a message.
5573
5574 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5575
5576         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5577         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5578
5579         * elmo-archive.el (elmo-folder-writable-p): Defined.
5580
5581         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5582
5583         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5584
5585         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5586
5587         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5588
5589         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5590
5591         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5592
5593         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5594
5595         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5596
5597 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5598
5599         * elmo-util.el (elmo-address-quote-specials): New function;
5600         Renamed from `wl-address-quote-specials'.
5601
5602 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5603
5604         * elmo-version.el (elmo-version): Up to 2.7.4.
5605
5606 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5607
5608         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5609
5610 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5611
5612         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5613         both compile-time and run-time to avoid byte-compile warning.
5614
5615 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5616
5617         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5618
5619 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5620
5621         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5622         option.
5623         (elmo-mime-display-as-is-internal): Use it.
5624
5625         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5626         if `read-passwd' is not defined.
5627
5628 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5629
5630         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5631         by original number.
5632         (elmo-folder-status): Call `elmo-folder-open-internal';
5633         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5634         (elmo-folder-close-internal): Set location-alist as nil.
5635         (elmo-folder-clear): Define.
5636         (elmo-folder-check): Don't set location-alist as nil.
5637
5638         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5639
5640 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5641
5642         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5643         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5644
5645         * mmimap.el (mime-imap-entity::requested): New slot.
5646         (mime-imap-location-fetch-entity-p): New generic function.
5647         (mime-decode-parameters): Define using `defun-maybe'.
5648         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5649         content-type structure.
5650         (mime-entity-body): Return empty body if
5651         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5652
5653         * elmo.el (elmo-message-displaying): New variable.
5654
5655         * elmo-mime.el (elmo-mime-message-display): Bind
5656         elmo-message-displaying as t.
5657
5658         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5659
5660 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5661
5662         * acap.el (acap-open): erase buffer before starting network process.
5663         (acap-store): Rewrite.
5664
5665 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5666
5667         * elmo-imap4.el (elmo-imap4-default-mailbox,
5668         elmo-imap4-default-server
5669         elmo-imap4-default-authenticate-type,
5670         elmo-imap4-default-user,
5671         elmo-imap4-default-port,
5672         elmo-imap4-default-stream-type,
5673         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5674
5675         * elmo-pop3.el (elmo-pop3-default-user,
5676         elmo-pop3-default-server,
5677         elmo-pop3-default-authenticate-type,
5678         elmo-pop3-default-port,
5679         elmo-pop3-default-stream-type,
5680         elmo-pop3-stream-type-alist): Ditto.
5681
5682         * elmo-nntp.el (elmo-nntp-default-server,
5683         elmo-nntp-default-user,
5684         elmo-nntp-default-port,
5685         elmo-nntp-default-stream-type,
5686         elmo-nntp-stream-type-alist): Ditto.
5687
5688         * elmo-vars.el: Follow changes above.
5689         (elmo-setting): New custom group; added 'elmo-setting group to
5690         above variables.
5691
5692         * elmo-version.el (elmo-version): Up to 2.7.3.
5693
5694         * acap.el (acap-parse-response): Don't delete process when BYE
5695         response (It causes hang-up on slow network environment).
5696         (toplevel): Added comment.
5697
5698 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5699
5700         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5701
5702         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5703         parsing NIL.
5704         (acap-parse-return-metadata): Ditto.
5705
5706         * slp.el: New file.
5707         (toplevel): Fixed typo.
5708
5709         * acap.el: New file.
5710         (acap-network-stream-open): Show "Connecting..." message.
5711         (acap-parse-response): Fixed problem for BYE untagged response.
5712         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5713         (toplevel): Added tiny comments.
5714
5715 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5716
5717         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5718         space delimiter for uidl response.
5719
5720 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5721
5722         * elmo-vars.el (elmo-use-semi): Eliminated.
5723
5724         * elmo-util.el (elmo-string-assoc-all): New function.
5725
5726 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5727
5728         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5729         property 'mime-preview-situation for `mime-preview-quit'.
5730
5731 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5732
5733         * elmo.el (elmo-message-fetch-with-cache-process): Call
5734         elmo-message-fetch-internal instead of causing an error when fetch
5735         strategy is 'entire but only 'section cache is available.
5736
5737 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5738
5739         * elmo-version.el (elmo-version): Up to 2.7.2.
5740
5741         * elmo.el (elmo-generic-folder-append-messages): Make
5742         fetch-strategy with `use-cache'.
5743
5744         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5745         (elmo-dop-queue-method-name): New macro.
5746
5747 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5748
5749         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5750         unbalanced parenthesis.
5751
5752 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5753
5754         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5755
5756 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5757
5758         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5759         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5760
5761 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5762
5763         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5764         local variables.
5765
5766 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5767
5768         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5769         (elmo-message-use-cache-p): Define.
5770         (elmo-folder-msgdb-create): Treat cache.
5771
5772 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5773
5774         * elmo-nntp.el (elmo-network-initialize-session): Call
5775         `elmo-nntp-send-mode-reader'.
5776         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5777
5778 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5779
5780         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5781         alist.
5782         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5783         assoc.
5784
5785         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5786         for `elmo-plugged-p'.
5787         (elmo-open-network-stream): Fixed stream-type argument.
5788
5789 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5790
5791         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5792         unknown archive type is specified.
5793
5794 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5795
5796         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5797
5798         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5799         while loading msgdb.
5800
5801         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5802         (elmo-folder-open-internal): Rewrite.
5803
5804 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5805
5806         * elmo-mime.el (elmo-mime-display-as-is-internal):
5807         Adjust buffer-multibyte status.
5808
5809 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5810
5811         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5812         of elmo-condition-find-key.
5813
5814         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5815         (elmo-condition-in-msgdb-p): Ditto.
5816         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5817         argument.
5818
5819 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5820
5821         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5822
5823 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
5824
5825         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5826         label for elmo-display-progress.
5827
5828 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
5829
5830         * elmo.el (elmo-folder-clear): New method.
5831         (elmo-folder-clear): Define.
5832         (elmo-folder-synchronize): Call `elmo-folder-clear'.
5833
5834         * elmo-shimbun.el (elmo-folder-check): Rewrite.
5835         (elmo-folder-clear): Define.
5836
5837         * elmo-map.el (elmo-folder-clear): Define.
5838
5839         * elmo-version.el (elmo-version): Up to 2.7.1.
5840
5841 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
5842
5843         * elmo.el (elmo-folder-synchronize): Return list of nil when no
5844         updates.
5845
5846 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
5847
5848         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
5849         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
5850
5851 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
5852
5853         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
5854
5855         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
5856         and re-written.
5857
5858         * elmo-imap4.el (elmo-folder-initialize): Use
5859         elmo-get-network-stream-type.
5860
5861         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5862
5863         * elmo-pop3.el (elmo-folder-initialize): Ditto.
5864
5865 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
5866
5867         * elmo.el (elmo-message-encache): Set unread argument for
5868         elmo-message-fetch.
5869
5870         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
5871
5872         * elmo.el (elmo-net-port-info): New method.
5873
5874         * elmo-shimbun.el (elmo-net-port-info): Define.
5875         (elmo-message-encache): Ditto.
5876
5877         * elmo-net.el (elmo-net-port-info): Define as method.
5878
5879         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
5880         unplugged status when elmo-enable-disconnected-operation is t.
5881
5882         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
5883         of spool folder before checking new number.
5884
5885 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
5886
5887         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
5888         (elmo-network-setup-session): Ditto.
5889         (elmo-message-fetch-plugged): Ditto.
5890         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
5891         (elmo-network-initialize-session): Ditto.
5892         (elmo-pop3-read-response): Abolish 3rd argument.
5893         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
5894         (elmo-pop3-read-contents): Ditto.
5895         (elmo-pop3-read-body): Ditto.
5896         (elmo-folder-status): Call elmo-folder-close.
5897         (elmo-pop3-lock): Abolish.
5898         (elmo-pop3-unlock): Ditto.
5899         (elmo-pop3-locked-p): Ditto.
5900         (elmo-folder-check): Don't call elmo-pop3-locked-p.
5901
5902 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
5903
5904         * elmo-version.el (elmo-version): Up to 2.7.0.
5905
5906         * elmo-pop3.el (elmo-pop3-debug): New variable.
5907         (elmo-pop3-debug-inhibit-logging): Ditto.
5908         (elmo-pop3-debug): New function.
5909         (elmo-pop3-send-command): Call elmo-pop3-debug.
5910         (elmo-pop3-read-response): Added keep-lock optional argument;
5911         Don't unlock if keep-lock is non-nil.
5912         (elmo-pop3-process-filter): Call elmo-pop3-debug.
5913         (elmo-network-authenticate-session): Bind
5914         elmo-pop3-debug-inhibit-logging as t.
5915         (elmo-network-setup-session): Call elmo-pop3-read-response with
5916         keep-lock argument.
5917         (elmo-pop3-read-msg): Ditto.
5918         (elmo-pop3-locked-p): Call elmo-pop3-debug.
5919         (elmo-pop3-read-body): Call elmo-pop3-unlock.
5920         (elmo-network-initialize-session): Call elmo-pop3-lock.
5921         (elmo-folder-close-internal): Don't clear location-alist slot.
5922         (elmo-folder-check): Clear location-alist slot.
5923
5924 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
5925
5926         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
5927         (elmo-pop3-send-command): Call elmo-pop3-lock.
5928         (elmo-pop3-read-response): Call elmo-pop3-unlock.
5929         (elmo-pop3-read-contents): Ditto.
5930         (elmo-pop3-lock): New function.
5931         (elmo-pop3-unlock): Ditto.
5932         (elmo-pop3-locked-p): Ditto.
5933         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
5934         returns t.
5935
5936 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
5937
5938         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
5939
5940         * elmo-util.el (elmo-file-field-primitive-condition-match):
5941         New inline function (Don't fetch file content if "first" or "last").
5942         (elmo-file-field-condition-match): Use
5943         elmo-file-field-primitive-condition-match.
5944
5945         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
5946         "first".
5947
5948         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
5949         (elmo-message-fetch-plugged): Fixed.
5950
5951         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
5952
5953 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
5954
5955         * elmo.el (elmo-folder-move-messages): Bind
5956         elmo-inhibit-display-retrieval-progress as t while moving messages.
5957
5958         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
5959         New variable.
5960         (elmo-inhibit-display-retrieval-progress): Ditto.
5961
5962         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
5963         for retrieval progress;
5964         Don't display progress when total buffer size is smaller than
5965         elmo-display-retrieval-progress-threshold.
5966         (elmo-message-fetch-plugged): Don't display progress when
5967         elmo-inhibit-display-retrieval-progress is non-nil.
5968
5969         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
5970         for retrieval progress;
5971         Don't display progress when literal size is smaller than
5972         elmo-display-retrieval-progress-threshold.
5973         (elmo-imap4-message-fetch): Don't display progress when
5974         elmo-inhibit-display-retrieval-progress is non-nil.
5975
5976 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
5977
5978         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
5979         (elmo-imap4-find-next-line): Display progress whille literal fetching.
5980         (elmo-imap4-message-fetch): Likewise.
5981
5982         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
5983         (elmo-shimbun-index-range-alist): Ditto.
5984         (elmo-shimbun-use-entire-index): Abolish.
5985         (shimbun-mua-use-entire-index): Ditto.
5986         (elmo-shimbun-folder): Added new slot `range'.
5987         (elmo-folder-initialize): Setup slot `range'.
5988
5989 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
5990
5991         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
5992         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
5993         (elmo-shimbun-get-headers): Use return value of
5994         `shimbun-article-expiration-days'.
5995         (elmo-folder-close-internal): Clean up last-check slot.
5996
5997         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
5998         (elmo-pop3-total-size): New variable.
5999         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6000
6001         * elmo.el (elmo-folder-reserve-status-p): New method.
6002
6003         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6004         (elmo-shimbun-use-entire-index): New user option.
6005         (shimbun-elmo-mua): New class.
6006         (shimbun-mua-search-id): Define.
6007         (shimbun-mua-use-entire-index): Ditto.
6008         (elmo-shimbun-folder:last-check): New slot.
6009         (elmo-shimbun-headers-cache-header-list): Abolish.
6010         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6011         (elmo-shimbun-headers-cache-header-hash): Ditto.
6012         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6013         (elmo-shimbun-headers-cache-last-check): Ditto.
6014         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6015         (elmo-shimbun-headers-check-p): Rewrite.
6016         (elmo-shimbun-msgdb-to-headers): New function.
6017         (elmo-shimbun-get-headers): Rewrite.
6018         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6019         (elmo-folder-open-internal): Get headers only if
6020         `elmo-shimbun-headers-check-p' is non-nil.
6021         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6022         is non-nil.
6023         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6024         (elmo-quit): Removed.
6025
6026         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6027         function.
6028         (elmo-msgdb-overview-entity-set-extra): Ditto.
6029         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6030
6031         * elmo-map.el (elmo-folder-status): Don't call
6032         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6033         is non-nil.
6034
6035 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6036
6037         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6038         of `elmo-msgdb-search-internal-primitive' when condition's car is
6039         `and' or `or'.
6040
6041 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6042
6043         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6044
6045 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6046
6047         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6048         call `elmo-pipe-drain'.
6049
6050 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6051
6052         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6053         typo. (elmo-cache-folder -> elmo-mark-folder)
6054
6055 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6056
6057         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6058         `elmo-message-fetch'.
6059
6060 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6061
6062         * elmo-net.el (elmo-message-encache): Fixed typo.
6063         (elmo-message-fetch-unplugged): Changed call
6064         `elmo-message-fetch-internal' without argument `outbuf'.
6065
6066 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6067
6068         * elmo.el (elmo-message-encache): Define as generic function.
6069         (elmo-message-fetch-field): New generic function.
6070         (elmo-message-fetch-with-cache-process): Cause an error when
6071         fetch strategy is 'entire but only 'section cache is available.
6072         (toplevel): Fixed nmz folder definition.
6073
6074         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6075         (elmo-msgdb-resume-list-filename): Ditto.
6076         (elmo-queue-filename): Ditto.
6077         (elmo-enable-disconnected-operation): Changed default value to t.
6078
6079         * elmo-util.el (elmo-cache-path-section-p): New function.
6080         (elmo-file-cache-get): Use it.
6081         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6082         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6083         (elmo-dop-queue-save): Ditto.
6084
6085         * elmo-net.el (elmo-folder-status-unplugged): Call
6086         elmo-folder-status-dop.
6087         (elmo-folder-list-messages-unplugged): Implemented.
6088         (elmo-folder-delete-messages-unplugged): Define.
6089         (elmo-folder-msgdb-create): Define.
6090         (elmo-folder-msgdb-create-unplugged): Define.
6091         (elmo-folder-mark-as-read-unplugged): Ditto.
6092         (elmo-folder-unmark-read-unplugged): Ditto.
6093         (elmo-folder-mark-as-important-unplugged): Ditto.
6094         (elmo-folder-unmark-important-unplugged): Ditto.
6095         (elmo-message-encache): Ditto.
6096
6097         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6098         (elmo-dop-queue-save): Ditto.
6099
6100         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6101         `elmo-folder-msgdb-create'.
6102         (elmo-folder-append-buffer): Implemented unplugged operation.
6103         (elmo-folder-append-messages): Call parent method in unplugged status.
6104         (elmo-message-fetch-unplugged): Removed definition.
6105         (elmo-message-fetch-field): Implemented.
6106
6107         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6108         (elmo-dop-folder): Removed variable definition.
6109         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6110         (elmo-dop-queue-flush): Implemented.
6111         (elmo-dop-queue-merge): Removed definition (TODO).
6112         (elmo-dop-spool-folder): New function.
6113         (elmo-dop-spool-folder-append-buffer): Ditto.
6114         (elmo-dop-spool-folder-list-messages): Ditto.
6115         (elmo-dop-list-deleting-messages): Ditto.
6116         (elmo-folder-append-buffer-dop): Ditto.
6117         (elmo-folder-delete-messages-dop): Ditto.
6118         (elmo-message-encache-dop): New inline function.
6119         (elmo-create-folder-dop): Ditto.
6120         (elmo-folder-mark-as-read-dop): Ditto.
6121         (elmo-folder-unmark-read-dop): Ditto.
6122         (elmo-folder-mark-as-important-dop): Ditto.
6123         (elmo-folder-unmark-important-dop): Ditto.
6124         (elmo-folder-status-dop): Fixed.
6125         (elmo-folder-append-buffer-dop-delayed): New function.
6126         (elmo-folder-delete-messages-dop-delayed): Ditto.
6127         (elmo-dop-msgdb): Ditto.
6128
6129 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6130
6131         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6132
6133 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6134
6135         * elmo.el (elmo-folder-move-messages): Fixed problem when
6136         `dst-folder' is 'null.
6137
6138 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6139
6140         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6141         instead of current mark.
6142
6143         * elmo-multi.el (elmo-folder-list-importants-internal): No
6144         operation if importants is not list.
6145
6146         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6147         Return t if importants is not list.
6148
6149         * elmo-map.el (elmo-map-folder-list-importants): Define.
6150         (elmo-folder-list-importants-internal): Check return value of
6151         `elmo-map-folder-list-importants-internal'.
6152
6153         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6154
6155         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6156
6157         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6158
6159         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6160
6161 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6162
6163         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6164         (Patch is provided by <kita@coe.nttdata.co.jp>).
6165
6166 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6167
6168         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6169         mark folder.
6170
6171 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6172
6173         * elmo.el (elmo-message-fetch): Define.
6174         (elmo-message-fetch-with-cache-process): New generic method.
6175         (elmo-message-fetch-internal): New generic method.
6176         (elmo-folder-synchronize):
6177
6178         * elmo-archive.el (elmo-message-fetch-internal): Define.
6179         (elmo-message-fetch): Eliminated.
6180
6181         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6182         (elmo-message-fetch): Eliminated.
6183
6184         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6185         argument OUTBUF.
6186         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6187
6188         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6189         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6190
6191         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6192         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6193
6194         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6195
6196         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6197
6198         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6199
6200         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6201         (elmo-message-fetch-unplugged): New generic method.
6202         (elmo-message-fetch-internal): Remove cache process (Renamed from
6203         `elmo-message-fetch').
6204
6205         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6206         (elmo-message-fetch): Eliminated.
6207         (elmo-message-fetch-unplugged): Ditto.
6208
6209         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6210
6211 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6212
6213         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6214         of `to-be-deleted' from number-alist to number-list.
6215
6216 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6217
6218         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6219         (elmo-folder-mark-as-important): Ditto.
6220
6221 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6222
6223         * elmo.el (elmo-folder): Added process-duplicates slot.
6224
6225         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6226         (elmo-folder-unmark-read): Ditto.
6227         (elmo-folder-unmark-important): Ditto.
6228         (elmo-folder-mark-as-important): Ditto.
6229
6230         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6231         duplicated message processing.
6232
6233         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6234
6235 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6236
6237         * elmo-util.el (elmo-list-subdirectories-1): New function.
6238         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6239         (elmo-mapcar-list-of-list): New function.
6240
6241         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6242         `elmo-mapcar-list-of-list' instead of `mapcar'.
6243
6244         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6245
6246         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6247         `elmo-have-link-count'. Return the fully qualified folder name.
6248
6249 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6250
6251         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6252         (elmo-shimbun-headers-cache): New internal variable.
6253         (elmo-shimbun-headers-cache-header-list): New inline function.
6254         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6255         (elmo-shimbun-headers-cache-header-hash): Ditto.
6256         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6257         (elmo-shimbun-headers-cache-last-check): Ditto.
6258         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6259         (elmo-shimbun-lapse-seconds): Ditto.
6260         (elmo-shimbun-headers-cache-check-p): Ditto.
6261         (elmo-shimbun-get-headers): New function.
6262         (elmo-folder-open-internal): Call it.
6263         (elmo-quit): Define (Clear headers-cache).
6264
6265 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6266
6267         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6268
6269         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6270         (elmo-msgdb-flist-save): Ditto.
6271
6272         * elmo-shimbun.el (elmo-folder-list-subfolders):
6273         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6274         (elmo-folder-exists-p): Ditto.
6275
6276         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6277         argument for `shimbun-header-insert'.
6278
6279 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6280
6281         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6282         at first time.
6283
6284         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6285         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6286
6287 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6288
6289         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6290         (elmo-folder-plugged-p): Define.
6291         (elmo-folder-set-plugged): Ditto.
6292         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6293         (elmo-folder-list-messages-internal): Return t if unplugged.
6294         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6295
6296         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6297         when elmo-folder-list-messages-internal method of children returns t.
6298
6299         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6300         pair is nil.
6301         (elmo-folder-open-internal): Don't update if unplugged status.
6302
6303 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6304
6305         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6306         new message.
6307
6308 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6309
6310         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6311
6312         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6313         saving.
6314
6315 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6316
6317         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6318
6319         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6320         (elmo-folder-open-internal): Set up headers slot.
6321         (elmo-folder-check): Call elmo-folder-close-internal and
6322         elmo-folder-open-internal.
6323         (elmo-folder-close-internal): Clean up headers slot.
6324
6325 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6326
6327         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6328         exactly folder list.
6329         (elmo-folder-append-messages): Fixed append archive with prefix.
6330
6331         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6332         make temp files with start-number.
6333
6334         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6335
6336 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6337
6338         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6339         argument `visible-only'.
6340         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6341         instead of `if'.
6342
6343         * elmo-pop3.el (elmo-folder-open-internal): Check
6344         `elmo-inhibit-number-mapping' is non-nil.
6345
6346         * elmo-pipe.el (elmo-folder-status): Fixed.
6347
6348 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6349
6350         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6351
6352         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6353         (elmo-folder-open-internal): Setup `header-hash' slot.
6354         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6355         information.
6356         (elmo-map-message-fetch): Ditto.
6357
6358 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6359
6360         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6361         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6362         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6363         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6364
6365         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6366
6367 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6368
6369         * sb-airs.el: Added footer.
6370
6371         * shimbun.el (shimbun-article): Define as luna-method.
6372
6373         * sb-tcup.el: New file.
6374
6375         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6376         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6377
6378 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6379
6380         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6381         (shimbun-get-headers): Ditto.
6382
6383         * elmo.el: Moved obsolete variable definitions from
6384         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6385
6386         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6387         groups.
6388
6389         * shimbun.el: New file.
6390
6391         * elmo-shimbun.el: New file.
6392
6393         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6394         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6395         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6396         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6397
6398 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6399
6400         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6401         hierarchy is t.
6402
6403 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6404
6405         * elmo.el (elmo-folder-msgdb): Define as macro.
6406         (elmo-folder-open): Added argument `load-msgdb'.
6407         (elmo-generic-folder-open): Ditto.
6408         (elmo-folder-encache): New function.
6409
6410         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6411
6412         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6413
6414         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6415         Eliminated argument FOLDER and added argument MSGDB.
6416         (elmo-dop-queue-load): Moved from elmo-dop.el.
6417         (elmo-dop-queue-save): Ditto.
6418
6419         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6420
6421         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6422
6423         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6424         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6425         (elmo-filter-folder-list-importants-internal): Ditto.
6426
6427         * elmo-map.el (elmo-folder-pack-number): Ditto.
6428
6429         * elmo-mime.el (elmo-mime-message-display): Ditto.
6430
6431         * elmo.el (elmo-generic-folder-commit): Ditto.
6432         (elmo-folder-list-unreads): Ditto.
6433         (elmo-folder-list-importants): Ditto.
6434         (elmo-generic-folder-commit): Ditto.
6435         (elmo-message-set-mark): Ditto.
6436         (elmo-generic-folder-append-msgdb): Ditto.
6437         (elmo-folder-synchronize): Ditto.
6438         (elmo-folder-messages): Ditto.
6439         (elmo-init): Call elmo-dop-queue-load.
6440         (elmo-folder-list-messages): Ditto.
6441
6442         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6443         (elmo-nntp-folder-process-crosspost): Ditto.
6444         (elmo-folder-list-unreads-internal): Ditto.
6445
6446         * elmo-dop.el: Removed old functions.
6447
6448 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6449
6450         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6451         `folder' to `msgdb'.
6452
6453 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6454
6455         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6456         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6457
6458         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6459         case-fold-search.
6460
6461 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6462
6463         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6464         defined.
6465
6466         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6467         (mmimap-parse-parameters-from-list): Define as alias for
6468         `mime-decode-parameter-plist' if it is defined as function.
6469         (mmimap-make-mime-entity): Added argument `number'.
6470         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6471         as 0.
6472         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6473
6474         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6475
6476         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6477
6478         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6479
6480 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6481
6482         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6483
6484         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6485         when elmo-imap4-default-authenticate-type is nil.
6486         (elmo-folder-list-subfolders): Ditto
6487         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6488         (elmo-imap4-fetch-callback-1-subr): Renamed from
6489         `elmo-imap4-fetch-callback-1' and define as inline function.
6490         (elmo-imap4-fetch-callback-1):
6491         Renamed from `elmo-imap4-fetch-callback'.
6492         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6493
6494         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6495         msgdb path (To keep compatibility with main trunk).
6496
6497         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6498
6499         * elmo-util.el (elmo-make-file-cache): Moved position of
6500         some macros.
6501
6502         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6503         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6504         instead of `elmo-pop3-inhibit-uidl'.
6505         (elmo-folder-exists-p): Ditto.
6506         (elmo-pop3-folder-list-messages): Ditto.
6507
6508         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6509         instead of `elmo-pop3-inhibit-uidl'.
6510         (elmo-folder-status): Ditto.
6511
6512         * elmo-dop.el (elmo-dop-folder): New variable.
6513         (elmo-dop-lock-message): Eliminated.
6514         (elmo-dop-unlock-message): Ditto.
6515         (elmo-dop-lock-list-load): Ditto.
6516         (elmo-dop-lock-list-save): Ditto.
6517         (elmo-dop-delete-folder): Ditto.
6518         (elmo-dop-rename-folder): Ditto.
6519
6520         * elmo.el: Removed incomplete commentary.
6521
6522 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6523
6524         * elmo.el (toplevel): Require 'elmo-version first;
6525         for little `recursive-load-depth' settings.
6526         Fix "ends here" comment.
6527
6528 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6529
6530         * elmo-util.el (toplevel): Require 'poem;
6531         Some functions are moved from elmo-cache.el.
6532
6533         * elmo-net.el (toplevel): Require 'elmo-cache.
6534
6535         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6536
6537         * elmo.el (toplevel): Ditto.
6538
6539         * elmo-cache.el: Rewrite with luna;
6540         Some functions are moved to elmo-util.el.
6541
6542         * elmo-internal.el (elmo-internal-folder-list): New variable.
6543         (elmo-internal-folder-initialize): Rewrite.
6544         (elmo-folder-list-subfolders): Ditto.
6545
6546         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6547         (elmo-cache-collect-sub-directories): Ditto.
6548
6549 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6550
6551         * elmo-version.el (elmo-version): Up to 2.5.8.
6552
6553         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6554
6555         * elmo-util.el (elmo-list-insert): New function.
6556
6557 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6558
6559         * elmo.el (elmo-init): New function.
6560         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6561
6562         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6563         (Renamed from `elmo-localdir-header-chop-length').
6564
6565         * elmo-pop3.el (elmo-pop3-use-cache,
6566         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6567
6568         * elmo-nntp.el (elmo-message-fetch): Define.
6569         (elmo-message-fetch-unplugged): Ditto.
6570         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6571         (elmo-nntp-use-cache): Ditto.
6572         (elmo-nntp-max-number-precedes-list-active): Ditto.
6573
6574         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6575
6576         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6577         `elmo-msgdb-insert-file-header'.
6578         Use `elmo-msgdb-file-header-chop-length'.
6579
6580         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6581         `elmo-vars.el'.
6582
6583         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6584         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6585         `elmo-msgdb-insert-file-header'.
6586
6587         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6588         Use new variable;
6589         Define obsolete variables with `elmo-define-obsolete-variable',
6590
6591         * elmo-util.el (elmo-warning-buffer-name): New constant.
6592         (elmo-warning): New function.
6593         (elmo-obsolete-variable-alist): New variable.
6594         (elmo-obsolete-variable-show-warnings): New variable.
6595         (elmo-define-obsolete-variable): New function.
6596         (elmo-resque-obsolete-variable): Ditto.
6597         (elmo-resque-obsolete-variables): Ditto.
6598
6599 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6600
6601         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6602         Eliminated.
6603
6604         * elmo-pop3.el, elmo-nntp.el: Use custom.
6605
6606 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6607
6608         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6609         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6610
6611 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6612
6613         * Luna-fy Kenichi OKADA's following changes.
6614         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6615         `nohide'.
6616         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6617
6618 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6619
6620         * elmo-util.el (elmo-display-progress): Prefer
6621         `progress-feedback-with-label' to `lprogress-display'.
6622
6623 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6624
6625         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6626
6627 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6628
6629         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6630         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6631         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6632         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6633         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6634         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6635         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6636         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6637         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6638         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6639         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6640         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6641         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6642
6643 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6644
6645         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6646         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6647
6648 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6649
6650         * elmo.el (elmo-folder-process-crosspost): New generic method.
6651         (elmo-folder-writable-p): Ditto.
6652         (elmo-folder-message-appendable-p): Eliminated.
6653         (elmo-generic-folder-append-msgdb): Rewrite.
6654         (elmo-newsgroups-hashtb): New internal variable.
6655         (elmo-crosspost-message-set): Eliminated.
6656         (elmo-crosspost-message-delete): Ditto.
6657         (elmo-setup-subscribed-newsgroups): New function.
6658         (elmo-crosspost-message-alist-modified): New internal variable.
6659         (elmo-crosspost-message-alist-load): New function (Renamed from
6660         `wl-crosspost-alist-load').
6661         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6662         `wl-crosspost-alist-save').
6663
6664         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6665
6666         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6667         `unreads'.
6668         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6669         elmo-newsgroups-hashtb).
6670         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6671         `elmo-nntp-folder-update-crosspost-message-alist'.
6672         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6673         `elmo-nntp-groups-hashtb'.
6674         (elmo-nntp-make-groups-hashtb): Eliminated.
6675         (elmo-nntp-parse-newsgroups): New function (Renamed from
6676         `wl-parse-newsgroups').
6677         (elmo-folder-creatable-p, elmo-folder-writable-p,
6678         elmo-folder-close-internal, elmo-folder-mark-as-read,
6679         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6680         Define.
6681         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6682
6683         * elmo-net.el (elmo-message-fetch): Check buffer size.
6684
6685         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6686
6687         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6688
6689         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6690         before `close' command.
6691
6692         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6693         `mark-alist' (All other related portions are changed).
6694
6695 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6696
6697         * elmo-util.el (elmo-create-hash-size): Eliminated.
6698         (elmo-make-hash) Make a hash with `one less than a power of two'
6699         length.
6700
6701         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6702         (elmo-hash-maximum-size): Changed value.
6703
6704 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6705
6706         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6707         (elmo-mime-message-display-as-is): Ditto.
6708
6709 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6710
6711         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6712         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6713
6714 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6715
6716         * elmo-mark.el: New file.
6717
6718         * elmo-internal.el: Rewrite (Almost empty).
6719
6720 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6721
6722         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6723         (mime-imap-entity-header-string): Ditto.
6724         (mmimap-entity-section): Rewrite.
6725
6726 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6727
6728         * elmo-nmz.el: New file.
6729
6730         * elmo-pipe.el: Rewrite with luna.
6731
6732 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6733
6734         * elmo-archive.el: Rewrite with luna.
6735
6736         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6737         (elmo-folder-list-importants-internal): Ditto.
6738
6739 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6740
6741         * elmo-archive.el (elmo-archive-version): Abolish.
6742         (toplevel) Removed `boso' comment.
6743
6744 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6745
6746         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6747         elmo-msgdb-add-msgs-to-seen-list-subr;
6748         Changed argument seen-marks to unread-marks.
6749
6750         * elmo-nntp.el: Rewrite with luna.
6751
6752 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6753
6754         * elmo-filter.el: Rewrite with luna.
6755
6756 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6757
6758         * elmo-pop3.el: Rewrite with luna.
6759
6760 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6761
6762         * elmo-multi.el: Rewrite with luna.
6763
6764         * elmo-vars.el (elmo-use-killed-list): Abolish.
6765         All other related portions are changed.
6766         (elmo-filename-replace-string-alist): Renamed from
6767         elmo-msgid-replace-string-alist.
6768
6769 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6770
6771         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6772
6773         * elmo-map.el: New file.
6774         * elmo-maildir.el: Rewrite with luna.
6775
6776 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6777
6778         * elmo.el: Changed meaning of `elmo-folder-commit'.
6779         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6780
6781 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6782
6783         * elmo.el (elmo-folder-append-buffer): New function.
6784         (Renamed from `elmo-append-msg')
6785
6786 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6787
6788         * elmo-mime.el: New file.
6789
6790 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6791
6792         * elmo-cache.el: Rewrite.
6793
6794 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6795
6796         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6797
6798 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6799
6800         * elmo-vars.el (elmo): New group.
6801         (elmo-strict-diff-folder-regexp): New variable.
6802
6803         * elmo-util.el (elmo-call-func): Abolish.
6804         (elmo-folder-get-type): Ditto.
6805         (elmo-*-get-spec): Ditto.
6806         (elmo-*-spec-*): Ditto.
6807         (elmo-imap4-identical-name-space-p): Ditto.
6808         (elmo-folder-identical-system-p): Ditto.
6809         (elmo-folder-direct-copy-alist): Ditto.
6810         (elmo-folder-direct-copy-p): Ditto.
6811
6812         * elmo-pipe.el (elmo-pipe-folder): New luna class.
6813         (elmo-folder-initialize): Define.
6814         (elmo-folder-get-primitive-list): Ditto.
6815
6816         * elmo-nntp.el (elmo-nntp-folder): New luna class.
6817         (elmo-folder-initialize): Define.
6818         Renamed `elmo-network-session-host-internal' to
6819         `elmo-network-session-server-internal'.
6820
6821         * elmo-multi.el (elmo-multi-folder): New luna class.
6822         (elmo-folder-initialize): Define.
6823         (elmo-folder-get-primitive-list): Ditto.
6824         (elmo-folder-contains-type): Ditto.
6825         (elmo-message-use-cache-p): Ditto.
6826
6827         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6828         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6829
6830         * elmo-maildir.el (elmo-maildir-folder): New luna class.
6831         (elmo-folder-initialize): Define.
6832
6833         * elmo-filter.el (elmo-filter-folder): New luna class.
6834         (elmo-folder-initialize): Define.
6835         (elmo-folder-get-primitive-list): Ditto.
6836         (elmo-folder-contains-type): Ditto.
6837
6838 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6839
6840         * elmo-imap4.el: Rewrite with luna.
6841
6842         * mmimap.el: New file.
6843
6844         * mmelmo.el, mmelmo-imap4.el: Removed.
6845
6846         * elmo-net.el: Ditto.
6847
6848         * elmo-pop3.el (elmo-pop3-folder): New luna class.
6849         (elmo-folder-initialize): Define.
6850
6851         * elmo-archive.el (elmo-archive-folder): New luna class.
6852         (elmo-folder-initialize): Define.
6853
6854         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
6855         `elmo-folder-msgdb-path'.
6856         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
6857         `elmo-make-folder'.
6858
6859 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6860
6861         * elmo.el: New file.
6862
6863         * elmo2.el: Renamed to elmo.el.
6864
6865 \f
6866 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
6867
6868         * elmo-cache.el (elmo-cache-expire-by-size): Count
6869         a disk usage for a cache file entry in KB even when
6870         its kind is a directory.
6871
6872 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
6873
6874         * elmo-version.el (elmo-version): Up to 2.5.7.
6875
6876 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6877
6878         * elmo-version.el (elmo-version): Up to 2.5.6.
6879
6880 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6881
6882         * elmo-version.el (elmo-version): Up to 2.5.5.
6883
6884 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
6885
6886         * elmo-imap4.el (elmo-network-authenticate-session):
6887         Fixed a logic for response checking.
6888
6889 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
6890
6891         * elmo-net.el: Add autoload settings for `starttls-negotiate',
6892         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
6893         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
6894         `sasl-mechanisms'.
6895
6896         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
6897         for `starttls-open-stream' and `starttls-negotiate'.
6898
6899         * elmo-nntp.el: Remove autoload settings for
6900         `starttls-open-stream' and `starttls-negotiate'.
6901
6902         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
6903         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
6904         `luna-define-class' with `eval-and-compile'.
6905
6906 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
6907
6908         * elmo-util.el (elmo-read-search-condition-internal):
6909         Require an element of table for searching field.
6910
6911 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6912
6913         * elmo-version.el (elmo-version): Up to 2.5.4.
6914
6915 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
6916
6917         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
6918
6919 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
6920
6921         * elmo-nntp.el (elmo-network-initialize-session): omitted.
6922
6923 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
6924
6925         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
6926         before greeting.
6927
6928 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
6929
6930         * elmo-imap4.el (elmo-imap4-delete-folder):
6931         Send "close" before "delete" (Use commented out line).
6932         (elmo-imap4-rename-folder): Ditto.
6933
6934         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
6935         folder string itself.
6936         (elmo-dop-list-deleted): New function.
6937         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
6938         killed.
6939
6940         * elmo-util.el (elmo-string-rassoc-all): New function.
6941
6942 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
6943
6944         * elmo-version.el (elmo-version): Up to 2.5.3.
6945
6946         * elmo-net.el (elmo-network-get-session): Changed logic for
6947         checking process status.
6948
6949         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
6950         process is nil;
6951         Changed logic for checking process status.
6952
6953 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
6954
6955         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
6956         before greeting.
6957         (elmo-network-setup-session): Set UIDL hash size according to
6958         the length of list response.
6959         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
6960         according to the length of list response;
6961         Return the length of list response.
6962         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
6963
6964 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
6965
6966         * elmo-imap4.el (toplevel): Require 'ssl.
6967         Add autoload 'starttls.
6968         * elmo-pop3.el (toplevel): Ditto.
6969         * elmo-nntp.el (toplevel): Ditto.
6970
6971 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6972
6973         * elmo-imap4.el (toplevel): defun at compile time.
6974         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
6975         sasl-next-step, sasl-step-data, sasl-step-set-data.
6976         * elmo-pop3.el (toplevel): Ditto.
6977
6978 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6979
6980         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
6981
6982 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6983
6984         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
6985         if error.
6986         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
6987         and `elmo-pop-auth-apop'.
6988
6989 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6990
6991         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
6992
6993 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6994
6995         * elmo-pop3.el (elmo-network-authenticate-session): Split
6996         encoded response value.
6997
6998 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
6999
7000         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7001         `elmo-pop3-force-login'.
7002         Redefine `sasl-mechanisms'.
7003         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7004
7005 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7006
7007         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7008         Delete `elmo-imap4-authenticator-alist'.
7009         (elmo-imap4-auth-cram-md5): Delete.
7010         (elmo-imap4-auth-digest-md5): Delete.
7011
7012 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7013
7014         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7015         (elmo-pop3-auth-scram-md5): Ditto.
7016         (elmo-pop3-auth-cram-md5): Ditto.
7017
7018 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7019
7020         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7021         Delete `elmo-pop3-authenticator-alist'.
7022
7023 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7024
7025         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7026         new SASL API.
7027         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7028
7029 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7030
7031         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7032
7033 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7034
7035         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7036         Fixed problem when `elmo-pop3-use-uidl' is nil.
7037         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7038
7039 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7040
7041         * elmo-version.el (elmo-version): Up to 2.5.2.
7042
7043 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7044
7045         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7046         New function.
7047         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7048         (elmo-pop3-msgdb-create-as-numlist): Use it.
7049
7050         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7051         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7052
7053         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7054         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7055
7056 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7057
7058         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7059         when elmo-mark-as-read is called with second argument nil.
7060
7061 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7062
7063         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7064         Moved to elmo-util.el.
7065
7066         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7067         Moved from elmo-pipe.el
7068
7069         * elmo-archive.el (elmo-archive-call-process): Enclose with
7070         static-if.
7071
7072         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7073         "RFC822" (because RFC822.PEEK is obsolete).
7074         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7075
7076 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7077
7078         * elmo-archive.el (elmo-archive-call-process): Don't check for
7079         the exit status when Nemacs is running.
7080
7081 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7082
7083         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7084         'plain.
7085
7086         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7087         (elmo-pop3-get-spec): Set default of auth to 'user.
7088
7089         * elmo-imap4.el (elmo-imap4-session-check):
7090         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7091         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7092         (elmo-imap4-auth-login): New function; Revival.
7093         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7094         `elmo-imap4-auth-login'.
7095
7096 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7097
7098         * elmo2.el (toplevel): Move `product-provide' declare.
7099         * mmelmo.el (toplevel): Ditto.
7100
7101 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7102
7103         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7104
7105 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7106
7107         * elmo-util.el (elmo-folder-get-store-type): New function.
7108         (elmo-folder-direct-copy-p): Use it.
7109
7110 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7111
7112         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7113         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7114         and result of `elmo-imap4-use-flag-p'.
7115         (elmo-imap4-fetch-callback-1): Set mark according to
7116         the result of `elmo-imap4-use-flag-p'.
7117
7118 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7119
7120         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7121         (elmo-generic-list-folder-unread): Ditto.
7122         (elmo-folder-get-info): Ditto.
7123         (elmo-folder-set-info-max-by-numdb): Ditto.
7124         (elmo-folder-get-info-max): Ditto.
7125         (elmo-folder-get-info-length): Ditto.
7126         (elmo-folder-get-info-unread): Ditto.
7127         (elmo-folder-info-make-hashtb): Ditto.
7128
7129         * elmo2.el: Removed above functions.
7130
7131 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7132
7133         * elmo-imap4.el (toplevel): Require 'ssl.
7134         Add autoload 'starttls.
7135         * elmo-pop3.el (toplevel): Ditto.
7136         * elmo-nntp.el (toplevel): Ditto.
7137
7138 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7139
7140         * elmo-imap4.el (toplevel): defun at compile time.
7141         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7142         sasl-next-step, sasl-step-data, sasl-step-set-data.
7143         * elmo-pop3.el (toplevel): Ditto.
7144
7145 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7146
7147         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7148
7149 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7150
7151         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7152         if error.
7153         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7154         and `elmo-pop-auth-apop'.
7155
7156 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7157
7158         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7159
7160 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7161
7162         * elmo-pop3.el (elmo-network-authenticate-session): Split
7163         encoded response value.
7164
7165 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7166
7167         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7168         `elmo-pop3-force-login'.
7169         Redefine `sasl-mechanisms'.
7170         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7171
7172 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7173
7174         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7175         Delete `elmo-imap4-authenticator-alist'.
7176         (elmo-imap4-auth-cram-md5): Delete.
7177         (elmo-imap4-auth-digest-md5): Delete.
7178
7179 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7180
7181         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7182         (elmo-pop3-auth-scram-md5): Ditto.
7183         (elmo-pop3-auth-cram-md5): Ditto.
7184
7185 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7186
7187         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7188         Delete `elmo-pop3-authenticator-alist'.
7189
7190 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7191
7192         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7193         new SASL API.
7194         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7195
7196 \f
7197 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7198
7199         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7200
7201 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7202
7203         * elmo-nntp.el (elmo-nntp-get-folders-info):
7204         Fixed problem when '\' character is contained in user-id.
7205         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7206
7207 \f
7208 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7209
7210         * elmo-imap4.el (elmo-imap4-delete-folder):
7211         Send "close" before "delete" (Use commented out line).
7212         (elmo-imap4-rename-folder): Ditto.
7213
7214         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7215         folder string itself.
7216         (elmo-dop-list-deleted): New function.
7217         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7218         killed.
7219
7220         * elmo-util.el (elmo-string-rassoc-all): New function.
7221
7222         * elmo-version.el (elmo-version): Up to 2.5.1.
7223
7224 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7225
7226         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7227
7228         * elmo-internal.el (elmo-internal-search): Fix last change.
7229
7230 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7231
7232         * elmo-internal.el (elmo-internal-search): Rewrite.
7233         (Fixed problem which is pointed out by Akihiro MOTOKI
7234         <motoki@da.jp.nec.com>)
7235
7236         * elmo-version.el (elmo-version): Up to 2.5.0.
7237
7238 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7239
7240         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7241
7242 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7243
7244         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7245         non-nil, make hierarchy.
7246
7247 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7248
7249         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7250         `elmo-pop3-use-uidl' must be bound to nil.
7251         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7252
7253 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7254
7255         * elmo-util.el (elmo-copy-file): Don't cause an error after
7256         `add-name-to-file' failed.
7257
7258         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7259         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7260
7261 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7262
7263         * elmo-version.el (elmo-version): Up to 2.3.93.
7264
7265 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7266
7267         * elmo-util.el (elmo-flatten): New function.
7268
7269 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7270
7271         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7272         sync Author header.
7273         * elmo-cache.el (toplevel): Ditto.
7274         * elmo-database.el (toplevel): Ditto.
7275         * elmo-date.el (toplevel): Ditto.
7276         * elmo-dop.el (toplevel): Ditto.
7277         * elmo-filter.el (toplevel): Ditto.
7278         * elmo-imap4.el (toplevel): Ditto.
7279         * elmo-internal.el (toplevel): Ditto.
7280         * elmo-localdir.el (toplevel): Ditto.
7281         * elmo-localnews.el (toplevel): Ditto.
7282         * elmo-maildir.el (toplevel): Ditto.
7283         * elmo-msgdb.el (toplevel): Ditto.
7284         * elmo-multi.el (toplevel): Ditto.
7285         * elmo-net.el (toplevel): Ditto.
7286         * elmo-nntp.el (toplevel): Ditto.
7287         * elmo-pipe.el (toplevel): Ditto.
7288         * elmo-pop3.el (toplevel): Ditto.
7289         * elmo-util.el (toplevel): Ditto.
7290         * elmo-vars.el (toplevel): Ditto.
7291         * elmo2.el (toplevel): Ditto.
7292         * mmelmo-imap4.el (toplevel): Ditto.
7293         * mmelmo.el (toplevel): Ditto.
7294
7295         * elmo-version.el (elmo-version): Move to top.
7296
7297         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7298         * elmo-imap4.el (toplevel): Ditto.
7299         * elmo-localdir.el (toplevel): Ditto.
7300         * elmo-msgdb.el (toplevel): Ditto.
7301         * elmo-nntp.el (toplevel): Ditto.
7302         * elmo-pop3.el (toplevel): Ditto.
7303         * elmo-version.el (toplevel): Ditto.
7304
7305         * elmo-localnews.el (toplevel): Added Keyword header.
7306
7307 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7308
7309         * elmo-version.el (product-version-as-string): Defined using
7310         `defun-maybe'.
7311         (toplevel): Use it.
7312
7313         * elmo-localdir.el (toplevel): Updated copyright notice.
7314         * elmo-version.el (toplevel): Ditto.
7315         * elmo-msgdb.el (toplevel): Ditto.
7316         * elmo-imap4.el (toplevel): Ditto.
7317         * elmo-nntp.el (toplevel): Ditto.
7318         * elmo-pop3.el (toplevel): Ditto.
7319
7320 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7321
7322         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7323         messages.
7324
7325         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7326         parameter value (It sometimes contains raw kanji).
7327
7328 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7329
7330         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7331         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7332
7333 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7334
7335         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7336
7337 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7338
7339         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7340         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7341
7342 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7343
7344         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7345         value if selecting folder succceeded.
7346         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7347
7348 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7349
7350         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7351         representation.
7352
7353         * elmo-util.el (elmo-string-matched-member): New function.
7354
7355 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7356
7357         * elmo-util.el (elmo-unintern): New macro.
7358         (elmo-number-set-member): Fixed docstring.
7359
7360         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7361         tag token.
7362
7363 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7364
7365         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7366         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7367
7368 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7369
7370         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7371         `no-error'.
7372         Added docstring.
7373         Return non-nil if selecting folder succeeded.
7374         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7375
7376 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7377
7378         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7379         `file-name-completion' returns t.
7380         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7381         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7382         directory if it does not exist.
7383         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7384         for iteration.
7385
7386 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7387
7388         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7389         enclosure (It's harmful in unplugged status).
7390
7391         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7392
7393         * mmelmo-1.el: Removed.
7394
7395         * mmelmo-2.el: Ditto.
7396
7397         * mmelmo-imap4-1.el: Ditto.
7398
7399         * mmelmo-imap4-2.el: Ditto.
7400
7401         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7402
7403         * mmelmo.el: Merged mmelmo-2.el.
7404
7405         * elmo-version.el (elmo-version): Up to 2.3.92.
7406
7407 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7408
7409         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7410         elmo-update-number): Remove last period in "...done." message.
7411         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7412         Ditto.
7413         * elmo-cache.el (elmo-cache-expire-by-size,
7414         elmo-cache-get-sorted-cache-file-list,
7415         elmo-cache-msgdb-create-as-numlist): Ditto.
7416         * elmo-dop.el (elmo-dop-save-pending-messages,
7417         (elmo-dop-flush-pending-append-operations): Ditto.
7418         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7419         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7420         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7421         (elmo-localdir-pack-number): Ditto.
7422         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7423         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7424         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7425         mime-write-entity-content): Ditto.
7426         * pldap.el (ldap-search-basic): Ditto.
7427
7428 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7429
7430         * elmo-version.el (elmo-version): Up to 2.3.91.
7431
7432         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7433         Only when filter is 'last'.
7434
7435         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7436         (elmo-condition-parse-search-value): Use it.
7437         (elmo-read-search-condition-internal): Quote value only when
7438         it is not an atom.
7439
7440 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7441
7442         * elmo2.el (elmo-generic-folder-diff): Fix.
7443
7444 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7445
7446         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7447         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7448         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7449         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7450         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7451         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7452
7453 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7454
7455         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7456         extra-fields.
7457
7458 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7459
7460         * elmo-version.el (elmo-version): Up to 2.3.90.
7461
7462         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7463         (elmo-imap4-list-folder-important): Ditto.
7464
7465 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7466
7467         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7468
7469 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7470
7471         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7472
7473 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7474
7475         * elmo-nntp.el (elmo-network-initialize-session):
7476         Add starttls negotiation.
7477
7478 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7479
7480         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7481         response.
7482         (elmo-network-setup-session): Define.
7483         Call `elmo-nntp-send-mode-reader' when session opened.
7484
7485 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7486
7487         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7488
7489 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7490
7491         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7492         an invalid SPACE character ahead of `SEARCH' command.  Move
7493         a valid SPACE character following `SEARCH' from conditional
7494         `format' arguments to control-strings.
7495
7496 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7497
7498         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7499         was succeeded.
7500
7501         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7502
7503 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7504
7505         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7506         `w32-get-true-file-link-count' as t.
7507
7508         * elmo-imap4.el (elmo-imap4-read): Abolished.
7509         (Renamed to `elmo-read' and moved to elmo-util.el)
7510         All other related portions are changed.
7511
7512         * elmo-util.el (elmo-read): New function.
7513         (elmo-condition-parse-search-value): Use it.
7514
7515 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7516
7517         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7518
7519         * elmo-nntp.el (elmo-nntp-session): Define.
7520         (elmo-nntp-setting): Abolished.
7521         All other related portions are changed.
7522         (elmo-nntp-get-server-command): Changed argument.
7523         (elmo-nntp-set-server-command): Ditto.
7524         (elmo-nntp-xover-p): Ditto.
7525         (elmo-nntp-set-xover): Ditto.
7526         (elmo-nntp-listgroup-p): Ditto.
7527         (elmo-nntp-set-listgroup): Ditto.
7528         (elmo-nntp-list-active-p): Ditto.
7529         (elmo-nntp-set-list-active): Ditto.
7530         (elmo-nntp-xhdr-p): Ditto.
7531         (elmo-nntp-set-xhdr): Ditto.
7532         (elmo-nntp-flush-connection): Abolished.
7533         (elmo-nntp-get-connection): Abolished.
7534         (elmo-nntp-get-session): New function.
7535         (elmo-network-initialize-session): Defined.
7536         (elmo-network-authenticate-session): Ditto.
7537         (elmo-nntp-send-mode-reader): Changed argument.
7538         (elmo-nntp-send-command): Changed argument.
7539         All other related portions are changed.
7540         (elmo-nntp-read-response): Ditto.
7541         (elmo-nntp-read-raw-response): Ditto.
7542         (elmo-nntp-read-contents): Ditto.
7543         (elmo-nntp-read-body): Ditto.
7544         (elmo-nntp-goto-folder): Abolished.
7545         (elmo-nntp-select-group): New function.
7546         All other related portions are changed.
7547         (This function substitutes `elmo-nntp-goto-folder')
7548         (elmo-nntp-msgdb-create-by-header): Rewrite.
7549         (elmo-nntp-get-overview): Eliminated.
7550         (elmo-nntp-get-message): Ditto.
7551         (elmo-nntp-open-connection) Abolished.
7552         (elmo-nntp-read-msg): Rewrite.
7553         (elmo-nntp-post): Ditto.
7554         (elmo-nntp-send-data): Abolished.
7555         (elmo-nntp-send-buffer): New function.
7556         (elmo-nntp-send-data-line): Define as inline function.
7557         (elmo-nntp-get-folders-info-prepare): Use session as key.
7558         (elmo-nntp-groups-read-response): Changed argument.
7559         (elmo-nntp-retrieve-headers): Ditto.
7560         (elmo-nntp-msgdb-create-message): Ditto.
7561
7562         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7563         when searching by 'since' or 'before'.
7564
7565 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7566
7567         * elmo-version.el (toplevel): Use product-version-as-string for set
7568         verstion-string, if defined.
7569
7570 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7571
7572         * elmo-util.el: Doc fixes.
7573
7574 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7575
7576         * elmo-archive.el (toplevel): Use product-provide.
7577         * elmo-cache.el (toplevel): Ditto.
7578         * elmo-database.el (toplevel): Ditto.
7579         * elmo-date.el (toplevel): Ditto.
7580         * elmo-dop.el (toplevel): Ditto.
7581         * elmo-filter.el (toplevel): Ditto.
7582         * elmo-imap4.el (toplevel): Ditto.
7583         * elmo-internal.el (toplevel): Ditto.
7584         * elmo-localdir.el (toplevel): Ditto.
7585         * elmo-localnews.el (toplevel): Ditto.
7586         * elmo-maildir.el (toplevel): Ditto.
7587         * elmo-msgdb.el (toplevel): Ditto.
7588         * elmo-multi.el (toplevel): Ditto.
7589         * elmo-net.el (toplevel): Ditto.
7590         * elmo-nntp.el (toplevel): Ditto.
7591         * elmo-pipe.el (toplevel): Ditto.
7592         * elmo-pop3.el (toplevel): Ditto.
7593         * elmo-util.el (toplevel): Ditto.
7594         * elmo-vars.el (toplevel): Ditto.
7595         * elmo2.el (toplevel): Ditto.
7596         * mmelmo-1.el (toplevel): Ditto.
7597         * mmelmo-2.el (toplevel): Ditto.
7598         * mmelmo-imap4-1.el (toplevel): Ditto.
7599         * mmelmo-imap4-2.el (toplevel): Ditto.
7600         * mmelmo-imap4.el (toplevel): Ditto.
7601         * mmelmo.el (toplevel): Ditto.
7602
7603 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7604
7605         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7606         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7607
7608 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7609
7610         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7611         before splitting.
7612         (elmo-multi-split-number-alist): Ditto.
7613
7614 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7615
7616         * elmo-version.el: New file.  Use product.el.
7617         * elmo2.el: Add (require 'elmo-version).
7618         * elmo-vars.el (elmo-appname, elmo-version): Move to
7619         elmo-version.el
7620
7621 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7622
7623         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7624         `elmo-msgdb-expand-path'.
7625         (elmo-msgdb-load): Ditto.
7626         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7627         (elmo-generic-list-folder-unread): Rewrite.
7628         (elmo-generic-list-folder-important): Changed argument.
7629         (elmo-list-folder-unread): Ditto.
7630         (elmo-list-folder-important): Ditto.
7631         (elmo-folder-diff): Rewrite.
7632         (elmo-generic-folder-diff): New function.
7633         (elmo-multi-get-number-alist-list): Abolished
7634         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7635         (elmo-multi-folder-diff): Moved to elmo-multi.el
7636         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7637
7638         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7639         `elmo-msgdb-expand-path'.
7640         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7641         (elmo-pop3-read-msg): Ditto.
7642         (elmo-pop3-delete-msgs): Ditto.
7643         (elmo-pop3-folder-diff): New alias.
7644
7645         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7646         `elmo-msgdb-expand-path'.
7647         (elmo-pipe-list-folder-unread): Changed arguments.
7648         (elmo-pipe-list-folder-important): Ditto.
7649         (elmo-pipe-folder-diff): New alias.
7650
7651         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7652         `elmo-msgdb-expand-path'.
7653         (elmo-nntp-max-of-folder): Ditto.
7654         (elmo-nntp-msgdb-create): Ditto.
7655         (elmo-nntp-delete-msgs): Ditto.
7656         (elmo-nntp-folder-diff): New alias.
7657
7658         * elmo-multi.el (elmo-multi-folder-diff): New function.
7659         (elmo-multi-split-mark-alist): Ditto.
7660         (elmo-multi-split-number-alist): Ditto.
7661         (elmo-multi-mark-alist-list): Abolished (Renamed to
7662         elmo-multi-split-mark-alist).
7663         (elmo-multi-list-folder-unread): Rewrite.
7664         (elmo-multi-list-folder-important): Ditto.
7665         (elmo-multi-list-folder): Set `spec' as 1st argument for
7666         `elmo-msgdb-expand-path'.
7667         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7668         instead of `elmo-multi-get-number-alist-list'.
7669
7670         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7671         If 1st argument is not string, treat as spec.
7672         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7673         `elmo-msgdb-expand-path'.
7674         (elmo-msgdb-flist-load): Ditto.
7675         (elmo-msgdb-flist-save): Ditto.
7676         (elmo-msgdb-delete-path): Ditto.
7677         (elmo-msgdb-rename-path): Ditto.
7678
7679         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7680         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7681         (elmo-maildir-delete-mark-msgs): Ditto.
7682         (elmo-maildir-msgdb-create): Ditto.
7683         (elmo-maildir-read-msg): Ditto.
7684         (elmo-maildir-delete-msgs): Ditto.
7685         (elmo-maildir-list-folder-subr): Ditto.
7686         (elmo-maildir-search): Ditto.
7687         (elmo-maildir-get-msg-filename): Ditto.
7688         (elmo-maildir-pack-number): Ditto.
7689         (elmo-maildir-folder-diff): New alias.
7690
7691         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7692
7693         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7694         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7695         (elmo-localdir-folder-diff): New alias.
7696
7697         * elmo-internal.el (elmo-internal-list-folder-subr):
7698         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7699         (elmo-internal-list-folder-by-location): Ditto.
7700         (elmo-internal-msgdb-create): Ditto.
7701         (elmo-internal-delete-msgs): Ditto.
7702         (elmo-internal-read-msg): Ditto.
7703         (elmo-internal-folder-diff): New alias.
7704
7705         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7706         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7707         `elmo-msgdb-expand-path'.
7708         (elmo-imap4-list-folder-unread): Changed arguments.
7709         (elmo-imap4-list-folder-important): Ditto.
7710
7711         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7712         (elmo-filter-list-folder-important): Ditto.
7713         (elmo-filter-folder-diff): New function.
7714
7715         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7716
7717         * elmo-cache.el (elmo-cache-list-folder):
7718         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7719         (elmo-cache-copy-msgs): Ditto.
7720         (elmo-cache-folder-diff): New alias.
7721
7722         * elmo-archive.el (elmo-archive-list-folder-subr):
7723         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7724         (elmo-archive-get-archive-name): Ditto.
7725         (elmo-archive-create-file): Ditto.
7726         (elmo-archive-append-msg): Ditto.
7727         (elmo-archive-copy-msgs): Ditto.
7728         (elmo-archive-copy-msgs-froms): Ditto.
7729         (elmo-archive-get-msg-filename): Ditto.
7730         (elmo-archive-folder-diff): New alias.
7731
7732 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7733
7734         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7735         (elmo-pop3-stream-type-alist): New variable.
7736         (elmo-nntp-stream-type-alist): New variable.
7737
7738         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7739         (elmo-kill-buffer): Ditto.
7740         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7741         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7742         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7743         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7744         (elmo-imap4-get-spec): Take into account
7745         `elmo-imap4-stream-type-alist'.
7746
7747 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7748
7749         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7750         (elmo-nntp-list-folders-get-cache): Ditto.
7751
7752 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7753
7754         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7755         character before 'uid'.
7756
7757 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7758
7759         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7760
7761         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7762
7763         * elmo-util.el (elmo-number-set-member): New function.
7764         (elmo-number-set-append-list): Ditto.
7765         (elmo-number-set-append): Ditto.
7766
7767         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7768         Use `elmo-number-set-member'.
7769         (elmo-living-messages): Ditto.
7770         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7771         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7772
7773         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7774         (elmo-imap4-add-to-cont-list): Abolished.
7775         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7776         instead of elmo-imap4-add-to-cont-list.
7777
7778         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7779         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7780
7781         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7782
7783 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7784
7785         * elmo-util.el (elmo-condition-parse-search-value):
7786         Fixed date parsing.
7787
7788 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7789
7790         * elmo-util.el (elmo-condition-find-key-internal): New function.
7791         (elmo-condition-find-key): Ditto.
7792
7793         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7794         (elmo-msgdb-search-internal): Ditto.
7795         (elmo-msgdb-search): Ditto.
7796
7797 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7798
7799         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7800         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7801
7802         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7803         (elmo-nntp-search-primitive): Fixed problem when condition is
7804         'unmatch'.
7805
7806         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7807
7808         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7809         (elmo-nntp-xhdr-p): New macro.
7810         (elmo-nntp-set-xhdr): Ditto.
7811         (elmo-nntp-parse-xhdr-response): New function.
7812         (elmo-nntp-retrieve-field): Ditto.
7813         (elmo-nntp-search-primitive): Ditto.
7814         (elmo-nntp-search): Implemented.
7815
7816         * elmo-date.el (elmo-date-make-sortable-string): New macro.
7817
7818         * elmo-archive.el (elmo-archive-search): Set all number list to
7819         `elmo-archive-field-condition-match'
7820
7821         * elmo-localdir.el (elmo-localdir-search): Likewise.
7822
7823         * elmo-maildir.el (elmo-maildir-search): Likewise.
7824
7825 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
7826
7827         * elmo-msgdb.el (elmo-living-messages): New function.
7828         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7829         * elmo-cache.el (elmo-cache-list-folder): Ditto.
7830         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7831         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7832         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7833         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7834         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7835         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7836         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7837         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7838         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7839
7840 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
7841
7842         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
7843
7844         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
7845
7846         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
7847
7848         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
7849         arguments for `SEARCH' command.
7850         (elmo-imap4-parse-string): Set `POS' argument for char-after.
7851         All other related portions are changed.
7852
7853         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
7854
7855         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
7856         (elmo-list-folder-unread): Rewrite.
7857         (elmo-list-folder-important): Ditto.
7858
7859         * elmo-util.el (elmo-filter-get-spec): Rewrite.
7860         (elmo-condition-parse-error): New inline function.
7861         (elmo-read-search-condition): New function.
7862         (elmo-read-search-condition-internal): Ditto.
7863         (elmo-parse-search-condition): Rewrite.
7864         (elmo-condition-parse): New function.
7865         (elmo-condition-parse-or-expr): Ditto.
7866         (elmo-condition-parse-and-expr): Ditto.
7867         (elmo-condition-parse-primitive): Ditto.
7868         (elmo-condition-parse-search-value): Ditto.
7869         (elmo-buffer-field-primitive-condition-match): Ditto.
7870         (elmo-buffer-field-condition-match): Rewrite.
7871         (elmo-file-field-condition-match): Ditto.
7872
7873         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
7874         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
7875
7876         * elmo-internal.el (elmo-internal-search): Set `number' and
7877         `number-list' argument of `elmo-file-field-condition-match'.
7878
7879         * elmo-maildir.el (elmo-maildir-search): Ditto.
7880
7881         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
7882         `msgdb' as argument instead of `mark-alist'.
7883         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
7884         `overview'.
7885
7886         * elmo-multi.el: Likewise.
7887
7888         * elmo-pipe.el: Likewise.
7889
7890         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
7891         (elmo-imap4-search-internal): Rewrite.
7892         (elmo-imap4-search): Ditto.
7893
7894         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
7895         (elmo-filter-list-folder-unread): Ditto.
7896         (elmo-filter-list-folder-important): Ditto.
7897         (elmo-filter-search): Rewrite.
7898
7899         * elmo-cache.el (elmo-cache-search-all): Set `number' and
7900         `number-list' argument of `elmo-file-field-condition-match'.
7901         (elmo-cache-search): Ditto.
7902
7903         * elmo-localdir.el: Likewise.
7904
7905         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
7906         number-list and pass it to `elmo-buffer-field-condition-match'.
7907         (elmo-archive-field-condition-match): Pass `number-list' to
7908         `elmo-archive-field-condition-match'
7909
7910 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
7911
7912         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
7913         `listgroup'.
7914
7915         * elmo2.el (elmo-folder-diff-async-callback): New variable.
7916         (elmo-folder-diff-async-callback-data): Ditto.
7917         (elmo-folder-diff-async): New function.
7918
7919         * elmo-net.el (elmo-network-session-name-prefix): New variable.
7920         (elmo-network-session-cache-key): Use it as a prefix of the session
7921         name.
7922         (elmo-network-open-session): Ditto.
7923
7924         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
7925         (elmo-imap4-status-callback-data): Ditto.
7926         (elmo-imap4-server-diff-async-callback): New variable.
7927         (elmo-imap4-server-diff-async-callback-data): Ditto.
7928         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
7929         `elmo-imap4-status-callback-data'.
7930         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
7931         `elmo-imap4-status-callback-data' as nil.
7932         (elmo-imap4-server-diff): Ditto.
7933         (elmo-imap4-server-diff-async-callback-1): New function.
7934         (elmo-imap4-server-diff-async): Ditto.
7935         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
7936
7937 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
7938
7939         * elmo-util.el (elmo-list-delete): Doc fix.
7940         (elmo-delete-lists): Abolish.
7941         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
7942         instead of `elmo-delete-lists'.
7943
7944 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
7945
7946         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
7947         before `sort'.
7948
7949 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
7950
7951         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
7952         `elmo-imap4-literal-subr'.
7953         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
7954         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
7955
7956 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
7957
7958         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7959         (elmo-archive-list-folder): Fix.
7960         (elmo-archive-max-of-folder): Fix.
7961
7962 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
7963
7964         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
7965          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
7966         (elmo-localdir-append-msg): Ditto.
7967         (elmo-localdir-list-folder): Fix for `nonsort'.
7968         (elmo-localdir-list-folder-subr): Fix for `killed'.
7969         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
7970         (elmo-maildir-list-folder-subr): Ditto.
7971         * elmo-archive.el (elmo-archive-list-folder): Ditto.
7972         (elmo-archive-list-folder-subr): Ditto.
7973         * elmo-internal.el (elmo-internal-list-folder): Ditto.
7974         (elmo-internal-list-folder-subr): Ditto.
7975
7976 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
7977
7978         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
7979
7980 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
7981
7982         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
7983
7984 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
7985
7986         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
7987         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7988
7989         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
7990         before greeting.
7991         (elmo-imap4-read-part): Use "body.peek" to fetch part.
7992         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7993
7994 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
7995
7996         * mmelmo-imap4-2.el (mime-entity-children): Defined.
7997
7998         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
7999         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8000         before STORE command.
8001
8002 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8003
8004         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8005
8006         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8007         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8008         of `response'.
8009         (elmo-imap4-list-folders): Removed unused local variable.
8010         (elmo-network-initialize-session): Ditto.
8011         (elmo-imap4-delete-msg-by-id): Ditto.
8012         (elmo-imap4-parse-fetch): Ditto.
8013         (elmo-imap4-copy-msgs): Ditto.
8014         Use `dst-spec' instead of `dst-folder'.
8015         (elmo-network-authenticate-session): Check authenticate type `plain'.
8016
8017 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8018
8019         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8020         garbage checking.
8021         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8022         `elmo-imap4-response-value'.
8023         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8024
8025 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8026
8027         * elmo-imap4.el (elmo-imap4-send-command):
8028         Cause elmo-imap4-bye-error when current response is BYE.
8029         (elmo-imap4-arrival-filter): Changed greeting response value.
8030
8031         * elmo2.el (elmo-imap4-bye-error): Define.
8032
8033         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8034         (elmo-imap4-server-diff): Ditto.
8035         (elmo-imap4-response-bye-p): New macro.
8036         (elmo-imap4-response-error-text): Get text from BYE response.
8037         (elmo-imap4-read-response): Return if BYE response.
8038         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8039         (elmo-imap4-folder-exists-p): Ditto.
8040         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8041         (elmo-imap4-parse-bye): New function.
8042         (elmo-imap4-parse-response): Remove needless let.
8043         Call `elmo-imap4-parse-bye'.
8044
8045 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8046
8047         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8048         the mailbox does not exist.
8049         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8050
8051 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8052
8053         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8054
8055 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8056
8057         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8058
8059         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8060         (elmo-network-initialize-session-buffer): Defined.
8061
8062         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8063         Abolished.
8064         (mmelmo-imap4-get-mime-entity): Rewrite.
8065
8066         * elmo2.el (elmo-error): Capitalize error message.
8067
8068         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8069         (elmo-network-session-buffer): New macro.
8070         (elmo-network-open-session): Use it.
8071
8072         * elmo-imap4.el: Rewrite.
8073
8074 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8075
8076         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8077
8078 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8079
8080         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8081         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8082         (elmo-imap4-create-msgdb-from-overview-string): Use
8083         `elmo-msgdb-create-overview-from-buffer'.
8084
8085 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8086
8087         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8088         (elmo-imap4-default-hierarchy-delimiter): New variable.
8089         (elmo-imap4-list-folders): Use it.
8090
8091 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8092
8093         * elmo-net.el (elmo-network-open-session): Add user and
8094         stream-type for process-buffer name.
8095
8096         * elmo-pop3.el (elmo-network-initialize-session): Call
8097         buffer-disable-undo.
8098
8099         * elmo-imap4.el (elmo-network-initialize-session):
8100         Set current-buffer as an argument for `buffer-disable-undo'.
8101
8102         * elmo-pop3.el (elmo-network-close-session): Don't use
8103         `process-live-p'.
8104
8105         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8106         Set default as 'user.
8107
8108         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8109
8110         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8111         and `elmo-imap4-flush-connection'.
8112
8113         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8114         (elmo-pop3-get-spec): Assume auth as symbol.
8115         (elmo-open-network-stream): Moved to `elmo-net'.
8116
8117         * elmo-pop3.el (toplevel): Require 'elmo-net.
8118         Define `sasl-cram-md5' to silence byte compilier.
8119         (elmo-pop3-connection-cache) Abolished.
8120         (elmo-pop3-authenticator-alist) New variable.
8121         (elmo-pop3-session): Define.
8122         (elmo-pop3-connection-get-process): Abolished.
8123         (elmo-pop3-connection-get-buffer): Ditto.
8124         (elmo-pop3-close-connection): Ditto.
8125         (elmo-pop3-flush-connection): Ditto.
8126         (elmo-pop3-get-connection): Ditto.
8127         (elmo-pop3-get-session): New function.
8128         (Replacement for `elmo-pop3-get-connection').
8129         All other related modules are changed.
8130         (elmo-network-close-session): Define.
8131         (elmo-pop3-send-command): Abolished argument `buffer'.
8132         All other related modules are changed.
8133         (elmo-pop3-read-response): Likewise.
8134         (elmo-pop3-open-connection): Abolished.
8135         (elmo-pop3-auth-user): New function.
8136         (elmo-pop3-auth-apop): Ditto.
8137         (elmo-pop3-auth-cram-md5): Ditto.
8138         (elmo-pop3-auth-scram-md5): Ditto.
8139         (elmo-pop3-auth-digest-md5): Ditto.
8140         (elmo-network-initialize-session): Define.
8141         (elmo-network-authenticate-session): Ditto.
8142         (elmo-network-setup-session): Ditto.
8143
8144         * elmo-imap4.el (toplevel): Require 'elmo-net.
8145         (elmo-imap4-session): Define.
8146         (elmo-imap4-connection-cache): Abolished.
8147         (elmo-imap4-password-key): Ditto.
8148         (elmo-imap4-flush-connection): Ditto.
8149         (elmo-imap4-get-connection): Ditto.
8150         All other related modules are changed.
8151         (elmo-imap4-get-session): New function
8152         (Replacement for `elmo-imap4-get-connection').
8153         (elmo-imap4-read-response): Abolished argument `buffer'.
8154         All other related modules are changed.
8155         (elmo-imap4-send-command): Likewise.
8156         (elmo-imap4-select-folder): Abolished.
8157         All other related modules are changed.
8158         (elmo-imap4-select-mailbox): New function.
8159         (Replacement for `elmo-imap4-select-folder').
8160         (elmo-imap4-auth-login): Simplify.
8161         (Assume current buffer as process buffer)
8162         (elmo-imap4-auth-cram-md5): Ditto.
8163         (elmo-imap4-auth-digest-md5): Ditto.
8164         (elmo-imap4-login): Ditto.
8165         (elmo-imap4-open-connection): Abolished.
8166         (elmo-imap4-open-connection-1): Abolished.
8167         (elmo-network-initialize-sessoin): Define.
8168         (elmo-network-authenticate-session): Ditto.
8169         (elmo-network-setup-session): Ditto.
8170
8171         * elmo-net.el: New module.
8172
8173 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8174
8175         * elmo-util.el (elmo-define-error): New function.
8176
8177         * elmo2.el (elmo-error): Define.
8178         (elmo-open-error): Define.
8179         (elmo-authenticate-error): Define.
8180
8181         * elmo-imap4.el (elmo-imap4-error): Abolish.
8182         (elmo-imap4-error-type): Abolish.
8183         (elmo-imap4-error-process): Abolish.
8184         (elmo-imap4-error-message): Abolish
8185         (elmo-imap4-list-folders): Don't quote lambda.
8186         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8187         (elmo-imap4-parse-namespace): Ditto.
8188         (elmo-imap4-open-connection): Rewrite.
8189         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8190         (elmo-imap4-get-connection): Abolish local variable `result'.
8191
8192 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8193
8194         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8195         wrong-type-argument error when auth is nil.
8196
8197 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8198
8199         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8200         (elmo-default-nntp-stream-type): Ditto.
8201         (elmo-default-pop3-stream-type): Ditto.
8202         (elmo-network-stream-type-alist): Ditto.
8203         (elmo-default-imap4-ssl): Abolished.
8204         (elmo-default-nntp-ssl): Ditto.
8205         (elmo-default-pop3-ssl): Ditto.
8206
8207         * elmo-util.el: (toplevel): Removed needless requires.
8208         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8209         (elmo-open-network-stream): Open network stream according to
8210         the value of `elmo-network-stream-type-alist'.
8211         (elmo-get-network-stream-type): New function.
8212         (elmo-network-stream-type-spec-string): New macro.
8213         (elmo-network-stream-type-symbol): Ditto.
8214         (elmo-network-stream-type-function): Ditto.
8215
8216         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8217         network-stream-type. All other related portions are changed.
8218         (elmo-pop3-open-connection): Ditto.
8219
8220         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8221         network-stream-type. All other related portions are changed.
8222
8223         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8224         network-stream-type.All other related portions are changed.
8225         (elmo-imap4-error): New macro.
8226         (elmo-imap4-error-type): Ditto.
8227         (elmo-imap4-error-process): Ditto.
8228         (elmo-imap4-error-message): Ditto.
8229         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8230         (elmo-imap4-auth-cram-md5): Ditto.
8231         (elmo-imap4-auth-digest-md5): Ditto.
8232         (elmo-imap4-login): Ditto.
8233         (elmo-imap4-open-connection): Remove password entry if authentication
8234         was in vain.
8235         (elmo-imap4-user-at-host): Abolished.
8236         (elmo-imap4-password-key): New buffer local variable.
8237         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8238         using protocol, port, auth and stream-type.
8239
8240         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8241
8242 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8243
8244         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8245
8246         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8247
8248         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8249         (elmo-imap4-authenticator-alist): New variable.
8250         (elmo-imap4-open-connection-1): Rename from
8251         elmo-imap4-open-connection.
8252         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8253         only wraps elmo-imap4-open-connection-1.
8254         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8255         user-at-host.
8256         (elmo-imap4-auth-login): New function.
8257         (elmo-imap4-auth-cram-md5): New function.
8258         (elmo-imap4-auth-digest-md5): New function.
8259         (elmo-imap4-login): New function.
8260
8261 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8262
8263         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8264         function `error'.
8265
8266 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8267
8268         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8269
8270 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8271
8272         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8273
8274 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8275
8276         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8277         for server responses, quote `*' regardless of where it appears.
8278
8279 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8280
8281         * elmo-maildir.el (elmo-maildir-commit): New alias.
8282
8283 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8284
8285         * elmo-util.el (elmo-display-progress):
8286                 Use `progress-feedback-with-label'.
8287
8288 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8289
8290         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8291         (elmo-imap4-non-atom-char-regex): Ditto.
8292         (elmo-imap4-non-text-char-regex): Ditto.
8293         (elmo-imap4-literal-threshold): Ditto.
8294         (elmo-imap4-atom-p): New function.
8295         (elmo-imap4-quotable-p): Ditto.
8296         (elmo-imap4-nil): Ditto.
8297         (elmo-imap4-atom): Ditto.
8298         (elmo-imap4-quoted): Ditto.
8299         (elmo-imap4-literal-subr): Ditto.
8300         (elmo-imap4-literal): Ditto.
8301         (elmo-imap4-buffer-literal): Ditto.
8302         (elmo-imap4-string-subr): Ditto.
8303         (elmo-imap4-string): Ditto.
8304         (elmo-imap4-buffer-string): Ditto.
8305         (elmo-imap4-astring-subr): Ditto.
8306         (elmo-imap4-astring): Ditto.
8307         (elmo-imap4-buffer-astring): Ditto.
8308         (elmo-imap4-nstring): Ditto.
8309         (elmo-imap4-buffer-nstring): Ditto.
8310         (elmo-imap4-mailbox): New alias.
8311         (elmo-imap4-field-body): Ditto.
8312         (elmo-imap4-userid): Ditto.
8313         (elmo-imap4-password): Ditto.
8314         (elmo-imap4-format-quoted): New function.
8315         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8316         arguments and handle "atom", "quoted" and "literal" string here.
8317         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8318         `elmo-imap4-send-command'.
8319         (elmo-imap4-folder-exists-p): Likewise.
8320         (elmo-imap4-create-folder): Likewise.
8321         (elmo-imap4-delete-folder): Likewise.
8322         (elmo-imap4-rename-folder): Likewise.
8323         (elmo-imap4-max-of-folder): Likewise.
8324         (elmo-imap4-check-validity): Likewise.
8325         (elmo-imap4-sync-validity): Likewise.
8326         (elmo-imap4-server-diff): Likewise.
8327         (elmo-imap4-select-folder): Likewise.
8328         (elmo-imap4-copy-msgs): Likewise.
8329         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8330         (elmo-imap4-mark-set-on-msgs): Likewise.
8331         (elmo-imap4-read-part): Likewise.
8332         (elmo-imap4-read-msg): Likewise.
8333         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8334         `elmo-imap4-password' for `elmo-imap4-send-command'.
8335         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8336         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8337         `elmo-imap4-buffer-literal'.
8338         (elmo-imap4-append-msg): Likewise.
8339
8340         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8341         `delete' for removing dead connection from the connection cache.
8342         Move deletion of the process buffer after that.
8343         (elmo-imap4-list): Change `defsubst' to `defun'.
8344         (elmo-imap4-commit): Make error message verbose.
8345         (elmo-imap4-search): Ditto.
8346         (elmo-imap4-list): Ditto.
8347         (elmo-imap4-select-folder): Ditto.
8348         (elmo-imap4-copy-msgs): Ditto.
8349         (elmo-imap4-delete-msg-by-id): Ditto.
8350         (elmo-imap4-append-msg-by-id): Ditto.
8351         (elmo-imap4-append-msg): Ditto.
8352
8353 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8354
8355         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8356         when dired is used on XEmacs.
8357
8358 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8359
8360         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8361         instead of `append'.
8362         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8363         `elmo-plugged-p' directly.
8364         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8365         of `elmo-plugged-p' directly.
8366
8367         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8368         Eliminate unused variable.  Use `memq' for checking a process status.
8369         Use `cons' instead of `append' for updating the connection cache.
8370         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8371         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8372
8373 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8374
8375         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8376         `elmo-imap4-read-point' exactly.
8377
8378         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8379         the local variable `folder' to `mailbox'.
8380         Rename the argument `fld' to `folder'.
8381
8382 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8383
8384         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8385         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8386
8387 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8388
8389         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8390         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8391         (elmo-pop3-uidl-number-hash): Ditto.
8392         (elmo-pop3-size-hash): Ditto.
8393         (elmo-pop3-uidl-done): Ditto.
8394         (elmo-pop3-list-done): Ditto.
8395         (elmo-pop3-connection-get-process): New defmacro.
8396         (elmo-pop3-connection-get-buffer): Ditto.
8397         (elmo-pop3-close-connection): Delete buffer and process.
8398         (elmo-pop3-flush-connection): Don't delete buffer and process.
8399         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8400         Setup UIDL and size hash.
8401         (elmo-pop3-send-command-no-erase): Deleted
8402         (elmo-pop3-send-command): Added optional argument `no-erase'.
8403         (elmo-pop3-parse-uidl-response): New function.
8404         (elmo-pop3-parse-list-response): Set size hash.
8405         (elmo-pop3-list-location): New function.
8406         (elmo-pop3-list-by-uidl-subr): Ditto.
8407         (elmo-pop3-list-by-list): Ditto.
8408         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8409         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8410         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8411         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8412         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8413         Use uidl.
8414         (elmo-pop3-uidl-to-number): New function.
8415         (elmo-pop3-number-to-uidl): Ditto.
8416         (elmo-pop3-number-to-size): Ditto.
8417         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8418         Set number by use of uidl.
8419         (elmo-pop3-msgdb-create-message): Likewise.
8420         Set size, loc-alist in msgdb.
8421         (elmo-pop3-read-msg): Set number by use of uidl.
8422         Added optional argument `msgdb'.
8423         (elmo-pop3-delete-msg): Ditto.
8424         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8425         (elmo-pop3-commit): Close connection.
8426
8427         * elmo-pipe.el (elmo-pipe-max-of-folder):
8428         Bind `elmo-pop3-use-uidl' as nil.
8429         (elmo-pipe-drain): Ditto.
8430         Call `elmo-commit'.
8431
8432         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8433         (elmo-msgdb-overview-entity-set-size): New defsubst.
8434
8435 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8436
8437         * elmo-vars.el (elmo-use-killed-list): New variable
8438         (Renamed from `elmo-nntp-use-killed-list').
8439         (elmo-nntp-use-killed-list): Eliminated.
8440
8441         * elmo-msgdb.el (elmo-msgdb-expand-path):
8442         Changed expanding msgdb path for elmo-multi.
8443
8444         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8445         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8446         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8447         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8448         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8449         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8450         (toplevel): Deleted time-stamp line.
8451
8452         * elmo2.el (elmo-clear-killed ): Defined as function
8453         (Abolished defining as a backend function).
8454         All other related modules are changed.
8455
8456 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8457
8458         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8459
8460 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8461
8462         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8463
8464 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8465
8466         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8467
8468 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8469
8470         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8471         asynchronous folder check.
8472
8473         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8474
8475         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8476         `elmo-nntp-use-killed-list'.
8477         (elmo-nntp-list-folder): Use killed list.
8478         (elmo-nntp-max-of-folder): Ditto.
8479         (elmo-nntp-msgdb-create): Set killed list.
8480
8481         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8482
8483         * elmo2.el (elmo-clear-killed): New backend function.
8484         All other related modules are changed.
8485
8486 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8487
8488         * elmo-util.el (elmo-imap4-spec-folder): Use
8489         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8490         All callers changed.
8491
8492 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8493
8494         * mmelmo-2.el (initialize-instance):
8495         Use `mime-buffer-entity-buffer-internal' instead of
8496         `mime-entity-buffer'.
8497
8498         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8499         (mime-entity-body): Implemented.
8500         (mime-goto-header-start-point): Deleted.
8501         (mime-goto-body-end-point): Ditto.
8502         (mime-entity-point-min): Ditto.
8503         (mime-entity-point-max): Ditto.
8504         (mime-entity-children): Ditto.
8505         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8506         instead of `mime-entity-buffer'.
8507         (mime-entity-header-buffer): Ditto.
8508         (mime-entity-body-buffer): Ditto.
8509         (mime-write-entity-content): Ditto.
8510
8511         * pldap.el (ldap-static-if): New macro.
8512         (toplevel): Use it instead of `static-if'.
8513
8514 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8515
8516         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8517         included in `attrs' argument.
8518
8519 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8520
8521         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8522
8523         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8524         (ldap-ldif-safe-init-char-regexp): Ditto.
8525         (ldap-ldif-safe-string-regexp): Ditto.
8526         (ldap/ldif-safe-string-p): New macro.
8527         (ldap/ldif-insert-field): Ditto.
8528         (ldap-modify): Use it.
8529         (ldap-add): Ditto.
8530         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8531         (ldap-decode-attribute): Decode only when `attr' is consp.
8532         (ldap-delete): Bind `ret'.
8533         (toplevel): Require 'cl at compile time.
8534         Removed (require 'poe) and (require 'std11).
8535         (pldap-version): Eliminated.
8536         (ldap-search-basic): Removed auth and dn binding.
8537         (ldap-ldif-field-name-regexp): New constant.
8538         (ldap-ldif-field-head-regexp): Ditto.
8539         (ldap-ldif-next-field-head-regexp): Ditto.
8540         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8541         (ldap/field-end): New function.
8542         (ldap/field-body): Use it.
8543         (ldap/collect-field): Ditto.
8544         (ldap-search-basic): Use `ldap/field-body'.
8545
8546 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8547
8548         * pldap.el (ldap-default-attribute-encoder): New user option.
8549         (ldap/field-body): Decode base64 string.
8550         (ldap/collect-field): Ditto.
8551         (ldap-encode-attribute): New function.
8552         (ldap-add-entries): Use it.
8553         (ldap-modify-entries): Ditto.
8554         (ldap-search-entries): Enclosed decoding function with
8555         `with-temp-buffer' and set as unibyte.
8556         (ldap-search-basic): Set process buffer as unibyte.
8557
8558         * elmo-util.el (elmo-folder-identical-system-p):
8559         Eliminated name space checking.
8560
8561         * pldap.el: New module.
8562         toplevel: Changed condition to detect built-in ldap feature.
8563         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8564         (ldap-add): Added error handling.
8565         (ldap-modify): Ditto.
8566         (ldap-delete): Ditto.
8567
8568 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8569
8570         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8571         Initialize local variables with `let'.  Inline a temporary
8572         variable for the progress percentage.  Sort `setq' to reduce
8573         function call in the while-loop.
8574
8575         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8576         into the conditional branch.
8577
8578 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8579
8580         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8581         Move a conditional out of the while-loop.
8582
8583 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8584
8585         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8586         elmo-msgdb-overview-get-entity-by-number.
8587         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8588         throw.
8589
8590 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8591
8592         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8593         the local variable for a packed number self descriptively.
8594
8595 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8596
8597         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8598         * elmo-localdir.el (elmo-localdir-pack-number): Use
8599         `elmo-msgdb-overview-get-entity' instead of
8600         `elmo-msgdb-overview-get-entity-by-number'.
8601         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8602         (elmo-msgdb-search-overview-entity): Removed.
8603         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8604         by message-id or number.
8605         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8606         instead of `elmo-msgdb-overview-get-entity-by-number'.
8607
8608 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8609
8610         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8611         non-nil, use hash table for overview.
8612         (elmo-hash-maximum-size): New variable.
8613         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8614         (elmo-msgdb-make-overview-hashtb): New function.
8615         (elmo-msgdb-clear-overview-hashtb): New function.
8616         (elmo-clear-hash-val): New macro.
8617         All other related modules are changed.
8618
8619 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8620
8621         * elmo2.el (elmo-move-msgs): If there's other message with
8622         same message-id, don't use cache.
8623
8624 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8625
8626         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8627         number is already packed.
8628
8629 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8630
8631         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8632
8633 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8634
8635         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8636         All other related modules are changed.
8637
8638 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8639
8640         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8641         of refiling failure on Maildir.
8642
8643 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8644
8645         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8646         decoded mime-charset with cache.
8647         (elmo-msgdb-overview-entity-get-from): Ditto.
8648         (elmo-msgdb-overview-entity-get-subject): Ditto.
8649         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8650
8651 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8652
8653         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8654         (elmo-remove-passwd): Fill password with 0 before erase.
8655         * elmo-vars.el (elmo-passwd-life-time): New variable.
8656
8657 \f
8658 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8659
8660         * elmo-cache.el (elmo-buffer-cache-add):
8661         Set message cache buffer as unibyte.
8662
8663 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8664
8665         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8666         become nil.
8667
8668 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8669
8670         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8671         when display is finished.
8672         (elmo-nntp-msgdb-create): Ditto.
8673         (elmo-nntp-groups-read-response): Ditto.
8674         (elmo-nntp-retrieve-headers): Ditto.
8675         (elmo-nntp-msgdb-create-message): Ditto.
8676         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8677         (elmo-pop3-msgdb-create-message): Ditto.
8678
8679 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8680
8681         * elmo-maildir.el (elmo-maildir-msgdb-create):
8682         Use `elmo-msgdb-sort-by-date'.
8683
8684 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8685
8686         * elmo2.el (elmo-read-msg-no-cache):
8687         Eliminated arguments after `outbuf'.
8688         Don't use cache even if it exists.
8689         (elmo-read-msg): Don't pass arguments after `outbuf' to
8690         `elmo-read-msg-no-cache'.
8691
8692 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8693
8694         * elmo-archive.el (elmo-archive-list-folders):
8695         Use `file-name-directory' if base folder does not exist.
8696
8697 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8698
8699         * elmo-archive.el (elmo-archive-list-folders): Don't use
8700         `file-name-directory'.
8701
8702 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8703
8704         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8705         If `force' is non-nil, try flushing all operation queues.
8706
8707 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8708
8709         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8710         as-binary-process.
8711
8712 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8713
8714         * elmo-util.el (elmo-display-progress): Fixed.
8715
8716 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8717
8718         * elmo-util.el (elmo-display-progress): New function.
8719         All other related modules are changed.