60112643cd7452565098c90e114186bbe65147bf
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo.el (cache-changed): Abolish.
4         (status-changed): New signal.
5         (elmo-message-killed-p): New generic function and define for
6         elmo-folder.
7         (elmo-folder-recover-messages): Ditto.
8         (elmo-message-set-cached): Emit signal `status-changed' instead of
9         `cache-changed'.
10         (elmo-message-status): New macro.
11         (elmo-message-status-folder): Ditto.
12         (elmo-message-status-number): Ditto.
13         (elmo-message-status-set-flags): Ditto.
14         (elmo-message-status-set-killed): Ditto.
15         (elmo-message-status-flags): New function.
16         (elmo-message-status-cached-p): Ditto.
17         (elmo-message-status-killed-p): Ditto.
18
19         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
20         `status-changed' instead of `cache-changed'.
21         (elmo-folder-recover-messages): Define.
22         (elmo-message-killed-p): Ditto.
23
24         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
25         `status-changed' instead of `cache-changed'.
26
27         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
28         (elmo-message-killed-p): Define.
29         (elmo-folder-recover-messages): Ditto.
30
31         * elmo-version.el (elmo-version): Up to 2.15.3.
32
33 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
34
35         * elmo-signal.el (elmo-signal-bindings): Use cons to append
36         element into list.
37         (elmo-define-signal-handler): Add docstring.
38         (elmo-define-signal-filter): Ditto.
39
40         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
41
42 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
43
44         * elmo-util.el (elmo-flatten): Don't use recursive call.
45
46         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
47         assignment.
48         (elmo-folder-message-make-temp-files): Use `number-to-string'
49         instead of `int-to-string'.
50
51 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
52
53         * elmo-search.el (elmo-folder-delete-messages): Define.
54
55 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
56
57         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
58         customization type.
59         (elmo-mailing-list-count-spec-list): Ditto.
60
61         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
62         for `list-id'.
63
64 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
65
66         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
67         handling.
68
69 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
70
71         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
72         (elmo-mailing-list-count-spec-list): Ditto.
73
74         * elmo-util.el (elmo-map-until-success): New function.
75         (elmo-string-match-substring): Ditto.
76         (elmo-find-list-match-value): Ditto.
77
78         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
79         Removed.
80         (modb-entity-extract-ml-info-from-subject): Ditto.
81         (modb-entity-extract-ml-info-from-return-path): Ditto.
82         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
83         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
84         (modb-entity-extract-ml-info-from-mailman): Ditto.
85         (modb-entity-extract-mailing-list-info-functions): Ditto.
86         (modb-entity-extract-mailing-list-info): Rewrite with
87         `elmo-find-list-match-value'.
88
89 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
90
91         * elmo-net.el (elmo-network-session-retry-count): New user option.
92         (elmo-network-session-buffer-name): New internal function.
93         (elmo-network-session-buffer-create): Ditto.
94         (elmo-network-open-session): Retry open network session
95         `elmo-network-session-retry-count' times.
96
97 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
98
99         * elmo-util.el (elmo-list-filter): Rewritten.
100
101 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
102
103         * elmo-util.el (elmo-string-member): Allow symbol element in list.
104
105 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
106
107         * elmo-search.el (elmo-make-search-engine): Use prefix
108         `elmo-search-' for require symbol instead of `else-'.
109         (elmo-search-engine-extprog): New class.
110         (elmo-search-engine-do-search): Remove nil from argument
111         list. Added argument pattern to evaluate element as function.
112         (elmo-search-engine-local-file): Derived from
113         `elmo-search-engine-extprog'.
114         (elmo-search-engine-create-message-entity): Check existance of file.
115         (elmo-search-engine-fetch-message): Ditto.
116         (elmo-search-namazu-index): Follow the API change.
117         (elmo-search-grep-target): Ditto.
118
119 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
120
121         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
122         characters of working buffer.
123
124         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
125         Does not bind `default-mime-charset'.
126         (elmo-msgdb-create-message-entity-from-buffer): Removed
127         unnecessary local bind.
128
129         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
130         function.
131         (modb-entity-extract-mailing-list-info-functions): Added it.
132
133 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
134
135         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
136         when number and message-id are non-nil.
137
138         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
139
140         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
141         conditional steatment.
142         (elmo-pop3-auth-apop): Likewise.
143         (elmo-network-authenticate-session): Likewise.
144
145 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
146
147         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
148         symbol `fill-column'.
149         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
150         decode field value.
151
152         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
153         (elmo-decoded-field-body): Ditto.
154
155 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
156
157         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
158         `tokens' to `params'.
159
160 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
161
162         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
163         working buffer.
164
165 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
166
167         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
168         decide index.
169
170 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
171
172         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
173         Set default value as nil.
174         (toplevel): Register search engines by
175         `elmo-search-register-engine' if there are not defined.
176
177         * elmo.el (autoload): Added autoload setting for
178         `elmo-search-register-engine'.
179
180 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
181
182         * elmo.el (toplevel): `[' is redefined as the prefix of the search
183         folder instead of nmz folder.
184         (elmo-nmz-default-index-path): Added obsolete variable setting.
185         (elmo-nmz-index-alias-alist): Ditto.
186         (elmo-nmz-use-drive-letter): Ditto.
187
188         * elmo-search.el (elmo-search-register-engine): New function.
189
190         * elmo-nmz.el: Removed.
191
192         * elmo-version.el (elmo-version): Up to 2.15.2.
193
194 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
195
196         * elmo-search.el: New file.
197
198 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
199
200         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
201         condition `larger' and `smaller'.
202
203 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
204
205         * elmo-util.el (elmo-safe-filename): Rewrite to replace
206         `"' (double quote) into "_Q_".
207
208 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
209
210         * elmo-net.el (elmo-net-quote-chars): Abolish.
211         (elmo-net-format-quoted): Ditto.
212
213 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
214
215         * elmo.el (elmo-get-folder-function): New variable.
216         (elmo-get-folder): New function.
217         (elmo-folder-rename): Call `elmo-make-folder' with specified
218         mime-charset.
219
220         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
221         `elmo-make-folder'.
222         (elmo-split-subr): Ditto.
223
224         * elmo-multi.el (elmo-folder-initialize): Ditto.
225
226         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
227
228         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
229         (elmo-flag-get-folder): Ditto.
230
231         * elmo-filter.el (elmo-folder-initialize): Ditto.
232
233         * elmo-access.el (elmo-folder-initialize): Ditto.
234         (elmo-access-folder-update-children): Ditto.
235
236         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
237         (elmo-dop-queue-flush): Ditto.
238         (elmo-folder-append-buffer-dop-delayed): Ditto.
239         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
240         mime-charset.
241
242         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
243         instead of `elmo-make-folder'.
244         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
245         destination folder instead of send `elmo-folder-rename-internal'.
246
247         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
248         slot of subfolder instead of create it.
249
250 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
251
252         * elmo-util.el (elmo-collect-separators): New function.
253         (elmo-collect-separators-internal): Ditto.
254         (elmo-collect-trail-separators): Ditto.
255         (elmo-parse-separated-tokens): Ditto.
256         (elmo-parse-separated-tokens-internal): Ditto.
257         (elmo-quote-syntactical-element): Ditto.
258
259         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
260         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
261
262         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
263         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
264         (elmo-nntp-folder-list-subfolders): Quote a user name.
265
266         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
267         (elmo-net-parse-network): Abolish.
268         (elmo-net-folder-set-parameters): New function.
269         (elmo-folder-initialize): Follow the above change.
270
271         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
272         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
273         (elmo-folder-list-subfolders): Use
274         `elmo-quote-syntactical-element' instead of
275         `elmo-net-format-quoted' to quote mailbox and user name.
276
277 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
278
279         * elmo-util.el (elmo-token-valid-p): New function.
280         (elmo-parse-token): Add optional argument `requirement'.
281         (elmo-parse-prefixed-element): Likewise.
282
283         * elmo-net.el (elmo-net-quote-chars): Renamed from
284         `elmo-net-quote-chars-regexp'.
285         (elmo-net-format-quoted): Add optional argument `extra-chars'.
286
287         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
288         by info document. Check token `uidl' is started an alphabet.
289
290         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
291         by info document. Check token `user' is started an alphabet.
292
293         * elmo-imap4.el (elmo-folder-initialize): Ditto.
294         (elmo-folder-list-subfolders): Quote user.
295
296 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
297
298         * elmo-util.el (elmo-quoted-specials-list): New constant.
299         (elmo-quoted-token): New function.
300
301         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
302         (elmo-net-format-quoted): New function.
303         (elmo-net-parse-network): Ditto.
304         (elmo-folder-initialize): Use it.
305
306         * elmo-nntp.el (elmo-folder-initialize): Use
307         `elmo-net-parse-network' to parse network specification instead of
308         `elmo-folder-initialize#elmo-net'.
309
310         * elmo-pop3.el (elmo-folder-initialize): Ditto.
311
312         * elmo-imap4.el (elmo-folder-initialize): Ditto.
313         (elmo-folder-list-subfolders): Quote folder name by
314         `elmo-net-format-quoted'.
315
316 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
317
318         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
319         (elmo-folder-search): Use it.
320
321 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
322
323         * modb-standard.el (modb-standard-loaded-message-id): Use
324         `elmo-msgdb-message-entity-field'.
325
326 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
327
328         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
329         without filename.
330
331 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
332
333         * elmo-util.el (elmo-set-auto-coding): New function.
334         (elmo-object-load): Use it.
335
336 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
337
338         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
339         (elmo-time<): Define as alias of `elmo-time-less-p'.
340         (elmo-time-to-datevec): New function.
341
342         * elmo-date.el (elmo-time-to-days): New function.
343
344 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
345
346         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
347         is not cons cell.
348
349 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
350
351         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
352         parenthesis.
353
354         * elmo-util.el (elmo-map-recursive): New function.
355
356         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
357         (modb-entity-encode-string-recursive): Ditto.
358
359 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
360
361         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
362         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
363         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
364         compare sequence number when last modified time is nil.
365
366 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
367
368         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
369
370         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
371
372 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
373
374         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
375         modification time of the file.
376
377 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
378
379         * elmo-util.el (elmo-condition-optimize): Discriminated against
380         preserved fields, extra fields and the other weight.
381
382 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
383
384         * modb-entity.el (initialize-instance): Define.
385         (modb-entity-handler-mime-charset): New internal function.
386         (modb-standard-entity-set-field): Use it.
387         (elmo-msgdb-message-entity-field): Ditto.
388         (elmo-msgdb-message-entity-field): Ditto.
389
390         * modb.el (elmo-msgdb-match-condition): Rewrite with
391         `elmo-condition-match'.
392         (elmo-msgdb-match-condition-primitive): New function.
393
394         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
395         arguments `flags' and `numbers'.
396         (elmo-msgdb-match-condition-primitive): Abolished (merged to
397         `elmo-msgdb-message-match-condition').
398         (modb-buffer-entity-handler): New class.
399
400         * elmo.el (elmo-folder-search): Optimize condition to use
401         `elmo-condition-optimize'.
402         (elmo-message-buffer-match-condition): New function.
403         (elmo-message-match-condition): Use
404         `elmo-message-buffer-match-condition' instead of
405         `elmo-buffer-field-condition-match'.
406
407         * elmo-util.el (elmo-condition-match): New function.
408         (elmo-condition-optimize): Ditto.
409         (elmo-buffer-field-primitive-condition-match): Abolish.
410         (elmo-buffer-field-condition-match): Ditto.
411
412         * elmo-archive.el (elmo-archive-field-condition-match): Use
413         `elmo-message-buffer-match-condition' instead of
414         `elmo-buffer-field-condition-match'.
415
416 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
417
418         * elmo-flag.el (elmo-global-flags-initialize): Check the
419         existence of the flag directory.
420
421 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
422
423         * elmo-access.el (elmo-folder-initialize): Call
424         `elmo-multi-connect-signals'.
425
426         * elmo-pipe.el (elmo-folder-close): Define.
427
428         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
429         children folders.
430
431         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
432         with target folder.
433
434         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
435         `number'.
436
437         * elmo-multi.el (elmo-message-entity): Don't use return value of
438         `elmo-message-entity-set-number'.
439
440 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
441
442         * modb.el (modb-generic): Added slot `mime-charset'.
443
444         * modb-standard.el (modb-standard): Added slot `overview-handler'.
445         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
446         and `modb-entity-handler-dump-parameters'.
447         (modb-standard-default-entity-handler): Abolish.
448         (elmo-msgdb-message-entity-handler): Save created handler by
449         instance slot.
450
451         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
452         (modb-entity-handler-list-parameters): New method.
453         (modb-entity-handler-equal-p): New function.
454         (modb-entity-handler-dump-parameters): Ditto.
455         (modb-entity-parse-address-string): Encode return value.
456         (modb-entity-make-address-string): Decode argument value.
457         (modb-entity-decode-string-recursive): New function.
458         (modb-entity-encode-string-recursive): Ditto.
459         (modb-standard-entity-normalizer): Set to encode field value.
460         (modb-standard-entity-specializer): Follow the above change.
461         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
462         mime-charset of handler.
463         (elmo-msgdb-message-entity-field): Ditto.
464         (elmo-msgdb-copy-message-entity): Fixed reference to internal
465         structure.
466         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
467
468         * elmo.el (elmo-folder): Added slot `mime-charset'.
469         (elmo-make-folder): Added argument `mime-charset'.
470         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
471         `mime-charest'.
472
473         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
474         (elmo-make-msgdb): Likewise.
475
476         * elmo-internal.el (elmo-internal-folder-initialize): Call
477         `luna-make-entity' with :mime-charset parameter.
478
479 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
480
481         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
482         encoded words in `from' and `subject' field.
483
484 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
485
486         * modb.el (elmo-msgdb-message-field): Add argument `type'.
487         (elmo-msgdb-match-condition): Get handler from entity instead of
488         msgdb.
489
490         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
491         (modb-standard-load-entity): Treat new file format.
492         (modb-standard-save-entity-1): Save as new file format.
493         (modb-standard-save-entity): Split messages into section here.
494         (elmo-msgdb-message-field): Follow the API change.
495         (modb-standard-default-entity-handler): New internal variable.
496         (elmo-msgdb-message-entity-handler): Define.
497
498         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
499         to `elmo-vars.el'.
500         (modb-entity-field-extractor-alist): New user option.
501         (elmo-msgdb-message-entity-field): Removed argument `decode' and
502         added argument `type'.
503         (elmo-msgdb-copy-message-entity): Add optional argument
504         `make-handler'.
505         (modb-set-field-converter): New function.
506         (modb-convert-field-value): Ditto.
507         (modb-entity-string-decoder): Ditto.
508         (modb-entity-string-encoder): Ditto.
509         (modb-entity-parse-date-string): Ditto.
510         (modb-entity-make-date-string): Ditto.
511         (modb-entity-mime-decoder): Ditto.
512         (modb-entity-mime-encoder): Ditto.
513         (modb-entity-address-list-decoder): Ditto.
514         (modb-entity-address-list-encoder): Ditto.
515         (modb-entity-parse-address-string): Ditto.
516         (modb-entity-make-address-string): Ditto.
517         (modb-entity-create-field-indices): Ditto.
518         (modb-legacy-entity-field-slots): New constant.
519         (modb-legacy-entity-field-indices): Ditto.
520         (modb-legacy-entity-normalizer): New variable.
521         (modb-legacy-entity-specializer): Ditto.
522         (modb-legacy-entity-field-index): New macro.
523         (modb-legacy-entity-set-field): New function.
524         (modb-legacy-make-message-entity): Rewrite.
525         (elmo-msgdb-create-message-entity-from-buffer): Use
526         `elmo-msgdb-get-references-from-buffer'. Use
527         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
528         Use `modb-legacy-entity-set-field' instead of
529         `elmo-msgdb-message-entity-set-field'.
530         (elmo-msgdb-message-entity-field): Rewrite.
531         (elmo-msgdb-message-entity-set-field): Ditto.
532         (elmo-msgdb-copy-message-entity): Make new entity by
533         `make-handler' if it specified.
534         (elmo-msgdb-message-match-condition): Define a method of
535         `modb-entity-handler' and follow the API change.
536         (modb-standard-entity-handler): New class.
537         (modb-entity-extract-ml-info-from-x-sequence): New function.
538         (modb-entity-extract-ml-info-from-subject): Ditto.
539         (modb-entity-extract-ml-info-from-return-path): Ditto.
540         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
541         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
542         (modb-entity-extract-mailing-list-info): Ditto.
543         (modb-entity-extract-mailing-list-info-functions): New variable.
544
545         * elmo.el (elmo-message-field): Add optional argument `type'.
546
547         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
548         from `modb-entity.el'.
549
550         * elmo-util.el (elmo-object-load): Decode by coding-system from
551         `set-auto-coding-function'.
552         (elmo-object-save): Use `detect-mime-charset-region' and add
553         coding cookie if encode.
554         (elmo-msgdb-get-references-from-buffer): New function.
555         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
556
557         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
558
559         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
560         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
561         instead of `shimbun-make-header' and follow the API change.
562         (elmo-shimbun-update-overview): Follow the API change.
563         (elmo-map-folder-list-message-locations): Ditto.
564
565         * elmo-pipe.el (elmo-message-field): Ditto.
566
567         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
568         Ditto.
569
570         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
571
572         * elmo-multi.el (elmo-message-field): Ditto.
573
574         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
575         (elmo-msgdb-sort-by-date): Ditto.
576         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
577         `elmo-message-entity-field'.
578         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
579         change.
580         (elmo-msgdb-overview-entity-get-from): Ditto.
581         (elmo-msgdb-overview-entity-get-subject): Ditto.
582         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
583         (elmo-msgdb-overview-entity-get-date): Ditto.
584         (elmo-msgdb-overview-entity-get-to): Ditto.
585         (elmo-msgdb-overview-entity-get-cc): Ditto.
586
587         * elmo-mime.el (elmo-message-mime-entity): Ditto.
588         (elmo-mime-collect-message/partial-pieces): Ditto.
589
590         * elmo-filter.el (elmo-message-field): Ditto.
591
592         * elmo-date.el (elmo-datevec-to-time): New function.
593         (elmo-time-parse-date-string): Ditto.
594         (elmo-time-make-date-string): Ditto.
595         (elmo-time<): Ditto.
596
597         * elmo-version.el (elmo-version): Up to 2.15.1.
598
599 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
600
601         * elmo-flag.el (elmo-global-flags-initialize): Don't include
602         member of elmo-local-flags.
603
604 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
605
606         * elmo-version.el (elmo-version): Up to 2.15.0.
607
608 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
609
610         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
611         `ignore-msgdb' is non-nil.
612
613 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
614
615         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
616         (elmo-condition-in-msgdb-p): Ditto.
617         (elmo-file-field-primitive-condition-match): Ditto.
618         (elmo-file-field-condition-match): Ditto.
619
620         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
621
622 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
623
624         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
625         subdirectories here.
626         (elmo-global-flags-initialize): New function.
627
628         * elmo.el (toplevel): Added autoload setting for
629         `elmo-global-flags-initialize'.
630
631 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
632
633         * elmo.el (message-number-changed): Define new signal.
634         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
635         message-number-changed signal.
636         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
637         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
638         Respect `elmo-pack-number-check-strict'.
639
640 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
641
642         * elmo-signal.el (elmo-connect-signal): Document.
643         (elmo-emit-signal): Ditto.
644         (elmo-emit-signal): It should pass source argument to filter and
645         handler, not slot-source.
646
647 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
648
649         * modb.el (elmo-msgdb-update-entity): New API and define generic
650         implement.
651
652         * modb-standard.el (elmo-msgdb-update-entity): Define.
653
654         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
655         API and define generic implement.
656
657         * elmo.el (update-overview): New singnal.
658
659         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
660         `elmo-msgdb-update-entity' and emit signal `update-overview'.
661         (elmo-message-entity-parent): Define.
662
663         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
664         `update-overview'.
665
666         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
667
668         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
669
670 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
671
672         * elmo.el (elmo-folder-synchronize): Sort the return value of
673         `elmo-list-diff'.
674
675         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
676         list.
677
678 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
679
680         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
681         `default-enable-multibyte-characters'.
682         (elmo-object-load): Use `with-temp-buffer' instead of
683         `elmo-set-work-buf'.
684         (elmo-object-save): Ditto.
685         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
686         `elmo-set-work-buf'.
687         (elmo-decoded-field-body): Ditto.
688
689         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
690
691         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
692         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
693
694         * elmo-version.el (elmo-version): Up to 2.13.3.
695
696 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
697
698         * elmo-util.el (elmo-list-diff): Fix the last change.
699         Reverse order of result lists.
700
701 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
702
703         * modb-standard.el (elmo-msgdb-set-flag): Use
704         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
705         (elmo-msgdb-unset-flag): Ditto.
706
707         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
708         `elmo-list-diff'.
709
710         * elmo-util.el (elmo-list-diff): Rewrite.
711         (elmo-list-diff-nonsortable): New function.
712
713 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
714
715         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
716         `elmo-multibypte-buffer-name'.  All referers are updated.
717
718 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
719
720         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
721         (elmo-mime-entity-fragment-p): New function.
722         (mime-elmo-buffer-entity): Added slot `reassembled'.
723         (elmo-message-mime-entity): Added 4th argument `reassemble'.
724         (elmo-message-mime-entity-internal): New function (renamed from
725         `elmo-message-mime-entity').
726         (elmo-mime-inherit-field-list-from-enclosed): New constant.
727         (elmo-mime-make-reassembled-mime-entity): New function.
728         (elmo-message-reassembled-mime-entity): Ditto.
729         (elmo-mime-collect-message/partial-pieces): Ditto.
730
731 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
732
733         * elmo.el (elmo-message-fetch-string): Disable multibyte.
734
735         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
736         (elmo-with-enable-multibyte): New macro.
737
738         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
739
740 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
741
742         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
743         argument `number'.
744         (elmo-filter-connect-signals): Follow the above change.
745
746 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
747
748         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
749
750         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
751         that only the first flag is used.
752
753 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
754
755         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
756         if available.
757
758 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
759
760         * elmo-signal.el: New file.
761
762         * elmo.el (toplevel): Require elmo-signal.
763         (flag-changing, flag-changed, cache-changed): New signal.
764         (elmo-folder): Remove slog `handlers'.
765         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
766         `elmo-folder-notify-event'.
767         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
768         (elmo-folder-unset-flag): Ditto.
769         (elmo-event-handler): Abolish.
770         (elmo-event-handler-flag-changed): Ditto.
771         (elmo-event-handler-cache-changed): Ditto.
772         (elmo-folder-add-handler): Ditto.
773         (elmo-folder-remove-handler): Ditto.
774         (elmo-folder-notify-event): Ditto.
775
776         * elmo-pipe.el (toplevel): Require elmo-signal.
777         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
778         (elmo-pipe-connect-signals): New function.
779         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
780         (elmo-folder-set-flag): Ditto.
781         (elmo-folder-unset-flag): Ditto.
782         (elmo-message-set-cached): Ditto.
783
784         * elmo-multi.el (toplevel): Require elmo-signal.
785         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
786         (elmo-multi-connect-signals): New function.
787         (elmo-multi-map-numbers): Ditto.
788         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
789         (elmo-message-fetch): Ditto.
790         (elmo-folder-set-flag): Ditto.
791         (elmo-folder-unset-flag): Ditto.
792
793         * elmo-filter.el (toplevel): Require elmo-signal.
794         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
795         (elmo-filter-connect-signals): New function.
796         (elmo-filter-add-flag-count): Ditto.
797         (elmo-message-fetch): Does not call
798         `elmo-filter-folder-countup-message-flags' and
799         `elmo-folder-notify-event'.
800         (elmo-message-set-cached): Ditto.
801         (elmo-folder-set-flag): Ditto.
802         (elmo-folder-unset-flag): Ditto.
803
804         * elmo-version.el (elmo-version): Up to 2.13.2.
805
806 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
807
808         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
809         `flags'.
810
811 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
812
813         * elmo-filter.el (elmo-message-set-cached): Call
814         `elmo-folder-notify-event' with event `cache-changed'.
815
816         * elmo-multi.el (elmo-message-set-cached): Ditto.
817
818         * elmo-pipe.el (elmo-message-set-cached): Ditto.
819
820 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
821
822         * elmo.el (elmo-folder-encache): Abolish.
823
824 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
825
826         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
827         (elmo-folder-next-message-number-dop): Return appropriate negative
828         integer.
829
830 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
831
832         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
833         clearing pending operations.
834         (elmo-folder-next-message-number-dop): Return appropriate negative
835         integer.
836
837 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
838
839         * elmo.el (toplevel): Added autoload setting for `md5'.
840         (elmo-msgdb-path-encode-threshold): New user option.
841         (elmo-folder-msgdb-path): Encode msgdb path if its length is
842         longer than `elmo-msgdb-path-encode-threshold'.
843
844         * elmo-flag.el (elmo-global-mark-migrate): Use
845         `elmo-folder-expand-msgdb-path' instead of
846         `elmo-folder-msgdb-path'.
847
848 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
849
850         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
851         element of the difference is nil.
852
853 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
854
855         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
856         to the check logic of file systems which are weak in colon character.
857
858 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
859
860         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
861
862 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
863
864         * elmo-maildir.el (elmo-maildir-move-file): New function.
865         (elmo-folder-append-buffer): Use it.
866         (elmo-folder-append-messages): Ditto.
867         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
868
869         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
870         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
871
872         * elmo-maildir.el (elmo-maildir-separator): New user option.
873         (elmo-maildir-adjust-separator): New macro.
874         (elmo-maildir-list-location): Use it.
875         (elmo-maildir-update-current): Ditto.
876         (elmo-maildir-set-mark): Ditto.
877         (elmo-maildir-delete-mark): Ditto.
878         (These changes are based on Hiroya Murata's patch [wl: 13437])
879
880 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
881
882         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
883
884 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
885
886         * elmo-flag.el (elmo-flag-valid-p): Simplify.
887         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
888         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
889
890 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
891
892         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
893         Use `with-temp-buffer'.
894
895 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
896
897         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
898
899         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
900         `wl-read-search-condition').
901         (elmo-read-search-condition-internal): Likewise.
902
903         * elmo-flag.el (elmo-flag-char-regexp): New constant.
904         (elmo-flag-valid-p): New function.
905         (elmo-folder-initialize): Check flag name is valid.
906
907 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
908
909         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
910         delimiter to obtain root mailbox itself.
911
912 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
913
914         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
915         type mismatch.
916
917 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
918
919         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
920         as t.
921
922 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
923
924         * elmo-shimbun.el (toplevel): Require cl at compile.
925
926         * elmo-nntp.el (toplevel): Ditto.
927
928         * elmo-nmz.el (toplevel): Ditto.
929
930         * elmo-multi.el (toplevel): Ditto.
931
932         * elmo-file.el (toplevel): Ditto.
933
934         * elmo-dop.el (toplevel): Ditto.
935
936         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
937
938 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
939
940         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
941         as nil.
942
943         * elmo.el (elmo-message-fetch): Return t even when the output buffer
944         size of elmo-message-fetch-internal is 0 byte.
945
946 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
947
948         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
949
950 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
951
952         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
953         always plugged.
954
955 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
956
957         * elmo-maildir.el (elmo-map-message-fetch): Call
958         `elmo-map-folder-set-flag'.
959
960         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
961         (elmo-message-fetch): Merge from
962         `elmo-message-fetch-with-cache-process'.
963
964         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
965         (elmo-message-fetch): Define.
966
967         * elmo-nntp.el (elmo-message-fetch): Renamed from
968         `elmo-message-fetch-with-cache-process'.
969
970         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
971         (elmo-message-fetch): Define.
972
973         * elmo-util.el (elmo-condition-parse-primitive): Downcase
974         search-key.
975
976         * elmo-shimbun.el (shimbun-mua-search-id): Use
977         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
978         (elmo-shimbun-folder-shimbun-header): Ditto.
979         (elmo-shimbun-get-headers): Ditto.
980         (elmo-shimbun-update-overview): Ditto.
981
982         * elmo-pipe.el (elmo-folder-detach-messages): Define.
983
984         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
985         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
986
987 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
988
989         * elmo.el (elmo-message-fetch): Unset unread flag on server when
990         message is cached.
991         (elmo-message-fetch-string): Fixed argument.
992
993 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
994
995         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
996         exchange order of arguments `section' and `unread'.
997         (elmo-message-encache): Follow the API change.
998         (elmo-message-match-condition): Ditto.
999         (elmo-generic-folder-append-messages): Ditto.
1000         (elmo-message-fetch-string): New function.
1001
1002         * elmo-split.el (elmo-split-subr): Ditto.
1003
1004         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1005
1006         * elmo-pipe.el (elmo-message-fetch): Ditto.
1007
1008         * elmo-multi.el (elmo-message-fetch): Ditto.
1009
1010         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1011
1012         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1013
1014         * elmo-filter.el (elmo-message-fetch): Ditto.
1015
1016         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1017
1018         * elmo-imap4.el (mime-imap-location-section-body): Use
1019         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1020         follow the API change.
1021
1022 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1023
1024         * elmo-access.el: New file.
1025
1026         * elmo-null.el: Ditto.
1027
1028         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1029
1030 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1031
1032         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1033         (elmo-network-session): New attribute `last-accessed'.
1034         (elmo-network-get-session): Discard network cache if elapsed time
1035         since last-accessed is larger than elmo-network-session-idle-timeout.
1036
1037 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1038
1039         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1040         and added `number', `require-entireness'.
1041         (elmo-find-fetch-strategy): Rewrite.
1042         (elmo-message-fetch): Unset `unread' flag when argument unread is
1043         non-nil.
1044
1045         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1046
1047         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1048         (elmo-message-fetch): Notify event `flag-changed'.
1049
1050         * elmo-pipe.el: Likewise.
1051
1052         * elmo-mime.el (elmo-mime-entity): New class.
1053         (elmo-mime-entity-display-p): New generic function.
1054         (elmo-mime-entity-display): Ditto.
1055         (elmo-mime-entity-display-as-is): Ditto.
1056         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1057         elmo-mime-entity.
1058         (elmo-make-mime-message-location): Removed.
1059         (elmo-mime-message-display): Ditto.
1060         (elmo-mime-display-as-is): Ditto.
1061         (elmo-message-mime-entity): New function.
1062
1063         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1064
1065         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1066         change.
1067         (elmo-message-fetch): Re-count flagged message number and notify
1068         event `flag-changed'.
1069
1070         * elmo-version.el (elmo-version): Up to 2.13.1.
1071
1072 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1073
1074         * elmo-filter.el (elmo-message-field): Define.
1075         (elmo-message-set-field): Ditto.
1076
1077 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1078
1079         * elmo.el (elmo-message-set-cached): Call
1080         `elmo-folder-notify-event' with cache-changed.
1081         (elmo-event-handler-cache-changed): New generic function.
1082
1083 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1084
1085         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1086         instead of elmo-add-name-to-file.
1087         (elmo-folder-append-messages): Ditto.
1088
1089 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1090
1091         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1092
1093 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1094
1095         * elmo-version.el (elmo-version): Up to 2.13.0.
1096
1097         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1098         `auto'.
1099
1100         * modb-standard.el (modb-standard-economize-entity-size): Changed
1101         default value to `t'.
1102
1103         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1104         `standard'.
1105
1106         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1107         after parsing greeting string.
1108
1109 2004-11-23  Daishi Kato <daishi@axlight.com>
1110
1111         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1112         New user option.
1113         (elmo-spam-spamoracle-call): Use it.
1114
1115 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1116
1117         * elmo.el (elmo-message-accessible-p): Message in dop spool
1118         is accessible.
1119
1120 2004-11-23  Daishi Kato <daishi@axlight.com>
1121
1122         * elsp-spamoracle.el: New file.
1123
1124 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1125
1126         * elmo.el (elmo-message-flags-for-append): New function.
1127         (elmo-generic-folder-append-messages): Use it.
1128
1129         * elmo-split.el (elmo-split-subr): Ditto.
1130
1131         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1132         `flags' and use elmo-folder-append-buffer instead of
1133         write-region-as-binary.
1134         (elmo-dop-filter-pending-messages): New function.
1135         (elmo-folder-append-buffer-dop): Call
1136         elmo-dop-spool-folder-append-buffer with `flag'.
1137         (elmo-folder-set-flag-dop): Filter messages by
1138         elmo-dop-filter-pending-messages.
1139         (elmo-folder-unset-flag-dop): Ditto.
1140         (elmo-folder-append-buffer-dop-delayed): Use
1141         elmo-message-flags-for-append to get flags of the message and
1142         simplify.
1143
1144 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1145
1146         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1147
1148 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1149
1150         * elmo.el (elmo-folder): Added handlers slot.
1151         (elmo-event-handler): New class.
1152         (elmo-event-handler-flag-changed): New API.
1153         (elmo-folder-add-handler): New function.
1154         (elmo-folder-remove-handler): Ditto.
1155         (elmo-folder-notify-event): Ditto.
1156         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1157         `flag-changed'.
1158         (elmo-folder-unset-flag): Ditto.
1159
1160         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1161         (elmo-folder-unset-flag): Ditto.
1162
1163         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1164         (elmo-folder-unset-flag): Ditto.
1165
1166         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1167         (elmo-folder-unset-flag): Ditto.
1168
1169         * elmo-version.el (elmo-version): Up to 2.11.33.
1170
1171 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1172
1173         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1174
1175 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1176
1177         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1178
1179         * elmo-flag.el (elmo-folder-unset-flag): Define.
1180         (elmo-global-flag-detach): Do process when the flag is not target
1181         flag.
1182
1183 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1184
1185         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1186         variable.
1187         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1188
1189 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1190
1191         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1192         function.
1193         (elmo-folder-delete-messages): Detach messages before delete
1194         messages from target folder.
1195         (elmo-folder-detach-messages): Set updated number-list to slot.
1196
1197 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1198
1199         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1200
1201 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1202
1203         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1204
1205 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1206
1207         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1208         internal use only).
1209         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1210         not modified.
1211         (elmo-folder-delete-messages): Define.
1212         (elmo-folder-move-messages): Don't call
1213         `elmo-folder-detach-messages'.
1214         (elmo-folder-synchronize): Rewrite.
1215         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1216
1217         * elmo-util.el (elmo-last): New function.
1218         (elmo-set-list): Ditto.
1219         (elmo-number-set-delete-list): Ditto.
1220         (elmo-number-set-delete): Ditto.
1221
1222         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1223
1224         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1225         `elmo-folder-delete-messages' and don't delete location map.
1226         (elmo-folder-detach-messages): Define.
1227
1228         * elmo-imap4.el (elmo-folder-delete): Use
1229         `elmo-folder-delete-messages-internal' instead of
1230         `elmo-folder-delete-messages'.
1231
1232         * elmo-filter.el (elmo-folder-delete-messages): Call
1233         `elmo-folder-detach-messages'.
1234         (elmo-folder-detach-messages): Don't call
1235         `elmo-folder-detach-messages' for target folder.
1236
1237         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1238         message deletion is succeeded.
1239
1240         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1241
1242         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1243         from `elmo-folder-delete-messages'.
1244
1245         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1246
1247         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1248
1249         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1250
1251         * elmo-version.el (elmo-version): Up to 2.11.32.
1252
1253 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1254
1255         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1256         (elmo-global-flag-list): Added obsolete variable setting.
1257
1258         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1259
1260         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1261         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1262         `elmo-mime-display-header-analysis' is nil.
1263
1264         * elmo-flag.el (elmo-global-flags): Renamed from
1265         `elmo-global-flag-list' (All other related portions are changed).
1266         (elmo-local-flags): New variable.
1267         (elmo-local-flag-p): New function.
1268         (elmo-global-flag-set-internal): Cause an error when flag is not
1269         global.
1270
1271 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1272
1273         * elmo-util.el (elmo-concat-path): Treat empty path.
1274
1275 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1276
1277         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1278         field-or-fields).
1279         (elmo-split-address-match): Ditto.
1280         (elmo-split-equal): Ditto.
1281         (elmo-split-match): Ditto.
1282
1283 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1284
1285         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1286         (elmo-generic-folder-append-messages): If src message exists but
1287         has no flag, pass (read) for the FLAG argument of
1288         `elmo-folder-append-buffer'. Otherwise, pass nil.
1289
1290         * elmo-split.el (elmo-split-subr): Likewise.
1291
1292         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1293
1294         * elmo-multi.el (elmo-message-flags): Ditto.
1295
1296         * elmo-filter.el (elmo-message-flags): Ditto.
1297
1298         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1299         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1300         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1301         
1302 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1303
1304         * elmo-split.el (elmo-split-rule): Update comment.
1305         (elmo-split-address-equal): Allow 2nd argument to be a list.
1306         (elmo-split-address-match): Ditto.
1307         (elmo-split-equal): Ditto.
1308         (elmo-split-match): Ditto.
1309
1310 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1311
1312         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1313         (elmo-folder-append-msgdb): Don't treat `read'.
1314         (elmo-message-flags): Don't return `read'.
1315
1316         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1317         (elmo-folder-unset-read-delayed): Ditto.
1318
1319         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1320
1321 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1322
1323         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1324         deletion.
1325
1326 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1327
1328         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1329         header.
1330
1331 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1332
1333         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1334         here.
1335         (elmo-msgdb-save): Bind inhibit-quit.
1336         (modb-standard-message-entity): Ditto.
1337
1338 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1339
1340         * elmo-database.el: No need to require elmo-msgdb.
1341
1342 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1343
1344         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1345         instead of `elmo-list-subdirectories'.
1346
1347 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1348
1349         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1350         group entry.
1351         (elmo-folder-exists-p): "[" is empty.
1352         (elmo-folder-list-subfolders): Define.
1353         (elmo-folder-have-subfolder-p): Ditto.
1354
1355 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1356
1357         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1358
1359 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1360
1361         * elmo-filter.el (elmo-folder-local-p): Define.
1362
1363 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1364
1365         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1366         when entity is garbaged.
1367         (modb-standard-save-entity-1): Don't modify the original entity.
1368
1369 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1370
1371         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1372
1373 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1374
1375         * elmo.el (elmo-strict-folder-diff): Use
1376         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1377
1378 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1379
1380         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1381         (elmo-msgdb-message-number): Ditto.
1382         (elmo-msgdb-message-field): Ditto.
1383
1384         * modb-standard.el (modb-standard-economize-entity-size): New user
1385         option.
1386         (modb-standard-loaded-message-id): New inline function.
1387         (modb-standard-load-entity): Use it.
1388         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1389         throw message-id string away.
1390         (elmo-msgdb-flag-available-p): Define.
1391         (elmo-msgdb-message-number): Ditto.
1392         (elmo-msgdb-message-field): Ditto.
1393
1394         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1395         (suppoted -> supported).
1396         (modb-legacy-supported-flag-p): Ditto.
1397         (elmo-msgdb-set-flag): Ditto.
1398         (elmo-msgdb-unset-flag): Ditto.
1399         (elmo-msgdb-flag-available-p): Define.
1400
1401         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1402         is `t', treat it as legacy entity.
1403         
1404         * elmo.el (elmo-message-flag-available-p): New generic function.
1405         (elmo-message-number): Ditto.
1406         (elmo-message-field): Use `elmo-msgdb-message-field'.
1407
1408         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1409
1410         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1411         (elmo-message-number): Ditto.
1412
1413         * elmo-multi.el (elmo-message-number): Define.
1414         (elmo-message-flag-available-p): Ditto.
1415
1416         * elmo-filter.el (elmo-message-flag-available-p): Define.
1417         (elmo-message-number): Ditto.
1418
1419         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1420         (elmo-folder-initialize): Load `max-number'.
1421         (elmo-folder-commit): Save it.
1422         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1423         (elmo-global-flag-set-internal): Set up max-number slot.
1424
1425 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1426
1427         * elmo-version.el (elmo-version): Up to 2.11.31.
1428
1429 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1430
1431         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1432         unibyte string of the current buffer for the argument of `md5'
1433         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1434
1435 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1436
1437         * modb-legacy.el (modb-legacy-flag-list): New constant.
1438         (modb-legacy-suppoted-flag-p): New internal function.
1439         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1440         (elmo-msgdb-unset-flag): Ditto.
1441
1442 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1443
1444         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1445
1446         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1447         from msgdb.
1448
1449 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1450
1451         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1452         (follow the API change).
1453
1454         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1455
1456 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1457
1458         * modb-standard.el (modb-standard-digest-flags): Abolish.
1459         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1460
1461         * elmo-vars.el (elmo-digest-flags): New variable.
1462         (elmo-preserved-flags): Moved from elmo-flag.el.
1463
1464         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1465         (elmo-imap4-flag-to-imap-criteria): Ditto.
1466         (elmo-imap4-folder-list-flagged): Use it.
1467
1468         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1469
1470         * elmo.el (elmo-folder-count-flags): Changed return value.
1471
1472         * elmo-flag.el (elmo-preserved-flags): New variable.
1473         (elmo-get-global-flags): Use it.
1474
1475         * modb-standard.el (modb-standard-digest-flags): New variable.
1476         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1477         Changed behavior of `any'.
1478
1479         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1480         which are defined the Internet draft
1481         (draft-melnikov-imap-keywords-03.txt).
1482         (elmo-imap4-flags-to-imap): New function.
1483         (elmo-folder-append-buffer): Use it.
1484
1485         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1486         in the docstring.
1487
1488         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1489         avoid the bug of Emacs 21.3.
1490
1491 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1492
1493         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1494         function find-coding-system does not exist.
1495
1496 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1497
1498         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1499         parsing.
1500
1501 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1502
1503         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1504         response codes.
1505
1506 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1507
1508         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1509         (elmo-network-close-session): Follow the changes in
1510         `elmo-pop3-read-response'.
1511         (elmo-pop3-auth-user): Ditto.
1512         (elmo-pop3-auth-apop): Ditto.
1513         (elmo-network-initialize-session): Ditto.
1514         (elmo-network-authenticate-session): Ditto.
1515         (elmo-network-setup-session): Ditto.
1516         (elmo-folder-status): Ditto.
1517         (elmo-message-fetch-plugged): Ditto.
1518         (elmo-pop3-delete-msg): Ditto.
1519
1520 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1521
1522         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1523         on failure.
1524
1525 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1526
1527         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1528         style.
1529         (elmo-bind-directory): Ditto.
1530
1531 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1532
1533         * elmo.el (elmo-folder-append-messages): Note on return value.
1534         * elmo-archive.el (elmo-folder-append-messages): Don't return
1535         message numbers which could not be appended.
1536
1537 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1538
1539         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1540
1541 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1542
1543         * elmo-version.el (elmo-version): Up to 2.11.30.
1544
1545 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1546
1547         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1548         `mask'.
1549
1550         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1551
1552         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1553         (elmo-multi-split-numbers): Add elmo-folder object into each
1554         element of return value at first.
1555         (elmo-folder-delete-messages): Follow the above change.
1556         (elmo-folder-detach-messages): Ditto.
1557
1558         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1559         number which is synchronized in target folder.
1560
1561 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1562
1563         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1564         Change default value to symbol `all'.
1565         (elmo-map-message-fetch): Change condition to update overview
1566         follow the above.
1567
1568 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1569
1570         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1571         behavior to update overview.
1572         (elmo-shimbun-update-overview-folder-list): Note it.
1573
1574 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1575
1576         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1577         recursive call.
1578
1579 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1580
1581         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1582         buffer-disable-undo, it is unnecessary.
1583         (elmo-spam-register-good-messages): Ditto.
1584
1585         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1586         Ditto.
1587
1588         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1589
1590 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1591
1592         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1593         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1594         elmo-set-buffer-multibyte.
1595         (elmo-object-load): Ditto.
1596         (elmo-save-buffer): Ditto.
1597         (elmo-delete-char): Ditto.
1598         (elmo-file-field-primitive-condition-match): Ditto.
1599         (elmo-mime-string): Ditto.
1600
1601         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1602         (elmo-archive-field-condition-match): Ditto.
1603
1604         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1605
1606         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1607
1608         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1609         (elmo-nntp-msgdb-create-message): Ditto.
1610
1611         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1612
1613         * elmo.el (elmo-message-match-condition): Ditto.
1614         (elmo-message-match-condition): Ditto.
1615
1616         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1617         Ditto.
1618
1619         * elmo-version.el (elmo-version): Up to 2.11.29.
1620
1621         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1622         (elsp-header): New backend.
1623
1624         * elmo-util.el (elmo-decoded-field-body): New function.
1625
1626 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1627
1628         * elmo-version.el (elmo-version): Up to 2.11.28.
1629
1630 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1631
1632         * elmo-filter.el: Rewrite.
1633
1634         * elmo-version.el (elmo-version): Up to 2.11.27.
1635
1636 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1637
1638         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1639         msgdb path for the localdir folder with absolute path.
1640
1641         * utf7.el: Synch up with latest gnus/utf7.el;
1642         Modified for latest Emacs.
1643
1644 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1645
1646         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1647         shimbun backend couldn't open.
1648
1649 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1650
1651         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1652         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1653         when a destination folder is a filter folder.
1654
1655 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1656
1657         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1658         (elmo-generic-folder-append-messages): Call elmo-message-flags
1659         with argument `msgid'.
1660
1661         * elmo-split.el (elmo-split-subr): Ditto.
1662
1663         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1664
1665         * elmo-multi.el (elmo-message-flags): Ditto.
1666
1667 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1668
1669         * elmo.el (elmo-folder): Add new slot `flag-table'.
1670         (elmo-folder-flag-table): New API.
1671         (elmo-folder-close-flag-table): Ditto.
1672         (elmo-folder-preserve-flags): New function.
1673         (elmo-generic-folder-append-messages): Use
1674         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1675         Flag of a non-registered message, it sets to nil.
1676         Does not set flag to flag-table.
1677
1678         * elmo-maildir.el (elmo-folder-append-buffer): Use
1679         `elmo-folder-preserve-flags'.
1680         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1681         `elmo-folder-close-flag-table'.
1682
1683         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1684         (elmo-archive-folder-append-buffer): Use
1685         `elmo-folder-preserve-flags'.
1686
1687         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1688
1689         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1690
1691         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1692         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1693         `elmo-folder-close-flag-table'.
1694
1695         * elmo-version.el (elmo-version): Up to 2.11.26.
1696
1697 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1698
1699         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1700
1701         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1702         md5's 4th and 5th argument (non-existent in flim one).
1703
1704 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1705
1706         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1707         message, It sets to nil.
1708
1709 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1710
1711         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1712         list is non-nil.
1713
1714 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1715
1716         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1717
1718         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1719
1720         * elmo-util.el (elmo-uniq-sorted-list): New function.
1721         (elmo-make-number-list): Ditto.
1722         (elmo-number-set-to-number-list): Use elmo-make-number-list
1723         and don't use nreverse.
1724
1725 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1726
1727         * elmo-version.el (elmo-version): Up to 2.11.25.
1728
1729 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1730
1731         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1732         field not exists in message, Use md5 message digest of header.
1733
1734 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1735
1736         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1737         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1738         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1739         * elmo-split.el (elmo-split-subr): Check return value of
1740         elmo-folder-append-buffer.
1741
1742         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1743         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1744
1745         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1746         message-id.
1747
1748 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1749
1750         * elmo-split.el (elmo-split-subr): Append message with flag.
1751
1752         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1753         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1754         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1755
1756 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1757
1758         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1759         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1760         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1761
1762 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1763
1764         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1765         with a function call of `process-buffer'.  All callers are updated.
1766         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1767         Remove redundant `set-buffer' in a while loop.
1768
1769 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1770
1771         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1772         calls.
1773
1774 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1775
1776         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1777         elsp-spamfilter-register-buffer-internal with current buffer.
1778         (elmo-spam-register-spam-buffer): Ditto.
1779         (elmo-spam-register-good-buffer): Ditto.
1780
1781 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1782
1783         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1784         if it is not contained in the response(A workaround for courier-imap).
1785
1786 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1787
1788         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1789         parenthesis.
1790
1791 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1792
1793         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1794         range.
1795
1796 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1797
1798         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1799         of nconc.
1800
1801         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1802         argument handler.
1803         (elmo-msgdb-message-match-condition): Follow the change above.
1804
1805 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1806
1807         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1808         folder name.
1809
1810 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1811
1812         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1813
1814 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1815
1816         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1817
1818 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1819
1820         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1821         not found.
1822
1823 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1824
1825         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1826         value.
1827         (elmo-file-command-argument): Undo last change for cygwin.
1828         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1829         Don't return nil.
1830         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1831
1832 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1833
1834         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1835         value returned from elmo-file-find is nil.
1836
1837 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1838
1839         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1840         to elmo-vars.el.
1841
1842         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1843         instead of insert-file-contents-as-binary.
1844         (elmo-message-set-field): New generic function.
1845
1846         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1847         behavior change on `split-string'.
1848
1849         * elmo-file.el (elmo-file-find): New function.
1850         (elmo-file-command): New user option.
1851         (elmo-file-command-argument): Ditto.
1852         (elmo-file-fetch-max-size): Ditto.
1853         (elmo-file-detect-format): New function.
1854         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1855         Use elmo-file-detect-format.
1856         (elmo-map-folder-list-message-locations): Don't treat directories.
1857
1858 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1859
1860         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1861         (elmo-passwd-alist-clear): Shred password before clear.
1862         (elmo-remove-passwd): Remove all mached pair.
1863
1864 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1865
1866         * elmo.el (elmo-folder-synchronize): Fix description of the return
1867         value.
1868
1869 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1870
1871         * elmo.el (elmo-message-fetch-bodystructure): New method.
1872         (elmo-message-fetch-bodystructure): Define default.
1873
1874         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1875         elmo-message-fetch-bodystructure.
1876         (elmo-message-fetch-bodystructure): Define.
1877
1878         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1879
1880 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1881
1882         * elmo-filter.el (elmo-message-folder): Define.
1883
1884 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1885
1886         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1887         elmo-delete-cr-buffer.
1888
1889         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1890
1891         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1892
1893         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1894
1895         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1896         type seems to be a text.
1897
1898 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1899
1900         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1901         (elmo-spam-register-good-buffer): Ditto.
1902         (elmo-spam-spamassassin-register-messages): Ditto.
1903
1904         * elmo-util.el (elmo-string-member-ignore-case): Define with
1905         static-cond.
1906
1907 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1908
1909         * elmo.el (elmo-folder-type): Undo last change.
1910
1911         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1912
1913         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1914         warnings.
1915
1916         * elmo-file.el: New file.
1917         
1918         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1919
1920         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1921         variable.
1922         (elmo-spam-spamassassin-register-messages): New inline function.
1923         (elmo-spam-register-spam-messages): Define.
1924         (elmo-spam-register-good-messages): Ditto.
1925
1926         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1927         Fixed typo.
1928
1929         * elmo.el (toplevel): Added autoload setting for
1930         `elmo-get-global-flags'.
1931         (elmo-message-has-global-flag-p): New function.
1932         (elmo-message-set-global-flags): Ditto.
1933         (elmo-folder-type): Improvement for name: format.
1934
1935         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1936         availability of keyword flags.
1937         (elmo-imap4-folder-list-flagged): Treat keyword flags.
1938         (elmo-folder-list-flagged-plugged): Renamed from
1939         elmo-folder-list-flagged-unplugged.
1940         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1941         accept any flag as keyword flag.
1942         (elmo-folder-set-flag-plugged): Accept keyword flags.
1943         (toplevel): Added autoload setting for `elmo-get-global-flags'.
1944
1945         * elmo-flag.el (elmo-get-global-flags): New function.
1946
1947         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1948         folders.
1949
1950         * elmo-version.el (elmo-version): Up to 2.11.24.
1951
1952 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1953
1954         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1955         elmo-multiple-field-body instead of std11-field-body to check all
1956         headers.
1957
1958 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1959
1960         * elmo-util.el (elmo-cache-expire): Completion require match "age"
1961         or "size".
1962
1963 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1964
1965         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
1966         unintern is unbound.
1967
1968 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1969
1970         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1971         Protect from infinite loop.
1972
1973 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1974
1975         * elsp-bogofilter.el
1976         (elmo-spam-bogofilter-max-messages-per-process): New user option.
1977         (elmo-spam-bogofilter-register-messages): New internal function.
1978         (elmo-spam-register-spam-messages): Define.
1979         (elmo-spam-register-good-messages): Ditto.
1980
1981 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1982
1983         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1984         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
1985         (elmo-spam-bogofilter-call): Fixed the last change.
1986         (elmo-spam-bogofilter-arguments): Ditto.
1987
1988         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1989         Follow the options change of latest bogofilter.
1990
1991         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
1992         (elmo-spam-bogofilter-good-switch): Ditto.
1993         (elmo-spam-bogofilter-arguments-alist): New user option.
1994         (elmo-spam-bogofilter-debug): Ditto.
1995         (elmo-spam-bogofilter-call): Renamed from
1996         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
1997         is non-nil, insert output in buffer for debug.
1998         (elmo-spam-bogofilter-arguments): New macro.
1999         (elmo-spam-buffer-spam-p): Use it.
2000         (elsp-bogofilter-register-buffer): Ditto.
2001
2002 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2003
2004         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2005         regexp.
2006
2007 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2008
2009         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2010         value as "ruby".
2011         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2012         (elmo-spam-bsfilter-program): Set default value as full path for
2013         `bsfilter'.
2014         (elmo-spam-bsfilter-debug): New user option.
2015         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2016         non-nil, insert output in buffer for debug. Fix treating of
2017         argument.
2018
2019 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2020
2021         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2022         `elmo-maildir-flag-specs' element instead of one.
2023         (elmo-map-folder-unset-flag): Ditto.
2024         (Reported by Ken Makimura <macky@astem.or.jp>)
2025
2026         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2027         (elmo-folder-unset-flag-plugged): Ditto.
2028
2029 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2030
2031         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2032         to `reads' slot only if `in-msgdb' is nil.
2033
2034 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2035
2036         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2037         and complement argument list.
2038
2039 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2040
2041         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2042         instead of elmo-folder-list-flagged.
2043
2044 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2045
2046         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2047
2048         * elsp-bsfilter.el: New file.
2049
2050         * elmo-pipe.el (elmo-folder-list-unreads,
2051         elmo-folder-list-answereds,
2052         elmo-folder-list-importants,
2053         elmo-folder-flag-as-important,
2054         elmo-folder-unflag-important,
2055         elmo-folder-flag-as-read,
2056         elmo-folder-unflag-read,
2057         elmo-folder-flag-as-answered,
2058         elmo-folder-unflag-answered): Remove.
2059         (elmo-folder-set-flag): Define.
2060         (elmo-folder-unset-flag): Ditto.
2061
2062         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2063         (elmo-folder-set-flag): Define.
2064         (elmo-folder-unset-flag): Ditto.
2065         (elmo-folder-list-unreads): Remove.
2066         (elmo-folder-list-flagged): Define.
2067
2068         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2069         (elmo-folder-list-unreads,
2070         elmo-folder-list-importants,
2071         elmo-folder-list-answereds,
2072         elmo-folder-list-unreads-plugged,
2073         elmo-folder-list-importants-plugged,
2074         elmo-folder-list-answereds-plugged): Remove.
2075         (elmo-folder-list-flagged-plugged): New method.
2076         (elmo-folder-unflag-important,
2077         elmo-folder-flag-as-important,
2078         elmo-folder-unflag-read,
2079         elmo-folder-flag-as-read,
2080         elmo-folder-unflag-answered,
2081         elmo-folder-flag-as-answered,
2082         elmo-folder-flag-as-read-unplugged,
2083         elmo-folder-unflag-read-unplugged,
2084         elmo-folder-flag-as-important-unplugged,
2085         elmo-folder-unflag-important-unplugged,
2086         elmo-folder-flag-as-answered-unplugged,
2087         elmo-folder-unflag-answered-unplugged): Remove.
2088         (elmo-folder-set-flag): Define.
2089         (elmo-folder-unset-flag): Ditto.
2090         (elmo-folder-set-flag-unplugged): Ditto.
2091         (elmo-folder-unset-flag-unplugged): Ditto.
2092
2093         * elmo-multi.el (elmo-folder-list-unreads,
2094         elmo-folder-list-answereds,
2095         elmo-folder-list-importants,
2096         elmo-folder-flag-as-important,
2097         elmo-folder-unflag-important,
2098         elmo-folder-flag-as-read,
2099         elmo-folder-unflag-read,
2100         elmo-folder-flag-as-answered,
2101         elmo-folder-unflag-answered): Remove.
2102         (elmo-folder-set-flag): Define.
2103         (elmo-folder-unset-flag): Ditto.
2104
2105         * elmo-map.el (elmo-map-folder-unflag-important,
2106         elmo-map-folder-flag-as-important,
2107         elmo-map-folder-unflag-read,
2108         elmo-map-folder-flag-as-read,
2109         elmo-map-folder-unflag-answered,
2110         elmo-map-folder-flag-as-answered): Remove.
2111         (elmo-map-folder-set-flag): New method.
2112         (elmo-map-folder-unset-flag): Ditto.
2113         (elmo-map-folder-list-unreads,
2114         elmo-map-folder-list-importants,
2115         elmo-map-folder-list-answereds): Remove.
2116         (elmo-folder-list-flagged-internal): Define.
2117         (elmo-map-folder-list-flagged): New method.
2118
2119         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2120         (elmo-map-folder-list-unreads,
2121         elmo-map-folder-list-importants,
2122         elmo-map-folder-list-flagged): Remove.
2123         (elmo-map-folder-list-flagged): Define.
2124         (elmo-map-folder-flag-as-important,
2125         elmo-map-folder-unflag-important,
2126         elmo-map-folder-flag-as-read,
2127         elmo-map-folder-unflag-read,
2128         elmo-map-folder-flag-as-answered,
2129         elmo-map-folder-unflag-answered): Remove.
2130         (elmo-maildir-set-mark-messages): New internal function.
2131         (elmo-map-folder-set-flag): Define.
2132         (elmo-map-folder-unset-flag): Ditto.
2133
2134         * elmo.el (toplevel): Added autoload setting for
2135         `elmo-folder-list-global-flag-messages'.
2136         (elmo-folder-list-unreads,
2137         elmo-folder-list-importants,
2138         elmo-folder-list-answereds): Remove.
2139         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2140         Return a list whitch merged with messages have global flag.
2141         (elmo-folder-list-flagged-internal): New method.
2142         (elmo-folder-unflag-important,
2143         elmo-folder-flag-as-important,
2144         elmo-folder-unflag-read,
2145         elmo-folder-flag-as-read,
2146         elmo-folder-unflag-answered,
2147         elmo-folder-flag-as-answered): Remove.
2148         (elmo-folder-set-flag): New method.
2149         (elmo-folder-unset-flag): Ditto.
2150         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2151         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2152
2153         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2154         (elmo-folder-list-unreads-plugged,
2155         elmo-folder-list-importants-plugged,
2156         elmo-folder-list-answereds-plugged,
2157         elmo-folder-list-flagged-unplugged,
2158         elmo-folder-unflag-important-plugged,
2159         elmo-folder-flag-as-important-plugged,
2160         elmo-folder-unflag-read-plugged,
2161         elmo-folder-flag-as-read-plugged,
2162         elmo-folder-unflag-answered-plugged,
2163         elmo-folder-flag-as-answered-plugged): Remove.
2164         (elmo-folder-set-flag-plugged,
2165         elmo-folder-unset-flag-plugged): Define.
2166
2167         * elmo-flag.el (elmo-folder-initialize): Register to
2168         `elmo-global-flag-list' if flag is not global.
2169         (elmo-folder-append-messages): Set flag to source messages.
2170
2171         * elmo-filter.el (elmo-filter-folder-list-unreads,
2172         elmo-folder-list-unreads,
2173         elmo-filter-folder-list-importants,
2174         elmo-folder-list-importants,
2175         elmo-folder-flag-as-read,
2176         elmo-folder-unflag-read,
2177         elmo-folder-flag-as-important,
2178         elmo-folder-unflag-important,
2179         elmo-folder-flag-as-answered,
2180         elmo-folder-unflag-answered): Remove.
2181         (elmo-folder-set-flag): Define.
2182         (elmo-folder-unset-flag): Ditto.
2183
2184         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2185         elmo-folder-unflag-read-dop,
2186         elmo-folder-flag-as-important-dop,
2187         elmo-folder-unflag-important-dop,
2188         elmo-folder-flag-as-answered-dop,
2189         elmo-folder-unflag-answered-dop): Remove.
2190         (elmo-folder-set-flag-dop,
2191         elmo-folder-unset-flag-dop,
2192         elmo-folder-set-important-delayed,
2193         elmo-folder-unset-important-delayed,
2194         elmo-folder-set-read-delayed,
2195         elmo-folder-unset-read-delayed,
2196         elmo-folder-set-answered-delayed,
2197         elmo-folder-unset-answered-delayed): New function.
2198         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2199         (elmo-dop-queue-method-name-alist): Ditto.
2200
2201         * elmo-version.el (elmo-version): Up to 2.11.23.
2202
2203 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2204
2205         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2206
2207         * elsp-sa.el: New file.
2208
2209 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2210
2211         * modb-standard.el (modb-standard-message-entity): New function.
2212         (elmo-msgdb-message-entity): Use it.
2213
2214 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2215
2216         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2217         behavior when one-level is nil.
2218
2219         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2220
2221         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2222
2223 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2224
2225         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2226         get max number.
2227         (elmo-generic-folder-diff): Ditto.
2228
2229         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2230         (elmo-folder-update-number): Ditto.
2231
2232         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2233         (elmo-folder-next-message-number-dop): Ditto.
2234
2235 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2236
2237         * elmo-filter.el (elmo-folder-msgdb-create): Use
2238         `elmo-message-entity' and `elmo-message-flags' instead of
2239         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2240
2241 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2242
2243         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2244         `if-exists'.
2245
2246 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2247
2248         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2249
2250         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2251
2252         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2253
2254 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2255
2256         * elmo-version.el (elmo-version): Up to 2.11.22.
2257
2258 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2259
2260         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2261
2262 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2263
2264         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2265         if the message dose not exist.
2266
2267 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2268
2269         * elmo-version.el (elmo-version): Up to 2.11.21.
2270
2271 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2272
2273         * modb-standard.el (toplevel): Don't require mime.
2274
2275 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2276
2277         * elsp-bogofilter.el (toplevel): Don't require path-util.
2278         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2279         (elmo-spam-bogofilter-header): Abolish.
2280         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2281         (elmo-spam-bogofilter-args): New user option.
2282         (elsp-bogofilter-call-bogofilter): New internal function.
2283         (elmo-spam-buffer-spam-p): Use it.
2284         (elsp-bogofilter-register-buffer): Renamed from
2285         `elmo-spam-bogofilter-register-buffer';
2286         Use `elsp-bogofilter-call-bogofilter'.
2287         (elmo-spam-register-spam-buffer): Follow the change above.
2288         (elmo-spam-register-good-buffer): Ditto.
2289
2290 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2291
2292         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2293         message-id is nil do nothing.
2294
2295 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2296
2297         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2298         Revival.
2299         (elmo-imap4-session): Removed use-flag slot.
2300         (elmo-imap4-session-select-mailbox): Undo last change.
2301         (elmo-folder-use-flag-p): Use
2302         elmo-imap4-disuse-server-flag-mailbox-regexp.
2303
2304 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2305
2306         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2307         (elmo-imap4-session-select-mailbox): Set it up.
2308         (elmo-folder-use-flag-p): Return value of use-flag slot.
2309
2310 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2311
2312         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2313         message-id is nil.
2314         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2315
2316         * modb-entity.el (elmo-message-entity-handler): Likewise.
2317
2318 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2319
2320         * elmo.el (toplevel): Remove setting of autoloding for
2321         elmo-global-flag-initialize.
2322         (elmo-init): Don't call elmo-global-flag-initialize.
2323         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2324
2325         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2326         (elmo-global-mark-migrate): Don't call it.
2327         (elmo-global-mark-upgrade): Ditto.
2328
2329 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2330
2331         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2332         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2333
2334         * elmo-vars.el (elmo-init-hook): New user option.
2335
2336         * elmo.el (elmo-init): Run the elmo-init-hook.
2337
2338         * elmo-flag.el (elmo-global-mark-migrate): New function.
2339
2340 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2341
2342         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2343         Undo last change (move to elmo-msgdb-unset-flag).
2344         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2345         flag is unset.
2346
2347 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2348
2349         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2350         read flag is set.
2351         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2352         (elmo-msgdb-unset-flag): Ditto.
2353
2354 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2355
2356         * elmo-split.el (elmo-split): Return split message count.
2357
2358 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2359
2360         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2361         is nil.
2362
2363 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2364
2365         * elmo.el (elmo-folder-unflag-important): Call
2366         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2367         a symbol `always'.
2368
2369         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2370         before unset flag.
2371         (elmo-global-flag-detach): Delete the message from flag folder, if
2372         `delete-if-none' is a symbol `always'.
2373
2374 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2375
2376         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2377         `elmo-spam-spamfilter-decode-buffer'.
2378         (elsp-spamfilter-register-buffer-internal): New internal function.
2379         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2380         (elmo-spam-register-spam-buffer): Ditto.
2381         (elmo-spam-register-good-buffer): Ditto.
2382
2383         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2384         change.
2385         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2386         (elmo-spam-register-spam-buffer): Follow the API change.
2387         (elmo-spam-register-good-buffer): Ditto.
2388
2389         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2390         (elmo-split-spam-p): Added argument plist; Call
2391         `elmo-spam-buffer-spam-p' with new argument register.
2392
2393         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2394         `register'.
2395         (elmo-spam-message-spam-p): Ditto.
2396         (elmo-spam-register-spam-buffer): Added optional argument
2397         `restore'.
2398         (elmo-spam-register-good-buffer): Ditto.
2399         (elmo-spam-register-spam-messages): Ditto.
2400         (elmo-spam-register-good-messages): Ditto.
2401
2402 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2403
2404         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2405         register into good corpus.
2406         (elmo-spam-register-good-buffer): Fixed to register into bad
2407         corpus.
2408
2409 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2410
2411         * elmo-version.el (elmo-version): Up to 2.11.20.
2412
2413         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2414         change.
2415
2416         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2417         flag without depending on \Recent flag.
2418
2419 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2420
2421         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2422         (elmo-spam-modified-p): Defined.
2423         (elmo-spam-save-status): Set `modified' slot to nil.
2424         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2425         (elmo-spam-register-good-buffer): Ditto.
2426
2427         * elmo-spam.el (elmo-spam-modified-p): New API.
2428
2429 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2430
2431         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2432         duplicate definition.
2433
2434         * elmo-util.el (elmo-unfold-field-body): New function.
2435         (elmo-msgdb-get-message-id-from-buffer): Use it.
2436
2437         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2438         Fixed the last change; Use elmo-unfold-field-body.
2439
2440 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2441
2442         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2443         Unfold date value.
2444
2445 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2446
2447         * elmo-spam.el (elmo-spam-save-status): New API.
2448
2449         * elsp-spamfilter.el: New file.
2450
2451 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2452
2453         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2454
2455 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2456
2457         * elmo-split.el (elmo-split-spam-p): New function.
2458
2459         * elmo-spam.el: New file.
2460
2461         * elsp-bogofilter.el: Ditto.
2462
2463 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2464
2465         * elmo.el (elmo-folder-next-message-number): New API.
2466         (elmo-folder-next-message-number): Define.
2467         (elmo-message-field): Don't check folder length.
2468
2469         * elmo-net.el (elmo-folder-next-message-number): Define.
2470         (elmo-folder-next-message-number-unplugged): Define.
2471
2472         * elmo-map.el (elmo-folder-next-message-number): Define.
2473         (elmo-folder-delete-messages): Clear hash value.
2474
2475         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2476
2477         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2478         (elmo-folder-delete-messages-dop-delayed): Always return t.
2479
2480         * elmo-version.el (elmo-version): Up to 2.11.19.
2481
2482 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2483
2484         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2485         change.
2486
2487         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2488         identical cons cell into the mark-alist and the hash table.
2489
2490 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2491
2492         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2493         elmo-folder-list-messages with argument `visible-only' as t.
2494
2495         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2496         (elmo-folder-msgdb-create): Check the target folder.
2497
2498 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2499
2500         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2501         `permanentflag' instead of `flags'.
2502         (elmo-folder-open): Ditto.
2503         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2504         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2505         (elmo-folder-use-flag-p): Always return t.
2506         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2507         `permanentflags' does not exist.
2508         (elmo-folder-open): Ditto.
2509
2510 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2511
2512         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2513         is nil.
2514         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2515
2516         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2517         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2518         response.
2519         (elmo-folder-open): Ditto.
2520         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2521         slot of the session includes the flag.
2522         (elmo-imap4-session-flag-available-p): New function.
2523         (elmo-imap4-folder-list-flagged): Ditto.
2524         (elmo-folder-list-unreads-plugged): Use it.
2525         (elmo-folder-list-importants-plugged): Ditto.
2526         (elmo-folder-list-answereds-plugged): Ditto.
2527         (elmo-imap4-search-internal-primitive): Ditto.
2528         (elmo-imap4-folder-list-any-plugged,
2529         elmo-imap4-folder-list-digest-plugged): Abolish.
2530
2531         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2532         if numbers is nil.
2533
2534 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2535
2536         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2537
2538 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2539
2540         * elmo-util.el (elmo-get-hash-val): Simplify.
2541         (elmo-set-hash-val): Rewrite.
2542
2543 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2544
2545         * elmo.el (elmo-folder-list-messages): Append killed messages into
2546         result if `visible-only' is nil and `in-msgdb' is non-nil.
2547
2548         * elmo-util.el (elmo-uniq-list): Added optional argument
2549         `delete-function'.
2550
2551         * modb.el (elmo-msgdb-flag-count): New API.
2552
2553         * modb-standard.el (modb-standard): Added slot flag-count.
2554         (modb-standard-countup-flags): New function.
2555         (modb-standard-load-flag): Call it.
2556         (elmo-msgdb-append): Ditto.
2557         (elmo-msgdb-clear): Clear slot flag-count.
2558         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2559         (elmo-msgdb-unset-flag): Treat `all' flag and call
2560         modb-standard-countup-flags.
2561         (elmo-msgdb-flag-count): Define.
2562         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2563         (elmo-msgdb-delete-messages): Ditto.
2564
2565         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2566         (elmo-msgdb-flag-count): Define.
2567
2568         * elmo.el (elmo-folder-list-messages): Undo last change.
2569         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2570         (elmo-folder-kill-messages): Unset all flags to numbers.
2571
2572         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2573         elmo-folder-kill-messages.
2574
2575         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2576         (elmo-nntp-folder-delete-messages): Abolish.
2577
2578         * elmo-version.el (elmo-version): Up to 2.11.18.
2579
2580 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2581
2582         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2583         (elmo-folder-kill-messages-range): New function.
2584         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2585         instead of elmo-folder-kill-messages-before.
2586
2587 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2588
2589         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2590         elmo-imap4-current-msgdb to decide entity handler.
2591
2592 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2593
2594         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2595
2596         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2597         inline function.
2598         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2599         (elmo-msgdb-overview-entity-set-number,
2600         elmo-msgdb-overview-entity-get-references,
2601         elmo-msgdb-overview-entity-set-references,
2602         elmo-msgdb-overview-entity-get-from-no-decode,
2603         elmo-msgdb-overview-entity-get-from,
2604         elmo-msgdb-overview-entity-set-from,
2605         elmo-msgdb-overview-entity-get-subject,
2606         elmo-msgdb-overview-entity-get-subject-no-decode,
2607         elmo-msgdb-overview-entity-set-subject,
2608         elmo-msgdb-overview-entity-get-date,
2609         elmo-msgdb-overview-entity-set-date,
2610         elmo-msgdb-overview-entity-get-to,
2611         elmo-msgdb-overview-entity-get-cc,
2612         elmo-msgdb-overview-entity-get-size,
2613         elmo-msgdb-overview-entity-set-size,
2614         elmo-msgdb-overview-entity-get-extra,
2615         elmo-msgdb-overview-entity-set-extra,
2616         elmo-msgdb-overview-entity-get-extra-field,
2617         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2618         (elmo-msgdb-make-index): Use
2619         `elmo-msgdb-overview-entity-get-number-internal'.
2620         (elmo-msgdb-clear-index): Ditto.
2621         (elmo-msgdb-append-entity): Ditto;
2622         Use `elmo-msgdb-overview-entity-get-id-internal'.
2623
2624         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2625         elmo-msgdb-overview-entity-set-number,
2626         elmo-msgdb-overview-entity-get-references,
2627         elmo-msgdb-overview-entity-set-references,
2628         elmo-msgdb-overview-entity-get-from-no-decode,
2629         elmo-msgdb-overview-entity-get-from,
2630         elmo-msgdb-overview-entity-set-from,
2631         elmo-msgdb-overview-entity-get-subject,
2632         elmo-msgdb-overview-entity-get-subject-no-decode,
2633         elmo-msgdb-overview-entity-set-subject,
2634         elmo-msgdb-overview-entity-get-date,
2635         elmo-msgdb-overview-entity-set-date,
2636         elmo-msgdb-overview-entity-get-to,
2637         elmo-msgdb-overview-entity-get-cc,
2638         elmo-msgdb-overview-entity-get-size,
2639         elmo-msgdb-overview-entity-set-size,
2640         elmo-msgdb-overview-entity-get-extra,
2641         elmo-msgdb-overview-entity-set-extra,
2642         elmo-msgdb-overview-entity-get-extra-field,
2643         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2644         and rewrote for backward compatibility.
2645
2646 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2647
2648         * elmo.el (elmo-message-entity-number,
2649         elmo-message-entity-set-number,
2650         elmo-message-entity-field,
2651         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2652
2653         * elmo-msgdb.el (elmo-message-entity-number,
2654         elmo-message-entity-set-number,
2655         elmo-message-entity-field,
2656         elmo-message-entity-set-field): Moved from elmo.el.
2657
2658 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2659
2660         * elmo.el (toplevel): Changed definition orders.
2661
2662 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2663
2664         * modb.el (elmo-msgdb-search): New API .
2665         (elmo-msgdb-match-condition): Ditto.
2666
2667         * modb-standard.el (elmo-msgdb-search): Define.
2668
2669         * modb-legacy.el (elmo-msgdb-search): Ditto.
2670
2671         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2672         from elmo-msgdb-match-condition-internal.
2673
2674         * elmo.el (elmo-folder-search-fast): Abolish.
2675         (elmo-folder-search): Use elmo-msgdb-search and
2676         elmo-with-progress-display.
2677
2678         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2679         as msgdb API.
2680
2681         * elmo.el (elmo-folder): Remove slot message-modified and
2682         flag-modified.
2683         (elmo-folder-set-message-modified): Abolish.
2684         (elmo-generic-folder-commit): Follow the change above.
2685         (elmo-folder-synchronize): Ditto.
2686
2687         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2688
2689         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2690
2691         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2692
2693 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2694
2695         * modb-standard.el (modb-standard-make-message-entity,
2696         elmo-msgdb-make-message-entity,
2697         elmo-msgdb-create-message-entity-from-buffer,
2698         elmo-msgdb-message-entity-number,
2699         elmo-msgdb-message-entity-set-number,
2700         elmo-msgdb-message-entity-field,
2701         elmo-msgdb-message-entity-set-field,
2702         elmo-msgdb-copy-message-entity,
2703         elmo-msgdb-match-condition-internal): Remove.
2704
2705         * modb-entity.el: New file (again).
2706
2707         * modb.el (toplevel): Require modb-entity.
2708         (elmo-msgdb-message-entity-handler): New method.
2709
2710         * modb-standard.el (modb-standard-entity-id): Use
2711         elmo-message-entity-handler.
2712         (modb-standard-load-entity): Ditto.
2713         (elmo-msgdb-append-entity): Ditto.
2714         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2715
2716         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2717         elmo-msgdb-decoded-cache-hashtb,
2718         (modb-legacy-make-message-entity,
2719         elmo-msgdb-make-message-entity,
2720         elmo-msgdb-create-message-entity-from-buffer,
2721         elmo-msgdb-message-entity-number,
2722         elmo-msgdb-message-entity-set-number,
2723         elmo-msgdb-message-entity-field,
2724         elmo-msgdb-message-entity-set-field,
2725         elmo-msgdb-copy-message-entity,
2726         elmo-msgdb-match-condition-internal,
2727         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2728
2729         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2730         (elmo-message-entity-set-number): Ditto.
2731         (elmo-message-entity-field): Ditto.
2732         (elmo-message-entity-set-field): Ditto.
2733
2734         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2735
2736         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2737
2738         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2739
2740         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2741         (elmo-nntp-msgdb-create-message): Ditto.
2742
2743         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2744         (elmo-folder-msgdb-create): Add unread flag.
2745
2746         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2747
2748         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2749
2750         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2751
2752         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2753
2754         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2755         elmo-msgdb-messge-entity-handler.
2756         * elmo-version.el (elmo-version): Up to 2.11.17.
2757
2758 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2759
2760         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2761         change.
2762
2763 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2764
2765         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2766
2767         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2768         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2769         (elmo-msgdb-flag-table): Ditto.
2770         (elmo-msgdb-sort-by-date): Ditto.
2771
2772         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2773
2774         * modb-standard.el (toplevel): Require mime.
2775         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2776         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2777         elmo-msgdb-message-entity-number.
2778         (elmo-msgdb-append-entity): Ditto.
2779         (elmo-msgdb-create-message-entity-from-file): Remove.
2780         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2781         corresponds to the entity.
2782         (elmo-msgdb-message-entity-number): Do nothing currently.
2783         (elmo-msgdb-message-entity-field): Ditto.
2784         (elmo-msgdb-message-entity-set-field): Ditto.
2785         (elmo-msgdb-copy-message-entity): Ditto.
2786         (elmo-msgdb-match-condition-internal): Ditto.
2787
2788         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2789         elmo-util.el.
2790         (elmo-msgdb-create-message-entity-from-file): Remove.
2791
2792         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2793         modb-legacy.el.
2794         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2795
2796         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2797
2798 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2799
2800         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2801         (elmo-msgdb-message-entity-field): Ditto.
2802         (elmo-msgdb-message-entity-number): Ditto.
2803
2804 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2805
2806         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2807         Fixed how to set extra field into entity.
2808         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2809         symbol.
2810
2811         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2812         Fixed how to set extra field into entity.
2813         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2814         symbol.
2815
2816 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2817
2818         * modb.el (elmo-message-entity-db): New function.
2819         (elmo-msgdb-make-message-entity): New API.
2820         (elmo-msgdb-message-entity-number): Ditto.
2821         (elmo-msgdb-message-entity-set-number): Ditto.
2822         (elmo-msgdb-message-entity-field): Ditto.
2823         (elmo-msgdb-message-entity-set-field): Ditto.
2824         (elmo-msgdb-copy-message-entity): Ditto.
2825         (elmo-msgdb-create-message-entity-from-file): Ditto.
2826         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2827         (elmo-msgdb-match-condition-internal): Ditto.
2828
2829         * modb-standard.el (modb-legacy): Require modb-legacy.
2830         (modb-standard-make-message-entity): New inline function.
2831         (elmo-msgdb-make-message-entity): Define.
2832         (elmo-msgdb-create-message-entity-from-file): Ditto.
2833         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2834         (elmo-msgdb-message-entity-field): Ditto.
2835         (elmo-msgdb-message-entity-set-field): Ditto.
2836         (elmo-msgdb-copy-message-entity): Ditto.
2837         (elmo-msgdb-match-condition-internal): Ditto.
2838
2839         * modb-legacy.el: Don't require modb-entity.
2840         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2841         (elmo-msgdb-match-condition-primitive): Ditto.
2842         (elmo-msgdb-get-decoded-cache): Ditto.
2843         (elmo-msgdb-overview-entity-get-id): Ditto.
2844         (elmo-msgdb-overview-entity-get-number): Ditto.
2845         (elmo-msgdb-overview-entity-set-number): Ditto.
2846         (elmo-msgdb-overview-entity-get-references): Ditto.
2847         (elmo-msgdb-overview-entity-set-references): Ditto.
2848         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2849         (elmo-msgdb-overview-entity-get-from): Ditto.
2850         (elmo-msgdb-overview-entity-set-from): Ditto.
2851         (elmo-msgdb-overview-entity-get-subject): Ditto.
2852         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2853         (elmo-msgdb-overview-entity-set-subject): Ditto.
2854         (elmo-msgdb-overview-entity-get-date): Ditto.
2855         (elmo-msgdb-overview-entity-set-date): Ditto.
2856         (elmo-msgdb-overview-entity-get-to): Ditto.
2857         (elmo-msgdb-overview-entity-get-cc): Ditto.
2858         (elmo-msgdb-overview-entity-get-size): Ditto.
2859         (elmo-msgdb-overview-entity-set-size): Ditto.
2860         (elmo-msgdb-overview-entity-get-extra): Ditto.
2861         (elmo-msgdb-overview-entity-set-extra): Ditto.
2862         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2863         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2864         (elmo-msgdb-number-load): Ditto.
2865         (elmo-msgdb-overview-load): Ditto.
2866         (elmo-msgdb-mark-load): Ditto.
2867         (elmo-msgdb-number-save): Ditto.
2868         (elmo-msgdb-mark-save): Ditto.
2869         (elmo-msgdb-overview-save): Ditto.
2870         (modb-legacy-make-message-entity): New inline function.
2871         (elmo-msgdb-insert-file-header): Ditto.
2872         (elmo-msgdb-make-message-entity): Define.
2873         (elmo-msgdb-create-message-entity-from-file): Ditto.
2874         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2875         (elmo-msgdb-message-entity-number): Ditto.
2876         (elmo-msgdb-message-entity-set-number): Ditto.
2877         (elmo-msgdb-message-entity-field): Ditto.
2878         (elmo-msgdb-message-entity-set-field): Ditto.
2879         (elmo-msgdb-copy-message-entity): Ditto.
2880         (elmo-msgdb-match-condition-internal): Ditto.
2881
2882         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2883         (elmo-message-copy-entity): Rewrite.
2884         (elmo-message-entity-number): Ditto.
2885         (elmo-message-entity-set-number): Ditto.
2886         (elmo-message-entity-field): Use elmo-message-entity-db.
2887         (elmo-message-entity-set-field): Ditto.
2888         (elmo-message-field): Rewrite.
2889
2890         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2891         elmo-msgdb.el
2892         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2893
2894         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2895         elmo-message-entity-field.
2896         (elmo-shimbun-folder-shimbun-header): Ditto.
2897         (elmo-shimbun-entity-to-header): Ditto.
2898         (elmo-folder-msgdb-create): Ditto.
2899         (elmo-shimbun-msgdb-create-entity): Ditto;
2900         Use elmo-msgdb-create-message-entity-from-buffer.
2901         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2902         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2903
2904         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2905         elmo-msgdb-create-message-entity-from-file and 
2906         elmo-message-entity-field.
2907
2908         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2909         elmo-message-entity-number.
2910         (elmo-pop3-msgdb-create-message): Use
2911         elmo-msgdb-create-message-entity-from-buffer,
2912         elmo-message-entity-set-field, elmo-message-entity-number and
2913         elmo-message-entity-set-number.
2914
2915         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2916         the API change in elmo-msgdb-make-message-entity.
2917         (elmo-nntp-msgdb-create-message): Use
2918         elmo-msgdb-create-message-entity-from-buffer.
2919
2920         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2921         elmo-message-entity-field and
2922         elmo-msgdb-create-message-entity-from-file.
2923
2924         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2925         (elmo-msgdb-get-field): Abolish.
2926         (elmo-msgdb-get-number): Rewrite.
2927         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2928         (elmo-msgdb-flag-table): Ditto.
2929         (elmo-msgdb-get-last-message-id,
2930         elmo-msgdb-number-load, elmo-msgdb-overview-load,
2931         elmo-msgdb-mark-load, elmo-msgdb-number-save,
2932         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2933         (elmo-msgdb-create-overview-from-buffer,
2934         elmo-msgdb-overview-get-parent-entity): Abolish.
2935
2936         * elmo-mime.el (elmo-mime-display-as-is): Use
2937         elmo-message-entity-field.
2938
2939         * elmo-map.el (elmo-folder-pack-numbers): Use
2940         elmo-message-entity-set-number.
2941
2942         * elmo-maildir.el (elmo-folder-msgdb-create): 
2943         elmo-msgdb-create-message-entity-from-file instead of
2944         elmo-msgdb-create-overview-entity-from-file.
2945
2946         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2947         msgdb.
2948         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2949         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2950
2951         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2952         elmo-messge-entity-field and elmo-message-entity-number.
2953         (elmo-imap4-fetch-callback-1): Call
2954         elmo-msgdb-create-message-entity-from-buffer instead of
2955         elmo-msgdb-create-overview-from-buffer. 
2956         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
2957         (elmo-find-fetch-strategy): Likewise.
2958
2959         * elmo-flag.el (elmo-folder-msgdb-create): Call 
2960         elmo-localdir-msgdb-create-entity with argument msgdb.
2961
2962         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
2963         and elmo-message-entity-set-number.
2964
2965         * elmo-cache.el (elmo-folder-msgdb-create): Use
2966         elmo-message-entity-field.
2967         (elmo-folder-msgdb-create): Call
2968         elmo-msgdb-create-message-entity-from-file instead of
2969         elmo-msgdb-create-overview-entity-from-file.
2970
2971         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
2972         argument msgdb; Call elmo-msgdb-create-message-from-buffer
2973         instead of elmo-msgdb-create-overview-from-buffer.
2974         (elmo-archive-msgdb-create-entity): Ditto.
2975         (elmo-archive-msgdb-create-as-numlist-subr1): Use
2976         elmo-message-entity-field.
2977         (elmo-archive-parse-mmdf): Ditto.
2978
2979         * modb-entity.el: Removed.
2980
2981         * elmo-version.el (elmo-version): Up to 2.11.16.
2982
2983 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
2984
2985         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
2986         `is-local'.
2987         (elmo-folder-flag-as-answered): Ditto.
2988
2989 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2990
2991         * modb-standard.el: New file.
2992
2993         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
2994         elmo-msgdb-convert-type is `sync'.
2995
2996         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
2997         (elmo-msgdb-convert-type): New user option.
2998
2999         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3000         (elmo-load-msgdb): Auto detect saved type.
3001
3002         * elmo-version.el (elmo-version): Up to 2.11.15.
3003
3004 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3005
3006         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3007
3008         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3009         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3010         with argument `delete-if-none' when dst-folder is 'null.
3011
3012         * elmo-flag.el (elmo-folder-append-messages): Defined.
3013         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3014
3015 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3016
3017         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3018
3019 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3020
3021         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3022         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3023         (elmo-folder-commit): Ditto.
3024
3025 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3026
3027         * elmo-flag.el: New file.
3028
3029         * elmo-mark.el: Removed.
3030
3031         * modb-legacy.el (modb-legacy-new-mark,
3032         modb-legacy-unread-uncached-mark,
3033         modb-legacy-unread-cached-mark,
3034         modb-legacy-read-uncached-mark,
3035         modb-legacy-answered-cached-mark,
3036         modb-legacy-answered-uncached-mark,
3037         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3038         All other related portions are changed.
3039
3040         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3041         (elmo-folder-list-messages-with-global-mark): Abolish.
3042         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3043         (elmo-folder-flag-as-important): Ditto.
3044         (elmo-folder-unflag-read): Ditto.
3045         (elmo-folder-flag-as-read): Ditto.
3046         (elmo-folder-unflag-answered): Ditto.
3047         (elmo-folder-flag-as-answered): Ditto.
3048         (elmo-message-encache): Return the cache path.
3049         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3050         (elmo-message-set-flag): Transitional implementation.
3051         (elmo-message-unset-flag): Ditto.
3052         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3053         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3054         (elmo-init): Call elmo-global-flag-initialize.
3055         (toplevel): Added autoload settings for elmo-flag.
3056
3057         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3058
3059         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3060         (elmo-file-cache-delete): Don't treat global-mark.
3061
3062         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3063
3064         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3065
3066         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3067         `elmo-global-flags-set'.
3068
3069         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3070         `flag'.
3071         (elmo-folder-unflag-read): Ditto.
3072         (elmo-folder-unflag-important): Ditto.
3073         (elmo-folder-flag-as-important): Ditto.
3074         (elmo-folder-unflag-answered): Ditto.
3075         (elmo-folder-flag-as-answered): Ditto.
3076
3077         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3078         `elmo-global-flags-set'.
3079         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3080
3081         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3082
3083         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3084         `flag'.
3085         (elmo-folder-flag-as-important): Ditto.
3086         (elmo-folder-unflag-important): Ditto.
3087         (elmo-folder-flag-as-important): Ditto.
3088         (elmo-folder-unflag-read): Ditto.
3089         (elmo-folder-flag-as-read): Ditto.
3090         (elmo-folder-unflag-answered): Ditto.
3091         (elmo-folder-flag-as-answered): Ditto.
3092
3093         * elmo-multi.el (elmo-folder-list-importants): Don't call
3094         elmo-folder-list-messages-with-global-mark.
3095         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3096         (elmo-folder-unflag-important): Ditto.
3097         (elmo-folder-flag-as-read): Ditto.
3098         (elmo-folder-unflag-read): Ditto.
3099         (elmo-folder-flag-as-answered): Ditto.
3100         (elmo-folder-unflag-answered): Ditto.
3101
3102         * elmo-msgdb.el (elmo-msgdb-new-mark,
3103         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3104         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3105         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3106         (Moved to modb-legacy.el).
3107         (elmo-flag-table-get): Treat important flag too.
3108
3109         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3110         `mark' to `flag'.
3111         (elmo-map-folder-flag-as-important): Ditto.
3112         (elmo-map-folder-unflag-read): Ditto.
3113         (elmo-map-folder-flag-as-read): Ditto.
3114         (elmo-map-folder-unflag-answered): Ditto.
3115         (elmo-map-folder-flag-as-answered): Ditto.
3116         (elmo-folder-unflag-important): Ditto.
3117         (elmo-folder-flag-as-important): Ditto.
3118         (elmo-folder-unflag-read): Ditto.
3119         (elmo-folder-flag-as-read): Ditto.
3120         (elmo-folder-unflag-answered): Ditto.
3121         (elmo-folder-flag-as-answered): Ditto.
3122
3123         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3124         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3125         `flag'.
3126         (elmo-map-folder-unflag-important): Ditto.
3127         (elmo-map-folder-flag-as-read): Ditto.
3128         (elmo-map-folder-unflag-read): Ditto.
3129         (elmo-map-folder-flag-as-answered): Ditto.
3130         (elmo-map-folder-unflag-answered): Ditto.
3131
3132         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3133         `elmo-global-flags-set'.
3134         (elmo-global-flags-set): Added autoload setting.
3135
3136         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3137         `flag'.
3138
3139         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3140         `elmo-msgdb-global-mark-set'.
3141         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3142         Call `elmo-global-flags-set'.
3143         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3144         `flag'.
3145         (elmo-folder-flag-as-important-plugged): Ditto.
3146         (elmo-folder-unflag-read-plugged): Ditto.
3147         (elmo-folder-flag-as-read-plugged): Ditto.
3148         (elmo-folder-unflag-answered-plugged): Ditto.
3149         (elmo-folder-flag-as-answered-plugged): Ditto.
3150         (elmo-global-flags-set): Added autoload setting.
3151
3152         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3153         `flag'.
3154         (elmo-folder-unflag-read): Ditto.
3155         (elmo-folder-flag-as-important): Ditto.
3156         (elmo-folder-unflag-important): Ditto.
3157         (elmo-folder-flag-as-answered): Ditto.
3158         (elmo-folder-unflag-answered): Ditto.
3159
3160         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3161         change of `mark'->`flag'.
3162         (elmo-dop-queue-method-name-alist): Ditto.
3163         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3164         (elmo-folder-unflag-read-dop): Ditto.
3165         (elmo-folder-flag-as-important-dop): Ditto.
3166         (elmo-folder-unflag-important-dop): Ditto.
3167         (elmo-folder-flag-as-answered-dop): Ditto.
3168         (elmo-folder-unflag-answered-dop): Ditto.
3169
3170         * elmo-cache.el (elmo-folder-msgdb-create): Call
3171         `elmo-global-flags-set'.
3172
3173         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3174         Call `elmo-global-flags-set'.
3175         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3176         elmo-archive-parse-mmdf with argument `folder'.
3177         (elmo-archive-parse-mmdf): Added argument `folder';
3178         Call `elmo-global-flags-set'.
3179
3180         * elmo-version.el (elmo-version): Up to 2.11.14.
3181
3182 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3183
3184         * modb.el (elmo-msgdb-length): Define.
3185
3186         * elmo.el (elmo-make-folder): Fixed.
3187         (elmo-generic-folder-append-messages): Follow the API change.
3188
3189         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3190         API change.
3191
3192 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3193
3194         * modb.el: New file.
3195
3196         * modb-entity.el: Ditto.
3197
3198         * modb-legacy.el: Ditto.
3199
3200         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3201         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3202         of `elmo-msgdb-overview-get-entity'.
3203         (elmo-msgdb-get-field): Ditto.
3204         (elmo-msgdb-merge): Moved to `elmo.el'.
3205         (elmo-msgdb-length): Removed; redefine as modb method.
3206         (elmo-msgdb-change-mark): Abolish.
3207         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3208         (elmo-msgdb-match-condition): Don't use mark.
3209         (elmo-msgdb-overview-get-entity): Abolish.
3210         Split modb part into `modb*.el'.
3211
3212         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3213
3214         * elmo-shimbun.el (shimbun-mua-search-id): Use
3215         `elmo-msgdb-message-entity' instead of
3216         `elmo-msgdb-overview-get-entity'.
3217         (elmo-shimbun-folder-shimbun-header): Ditto.
3218         (elmo-shimbun-get-headers): Ditto.
3219         (elmo-shimbun-update-overview): Ditto.
3220
3221         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3222
3223         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3224
3225         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3226         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3227
3228         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3229         `elmo-msgdb-mark-to-flags'.
3230
3231         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3232         `elmo-msgdb-set-path'.
3233
3234         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3235  
3236         * elmo-version.el (elmo-version): Up to 2.11.13.
3237
3238         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3239
3240         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3241         of mark.
3242
3243 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3244
3245         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3246         mismatch.
3247
3248 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3249
3250         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3251         instead of `elmo-msgdb-get-cached'.
3252         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3253
3254         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3255         (elmo-msgdb-set-cached): Ditto.
3256         (elmo-msgdb-set-flag): Rewrite.
3257         (elmo-msgdb-unset-flag): Ditto.
3258
3259         * elmo-msgdb.el: Rewrite with luna.
3260
3261         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3262         (elmo-folder-msgdb): Follow the change above.
3263         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3264         (elmo-folder-unmark-important): Follow the API change.
3265         (elmo-folder-mark-as-important): Ditto.
3266         (elmo-folder-unmark-read): Ditto.
3267         (elmo-folder-mark-as-read): Ditto.
3268         (elmo-folder-unmark-answered): Ditto.
3269         (elmo-folder-mark-as-answered): Ditto.
3270         (elmo-folder-clear): Likewise.
3271
3272         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3273         instead of `elmo-msgdb-load' (renamed).
3274
3275         * elmo-version.el (elmo-version): Up to 2.11.12.
3276
3277 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3278
3279         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3280         change.
3281         (elmo-message-mark): Abolish.
3282         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3283         instead of `elmo-msgdb-change-mark'.
3284
3285         * elmo-pipe.el (elmo-message-mark): Abolish.
3286
3287         * elmo-multi.el (elmo-message-mark): Ditto.
3288
3289         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3290         (elmo-msgdb-unread-uncached-mark): Ditto.
3291         (elmo-msgdb-unread-cached-mark): Ditto.
3292         (elmo-msgdb-read-uncached-mark): Ditto.
3293         (elmo-msgdb-answered-cached-mark): Ditto.
3294         (elmo-msgdb-answered-uncached-mark): Ditto.
3295         (elmo-msgdb-important-mark): Ditto.
3296         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3297         `use-cache'.
3298         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3299         `flags'.
3300         (elmo-flag-table-load): Changed flag to list of flag.
3301         (elmo-flag-table-set): If flags is nil, set read flag.
3302         (elmo-flag-table-get): Return derived flags from global mark,
3303         cache status and saved flags.
3304         (elmo-msgdb-flag-table): Follow the change above.
3305         (elmo-msgdb-out-of-date-messages): New function.
3306
3307         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3308
3309         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3310
3311         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3312
3313         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3314         (elmo-nntp-msgdb-create-message): Ditto.
3315
3316         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3317
3318         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3319         independent.
3320         (elmo-folder-msgdb-create): Follow the API change.
3321
3322         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3323         (elmo-folder-append-messages): Ditto.
3324
3325         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3326         (elmo-folder-append-buffer): Ditto.
3327
3328         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3329
3330         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3331
3332         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3333         (elmo-archive-parse-mmdf): Ditto.
3334
3335         * elmo-version.el (elmo-version): Up to 2.11.11.
3336
3337 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3338
3339         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3340         `elmo-msgdb-mark'.
3341
3342         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3343
3344         * elmo-pipe.el (elmo-message-flags): Defined.
3345
3346         * elmo-multi.el (elmo-message-flags): Ditto.
3347
3348 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3349
3350         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3351         `elmo-msgdb-delete-msgs'.
3352
3353         * elmo.el (elmo-folder-count-flags): Don't use
3354         `elmo-msgdb-get-mark-alist'.
3355         (elmo-folder-detach-messages): Follow the API change.
3356
3357         * elmo.el (elmo-folder-list-messages): Append killed messages into
3358         result if `visible-only' is nil.
3359
3360         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3361         canceled messages.
3362         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3363         (elmo-folder-update-number): Likewise.
3364
3365         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3366         (elmo-pop3-sort-msgdb-by-original-number): Use
3367         `elmo-msgdb-sort-entities'.
3368
3369         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3370         (elmo-msgdb-sort-by-date): Use it.
3371         (elmo-msgdb-overview-sort-by-date): Abolish.
3372
3373         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3374
3375         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3376         (elmo-msgdb-flags): New function.
3377         (elmo-msgdb-merge): Use elmo-msgdb-append.
3378
3379         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3380         change.
3381
3382         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3383
3384         * elmo-dop.el (elmo-folder-status-dop): Use
3385         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3386
3387 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3388
3389         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3390
3391         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3392
3393         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3394
3395         * elmo-util.el (elmo-with-progress-display): New macro.
3396
3397         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3398
3399 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3400
3401         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3402         `elmo-folder-list-message-entities' instead of
3403         `elmo-msgdb-get-overview'.
3404         (elmo-map-folder-list-message-locations): Ditto.
3405
3406         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3407         methods instead of treat directly).
3408         (elmo-msgdb-clear): Ditto.
3409         (elmo-msgdb-delete-msgs): Ditto.
3410         (elmo-msgdb-sort-by-date): Ditto.
3411
3412         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3413         local variables.
3414         (elmo-nntp-folder-msgdb-create): Follow the API change.
3415
3416         * elmo-version.el (elmo-version): Up to 2.11.10.
3417
3418 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3419
3420         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3421         (elmo-msgdb-flags-to-mark): Ditto.
3422         (elmo-msgdb-append-entity): Ditto.
3423
3424         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3425         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3426         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3427         (elmo-archive-parse-mmdf): Ditto.
3428
3429         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3430
3431         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3432
3433         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3434
3435         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3436
3437         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3438
3439         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3440
3441         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3442
3443         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3444
3445         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3446         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3447         to empty msgdb.
3448
3449         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3450         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3451         instead of directly construction.
3452         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3453         instead of construct msgdb.
3454
3455         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3456         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3457         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3458         instead of construct msgdb.
3459
3460 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3461
3462         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3463         when field is from or subject.
3464
3465 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3466
3467         * elmo-multi.el (elmo-message-entity-parent): Define.
3468         (elmo-folder-search): Rewrite.
3469
3470 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3471
3472         * elmo-multi.el (elmo-message-cached-p): Define.
3473
3474         * elmo.el (elmo-message-cached-p): New method.
3475         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3476         (elmo-message-flags): New method.
3477         (elmo-message-flagged-p): New function.
3478
3479         * elmo-version.el (elmo-version): Up to 2.11.9.
3480
3481 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3482
3483         * elmo-version.el (elmo-version): Up to 2.11.8.
3484
3485         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3486
3487         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3488
3489 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3490
3491         * elmo.el (elmo-folder-detach-messages): Undo last change.
3492
3493 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3494
3495         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3496
3497         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3498         only when src folder type is pop3.
3499
3500 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3501
3502         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3503         elmo-msgdb-overview-entity-get-number instead of
3504         elmo-message-entity-number.
3505
3506 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3507
3508         * elmo-version.el (elmo-version): Up to 2.11.7.
3509
3510 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3511
3512         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3513         function.
3514
3515         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3516         (elmo-msgdb-merge): New function.
3517         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3518         (elmo-msgdb-make-index): Rewrite.
3519
3520         * elmo-version.el (elmo-version): Up to 2.11.6.
3521
3522         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3523         use it as a the path for loading message entities.
3524
3525         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3526
3527 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3528
3529         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3530         message-modified slot of itself if it does not require target msgdb.
3531
3532         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3533         if folder length is zero.
3534         (elmo-mime-display-as-is): Ditto.
3535
3536         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3537
3538         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3539
3540 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3541
3542         * elmo.el (elmo-folder-set-message-modified): New method.
3543         (elmo-generic-folder-commit): Use it.
3544         (elmo-folder-synchronize): Ditto.
3545
3546         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3547         (elmo-folder-commit): Remove duplicate definition.
3548
3549 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3550
3551         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3552
3553 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3554
3555         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3556         (elmo-strict-folder-diff): Ditto.
3557         (elmo-folder-set-info-max-by-numdb): Simplify.
3558
3559         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3560         elmo-msgdb-list-messages.
3561
3562         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3563         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3564
3565 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3566
3567         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3568         visible-only is non-nil.
3569         (elmo-folder-confirm-appends): Changed message.
3570         (elmo-folder-synchronize): Added argument disable-killed.
3571
3572         * elmo-multi.el (elmo-folder-synchronize): Added argument
3573         disable-killed.
3574
3575         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3576
3577         * elmo-version.el (elmo-version): Up to 2.11.5.
3578
3579         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3580         elmo-list-filter.
3581
3582         * elmo-util.el (elmo-list-filter): Simplify.
3583
3584         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3585         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3586         (elmo-generic-folder-diff): Abolish argument.
3587         (elmo-msgdb-load): Don't use number-alist.
3588
3589         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3590
3591         * elmo-pipe.el (elmo-folder-diff): Ditto.
3592
3593         * elmo-nmz.el (elmo-folder-diff): Ditto.
3594
3595         * elmo-net.el (elmo-folder-diff): Ditto.
3596
3597         * elmo-maildir.el (elmo-folder-diff): Ditto.
3598
3599         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3600
3601         * elmo-multi.el (elmo-folder-diff): Ditto
3602         (elmo-multi-folder-diff): Rewrite.
3603
3604 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3605
3606         * elmo-pipe.el (elmo-folder-msgdb): Define.
3607
3608 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3609
3610         * elmo.el (elmo-message-set-cached): Define as a method.
3611
3612         * elmo-pipe.el (elmo-message-set-cached): Define.
3613         (elmo-find-fetch-strategy): Ditto.
3614
3615         * elmo-multi.el (elmo-message-set-cached): Define.
3616         (elmo-find-fetch-strategy): Rewrite.
3617
3618         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3619
3620         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3621
3622 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3623
3624         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3625         instead of number-alist.
3626
3627         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3628         mark nor message-id when msgdb of source folder is not loaded.
3629
3630         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3631
3632         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3633
3634 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3635
3636         * elmo.el (elmo-folder-length): Don't require msgdb.
3637
3638 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3639
3640         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3641         (elmo-message-field): Ditto.
3642
3643         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3644         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3645         slot.
3646         (elmo-map-folder-list-answereds): Define.
3647         (elmo-maildir-list-location): Treat 'R' info.
3648         (elmo-folder-msgdb-create): Treat flag-table.
3649         (elmo-folder-append-messages): Save flag-table.
3650
3651 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3652
3653         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3654         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3655
3656 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3657
3658         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3659
3660         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3661         'read when mark is null.
3662
3663 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3664
3665         * elmo-version.el (elmo-version): Up to 2.11.4.
3666
3667 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3668
3669         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3670         (elmo-folder-mark-as-answered): Ditto.
3671
3672 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3673
3674         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3675         (elmo-pop3-get-session): Make msgdb directory after session.
3676         (elmo-folder-exists-p): Check exactly at the first time even when the
3677         elmo-pop3-exists-exactly is nil.
3678
3679         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3680         (elmo-folder-list-messages): Define instead of
3681         elmo-folder-list-messages-internal.
3682         (elmo-folder-check): Check destination folder.
3683         (elmo-folder-synchronize): Drain the pipe.
3684
3685         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3686         when msgdb is not loaded.
3687
3688         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3689
3690         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3691         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3692         messages.
3693
3694         * elmo.el (elmo-folder-kill-messages-before): New function.
3695         (elmo-folder-kill-messages): Ditto.
3696         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3697
3698         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3699         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3700         killed not by synchronize (e.g. scoring).
3701
3702 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3703
3704         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3705         treated.
3706         (elmo-folder-search): Follow the change above.
3707
3708         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3709         into the candidates of search field.
3710
3711 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3712
3713         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3714         (elmo-msgdb-unset-flag): Ditto.
3715
3716         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3717
3718 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3719
3720         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3721         (elmo-folder-commit): Define.
3722         (elmo-folder-synchronize): Ditto.
3723         (elmo-folder-list-flagged): Ditto.
3724         (elmo-folder-commit): Ditto.
3725         (elmo-folder-length): Ditto.
3726         (elmo-folder-count-flags): Ditto.
3727         (elmo-message-mark): Ditto.
3728         (elmo-message-field): Ditto.
3729         (elmo-message-entity): Ditto.
3730         (elmo-message-folder): Ditto.
3731
3732 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3733
3734         * elmo.el (elmo-message-field): Define as a method.
3735
3736         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3737         (elmo-message-field): Define.
3738
3739         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3740         (elmo-folder-list-importants): Ditto.
3741         (elmo-folder-list-answereds): Ditto.
3742
3743         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3744         qualifier.
3745         (elmo-folder-mark-as-read): Ditto.
3746         (elmo-folder-unmark-read): Ditto.
3747         (elmo-folder-mark-as-answered): Ditto.
3748         (elmo-folder-unmark-answered): Ditto.
3749         (elmo-folder-list-flagged): Define.
3750         (elmo-folder-commit): Ditto.
3751         (elmo-folder-length): Ditto.
3752         (elmo-folder-count-flags): Ditto.
3753
3754 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3755
3756         * elmo.el (elmo-folder-detach-messages): New method.
3757         (elmo-folder-move-messages): Use it.
3758         (elmo-folder-synchronize): Ditto.
3759
3760         * elmo-multi.el (elmo-folder-detach-messages): Define.
3761
3762         * elmo.el (elmo-message-copy-entity): New function.
3763         (elmo-message-entity-set-number): Ditto.
3764         (elmo-message-mark): Define as method.
3765
3766         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3767         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3768         (elmo-message-entity): Fixed last change.
3769         (elmo-message-mark): Define.
3770         (elmo-folder-msgdb-create): Abolish.
3771         (elmo-multi-folder-append-msgdb): Ditto.
3772         (elmo-multi-folder-diff): Fixed.
3773         (elmo-multi-split-number-alist): Removed.
3774         (elmo-multi-split-mark-alist): Removed.
3775         (elmo-folder-list-messages): Define.
3776         (elmo-folder-list-messages-internal): Removed.
3777
3778         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3779         local file messages.
3780         (elmo-folder-msgdb-create): Fixed read mark.
3781
3782 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3783
3784         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3785         if mark is nil.
3786
3787 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3788
3789         * elmo.el (elmo-folder-list-message-entities): Define as inline
3790         function.
3791         (elmo-folder-messages): Abolish.
3792
3793         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3794         folder.
3795         (elmo-folder-synchronize): Define.
3796         (elmo-message-entity): Define.
3797
3798 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3799
3800         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3801         elmo-imap4-session-select-mailbox.
3802
3803         * elmo.el (elmo-folder-move-messages): Don't display any message.
3804
3805         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3806         parsing.
3807         (elmo-imap4-session-check): Don't wait CHECK response.
3808         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3809
3810 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3811
3812         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3813
3814 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3815
3816         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3817         API.
3818         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3819
3820
3821         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3822         (elmo-folder-list-message-entities): Added argument in-msgdb and
3823         numbers.
3824         (elmo-folder-synchronize): Define as a method.
3825
3826         * elmo-nntp.el (elmo-folder-initialize): Don't use
3827         elmo-nntp-default-user if zero-length username is specified
3828         explicitly.
3829
3830 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3831
3832         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3833         server name in case with username.
3834         (XXX: this is ad-hoc fix against username includes "@", it
3835         should be solved fundamentally)
3836
3837 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3838
3839         * elmo-nntp.el (elmo-nntp-debug): New function.
3840         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3841         (elmo-network-authenticate-session): Hide auth-info from the log.
3842
3843         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3844         user name if it is equal to elmo-nntp-default-user.
3845
3846 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3847
3848         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3849         instead of shimbun-server-internal;
3850         Use shimbun-current-group instead of shimbun-current-group-internal.
3851         (elmo-folder-plugged-p): Use shimbun-server instead of
3852         shimbun-server-internal.
3853         (elmo-folder-set-plugged): Ditto.
3854         (elmo-net-port-info): Ditto.
3855         (elmo-folder-check): Ditto.
3856         (elmo-folder-expand-msgdb-path): Ditto.
3857         (elmo-folder-list-subfolders): Ditto.
3858
3859 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3860
3861         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3862         Convert field-name to lower case.
3863         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3864
3865 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3866
3867         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3868         `message' and `error' take format string.
3869
3870 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3871
3872         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3873
3874 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3875
3876         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3877         recursive call (can't byte compile on emacs 20.7).
3878
3879 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3880
3881         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3882         (elmo-folder-list-message-entities): New API.
3883         (elmo-message-entity): Ditto.
3884         (elmo-message-entity-parent): Ditto.
3885         (elmo-folder-do-each-message-entity): Ditto.
3886         (elmo-message-entity-number): Ditto.
3887         (elmo-message-entity-field): Ditto.
3888         (elmo-message-entity-set-field): Ditto.
3889         (elmo-folder-count-flags): Ditto.
3890         (elmo-folder-length): Ditto.
3891
3892         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3893         not.
3894
3895         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3896         (elmo-msgdb-count-marks): Abolish.
3897         (elmo-msgdb-make-entity): Ditto.
3898         (elmo-msgdb-do-each-entity): Ditto.
3899         (elmo-msgdb-message-entity): New inline function.
3900         (elmo-msgdb-message-entity-field): Ditto.
3901         (elmo-msgdb-message-entity-set-field): Ditto.
3902         (elmo-msgdb-make-message-entity): New function.
3903
3904 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3905
3906         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3907         to flag. (All other related portions are changed.)
3908         (elmo-folder-msgdb-create): Likewise.
3909         (elmo-generic-folder-append-messages): Use flag-table instead of
3910         seen-list.
3911         (elmo-folder-move-messages): Removed redundant process.
3912         (elmo-folder-synchronize): Likewise.
3913
3914         * elmo-msgdb.el (elmo-flag-table-get): New function.
3915         (elmo-flag-table-save): Fixed.
3916         (elmo-msgdb-length): New inline function.
3917         (elmo-msgdb-flag-table): New function.
3918         (elmo-msgdb-mark): Add optional argument new.
3919         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3920         (elmo-msgdb-seen-list): Ditto.
3921         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3922
3923
3924 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3925
3926         * elmo.el (elmo-message-set-mark): Abolish.
3927         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3928         (All related portions are changed.)
3929
3930         * elmo-msgdb.el (toplevel): Added comment.
3931         (elmo-load-msgdb): Added 4th element `path'.
3932         (elmo-msgdb-append): Follow the change above.
3933         (elmo-msgdb-clear): Ditto.
3934         (elmo-msgdb-delete-msgs): Ditto.
3935         (elmo-msgdb-get-path): New inline function.
3936         (elmo-msgdb-set-path): Ditto.
3937         (elmo-flag-table-filename): New variable.
3938         (elmo-flag-table-load): New function.
3939         (elmo-flag-table-set): Ditto.
3940         (elmo-flag-table-save): Ditto.
3941         (elmo-msgdb-get-field-value): Abolish.
3942         (elmo-msgdb-overview-get-entity-by-number): Ditto.
3943
3944 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
3945
3946         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3947         the folder has been deleted successfully.
3948         * elmo-imap4.el (elmo-folder-delete): Ditto.
3949         * elmo-archive.el (elmo-folder-delete): Ditto.
3950         * elmo-localdir.el (elmo-folder-delete): Ditto.
3951         * elmo-maildir.el (elmo-folder-delete): Ditto.
3952
3953 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
3954
3955         * elmo-util.el (elmo-string-member-ignore-case): New function.
3956         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
3957         (elmo-imap4-fetch-callback-1-subr): Likewise.
3958
3959 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
3960
3961         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
3962         the case of the name attribute "\Noselect".
3963
3964 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3965
3966         * elmo.el (elmo-folder-rename-internal): New method to cause error.
3967
3968         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
3969         flist, is not always a member of onum-alist.
3970
3971 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3972
3973         * elmo-version.el (elmo-version): Up to 2.11.3.
3974
3975 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3976
3977         * elmo-maildir.el (elmo-folder-rename-internal): New method,
3978         copied from localdir's one.
3979
3980         * elmo-pipe.el (elmo-folder-rename): New method, rename
3981         destination folder with leaving source folder as it is.
3982
3983 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
3984
3985         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
3986         replace-regexp.
3987
3988 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3989
3990         * elmo-version.el (elmo-version): Up to 2.11.2.
3991
3992 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3993
3994         * elmo-shimbun.el (elmo-folder-initialize): Do not call
3995         shimbun-open in case of "@".
3996         (elmo-folder-open-internal): Cope with shimbun = nil case.
3997         (elmo-folder-plugged-p): Ditto.
3998         (elmo-folder-list-subfolders): Make list for "@/" group.
3999
4000 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4001
4002         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4003         mailbox (e.g. for %~/something).
4004
4005 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4006
4007         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4008         Replace nested conditional with guard clauses.
4009
4010 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4011
4012         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4013         error [wl:11327].
4014
4015         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4016         print-depth.
4017
4018 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4019
4020         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4021         Replace nested conditional with guard clauses.
4022
4023 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4024
4025         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4026         (elmo-passwd-alist-save): Ditto.
4027         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4028
4029 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4030
4031         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4032         dir-name only if it is absolute path.
4033         (TODO: distinguish +/something and +something)
4034
4035 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4036
4037         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4038         path for "+~/something".
4039
4040 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4041
4042         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4043         as non-directory, cause error before rename-file.
4044         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4045         apropriately, mimic localdir's one.
4046         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4047
4048 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4049
4050         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4051
4052 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4053
4054         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4055
4056         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4057         
4058         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4059         is included in the global-mark or not.
4060
4061 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4062
4063         * utf7.el (toplevel): Avoid error when the function
4064         find-coding-system does not exist.
4065
4066 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4067
4068         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4069         cache even if the folder is plugged.
4070         (elmo-nntp-search-primitive): Do nothing when body search is
4071         invoked (although it is not used by the change above).
4072         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4073
4074 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4075
4076         * elmo-version.el (elmo-version): Up to 2.11.1.
4077
4078 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4079
4080         * elmo-archive.el: Specify charset.
4081
4082 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4083
4084         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4085         process buffer lives or not.
4086
4087         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4088         while flushing queues (It causes infinite loop).
4089
4090 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4091
4092         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4093
4094 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4095
4096         * utf7.el (toplevel): Check the ucs features dynamically.
4097         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4098
4099         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4100         folder is creatabe or not if it already exists.
4101
4102 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4103
4104         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4105
4106         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4107
4108         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4109         (elmo-imap4-read-response): Take care of garbage response.
4110
4111 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4112
4113         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4114         just return nil instead of error.
4115
4116 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4117
4118         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4119         search-key is "body".
4120
4121 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4122
4123         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4124         of elmo-string-matched-assoc to use match-data.
4125         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4126
4127 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4128
4129         * elmo-split.el (elmo-split->): New function.
4130         (elmo-split-<): Ditto.
4131
4132 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4133
4134         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4135         workaround for invalid message-id.
4136
4137 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4138
4139         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4140         return normal pop3 session or pop3 biff session.
4141
4142 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4143
4144         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4145         info part to the cur files when the new files already have it.
4146         (Adviced by Jared Rhine <jared@wordzoo.com>)
4147
4148 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4149
4150         * elmo-split.el (elmo-split-default-action): New variable.
4151         (elmo-split-subr): Use it if all other conditions are passed.
4152         Extend `fname' and rename it as `action'. (implemented
4153         Teranishi-san's idea in [wl:10800])
4154
4155 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4156
4157         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4158         * elmo-util.el: Ditto.
4159
4160 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4161
4162         * elmo.el (elmo-message-accessible-p): Renamed from
4163         elmo-message-cached-p and rewritten.
4164
4165 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4166
4167         * elmo.el (elmo-folder-list-flagged): New generic function.
4168         (elmo-folder-list-importants): New implementation.
4169         (elmo-folder-list-answereds): Ditto.
4170         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4171         Added 'digest'.
4172         (elmo-message-cached-p): New function.
4173         (elmo-message-set-flag): Ditto (no content).
4174         (elmo-message-unset-flag): Ditto.
4175         (elmo-folder-list-messages-mark-match): Abolish.
4176
4177         * elmo-util.el (elmo-regexp-opt): New function.
4178
4179         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4180         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4181         Added 'digest'.
4182         (elmo-msgdb-list-flagged): New function.
4183
4184         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4185         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4186         Added 'digest'.
4187
4188         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4189
4190 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4191
4192         * elmo-version.el (elmo-version): Up to 2.11.0.
4193
4194 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4195
4196         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4197         `elmo-file-cache-exists-p'; use proper mark that depends on
4198         `use-cache'.
4199         (elmo-msgdb-unset-flag): Ditto.
4200         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4201
4202         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4203         with 4th argument `use-cache'.
4204
4205 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4206
4207         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4208         (elmo-folder-mark-as-important): Ditto.
4209         (elmo-folder-unmark-read): Ditto.
4210         (elmo-folder-mark-as-read): Ditto.
4211         (elmo-folder-unmark-answered): Ditto.
4212         (elmo-folder-mark-as-answered): Ditto.
4213
4214         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4215         message status.
4216         (elmo-msgdb-mark): Likewise.
4217         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4218         (elmo-msgdb-unset-flag): Likewise.
4219
4220         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4221
4222 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4223
4224         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4225         `last:' filter.
4226
4227 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4228
4229         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4230         set spool-length to 0.
4231
4232 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4233
4234         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4235         (elmo-dop-queue-flush): Fixed last change.
4236
4237 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4238
4239         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4240         if require-msgdb slot is nil.
4241         (elmo-folder-list-importants): Likewise.
4242
4243 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4244
4245         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4246         mark is changed.
4247
4248         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4249         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4250         is changed.
4251
4252 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4253
4254         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4255
4256 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4257
4258         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4259
4260         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4261
4262 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4263
4264         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4265         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4266
4267 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4268
4269         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4270         the problem reported by Sean Rima [wl-en:180].
4271
4272 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4273
4274         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4275
4276         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4277
4278         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4279
4280         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4281
4282         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4283
4284         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4285
4286         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4287
4288 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4289
4290         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4291         status number.
4292
4293 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4294
4295         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4296         (elmo-folder-mark-as-read): Follow the API change.
4297         (elmo-message-set-cached): New function.
4298
4299         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4300
4301         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4302
4303         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4304         (elmo-folder-mark-as-important): Ditto.
4305         (elmo-folder-unmark-read): Ditto.
4306         (elmo-folder-mark-as-read): Ditto.
4307         (elmo-folder-unmark-answered): Ditto.
4308         (elmo-folder-mark-as-answered): Ditto.
4309
4310         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4311         (elmo-folder-unmark-important): Ditto.
4312         (elmo-folder-mark-as-read): Ditto.
4313         (elmo-folder-unmark-read): Ditto.
4314         (elmo-folder-mark-as-answered): Ditto.
4315         (elmo-folder-unmark-answered): Ditto.
4316
4317         * elmo-mark.el (toplevel): Removed some mark method definitions.
4318
4319         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4320         (elmo-map-folder-mark-as-answered): Ditto.
4321         (elmo-folder-unmark-important): Add :before qualifier.
4322         (elmo-folder-mark-as-important): Ditto.
4323         (elmo-folder-unmark-read): Ditto.
4324         (elmo-folder-mark-as-read): Ditto.
4325         (elmo-folder-unmark-answered): Define.
4326         (elmo-folder-mark-as-answered): Ditto.
4327
4328         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4329         (elmo-map-folder-unmark-answered): Ditto.
4330
4331         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4332
4333         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4334         (elmo-folder-mark-as-important): Ditto.
4335         (elmo-folder-unmark-read): Ditto.
4336         (elmo-folder-mark-as-read): Ditto.
4337         (elmo-folder-unmark-answered): Ditto.
4338         (elmo-folder-mark-as-answered): Ditto.
4339
4340         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4341         `mark'; evaluate mark condition.
4342         (elmo-msgdb-match-condition-internal): New function.
4343         (elmo-msgdb-match-condition): Call it; changed argument.
4344
4345         * elmo.el (elmo-folder-search): Follow the API change on
4346         `elmo-msgdb-match-condition'.
4347
4348 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4349
4350         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4351         original mark is non-nil.
4352
4353 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4354
4355         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4356         (elmo-map-folder-list-answereds): New method.
4357         (elmo-folder-list-unreads): Add :around qualifier.
4358         (elmo-folder-list-importants): Ditto.
4359         (elmo-folder-list-answereds): Ditto.
4360
4361 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4362
4363         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4364
4365         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4366         method if msgdb is not required.
4367         (elmo-filter-folder-list-importants): Don't treat global-mark.
4368
4369         * elmo.el (elmo-folder-list-importants): Ditto.
4370
4371         * elmo-net.el (elmo-folder-list-importants): Ditto.
4372
4373         * elmo-map.el (elmo-folder-list-importants): Ditto.
4374
4375         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4376
4377         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4378         (elmo-imap4-folder-list-any-plugged): New function.
4379         (elmo-imap4-search-internal-primitive): Use it.
4380
4381         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4382         only when require-msgdb slot is non-nil.
4383         (elmo-folder-close): Clear target folder's msgdb.
4384
4385 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4386
4387         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4388         (elmo-pop3-msgdb-create-by-header): Ditto.
4389         (elmo-pop3-msgdb-create-message): Ditto.
4390
4391         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4392
4393         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4394
4395         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4396
4397         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4398         (elmo-folder-msgdb-create): Ditto.
4399         (elmo-nntp-folder-msgdb-create): Ditto.
4400         (elmo-nntp-msgdb-create-by-header): Ditto.
4401         (elmo-nntp-msgdb-create-message): Ditto.
4402         (elmo-folder-list-unreads): Define.
4403
4404         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4405         (elmo-folder-append-messages): Ditto.
4406         (elmo-folder-list-unreads): Define.
4407         (elmo-folder-list-importants): Ditto.
4408         (elmo-folder-list-answereds): Ditto.
4409
4410         * elmo-net.el (elmo-folder-list-unreads): Define.
4411         (elmo-folder-list-importants): Ditto.
4412         (elmo-folder-list-answereds): Ditto.
4413         (elmo-folder-list-answereds-plugged): Ditto.
4414         (elmo-folder-msgdb-create): Follow the API change.
4415         (elmo-folder-msgdb-create-unplugged): Ditto.
4416         (elmo-folder-unmark-answered): Define.
4417         (elmo-folder-mark-as-answered-unplugged): Ditto.
4418         (elmo-folder-unmark-answered-unplugged): Ditto.
4419
4420         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4421         (elmo-msgdb-unread-uncached-mark): Ditto.
4422         (elmo-msgdb-unread-cached-mark): Ditto.
4423         (elmo-msgdb-read-uncached-mark): Ditto.
4424         (elmo-msgdb-answered-cached-mark): Ditto.
4425         (elmo-msgdb-answered-uncached-mark): Ditto.
4426         (elmo-msgdb-important-mark): Ditto.
4427         (elmo-msgdb-set-mark): Rewrite.
4428         (elmo-msgdb-count-marks): Rewrite.
4429         (elmo-msgdb-mark-alist-set): Abolish.
4430         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4431         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4432
4433         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4434         (elmo-folder-close): Define.
4435         (elmo-folder-msgdb-create): Follow the API change.
4436         (elmo-folder-list-unreads): Rewrite.
4437         (elmo-folder-mark-as-important): Ditto.
4438         (elmo-folder-unmark-important): Ditto.
4439         (elmo-folder-mark-as-read): Ditto.
4440         (elmo-folder-unmark-read): Ditto.
4441         (elmo-folder-mark-as-answered): Define.
4442         (elmo-folder-unmark-answered): Ditto.
4443
4444         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4445         (elmo-folder-append-messages): Ditto.
4446
4447         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4448
4449         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4450         (elmo-folder-list-importants): Ditto.
4451
4452         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4453         (elmo-folder-append-messages): Ditto.
4454
4455         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4456         change.
4457         (elmo-folder-msgdb-create-plugged): Ditto.
4458         (elmo-folder-append-messages): Ditto.
4459         (elmo-folder-list-answereds-plugged): Define.
4460         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4461         (elmo-folder-unmark-answered-plugged): Define.
4462         (elmo-folder-mark-as-answered-plugged): Ditto.
4463         (elmo-folder-search-requires-msgdb-p): Ditto.
4464
4465         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4466         (elmo-folder-initialize): Set it.
4467         (elmo-folder-msgdb): Define.
4468         (elmo-folder-check): Call elmo-folder-synchronize.
4469         (elmo-folder-close): Define.
4470         (elmo-folder-commit): Ditto.
4471         (elmo-folder-msgdb-create): Rewrite.
4472         (elmo-folder-list-unreads): Ditto.
4473         (elmo-folder-list-importants): Ditto.
4474         (elmo-folder-mark-as-read): Ditto.
4475         (elmo-folder-unmark-read): Ditto.
4476         (elmo-folder-mark-as-important): Ditto.
4477         (elmo-folder-unmark-important): Ditto.
4478         (elmo-folder-mark-as-answered): Define.
4479         (elmo-folder-unmark-answered): Ditto.
4480
4481         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4482         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4483         (elmo-dop-queue-method-name-alist): Likewise.
4484         (elmo-folder-mark-as-answered-dop): New inline function.
4485         (elmo-folder-unmark-answered-dop): Ditto.
4486         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4487
4488         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4489         (elmo-folder-msgdb-create): Ditto.
4490         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4491         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4492         (elmo-archive-parse-mmdf): Ditto.
4493
4494         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4495         (elmo-folder-list-unreads-internal): Ditto.
4496
4497         * elmo.el (elmo-folder-msgdb): Define as generic function.
4498         (elmo-folder-list-messages): Added argument `in-msgdb'.
4499         (elmo-folder-list-unreads): Define as generic function.
4500         (elmo-folder-list-importants): Ditto.
4501         (elmo-folder-list-answereds): Ditto.
4502         (elmo-folder-list-messages-with-global-mark): New function.
4503         (elmo-folder-msgdb-create): Removed mark arguments.
4504         (elmo-folder-unmark-answered): New generic function.
4505         (elmo-folder-mark-as-answered): Ditto.
4506         (elmo-folder-append-messages): Removed argunment `unread-marks'
4507         (elmo-folder-list-unreads-internal): Abolish.
4508         (elmo-folder-list-importants-internal): Ditto.
4509         (elmo-folder-search-requires-msgdb-p): New generic function.
4510         (elmo-folder-search-requires-msgdb-p-internal): New function.
4511         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4512         elmo-msgdb-load.
4513         (elmo-folder-search-fast): Added key 'mark'.
4514         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4515         instead of unread-marks argument.
4516         (elmo-folder-move-messages): Removed argunment `unread-marks'
4517         (elmo-folder-unmark-important): Define.
4518         (elmo-folder-mark-as-important): Ditto.
4519         (elmo-folder-unmark-read): Ditto.
4520         (elmo-folder-mark-as-read): Ditto.
4521         (elmo-folder-unmark-answered): Ditto.
4522         (elmo-folder-mark-as-answered): Ditto.
4523         (elmo-folder-replace-marks): Abolish.
4524         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4525         duplicates.
4526         (elmo-folder-synchronize): Removed mark arguments;
4527         return crosspost only number.
4528
4529 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4530
4531         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4532         Remove redundunt connectivity check.
4533
4534 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4535
4536         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4537         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4538
4539 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4540
4541         * pldap.el (ldap-decode-string): Return string as-is if
4542         `ldap-coding-system' is nil.
4543         (ldap-encode-string): Ditto.
4544         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4545         (ldap-default-host): Fixed docstring.
4546
4547 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4548
4549         * elmo-util.el (elmo-warning): Define as a macro which uses
4550         `display-warning' if it is defined as a function.
4551
4552         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4553         (elmo-split-equal): Use it.
4554         (elmo-split-match): Ditto.
4555         (elmo-split-message-entity): New buffer-local variable.
4556         (elmo-split-subr): Set it.
4557
4558         * elmo-version.el (elmo-version): Up to 2.9.15.
4559
4560 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4561
4562         * elmo-imap4.el (elmo-network-initialize-session):
4563         Check capability after starttls.
4564
4565 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4566
4567         * elmo-util.el (elmo-list-delete): Added optional argument
4568         DELETE-FUNCTION.
4569
4570         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4571
4572         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4573
4574         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4575
4576         * elmo-imap4.el (elmo-folder-initialize): Don't use
4577         elmo-imap4-default-mailbox.
4578
4579 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4580
4581         * elmo-split.el (toplevel): Use `product-provide'.
4582         (elmo-split): Checkdoc.
4583
4584 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4585
4586         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4587         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4588         the function `elmo-imap4-debug-1'.
4589
4590 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4591
4592         * elmo-split.el (elmo-split): Moved to run hooks and to show
4593         message from elmo-split-subr.
4594         (elmo-split-subr): Follow the change above.
4595
4596         * elmo-split.el (elmo-split-subr): New function (renamed from
4597         elmo-split-subr).
4598         (elmo-split): Changed to call elmo-split-subr by element of
4599         elmo-split-folder.
4600         (elmo-split-folder): Changed customization type to choice.
4601
4602 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4603
4604         * elmo-split.el (elmo-split-and): Fixed condition.
4605
4606 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4607
4608         * elmo-split.el: New file.
4609         (elmo-split): Fixed logic.
4610         Display "Test:" instead of "Folder:" when reharsal.
4611
4612         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4613         explicitly.
4614
4615         * elmo-version.el (elmo-version): Up to 2.9.14.
4616
4617         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4618         wl-expand-newtext).
4619
4620 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4621
4622         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4623         message with no message-id field.
4624
4625 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4626
4627         * elmo-version.el (elmo-version): Up to 2.9.13.
4628
4629         * elmo-dop.el (elmo-folder-status-dop): Fix.
4630
4631 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4632
4633         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4634
4635         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4636         changing default value of default-mime-charset.
4637         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4638
4639         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4640
4641         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4642         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4643         instead of elmo-dop-queue-method-name-alist to check merging queue.
4644         (elmo-folder-delete-messages-dop): Delete from queue if negative
4645         message number.
4646         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4647         file is already removed.
4648
4649 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4650
4651         * elmo-vars.el: Bind colon keywords for old Emacsen.
4652
4653 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4654
4655         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4656         against non-exsisting charset.
4657
4658 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4659
4660         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4661         Use eword-decode-and-unfold-unstructured-field-body.
4662
4663         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4664         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4665         exists to decode raw subject string.
4666         (toplevel): Require 'mime.
4667
4668         * elmo-version.el (elmo-version): Up to 2.9.12.
4669
4670 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4671
4672         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4673         (elmo-msgdb-set-mark): Ditto.
4674
4675         * elmo-version.el (elmo-version): Up to 2.9.11.
4676
4677 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4678
4679         * elmo-util.el (elmo-delete-match-files): New function.
4680
4681         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4682         instead of elmo-delete-directory.
4683
4684         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4685         elmo-hash-minimun-size as 63.
4686
4687         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4688         elmo-diff-unread is nil.
4689
4690         * elmo-imap4.el (elmo-folder-open): Fix.
4691
4692         * elmo.el (elmo-message-mark): Rewrite.
4693         (elmo-message-field): Ditto.
4694         (elmo-message-set-mark): Ditto.
4695         (elmo-folder-replace-marks): New function.
4696         (elmo-generic-folder-append-msgdb): Removed third argument for
4697         elmo-msgdb-append.
4698         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4699         (elmo-msgdb-load): New implementation.
4700
4701         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4702
4703         * elmo-util.el (elmo-list-insert): New implementation.
4704
4705         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4706         argument for elmo-msgdb-append.
4707         
4708
4709         * elmo-msgdb.el (elmo-load-msgdb): New function.
4710         (elmo-make-msgdb): Ditto.
4711         (elmo-msgdb-get-index): New inline function.
4712         (elmo-msgdb-set-index): Ditto.
4713         (elmo-msgdb-get-entity-hashtb): Ditto.
4714         (elmo-msgdb-get-mark-hashtb): Ditto.
4715         (elmo-msgdb-get-mark): Ditto.
4716         (elmo-msgdb-set-mark): Ditto.
4717         (elmo-msgdb-count-marks): Ditto.
4718         (elmo-msgdb-get-number): Ditto.
4719         (elmo-msgdb-get-field): Ditto.
4720         (elmo-msgdb-seen-list): Ditto.
4721         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4722         (elmo-msgdb-delete-msgs): Follow the changes above.
4723         (elmo-msgdb-overview-get-entity): Ditto.
4724         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4725         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4726         and rewritten.
4727         (elmo-msgdb-make-index): Likewise.
4728         (elmo-msgdb-append): Removed third argument.
4729         (elmo-msgdb-clear): Clear index as nil.
4730         (elmo-folder-set-info-hashtb): Removed.
4731         (elmo-folder-set-info-max-by-numdb): Ditto.
4732         (elmo-folder-info-make-hashtb): Ditto.
4733
4734         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4735
4736         * elmo-map.el (elmo-folder-pack-number): Ditto.
4737
4738 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4739
4740         * elmo-version.el (elmo-version): Up to 2.9.10.
4741
4742         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4743
4744         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4745
4746 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4747
4748         * elmo-utils.el (elmo-make-directory): Add option.
4749         Default file mode is 700.
4750
4751 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4752
4753         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4754
4755 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4756
4757         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4758         mime-charset.
4759
4760         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4761         and "smaller".
4762
4763 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4764
4765         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4766         (elmo-shimbun-folder-entity-hash): New function.
4767         (elmo-shimbun-folder-shimbun-header): Ditto.
4768         (elmo-shimbun-entity-to-header): Ditto.
4769         (elmo-shimbun-msgdb-to-headers): Removed.
4770         (elmo-shimbun-folder-setup): Ditto.
4771         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4772         for hash key.
4773         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4774         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4775         Removed useless local bind.
4776         (elmo-folder-open-internal): Don't call
4777         `elmo-shimbun-folder-setup'.
4778         (elmo-folder-close-internal): Clear entity-hash slot.
4779         (elmo-folder-clear): Ditto.
4780         (elmo-shimbun-msgdb-create-entity): Use
4781         `elmo-shimbun-folder-shimbun-header'.
4782         (elmo-map-message-fetch): Ditto.
4783         (elmo-shimbun-update-overview): Use overview entity instead of
4784         shimbun header to lookup id by references.
4785         (elmo-map-folder-list-message-locations): Use not only headers but
4786         also overviews to list locations.
4787
4788 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4789
4790         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4791         msgdb path.
4792
4793         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4794
4795 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4796
4797         * elmo-util.el (elmo-read-search-condition-internal): Give default
4798         value for date.
4799
4800 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4801
4802         * elmo-util.el (elmo-condition-parse-search-value): Accept
4803         YYYY-MM-DD format to search.
4804         * elmo-date.el (elmo-date-get-datevec): Likewise.
4805
4806 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4807
4808         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4809         debugging code.
4810
4811 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4812
4813         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4814         from t.
4815
4816         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4817
4818         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4819         case from `elmo-folder-exists-p'.
4820         (elmo-folder-exists-p): Removed.
4821         (elmo-folder-creatable-p) Ditto.
4822
4823         * elmo-net.el (elmo-folder-create): Defined.
4824         (elmo-folder-create-unplugged): New function.
4825         (elmo-folder-exists-p): Changed default value to nil from t.
4826
4827         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4828         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4829
4830         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4831         `elmo-create-folder-dop' and append queue
4832         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4833         (elmo-folder-create-dop-delayed): New function.
4834
4835         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4836
4837         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4838
4839         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4840         (elmo-folder-writable-p) : Ditto.
4841
4842         * elmo-version.el (elmo-version): Up to 2.9.9.
4843
4844 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4845
4846         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4847         `elmo-message-use-cache-p' returns nil.
4848         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4849         (ignore cache file and refer the substance in local folders)
4850
4851 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4852
4853         * elmo-version.el (elmo-version): Up to 2.9.8.
4854
4855 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4856
4857         * elmo-version.el (elmo-version): Up to 2.9.7.
4858
4859         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4860
4861 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4862
4863         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4864
4865 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4866
4867         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4868         from --early.
4869         (elmo-map-folder-list-message-locations): Reverse location list.
4870
4871 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4872
4873         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4874
4875 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4876
4877         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4878         as a key.
4879         (elmo-nntp-folder-list-subfolders): Follow the change above.
4880
4881 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4882
4883         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4884         name if authentication type is specified.
4885
4886 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4887
4888         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4889         variable.
4890         (elmo-default-nntp-stream-type): Ditto.
4891         (elmo-default-pop3-stream-type): Ditto.
4892
4893 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4894
4895         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4896
4897 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4898
4899         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4900         elmo-vars.el.
4901         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4902
4903         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4904         (elmo-maildir-folder-path): Ditto.
4905         (elmo-maildir-list): Ditto (abolished).
4906
4907 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4908
4909         * elmo-version.el (elmo-version): Up to 2.9.6.
4910
4911 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4912
4913         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4914         (elmo-maildir-folder-path): Ditto.
4915         (elmo-msgdb-directory): Ditto.
4916         (elmo-passwd-life-time): Ditto.
4917         (elmo-msgdb-extra-fields): Ditto.
4918         (elmo-enable-disconnected-operation): Ditto.
4919
4920 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4921
4922         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4923         other choices.
4924         (elmo-pop3-default-authenticate-type): Ditto.
4925
4926 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4927
4928         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4929         choices for custom.
4930         (elmo-pop3-default-authenticate-type): Ditto.
4931
4932 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4933
4934         * elmo-imap4.el (elmo-folder-rename-internal): Change current
4935         mailbox to new-folder.
4936
4937 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
4938
4939         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4940         less than new, set new as unread.
4941
4942         * elmo-util.el (elmo-string): Don't put text-property if nil.
4943
4944 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4945
4946         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4947         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4948
4949 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4950
4951         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4952         is nil on `completing-read'.
4953
4954 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
4955
4956         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
4957         for namespace part.
4958         (elmo-imap4-parse-namespace-subr): Ditto.
4959         (elmo-folder-list-subfolders): Append a delimiter when the specified
4960         folder path is a root with namespace and does not end with delimiter.
4961
4962 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4963
4964         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
4965         was used.
4966
4967 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4968
4969         * elmo-util.el (elmo-save-buffer): The first argument of message
4970         is a format control string.
4971
4972 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4973
4974         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
4975         `elmo-folder-diff').
4976         (elmo-diff-unread): Likewise.
4977
4978 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4979
4980         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4981         is t on `completing-read'.
4982
4983 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4984
4985         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
4986         method of target folder with self mark-alist if MARK-ALIST is nil.
4987
4988 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4989
4990         * elmo-version.el (elmo-version): Up to 2.9.5.
4991
4992 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
4993
4994         * elmo-dop.el (elmo-dop-queue-merge): Implement.
4995         (elmo-dop-merge-funcs): Remove.
4996
4997 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4998
4999         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5000         Return t if PATH is directory, too.
5001         Use `dolist' instead of while loop.
5002
5003 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5004
5005         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5006         is deleted.
5007
5008 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5009
5010         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5011         return value to t.
5012         (elmo-folder-list-messages-unplugged): Return t if
5013         elmo-enable-disconnected-operation is nil.
5014
5015         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5016         `elmo-folder-list-messages-internal'.
5017
5018 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5019
5020         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5021         Change to looking-at `[23][0-9]+'.
5022         (elmo-network-initialize-session): Use 'error-msg'
5023         * elmo-net.el (elmo-network-open-session): Set unplugged
5024         if elmo-network-initialize-session returns 'elmo-open-err.
5025
5026 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5027
5028         * elmo-version.el (elmo-version): Up to 2.9.4.
5029
5030 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5031
5032         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5033         `elmo-folder-list-messages-internal'.
5034
5035 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5036
5037         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5038         (elmo-message-match-condition): New method.
5039         (elmo-folder-search-fast): New inline function.
5040         (elmo-msgdb-search): Removed.
5041
5042         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5043         target folder if it is unplugged.
5044         (elmo-folder-list-messages-internal): Return t if target folder is
5045         unplugged and itself is persistent; In this case, use list be
5046         searched already.
5047
5048         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5049         (elmo-msgdb-search-internal-primitive): Ditto.
5050         (elmo-msgdb-match-condition): New function.
5051         (elmo-msgdb-match-condition-primitive): Ditto.
5052
5053         * elmo-util.el (elmo-filter-condition-p): New macro.
5054
5055         * elmo-cache.el (elmo-folder-search): Removed.
5056
5057         * elmo-localdir.el (elmo-folder-search): Ditto.
5058
5059         * elmo-maildir.el (elmo-folder-search): Ditto.
5060
5061         * elmo-mark.el (elmo-folder-search): Ditto.
5062
5063         * elmo-nmz.el (elmo-folder-search): Ditto.
5064
5065         * elmo-sendlog.el (elmo-folder-search): Ditto.
5066
5067         * elmo-shimbun.el (elmo-folder-search): Ditto.
5068
5069         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5070         if folder is unplugged.
5071
5072         * elmo-nntp.el (elmo-folder-search): Likewise.
5073         (elmo-nntp-search-internal): New function.
5074
5075         * elmo-version.el (elmo-version): Up to 2.9.3.
5076
5077 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5078
5079         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5080
5081 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5082
5083         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5084
5085 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5086
5087         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5088
5089 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5090
5091         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5092         (elmo-map-folder-list-message-locations): Do drive letter conversion
5093         on Windows environment.
5094         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5095         (elmo-map-message-fetch): Ditto.
5096
5097 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5098
5099         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5100         (elmo-network-initialize-session): Ditto.
5101
5102 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5103
5104         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5105
5106         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5107
5108         * elmo-util.el (elmo-progress-clear): Ditto.
5109
5110         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5111         `DD-Mon-YYYY' type date.
5112
5113 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5114
5115         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5116         `elmo-date-make-sortable-string' instead of
5117         `timezone-make-date-sortable'.
5118
5119         * elmo-date.el (elmo-date-make-sortable-string): Use
5120         `timezone-make-time-string'.
5121
5122 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5123
5124         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5125
5126         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5127         `since'; Fix timezone.
5128
5129         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5130
5131         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5132
5133 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5134
5135         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5136
5137 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5138
5139         * elmo.el (elmo-generic-folder-append-messages): Make
5140         fetch-strategy with `use-cache' as 'maybe. Check return value of
5141         `elmo-message-fetch'.
5142         (elmo-message-fetch): Return return value of
5143         `elmo-message-fetch-with-cache-process'.
5144         (elmo-message-fetch-with-cache-process): Return non-nil if
5145         fetching was succeed. Load cache when fetching was failed and
5146         fetch-strategy-use-cache is 'maybe.
5147
5148         * elmo-util.el (elmo-file-cache-load): New function.
5149
5150         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5151         defun.
5152
5153         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5154         non-nil if fetching was succeed.
5155
5156         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5157
5158         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5159
5160         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5161         (elmo-message-fetch-with-cache-process): Likwise.
5162
5163         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5164
5165         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5166
5167         * elmo-version.el (elmo-version): Up to 2.9.2.
5168
5169 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5170
5171         * elmo.el (elmo-folder-delete): Delete msgdb path.
5172
5173         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5174
5175         * elmo-maildir.el (elmo-folder-delete): Ditto.
5176
5177         * elmo-localdir.el (elmo-folder-delete): Ditto.
5178
5179         * elmo-imap4.el (elmo-folder-delete): Ditto.
5180
5181 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5182
5183         * elmo.el (luna-define-class): Added `biff' slot.
5184
5185         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5186         (elmo-pop3-debug-inhibit-logging): Abolished.
5187         (elmo-network-close-session): Eliminated needless let.
5188         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5189         (elmo-pop3-send-command): Added `no-log' argument.
5190         (elmo-pop3-process-filter): Use `with-current-buffer'.
5191         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5192         if login failure.
5193         (elmo-pop3-auth-apop): Likewise.
5194         (elmo-network-authenticate-session): Likewise.
5195
5196         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5197         if biff folder.
5198
5199         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5200         string to determine protocol.
5201         (elmo-network-session-name-prefix): Abolished.
5202         (elmo-network-session-cache-key): Follow the change above.
5203         (elmo-network-open-session): Ditto.
5204
5205         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5206         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5207
5208         * elmo-version.el (elmo-version): Up to 2.9.1.
5209
5210         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5211         unmatch condition checking.
5212
5213         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5214         condition.
5215
5216 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5217
5218         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5219
5220 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5221
5222         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5223         test for while loop to execute at least one SEARCH command.
5224
5225 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5226
5227         * elmo-version.el (elmo-version): Up to 2.9.0.
5228
5229 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5230
5231         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5232         (elmo-archive-folder-path): Define.
5233         (elmo-folder-initialize): Setup `dir-name' slot.
5234         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5235         Use `dir-name' as prefix of each subfolders.
5236         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5237
5238 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5239
5240         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5241         (elmo-pipe-folder-list-target-messages): New internal function.
5242         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5243         `killed-list'.
5244         (elmo-pipe-folder-copied-list-load): New function.
5245         (elmo-pipe-folder-copied-list-save): Ditto.
5246         (elmo-folder-open-internal): Follow the change above.
5247         (elmo-folder-status): Fixed for copy.
5248
5249 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5250
5251         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5252
5253 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5254
5255         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5256         elmo-copy-file instead of elmo-add-name-to-file.
5257
5258         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5259
5260         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5261         "file://..." index.
5262
5263         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5264         of accept-process-output as 1.
5265         (elmo-pop3-read-contents): Ditto.
5266         (elmo-pop3-read-body): Ditto.
5267
5268 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5269
5270         * elmo-version.el (product-version-as-string): Remove define.
5271
5272 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5273
5274         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5275         (elmo-imap4-copy-messages): Chop number set using
5276         `elmo-imap4-number-set-chop-length'.
5277         (elmo-imap4-set-flag): Ditto.
5278         (elmo-imap4-search-internal-primitive): Ditto.
5279
5280 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5281
5282         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5283         `elmo-folder-make-temp-dir'
5284
5285         * elmo-vars.el (elmo-cache-directory): New variable.
5286         (elmo-cache-dir): Abolished.
5287         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5288
5289         * elmo-version.el (elmo-version): Up to 2.7.7.
5290
5291 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5292
5293         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5294         defcustom; Set default value as t.
5295
5296 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5297
5298         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5299         (ldap-search-program-arguments): Changed default value.
5300         (ldap-search-basic): Accept exit status 4.
5301         (ldap/field-body): Parse options.
5302         (ldap/collect-field): Ditto.
5303         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5304
5305         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5306         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5307         (elmo-imap4-accept-ok): Ditto.
5308         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5309         'notify-bye, only BYE error is reported.
5310         (elmo-folder-exists-p-plugged): Set no-error argument of
5311         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5312
5313         * elmo.el (elmo-imap4-bye-error): Changed message.
5314
5315         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5316         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5317         queues (It causes infinite loop).
5318
5319 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5320
5321         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5322         (RECENT UNSEEN MESSAGES) extension.
5323
5324 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5325
5326         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5327         Check number of overview fields.
5328
5329 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5330
5331         * elmo.el (elmo-folder-confirm-appends): Changed message.
5332         (elmo-folder-confirm-appends): Ditto.
5333
5334         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5335         `with-temp-buffer'.
5336         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5337
5338 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5339
5340         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5341         of elmo-folder-update-threshold is nil, which can be set by
5342         wl-summary-update-confirm-threshold.
5343
5344 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5345
5346         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5347         (elmo-nmz-index-alias-alist): Ditto.
5348         (elmo-map-folder-list-message-locations): Follow the change above.
5349
5350 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5351
5352         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5353
5354         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5355
5356         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5357
5358         * elmo-util.el (elmo-read): Ditto.
5359         (elmo-display-error): Ditto.
5360
5361         * elmo-vars.el (elmo-date-match): Ditto.
5362
5363         * pldap.el (ldap-coding-system): Ditto.
5364
5365         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5366         `elmo-inhibit-number-mapping' as nil.
5367
5368 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5369
5370         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5371         space delimiter for list response.
5372
5373 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5374
5375         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5376
5377 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5378
5379         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5380         (elmo-map-message-fetch): Fix.
5381         * elmo-map.el (elmo-folder-status): Fix for killed.
5382
5383 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5384
5385         * elmo-sendlog.el: New file.
5386         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5387
5388 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5389
5390         * acap.el (acap-logging-out): New buffer local variable.
5391         (acap-close): Set it.
5392         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5393         an error.
5394
5395 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5396
5397         * acap.el (acap-response-bye-p): New function.
5398         (acap-response-bye-message): Ditto.
5399         (acap-wait-for-response): If bye response is received, cause an error.
5400         (acap-parse-response): Make bye response when 'Bye' is received.
5401
5402 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5403
5404         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5405
5406 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5407
5408         * elmo-util.el (elmo-copy-file): Added argument
5409         `ok-if-already-exists'.
5410         (elmo-copy-file): Fixed typo.
5411
5412 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5413
5414         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5415
5416 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5417
5418         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5419
5420 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5421
5422         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5423         to killed-list.
5424
5425 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5426
5427         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5428         (elmo-folder-initialize): Fix for `copy'.
5429         (elmo-pipe-drain): Ditto.
5430         (elmo-folder-open-internal): Ditto.
5431         (elmo-folder-newsgroups): Fix.
5432
5433 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5434
5435         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5436         for each message.
5437
5438         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5439         recent value is returned from imap folder.
5440
5441         * elmo.el (elmo-folder-newsgroups): New generic function.
5442
5443         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5444         (elmo-folder-initialize): Set it.
5445         (elmo-folder-expand-msgdb-path): Use it.
5446         (elmo-folder-newsgroups): Define.
5447
5448         * elmo-filter.el (elmo-folder-newsgroups): Define.
5449
5450         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5451
5452         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5453
5454         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5455
5456 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5457
5458         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5459         user option.
5460         (elmo-shimbun-header-extra-field): New inline function.
5461         (elmo-shimbun-header-set-extra-field): Ditto.
5462         (elmo-shimbun-folder-header-hash-setup): Ditto.
5463         (elmo-shimbun-update-overview): Ditto.
5464         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5465         (elmo-shimbun-folder-setup): Use
5466         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5467         (elmo-shimbun-get-headers): Ditto.
5468         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5469         Insert `X-Shimbun-Id:' header if extra field is set.
5470         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5471         field's value instead of `shimbun-header-id'.
5472
5473         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5474         inline function.
5475         (elmo-msgdb-overview-entity-set-date): Ditto.
5476         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5477
5478 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5479
5480         * mmimap.el (mmimap-entity-section): Changed body node number from
5481         "0" to "1".
5482
5483 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5484
5485         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5486         `elmo-folder-delete-messages'.
5487
5488         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5489         (elmo-folder-initialize): Changed to expand alias into index path.
5490
5491         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5492         `elmo-mime-insert-header-from-buffer' with 6th arg
5493         `sorted-fields'.
5494
5495 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5496
5497         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5498
5499         * elmo.el (elmo-diff-new): New inline function.
5500         (elmo-diff-unread): Ditto.
5501         (elmo-diff-all): Ditto.
5502
5503         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5504         value from responseb.
5505         (elmo-imap4-folder-diff-plugged): Ditto.
5506         (elmo-imap4-server-diff-async): Added recent argument.
5507         (elmo-server-diff-async): Ditto.
5508         (elmo-imap4-folder-diff-plugged): Ditto.
5509
5510         * elmo-version.el (elmo-version): Up to 2.7.6.
5511
5512 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5513
5514         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5515         in quoted-stirng.
5516
5517 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5518
5519         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5520
5521         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5522
5523         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5524
5525         * elmo-multi.el (elmo-folder-initialize): Ditto.
5526
5527         * elmo-util.el (elmo-parse-token): New function.
5528         (elmo-parse-prefixed-element): Ditto.
5529
5530 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5531
5532         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5533         delete process.
5534         (elmo-imap4-accept-ok): Ditto.
5535
5536 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5537
5538         * mmimap.el (mime-imap-entity-header-string): Don't check first
5539         element of node-id is `0' (Follow last change).
5540
5541 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5542
5543         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5544         assigned irregular node-id to nested multipart section.
5545         (initialize-instance): Followed above change.
5546
5547 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5548
5549         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5550         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5551         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5552         `elmo-shimbun-get-headers');
5553         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5554         visible article on summary exists in headers).
5555         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5556
5557 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5558
5559         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5560         definition.
5561
5562 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5563
5564         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5565
5566 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5567
5568         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5569         header separator into loop condition.
5570
5571 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5572
5573         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5574         Return duplicate folder if it has subfolder.
5575
5576 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5577
5578         * elmo.el (elmo-make-folder): Add folder name error check.
5579
5580         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5581         (elmo-nntp-encode-group-string): New inline function.
5582         (elmo-nntp-decode-group-string): Ditto.
5583         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5584         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5585         Use `not' instead of `null';
5586         Use elmo-nntp-decode-group-string.
5587
5588         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5589
5590         * elmo-version.el (elmo-version): Up to 2.7.5.
5591
5592 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5593
5594         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5595         Hide progress gauge if `elmo-folder-move-messages' exits
5596         nonlocally.
5597
5598 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5599
5600         * elmo-imap4.el (elmo-folder-initialize): Use
5601         `elmo-imap4-encode-folder-string' for folder name.
5602
5603 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5604
5605         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5606         `done'.
5607
5608 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5609
5610         * elmo-util.el (elmo-progress-counter-alist): New internal
5611         variable.
5612         (elmo-progress-counter-value): New macro.
5613         (elmo-progress-counter-all-value): Ditto.
5614         (elmo-progress-counter-format): Ditto.
5615         (elmo-progress-counter-set-value): Ditto.
5616         (elmo-progress-set): New function.
5617         (elmo-progress-clear): Ditto.
5618         (elmo-progress-notify): Ditto.
5619
5620         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5621         counter.
5622
5623         * elmo.el (elmo-generic-folder-append-messages): Call
5624         `elmo-progress-notify'.
5625         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5626
5627         * elmo-archive.el (elmo-folder-append-messages): Call
5628         `elmo-progress-notify'.
5629
5630         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5631
5632         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5633
5634         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5635
5636 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5637
5638         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5639         'Create'.
5640         (elmo-message-encache-dop): Added argument `read'.
5641
5642         * elmo-shimbun.el (elmo-message-encache): Ditto.
5643
5644         * elmo-net.el (elmo-message-encache): Ditto.
5645
5646         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5647         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5648         elmo-imap4-seen-messages.
5649         (elmo-folder-msgdb-create-plugged): Initialize
5650         elmo-imap4-seen-messages;
5651         Set seen mark on elmo-imap4-seen-messages.
5652
5653         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5654
5655         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5656         elmo-folder-append-buffer.
5657         (elmo-folder-encache): Added optional argument `read'.
5658         (elmo-message-encache): Ditto.
5659
5660         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5661
5662         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5663
5664         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5665         if append buffer content succeds.
5666
5667 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5668
5669         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5670         elmo-display-progress.
5671
5672         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5673         Set 4th argument of mime-display-message.
5674         (elmo-mime-display-as-is): Ditto.
5675
5676 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5677
5678         * elmo-nmz.el (toplevel): Require 'mime-edit.
5679         (elmo-nmz-content-type-alist): Abolished.
5680         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5681         content is not a message.
5682         (elmo-map-message-fetch): Changed behavior exept for message content;
5683         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5684         content-type, Add From: and Subject: field.
5685
5686 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5687
5688         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5689         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5690         not a message.
5691
5692 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5693
5694         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5695         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5696
5697         * elmo-archive.el (elmo-folder-writable-p): Defined.
5698
5699         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5700
5701         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5702
5703         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5704
5705         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5706
5707         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5708
5709         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5710
5711         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5712
5713         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5714
5715 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5716
5717         * elmo-util.el (elmo-address-quote-specials): New function;
5718         Renamed from `wl-address-quote-specials'.
5719
5720 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5721
5722         * elmo-version.el (elmo-version): Up to 2.7.4.
5723
5724 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5725
5726         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5727
5728 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5729
5730         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5731         both compile-time and run-time to avoid byte-compile warning.
5732
5733 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5734
5735         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5736
5737 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5738
5739         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5740         option.
5741         (elmo-mime-display-as-is-internal): Use it.
5742
5743         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5744         if `read-passwd' is not defined.
5745
5746 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5747
5748         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5749         by original number.
5750         (elmo-folder-status): Call `elmo-folder-open-internal';
5751         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5752         (elmo-folder-close-internal): Set location-alist as nil.
5753         (elmo-folder-clear): Define.
5754         (elmo-folder-check): Don't set location-alist as nil.
5755
5756         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5757
5758 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5759
5760         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5761         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5762
5763         * mmimap.el (mime-imap-entity::requested): New slot.
5764         (mime-imap-location-fetch-entity-p): New generic function.
5765         (mime-decode-parameters): Define using `defun-maybe'.
5766         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5767         content-type structure.
5768         (mime-entity-body): Return empty body if
5769         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5770
5771         * elmo.el (elmo-message-displaying): New variable.
5772
5773         * elmo-mime.el (elmo-mime-message-display): Bind
5774         elmo-message-displaying as t.
5775
5776         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5777
5778 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5779
5780         * acap.el (acap-open): erase buffer before starting network process.
5781         (acap-store): Rewrite.
5782
5783 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5784
5785         * elmo-imap4.el (elmo-imap4-default-mailbox,
5786         elmo-imap4-default-server
5787         elmo-imap4-default-authenticate-type,
5788         elmo-imap4-default-user,
5789         elmo-imap4-default-port,
5790         elmo-imap4-default-stream-type,
5791         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5792
5793         * elmo-pop3.el (elmo-pop3-default-user,
5794         elmo-pop3-default-server,
5795         elmo-pop3-default-authenticate-type,
5796         elmo-pop3-default-port,
5797         elmo-pop3-default-stream-type,
5798         elmo-pop3-stream-type-alist): Ditto.
5799
5800         * elmo-nntp.el (elmo-nntp-default-server,
5801         elmo-nntp-default-user,
5802         elmo-nntp-default-port,
5803         elmo-nntp-default-stream-type,
5804         elmo-nntp-stream-type-alist): Ditto.
5805
5806         * elmo-vars.el: Follow changes above.
5807         (elmo-setting): New custom group; added 'elmo-setting group to
5808         above variables.
5809
5810         * elmo-version.el (elmo-version): Up to 2.7.3.
5811
5812         * acap.el (acap-parse-response): Don't delete process when BYE
5813         response (It causes hang-up on slow network environment).
5814         (toplevel): Added comment.
5815
5816 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5817
5818         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5819
5820         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5821         parsing NIL.
5822         (acap-parse-return-metadata): Ditto.
5823
5824         * slp.el: New file.
5825         (toplevel): Fixed typo.
5826
5827         * acap.el: New file.
5828         (acap-network-stream-open): Show "Connecting..." message.
5829         (acap-parse-response): Fixed problem for BYE untagged response.
5830         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5831         (toplevel): Added tiny comments.
5832
5833 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5834
5835         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5836         space delimiter for uidl response.
5837
5838 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5839
5840         * elmo-vars.el (elmo-use-semi): Eliminated.
5841
5842         * elmo-util.el (elmo-string-assoc-all): New function.
5843
5844 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5845
5846         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5847         property 'mime-preview-situation for `mime-preview-quit'.
5848
5849 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5850
5851         * elmo.el (elmo-message-fetch-with-cache-process): Call
5852         elmo-message-fetch-internal instead of causing an error when fetch
5853         strategy is 'entire but only 'section cache is available.
5854
5855 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5856
5857         * elmo-version.el (elmo-version): Up to 2.7.2.
5858
5859         * elmo.el (elmo-generic-folder-append-messages): Make
5860         fetch-strategy with `use-cache'.
5861
5862         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5863         (elmo-dop-queue-method-name): New macro.
5864
5865 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5866
5867         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5868         unbalanced parenthesis.
5869
5870 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5871
5872         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5873
5874 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5875
5876         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5877         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5878
5879 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5880
5881         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5882         local variables.
5883
5884 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5885
5886         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5887         (elmo-message-use-cache-p): Define.
5888         (elmo-folder-msgdb-create): Treat cache.
5889
5890 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5891
5892         * elmo-nntp.el (elmo-network-initialize-session): Call
5893         `elmo-nntp-send-mode-reader'.
5894         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5895
5896 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5897
5898         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5899         alist.
5900         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5901         assoc.
5902
5903         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5904         for `elmo-plugged-p'.
5905         (elmo-open-network-stream): Fixed stream-type argument.
5906
5907 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5908
5909         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5910         unknown archive type is specified.
5911
5912 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5913
5914         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5915
5916         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5917         while loading msgdb.
5918
5919         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5920         (elmo-folder-open-internal): Rewrite.
5921
5922 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5923
5924         * elmo-mime.el (elmo-mime-display-as-is-internal):
5925         Adjust buffer-multibyte status.
5926
5927 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5928
5929         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5930         of elmo-condition-find-key.
5931
5932         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5933         (elmo-condition-in-msgdb-p): Ditto.
5934         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5935         argument.
5936
5937 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5938
5939         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5940
5941 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
5942
5943         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5944         label for elmo-display-progress.
5945
5946 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
5947
5948         * elmo.el (elmo-folder-clear): New method.
5949         (elmo-folder-clear): Define.
5950         (elmo-folder-synchronize): Call `elmo-folder-clear'.
5951
5952         * elmo-shimbun.el (elmo-folder-check): Rewrite.
5953         (elmo-folder-clear): Define.
5954
5955         * elmo-map.el (elmo-folder-clear): Define.
5956
5957         * elmo-version.el (elmo-version): Up to 2.7.1.
5958
5959 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
5960
5961         * elmo.el (elmo-folder-synchronize): Return list of nil when no
5962         updates.
5963
5964 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
5965
5966         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
5967         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
5968
5969 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
5970
5971         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
5972
5973         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
5974         and re-written.
5975
5976         * elmo-imap4.el (elmo-folder-initialize): Use
5977         elmo-get-network-stream-type.
5978
5979         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5980
5981         * elmo-pop3.el (elmo-folder-initialize): Ditto.
5982
5983 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
5984
5985         * elmo.el (elmo-message-encache): Set unread argument for
5986         elmo-message-fetch.
5987
5988         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
5989
5990         * elmo.el (elmo-net-port-info): New method.
5991
5992         * elmo-shimbun.el (elmo-net-port-info): Define.
5993         (elmo-message-encache): Ditto.
5994
5995         * elmo-net.el (elmo-net-port-info): Define as method.
5996
5997         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
5998         unplugged status when elmo-enable-disconnected-operation is t.
5999
6000         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6001         of spool folder before checking new number.
6002
6003 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6004
6005         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6006         (elmo-network-setup-session): Ditto.
6007         (elmo-message-fetch-plugged): Ditto.
6008         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6009         (elmo-network-initialize-session): Ditto.
6010         (elmo-pop3-read-response): Abolish 3rd argument.
6011         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6012         (elmo-pop3-read-contents): Ditto.
6013         (elmo-pop3-read-body): Ditto.
6014         (elmo-folder-status): Call elmo-folder-close.
6015         (elmo-pop3-lock): Abolish.
6016         (elmo-pop3-unlock): Ditto.
6017         (elmo-pop3-locked-p): Ditto.
6018         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6019
6020 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6021
6022         * elmo-version.el (elmo-version): Up to 2.7.0.
6023
6024         * elmo-pop3.el (elmo-pop3-debug): New variable.
6025         (elmo-pop3-debug-inhibit-logging): Ditto.
6026         (elmo-pop3-debug): New function.
6027         (elmo-pop3-send-command): Call elmo-pop3-debug.
6028         (elmo-pop3-read-response): Added keep-lock optional argument;
6029         Don't unlock if keep-lock is non-nil.
6030         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6031         (elmo-network-authenticate-session): Bind
6032         elmo-pop3-debug-inhibit-logging as t.
6033         (elmo-network-setup-session): Call elmo-pop3-read-response with
6034         keep-lock argument.
6035         (elmo-pop3-read-msg): Ditto.
6036         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6037         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6038         (elmo-network-initialize-session): Call elmo-pop3-lock.
6039         (elmo-folder-close-internal): Don't clear location-alist slot.
6040         (elmo-folder-check): Clear location-alist slot.
6041
6042 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6043
6044         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6045         (elmo-pop3-send-command): Call elmo-pop3-lock.
6046         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6047         (elmo-pop3-read-contents): Ditto.
6048         (elmo-pop3-lock): New function.
6049         (elmo-pop3-unlock): Ditto.
6050         (elmo-pop3-locked-p): Ditto.
6051         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6052         returns t.
6053
6054 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6055
6056         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6057
6058         * elmo-util.el (elmo-file-field-primitive-condition-match):
6059         New inline function (Don't fetch file content if "first" or "last").
6060         (elmo-file-field-condition-match): Use
6061         elmo-file-field-primitive-condition-match.
6062
6063         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6064         "first".
6065
6066         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6067         (elmo-message-fetch-plugged): Fixed.
6068
6069         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6070
6071 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6072
6073         * elmo.el (elmo-folder-move-messages): Bind
6074         elmo-inhibit-display-retrieval-progress as t while moving messages.
6075
6076         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6077         New variable.
6078         (elmo-inhibit-display-retrieval-progress): Ditto.
6079
6080         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6081         for retrieval progress;
6082         Don't display progress when total buffer size is smaller than
6083         elmo-display-retrieval-progress-threshold.
6084         (elmo-message-fetch-plugged): Don't display progress when
6085         elmo-inhibit-display-retrieval-progress is non-nil.
6086
6087         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6088         for retrieval progress;
6089         Don't display progress when literal size is smaller than
6090         elmo-display-retrieval-progress-threshold.
6091         (elmo-imap4-message-fetch): Don't display progress when
6092         elmo-inhibit-display-retrieval-progress is non-nil.
6093
6094 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6095
6096         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6097         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6098         (elmo-imap4-message-fetch): Likewise.
6099
6100         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6101         (elmo-shimbun-index-range-alist): Ditto.
6102         (elmo-shimbun-use-entire-index): Abolish.
6103         (shimbun-mua-use-entire-index): Ditto.
6104         (elmo-shimbun-folder): Added new slot `range'.
6105         (elmo-folder-initialize): Setup slot `range'.
6106
6107 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6108
6109         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6110         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6111         (elmo-shimbun-get-headers): Use return value of
6112         `shimbun-article-expiration-days'.
6113         (elmo-folder-close-internal): Clean up last-check slot.
6114
6115         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6116         (elmo-pop3-total-size): New variable.
6117         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6118
6119         * elmo.el (elmo-folder-reserve-status-p): New method.
6120
6121         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6122         (elmo-shimbun-use-entire-index): New user option.
6123         (shimbun-elmo-mua): New class.
6124         (shimbun-mua-search-id): Define.
6125         (shimbun-mua-use-entire-index): Ditto.
6126         (elmo-shimbun-folder:last-check): New slot.
6127         (elmo-shimbun-headers-cache-header-list): Abolish.
6128         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6129         (elmo-shimbun-headers-cache-header-hash): Ditto.
6130         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6131         (elmo-shimbun-headers-cache-last-check): Ditto.
6132         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6133         (elmo-shimbun-headers-check-p): Rewrite.
6134         (elmo-shimbun-msgdb-to-headers): New function.
6135         (elmo-shimbun-get-headers): Rewrite.
6136         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6137         (elmo-folder-open-internal): Get headers only if
6138         `elmo-shimbun-headers-check-p' is non-nil.
6139         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6140         is non-nil.
6141         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6142         (elmo-quit): Removed.
6143
6144         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6145         function.
6146         (elmo-msgdb-overview-entity-set-extra): Ditto.
6147         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6148
6149         * elmo-map.el (elmo-folder-status): Don't call
6150         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6151         is non-nil.
6152
6153 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6154
6155         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6156         of `elmo-msgdb-search-internal-primitive' when condition's car is
6157         `and' or `or'.
6158
6159 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6160
6161         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6162
6163 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6164
6165         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6166         call `elmo-pipe-drain'.
6167
6168 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6169
6170         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6171         typo. (elmo-cache-folder -> elmo-mark-folder)
6172
6173 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6174
6175         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6176         `elmo-message-fetch'.
6177
6178 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6179
6180         * elmo-net.el (elmo-message-encache): Fixed typo.
6181         (elmo-message-fetch-unplugged): Changed call
6182         `elmo-message-fetch-internal' without argument `outbuf'.
6183
6184 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6185
6186         * elmo.el (elmo-message-encache): Define as generic function.
6187         (elmo-message-fetch-field): New generic function.
6188         (elmo-message-fetch-with-cache-process): Cause an error when
6189         fetch strategy is 'entire but only 'section cache is available.
6190         (toplevel): Fixed nmz folder definition.
6191
6192         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6193         (elmo-msgdb-resume-list-filename): Ditto.
6194         (elmo-queue-filename): Ditto.
6195         (elmo-enable-disconnected-operation): Changed default value to t.
6196
6197         * elmo-util.el (elmo-cache-path-section-p): New function.
6198         (elmo-file-cache-get): Use it.
6199         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6200         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6201         (elmo-dop-queue-save): Ditto.
6202
6203         * elmo-net.el (elmo-folder-status-unplugged): Call
6204         elmo-folder-status-dop.
6205         (elmo-folder-list-messages-unplugged): Implemented.
6206         (elmo-folder-delete-messages-unplugged): Define.
6207         (elmo-folder-msgdb-create): Define.
6208         (elmo-folder-msgdb-create-unplugged): Define.
6209         (elmo-folder-mark-as-read-unplugged): Ditto.
6210         (elmo-folder-unmark-read-unplugged): Ditto.
6211         (elmo-folder-mark-as-important-unplugged): Ditto.
6212         (elmo-folder-unmark-important-unplugged): Ditto.
6213         (elmo-message-encache): Ditto.
6214
6215         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6216         (elmo-dop-queue-save): Ditto.
6217
6218         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6219         `elmo-folder-msgdb-create'.
6220         (elmo-folder-append-buffer): Implemented unplugged operation.
6221         (elmo-folder-append-messages): Call parent method in unplugged status.
6222         (elmo-message-fetch-unplugged): Removed definition.
6223         (elmo-message-fetch-field): Implemented.
6224
6225         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6226         (elmo-dop-folder): Removed variable definition.
6227         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6228         (elmo-dop-queue-flush): Implemented.
6229         (elmo-dop-queue-merge): Removed definition (TODO).
6230         (elmo-dop-spool-folder): New function.
6231         (elmo-dop-spool-folder-append-buffer): Ditto.
6232         (elmo-dop-spool-folder-list-messages): Ditto.
6233         (elmo-dop-list-deleting-messages): Ditto.
6234         (elmo-folder-append-buffer-dop): Ditto.
6235         (elmo-folder-delete-messages-dop): Ditto.
6236         (elmo-message-encache-dop): New inline function.
6237         (elmo-create-folder-dop): Ditto.
6238         (elmo-folder-mark-as-read-dop): Ditto.
6239         (elmo-folder-unmark-read-dop): Ditto.
6240         (elmo-folder-mark-as-important-dop): Ditto.
6241         (elmo-folder-unmark-important-dop): Ditto.
6242         (elmo-folder-status-dop): Fixed.
6243         (elmo-folder-append-buffer-dop-delayed): New function.
6244         (elmo-folder-delete-messages-dop-delayed): Ditto.
6245         (elmo-dop-msgdb): Ditto.
6246
6247 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6248
6249         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6250
6251 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6252
6253         * elmo.el (elmo-folder-move-messages): Fixed problem when
6254         `dst-folder' is 'null.
6255
6256 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6257
6258         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6259         instead of current mark.
6260
6261         * elmo-multi.el (elmo-folder-list-importants-internal): No
6262         operation if importants is not list.
6263
6264         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6265         Return t if importants is not list.
6266
6267         * elmo-map.el (elmo-map-folder-list-importants): Define.
6268         (elmo-folder-list-importants-internal): Check return value of
6269         `elmo-map-folder-list-importants-internal'.
6270
6271         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6272
6273         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6274
6275         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6276
6277         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6278
6279 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6280
6281         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6282         (Patch is provided by <kita@coe.nttdata.co.jp>).
6283
6284 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6285
6286         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6287         mark folder.
6288
6289 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6290
6291         * elmo.el (elmo-message-fetch): Define.
6292         (elmo-message-fetch-with-cache-process): New generic method.
6293         (elmo-message-fetch-internal): New generic method.
6294         (elmo-folder-synchronize):
6295
6296         * elmo-archive.el (elmo-message-fetch-internal): Define.
6297         (elmo-message-fetch): Eliminated.
6298
6299         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6300         (elmo-message-fetch): Eliminated.
6301
6302         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6303         argument OUTBUF.
6304         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6305
6306         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6307         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6308
6309         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6310         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6311
6312         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6313
6314         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6315
6316         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6317
6318         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6319         (elmo-message-fetch-unplugged): New generic method.
6320         (elmo-message-fetch-internal): Remove cache process (Renamed from
6321         `elmo-message-fetch').
6322
6323         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6324         (elmo-message-fetch): Eliminated.
6325         (elmo-message-fetch-unplugged): Ditto.
6326
6327         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6328
6329 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6330
6331         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6332         of `to-be-deleted' from number-alist to number-list.
6333
6334 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6335
6336         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6337         (elmo-folder-mark-as-important): Ditto.
6338
6339 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6340
6341         * elmo.el (elmo-folder): Added process-duplicates slot.
6342
6343         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6344         (elmo-folder-unmark-read): Ditto.
6345         (elmo-folder-unmark-important): Ditto.
6346         (elmo-folder-mark-as-important): Ditto.
6347
6348         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6349         duplicated message processing.
6350
6351         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6352
6353 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6354
6355         * elmo-util.el (elmo-list-subdirectories-1): New function.
6356         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6357         (elmo-mapcar-list-of-list): New function.
6358
6359         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6360         `elmo-mapcar-list-of-list' instead of `mapcar'.
6361
6362         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6363
6364         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6365         `elmo-have-link-count'. Return the fully qualified folder name.
6366
6367 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6368
6369         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6370         (elmo-shimbun-headers-cache): New internal variable.
6371         (elmo-shimbun-headers-cache-header-list): New inline function.
6372         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6373         (elmo-shimbun-headers-cache-header-hash): Ditto.
6374         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6375         (elmo-shimbun-headers-cache-last-check): Ditto.
6376         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6377         (elmo-shimbun-lapse-seconds): Ditto.
6378         (elmo-shimbun-headers-cache-check-p): Ditto.
6379         (elmo-shimbun-get-headers): New function.
6380         (elmo-folder-open-internal): Call it.
6381         (elmo-quit): Define (Clear headers-cache).
6382
6383 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6384
6385         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6386
6387         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6388         (elmo-msgdb-flist-save): Ditto.
6389
6390         * elmo-shimbun.el (elmo-folder-list-subfolders):
6391         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6392         (elmo-folder-exists-p): Ditto.
6393
6394         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6395         argument for `shimbun-header-insert'.
6396
6397 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6398
6399         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6400         at first time.
6401
6402         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6403         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6404
6405 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6406
6407         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6408         (elmo-folder-plugged-p): Define.
6409         (elmo-folder-set-plugged): Ditto.
6410         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6411         (elmo-folder-list-messages-internal): Return t if unplugged.
6412         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6413
6414         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6415         when elmo-folder-list-messages-internal method of children returns t.
6416
6417         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6418         pair is nil.
6419         (elmo-folder-open-internal): Don't update if unplugged status.
6420
6421 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6422
6423         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6424         new message.
6425
6426 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6427
6428         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6429
6430         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6431         saving.
6432
6433 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6434
6435         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6436
6437         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6438         (elmo-folder-open-internal): Set up headers slot.
6439         (elmo-folder-check): Call elmo-folder-close-internal and
6440         elmo-folder-open-internal.
6441         (elmo-folder-close-internal): Clean up headers slot.
6442
6443 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6444
6445         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6446         exactly folder list.
6447         (elmo-folder-append-messages): Fixed append archive with prefix.
6448
6449         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6450         make temp files with start-number.
6451
6452         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6453
6454 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6455
6456         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6457         argument `visible-only'.
6458         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6459         instead of `if'.
6460
6461         * elmo-pop3.el (elmo-folder-open-internal): Check
6462         `elmo-inhibit-number-mapping' is non-nil.
6463
6464         * elmo-pipe.el (elmo-folder-status): Fixed.
6465
6466 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6467
6468         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6469
6470         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6471         (elmo-folder-open-internal): Setup `header-hash' slot.
6472         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6473         information.
6474         (elmo-map-message-fetch): Ditto.
6475
6476 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6477
6478         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6479         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6480         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6481         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6482
6483         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6484
6485 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6486
6487         * sb-airs.el: Added footer.
6488
6489         * shimbun.el (shimbun-article): Define as luna-method.
6490
6491         * sb-tcup.el: New file.
6492
6493         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6494         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6495
6496 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6497
6498         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6499         (shimbun-get-headers): Ditto.
6500
6501         * elmo.el: Moved obsolete variable definitions from
6502         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6503
6504         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6505         groups.
6506
6507         * shimbun.el: New file.
6508
6509         * elmo-shimbun.el: New file.
6510
6511         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6512         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6513         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6514         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6515
6516 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6517
6518         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6519         hierarchy is t.
6520
6521 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6522
6523         * elmo.el (elmo-folder-msgdb): Define as macro.
6524         (elmo-folder-open): Added argument `load-msgdb'.
6525         (elmo-generic-folder-open): Ditto.
6526         (elmo-folder-encache): New function.
6527
6528         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6529
6530         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6531
6532         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6533         Eliminated argument FOLDER and added argument MSGDB.
6534         (elmo-dop-queue-load): Moved from elmo-dop.el.
6535         (elmo-dop-queue-save): Ditto.
6536
6537         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6538
6539         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6540
6541         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6542         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6543         (elmo-filter-folder-list-importants-internal): Ditto.
6544
6545         * elmo-map.el (elmo-folder-pack-number): Ditto.
6546
6547         * elmo-mime.el (elmo-mime-message-display): Ditto.
6548
6549         * elmo.el (elmo-generic-folder-commit): Ditto.
6550         (elmo-folder-list-unreads): Ditto.
6551         (elmo-folder-list-importants): Ditto.
6552         (elmo-generic-folder-commit): Ditto.
6553         (elmo-message-set-mark): Ditto.
6554         (elmo-generic-folder-append-msgdb): Ditto.
6555         (elmo-folder-synchronize): Ditto.
6556         (elmo-folder-messages): Ditto.
6557         (elmo-init): Call elmo-dop-queue-load.
6558         (elmo-folder-list-messages): Ditto.
6559
6560         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6561         (elmo-nntp-folder-process-crosspost): Ditto.
6562         (elmo-folder-list-unreads-internal): Ditto.
6563
6564         * elmo-dop.el: Removed old functions.
6565
6566 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6567
6568         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6569         `folder' to `msgdb'.
6570
6571 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6572
6573         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6574         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6575
6576         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6577         case-fold-search.
6578
6579 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6580
6581         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6582         defined.
6583
6584         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6585         (mmimap-parse-parameters-from-list): Define as alias for
6586         `mime-decode-parameter-plist' if it is defined as function.
6587         (mmimap-make-mime-entity): Added argument `number'.
6588         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6589         as 0.
6590         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6591
6592         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6593
6594         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6595
6596         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6597
6598 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6599
6600         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6601
6602         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6603         when elmo-imap4-default-authenticate-type is nil.
6604         (elmo-folder-list-subfolders): Ditto
6605         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6606         (elmo-imap4-fetch-callback-1-subr): Renamed from
6607         `elmo-imap4-fetch-callback-1' and define as inline function.
6608         (elmo-imap4-fetch-callback-1):
6609         Renamed from `elmo-imap4-fetch-callback'.
6610         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6611
6612         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6613         msgdb path (To keep compatibility with main trunk).
6614
6615         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6616
6617         * elmo-util.el (elmo-make-file-cache): Moved position of
6618         some macros.
6619
6620         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6621         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6622         instead of `elmo-pop3-inhibit-uidl'.
6623         (elmo-folder-exists-p): Ditto.
6624         (elmo-pop3-folder-list-messages): Ditto.
6625
6626         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6627         instead of `elmo-pop3-inhibit-uidl'.
6628         (elmo-folder-status): Ditto.
6629
6630         * elmo-dop.el (elmo-dop-folder): New variable.
6631         (elmo-dop-lock-message): Eliminated.
6632         (elmo-dop-unlock-message): Ditto.
6633         (elmo-dop-lock-list-load): Ditto.
6634         (elmo-dop-lock-list-save): Ditto.
6635         (elmo-dop-delete-folder): Ditto.
6636         (elmo-dop-rename-folder): Ditto.
6637
6638         * elmo.el: Removed incomplete commentary.
6639
6640 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6641
6642         * elmo.el (toplevel): Require 'elmo-version first;
6643         for little `recursive-load-depth' settings.
6644         Fix "ends here" comment.
6645
6646 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6647
6648         * elmo-util.el (toplevel): Require 'poem;
6649         Some functions are moved from elmo-cache.el.
6650
6651         * elmo-net.el (toplevel): Require 'elmo-cache.
6652
6653         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6654
6655         * elmo.el (toplevel): Ditto.
6656
6657         * elmo-cache.el: Rewrite with luna;
6658         Some functions are moved to elmo-util.el.
6659
6660         * elmo-internal.el (elmo-internal-folder-list): New variable.
6661         (elmo-internal-folder-initialize): Rewrite.
6662         (elmo-folder-list-subfolders): Ditto.
6663
6664         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6665         (elmo-cache-collect-sub-directories): Ditto.
6666
6667 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6668
6669         * elmo-version.el (elmo-version): Up to 2.5.8.
6670
6671         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6672
6673         * elmo-util.el (elmo-list-insert): New function.
6674
6675 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6676
6677         * elmo.el (elmo-init): New function.
6678         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6679
6680         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6681         (Renamed from `elmo-localdir-header-chop-length').
6682
6683         * elmo-pop3.el (elmo-pop3-use-cache,
6684         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6685
6686         * elmo-nntp.el (elmo-message-fetch): Define.
6687         (elmo-message-fetch-unplugged): Ditto.
6688         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6689         (elmo-nntp-use-cache): Ditto.
6690         (elmo-nntp-max-number-precedes-list-active): Ditto.
6691
6692         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6693
6694         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6695         `elmo-msgdb-insert-file-header'.
6696         Use `elmo-msgdb-file-header-chop-length'.
6697
6698         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6699         `elmo-vars.el'.
6700
6701         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6702         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6703         `elmo-msgdb-insert-file-header'.
6704
6705         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6706         Use new variable;
6707         Define obsolete variables with `elmo-define-obsolete-variable',
6708
6709         * elmo-util.el (elmo-warning-buffer-name): New constant.
6710         (elmo-warning): New function.
6711         (elmo-obsolete-variable-alist): New variable.
6712         (elmo-obsolete-variable-show-warnings): New variable.
6713         (elmo-define-obsolete-variable): New function.
6714         (elmo-resque-obsolete-variable): Ditto.
6715         (elmo-resque-obsolete-variables): Ditto.
6716
6717 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6718
6719         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6720         Eliminated.
6721
6722         * elmo-pop3.el, elmo-nntp.el: Use custom.
6723
6724 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6725
6726         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6727         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6728
6729 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6730
6731         * Luna-fy Kenichi OKADA's following changes.
6732         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6733         `nohide'.
6734         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6735
6736 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6737
6738         * elmo-util.el (elmo-display-progress): Prefer
6739         `progress-feedback-with-label' to `lprogress-display'.
6740
6741 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6742
6743         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6744
6745 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6746
6747         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6748         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6749         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6750         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6751         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6752         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6753         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6754         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6755         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6756         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6757         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6758         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6759         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6760
6761 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6762
6763         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6764         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6765
6766 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6767
6768         * elmo.el (elmo-folder-process-crosspost): New generic method.
6769         (elmo-folder-writable-p): Ditto.
6770         (elmo-folder-message-appendable-p): Eliminated.
6771         (elmo-generic-folder-append-msgdb): Rewrite.
6772         (elmo-newsgroups-hashtb): New internal variable.
6773         (elmo-crosspost-message-set): Eliminated.
6774         (elmo-crosspost-message-delete): Ditto.
6775         (elmo-setup-subscribed-newsgroups): New function.
6776         (elmo-crosspost-message-alist-modified): New internal variable.
6777         (elmo-crosspost-message-alist-load): New function (Renamed from
6778         `wl-crosspost-alist-load').
6779         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6780         `wl-crosspost-alist-save').
6781
6782         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6783
6784         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6785         `unreads'.
6786         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6787         elmo-newsgroups-hashtb).
6788         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6789         `elmo-nntp-folder-update-crosspost-message-alist'.
6790         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6791         `elmo-nntp-groups-hashtb'.
6792         (elmo-nntp-make-groups-hashtb): Eliminated.
6793         (elmo-nntp-parse-newsgroups): New function (Renamed from
6794         `wl-parse-newsgroups').
6795         (elmo-folder-creatable-p, elmo-folder-writable-p,
6796         elmo-folder-close-internal, elmo-folder-mark-as-read,
6797         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6798         Define.
6799         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6800
6801         * elmo-net.el (elmo-message-fetch): Check buffer size.
6802
6803         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6804
6805         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6806
6807         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6808         before `close' command.
6809
6810         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6811         `mark-alist' (All other related portions are changed).
6812
6813 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6814
6815         * elmo-util.el (elmo-create-hash-size): Eliminated.
6816         (elmo-make-hash) Make a hash with `one less than a power of two'
6817         length.
6818
6819         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6820         (elmo-hash-maximum-size): Changed value.
6821
6822 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6823
6824         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6825         (elmo-mime-message-display-as-is): Ditto.
6826
6827 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6828
6829         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6830         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6831
6832 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6833
6834         * elmo-mark.el: New file.
6835
6836         * elmo-internal.el: Rewrite (Almost empty).
6837
6838 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6839
6840         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6841         (mime-imap-entity-header-string): Ditto.
6842         (mmimap-entity-section): Rewrite.
6843
6844 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6845
6846         * elmo-nmz.el: New file.
6847
6848         * elmo-pipe.el: Rewrite with luna.
6849
6850 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6851
6852         * elmo-archive.el: Rewrite with luna.
6853
6854         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6855         (elmo-folder-list-importants-internal): Ditto.
6856
6857 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6858
6859         * elmo-archive.el (elmo-archive-version): Abolish.
6860         (toplevel) Removed `boso' comment.
6861
6862 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6863
6864         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6865         elmo-msgdb-add-msgs-to-seen-list-subr;
6866         Changed argument seen-marks to unread-marks.
6867
6868         * elmo-nntp.el: Rewrite with luna.
6869
6870 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6871
6872         * elmo-filter.el: Rewrite with luna.
6873
6874 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6875
6876         * elmo-pop3.el: Rewrite with luna.
6877
6878 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6879
6880         * elmo-multi.el: Rewrite with luna.
6881
6882         * elmo-vars.el (elmo-use-killed-list): Abolish.
6883         All other related portions are changed.
6884         (elmo-filename-replace-string-alist): Renamed from
6885         elmo-msgid-replace-string-alist.
6886
6887 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6888
6889         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6890
6891         * elmo-map.el: New file.
6892         * elmo-maildir.el: Rewrite with luna.
6893
6894 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6895
6896         * elmo.el: Changed meaning of `elmo-folder-commit'.
6897         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6898
6899 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6900
6901         * elmo.el (elmo-folder-append-buffer): New function.
6902         (Renamed from `elmo-append-msg')
6903
6904 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6905
6906         * elmo-mime.el: New file.
6907
6908 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6909
6910         * elmo-cache.el: Rewrite.
6911
6912 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6913
6914         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6915
6916 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6917
6918         * elmo-vars.el (elmo): New group.
6919         (elmo-strict-diff-folder-regexp): New variable.
6920
6921         * elmo-util.el (elmo-call-func): Abolish.
6922         (elmo-folder-get-type): Ditto.
6923         (elmo-*-get-spec): Ditto.
6924         (elmo-*-spec-*): Ditto.
6925         (elmo-imap4-identical-name-space-p): Ditto.
6926         (elmo-folder-identical-system-p): Ditto.
6927         (elmo-folder-direct-copy-alist): Ditto.
6928         (elmo-folder-direct-copy-p): Ditto.
6929
6930         * elmo-pipe.el (elmo-pipe-folder): New luna class.
6931         (elmo-folder-initialize): Define.
6932         (elmo-folder-get-primitive-list): Ditto.
6933
6934         * elmo-nntp.el (elmo-nntp-folder): New luna class.
6935         (elmo-folder-initialize): Define.
6936         Renamed `elmo-network-session-host-internal' to
6937         `elmo-network-session-server-internal'.
6938
6939         * elmo-multi.el (elmo-multi-folder): New luna class.
6940         (elmo-folder-initialize): Define.
6941         (elmo-folder-get-primitive-list): Ditto.
6942         (elmo-folder-contains-type): Ditto.
6943         (elmo-message-use-cache-p): Ditto.
6944
6945         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6946         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6947
6948         * elmo-maildir.el (elmo-maildir-folder): New luna class.
6949         (elmo-folder-initialize): Define.
6950
6951         * elmo-filter.el (elmo-filter-folder): New luna class.
6952         (elmo-folder-initialize): Define.
6953         (elmo-folder-get-primitive-list): Ditto.
6954         (elmo-folder-contains-type): Ditto.
6955
6956 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6957
6958         * elmo-imap4.el: Rewrite with luna.
6959
6960         * mmimap.el: New file.
6961
6962         * mmelmo.el, mmelmo-imap4.el: Removed.
6963
6964         * elmo-net.el: Ditto.
6965
6966         * elmo-pop3.el (elmo-pop3-folder): New luna class.
6967         (elmo-folder-initialize): Define.
6968
6969         * elmo-archive.el (elmo-archive-folder): New luna class.
6970         (elmo-folder-initialize): Define.
6971
6972         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
6973         `elmo-folder-msgdb-path'.
6974         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
6975         `elmo-make-folder'.
6976
6977 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6978
6979         * elmo.el: New file.
6980
6981         * elmo2.el: Renamed to elmo.el.
6982
6983 \f
6984 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
6985
6986         * elmo-cache.el (elmo-cache-expire-by-size): Count
6987         a disk usage for a cache file entry in KB even when
6988         its kind is a directory.
6989
6990 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
6991
6992         * elmo-version.el (elmo-version): Up to 2.5.7.
6993
6994 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6995
6996         * elmo-version.el (elmo-version): Up to 2.5.6.
6997
6998 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6999
7000         * elmo-version.el (elmo-version): Up to 2.5.5.
7001
7002 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7003
7004         * elmo-imap4.el (elmo-network-authenticate-session):
7005         Fixed a logic for response checking.
7006
7007 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7008
7009         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7010         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7011         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7012         `sasl-mechanisms'.
7013
7014         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7015         for `starttls-open-stream' and `starttls-negotiate'.
7016
7017         * elmo-nntp.el: Remove autoload settings for
7018         `starttls-open-stream' and `starttls-negotiate'.
7019
7020         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7021         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7022         `luna-define-class' with `eval-and-compile'.
7023
7024 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7025
7026         * elmo-util.el (elmo-read-search-condition-internal):
7027         Require an element of table for searching field.
7028
7029 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7030
7031         * elmo-version.el (elmo-version): Up to 2.5.4.
7032
7033 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7034
7035         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7036
7037 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7038
7039         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7040
7041 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7042
7043         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7044         before greeting.
7045
7046 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7047
7048         * elmo-imap4.el (elmo-imap4-delete-folder):
7049         Send "close" before "delete" (Use commented out line).
7050         (elmo-imap4-rename-folder): Ditto.
7051
7052         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7053         folder string itself.
7054         (elmo-dop-list-deleted): New function.
7055         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7056         killed.
7057
7058         * elmo-util.el (elmo-string-rassoc-all): New function.
7059
7060 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7061
7062         * elmo-version.el (elmo-version): Up to 2.5.3.
7063
7064         * elmo-net.el (elmo-network-get-session): Changed logic for
7065         checking process status.
7066
7067         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7068         process is nil;
7069         Changed logic for checking process status.
7070
7071 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7072
7073         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7074         before greeting.
7075         (elmo-network-setup-session): Set UIDL hash size according to
7076         the length of list response.
7077         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7078         according to the length of list response;
7079         Return the length of list response.
7080         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7081
7082 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7083
7084         * elmo-imap4.el (toplevel): Require 'ssl.
7085         Add autoload 'starttls.
7086         * elmo-pop3.el (toplevel): Ditto.
7087         * elmo-nntp.el (toplevel): Ditto.
7088
7089 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7090
7091         * elmo-imap4.el (toplevel): defun at compile time.
7092         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7093         sasl-next-step, sasl-step-data, sasl-step-set-data.
7094         * elmo-pop3.el (toplevel): Ditto.
7095
7096 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7097
7098         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7099
7100 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7101
7102         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7103         if error.
7104         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7105         and `elmo-pop-auth-apop'.
7106
7107 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7108
7109         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7110
7111 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7112
7113         * elmo-pop3.el (elmo-network-authenticate-session): Split
7114         encoded response value.
7115
7116 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7117
7118         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7119         `elmo-pop3-force-login'.
7120         Redefine `sasl-mechanisms'.
7121         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7122
7123 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7124
7125         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7126         Delete `elmo-imap4-authenticator-alist'.
7127         (elmo-imap4-auth-cram-md5): Delete.
7128         (elmo-imap4-auth-digest-md5): Delete.
7129
7130 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7131
7132         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7133         (elmo-pop3-auth-scram-md5): Ditto.
7134         (elmo-pop3-auth-cram-md5): Ditto.
7135
7136 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7137
7138         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7139         Delete `elmo-pop3-authenticator-alist'.
7140
7141 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7142
7143         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7144         new SASL API.
7145         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7146
7147 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7148
7149         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7150
7151 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7152
7153         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7154         Fixed problem when `elmo-pop3-use-uidl' is nil.
7155         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7156
7157 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7158
7159         * elmo-version.el (elmo-version): Up to 2.5.2.
7160
7161 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7162
7163         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7164         New function.
7165         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7166         (elmo-pop3-msgdb-create-as-numlist): Use it.
7167
7168         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7169         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7170
7171         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7172         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7173
7174 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7175
7176         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7177         when elmo-mark-as-read is called with second argument nil.
7178
7179 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7180
7181         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7182         Moved to elmo-util.el.
7183
7184         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7185         Moved from elmo-pipe.el
7186
7187         * elmo-archive.el (elmo-archive-call-process): Enclose with
7188         static-if.
7189
7190         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7191         "RFC822" (because RFC822.PEEK is obsolete).
7192         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7193
7194 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7195
7196         * elmo-archive.el (elmo-archive-call-process): Don't check for
7197         the exit status when Nemacs is running.
7198
7199 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7200
7201         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7202         'plain.
7203
7204         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7205         (elmo-pop3-get-spec): Set default of auth to 'user.
7206
7207         * elmo-imap4.el (elmo-imap4-session-check):
7208         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7209         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7210         (elmo-imap4-auth-login): New function; Revival.
7211         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7212         `elmo-imap4-auth-login'.
7213
7214 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7215
7216         * elmo2.el (toplevel): Move `product-provide' declare.
7217         * mmelmo.el (toplevel): Ditto.
7218
7219 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7220
7221         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7222
7223 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7224
7225         * elmo-util.el (elmo-folder-get-store-type): New function.
7226         (elmo-folder-direct-copy-p): Use it.
7227
7228 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7229
7230         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7231         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7232         and result of `elmo-imap4-use-flag-p'.
7233         (elmo-imap4-fetch-callback-1): Set mark according to
7234         the result of `elmo-imap4-use-flag-p'.
7235
7236 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7237
7238         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7239         (elmo-generic-list-folder-unread): Ditto.
7240         (elmo-folder-get-info): Ditto.
7241         (elmo-folder-set-info-max-by-numdb): Ditto.
7242         (elmo-folder-get-info-max): Ditto.
7243         (elmo-folder-get-info-length): Ditto.
7244         (elmo-folder-get-info-unread): Ditto.
7245         (elmo-folder-info-make-hashtb): Ditto.
7246
7247         * elmo2.el: Removed above functions.
7248
7249 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7250
7251         * elmo-imap4.el (toplevel): Require 'ssl.
7252         Add autoload 'starttls.
7253         * elmo-pop3.el (toplevel): Ditto.
7254         * elmo-nntp.el (toplevel): Ditto.
7255
7256 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7257
7258         * elmo-imap4.el (toplevel): defun at compile time.
7259         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7260         sasl-next-step, sasl-step-data, sasl-step-set-data.
7261         * elmo-pop3.el (toplevel): Ditto.
7262
7263 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7264
7265         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7266
7267 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7268
7269         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7270         if error.
7271         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7272         and `elmo-pop-auth-apop'.
7273
7274 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7275
7276         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7277
7278 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7279
7280         * elmo-pop3.el (elmo-network-authenticate-session): Split
7281         encoded response value.
7282
7283 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7284
7285         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7286         `elmo-pop3-force-login'.
7287         Redefine `sasl-mechanisms'.
7288         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7289
7290 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7291
7292         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7293         Delete `elmo-imap4-authenticator-alist'.
7294         (elmo-imap4-auth-cram-md5): Delete.
7295         (elmo-imap4-auth-digest-md5): Delete.
7296
7297 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7298
7299         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7300         (elmo-pop3-auth-scram-md5): Ditto.
7301         (elmo-pop3-auth-cram-md5): Ditto.
7302
7303 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7304
7305         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7306         Delete `elmo-pop3-authenticator-alist'.
7307
7308 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7309
7310         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7311         new SASL API.
7312         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7313
7314 \f
7315 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7316
7317         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7318
7319 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7320
7321         * elmo-nntp.el (elmo-nntp-get-folders-info):
7322         Fixed problem when '\' character is contained in user-id.
7323         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7324
7325 \f
7326 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7327
7328         * elmo-imap4.el (elmo-imap4-delete-folder):
7329         Send "close" before "delete" (Use commented out line).
7330         (elmo-imap4-rename-folder): Ditto.
7331
7332         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7333         folder string itself.
7334         (elmo-dop-list-deleted): New function.
7335         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7336         killed.
7337
7338         * elmo-util.el (elmo-string-rassoc-all): New function.
7339
7340         * elmo-version.el (elmo-version): Up to 2.5.1.
7341
7342 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7343
7344         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7345
7346         * elmo-internal.el (elmo-internal-search): Fix last change.
7347
7348 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7349
7350         * elmo-internal.el (elmo-internal-search): Rewrite.
7351         (Fixed problem which is pointed out by Akihiro MOTOKI
7352         <motoki@da.jp.nec.com>)
7353
7354         * elmo-version.el (elmo-version): Up to 2.5.0.
7355
7356 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7357
7358         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7359
7360 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7361
7362         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7363         non-nil, make hierarchy.
7364
7365 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7366
7367         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7368         `elmo-pop3-use-uidl' must be bound to nil.
7369         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7370
7371 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7372
7373         * elmo-util.el (elmo-copy-file): Don't cause an error after
7374         `add-name-to-file' failed.
7375
7376         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7377         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7378
7379 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7380
7381         * elmo-version.el (elmo-version): Up to 2.3.93.
7382
7383 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7384
7385         * elmo-util.el (elmo-flatten): New function.
7386
7387 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7388
7389         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7390         sync Author header.
7391         * elmo-cache.el (toplevel): Ditto.
7392         * elmo-database.el (toplevel): Ditto.
7393         * elmo-date.el (toplevel): Ditto.
7394         * elmo-dop.el (toplevel): Ditto.
7395         * elmo-filter.el (toplevel): Ditto.
7396         * elmo-imap4.el (toplevel): Ditto.
7397         * elmo-internal.el (toplevel): Ditto.
7398         * elmo-localdir.el (toplevel): Ditto.
7399         * elmo-localnews.el (toplevel): Ditto.
7400         * elmo-maildir.el (toplevel): Ditto.
7401         * elmo-msgdb.el (toplevel): Ditto.
7402         * elmo-multi.el (toplevel): Ditto.
7403         * elmo-net.el (toplevel): Ditto.
7404         * elmo-nntp.el (toplevel): Ditto.
7405         * elmo-pipe.el (toplevel): Ditto.
7406         * elmo-pop3.el (toplevel): Ditto.
7407         * elmo-util.el (toplevel): Ditto.
7408         * elmo-vars.el (toplevel): Ditto.
7409         * elmo2.el (toplevel): Ditto.
7410         * mmelmo-imap4.el (toplevel): Ditto.
7411         * mmelmo.el (toplevel): Ditto.
7412
7413         * elmo-version.el (elmo-version): Move to top.
7414
7415         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7416         * elmo-imap4.el (toplevel): Ditto.
7417         * elmo-localdir.el (toplevel): Ditto.
7418         * elmo-msgdb.el (toplevel): Ditto.
7419         * elmo-nntp.el (toplevel): Ditto.
7420         * elmo-pop3.el (toplevel): Ditto.
7421         * elmo-version.el (toplevel): Ditto.
7422
7423         * elmo-localnews.el (toplevel): Added Keyword header.
7424
7425 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7426
7427         * elmo-version.el (product-version-as-string): Defined using
7428         `defun-maybe'.
7429         (toplevel): Use it.
7430
7431         * elmo-localdir.el (toplevel): Updated copyright notice.
7432         * elmo-version.el (toplevel): Ditto.
7433         * elmo-msgdb.el (toplevel): Ditto.
7434         * elmo-imap4.el (toplevel): Ditto.
7435         * elmo-nntp.el (toplevel): Ditto.
7436         * elmo-pop3.el (toplevel): Ditto.
7437
7438 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7439
7440         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7441         messages.
7442
7443         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7444         parameter value (It sometimes contains raw kanji).
7445
7446 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7447
7448         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7449         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7450
7451 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7452
7453         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7454
7455 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7456
7457         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7458         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7459
7460 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7461
7462         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7463         value if selecting folder succceeded.
7464         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7465
7466 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7467
7468         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7469         representation.
7470
7471         * elmo-util.el (elmo-string-matched-member): New function.
7472
7473 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7474
7475         * elmo-util.el (elmo-unintern): New macro.
7476         (elmo-number-set-member): Fixed docstring.
7477
7478         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7479         tag token.
7480
7481 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7482
7483         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7484         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7485
7486 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7487
7488         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7489         `no-error'.
7490         Added docstring.
7491         Return non-nil if selecting folder succeeded.
7492         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7493
7494 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7495
7496         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7497         `file-name-completion' returns t.
7498         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7499         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7500         directory if it does not exist.
7501         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7502         for iteration.
7503
7504 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7505
7506         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7507         enclosure (It's harmful in unplugged status).
7508
7509         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7510
7511         * mmelmo-1.el: Removed.
7512
7513         * mmelmo-2.el: Ditto.
7514
7515         * mmelmo-imap4-1.el: Ditto.
7516
7517         * mmelmo-imap4-2.el: Ditto.
7518
7519         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7520
7521         * mmelmo.el: Merged mmelmo-2.el.
7522
7523         * elmo-version.el (elmo-version): Up to 2.3.92.
7524
7525 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7526
7527         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7528         elmo-update-number): Remove last period in "...done." message.
7529         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7530         Ditto.
7531         * elmo-cache.el (elmo-cache-expire-by-size,
7532         elmo-cache-get-sorted-cache-file-list,
7533         elmo-cache-msgdb-create-as-numlist): Ditto.
7534         * elmo-dop.el (elmo-dop-save-pending-messages,
7535         (elmo-dop-flush-pending-append-operations): Ditto.
7536         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7537         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7538         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7539         (elmo-localdir-pack-number): Ditto.
7540         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7541         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7542         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7543         mime-write-entity-content): Ditto.
7544         * pldap.el (ldap-search-basic): Ditto.
7545
7546 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7547
7548         * elmo-version.el (elmo-version): Up to 2.3.91.
7549
7550         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7551         Only when filter is 'last'.
7552
7553         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7554         (elmo-condition-parse-search-value): Use it.
7555         (elmo-read-search-condition-internal): Quote value only when
7556         it is not an atom.
7557
7558 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7559
7560         * elmo2.el (elmo-generic-folder-diff): Fix.
7561
7562 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7563
7564         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7565         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7566         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7567         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7568         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7569         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7570
7571 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7572
7573         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7574         extra-fields.
7575
7576 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7577
7578         * elmo-version.el (elmo-version): Up to 2.3.90.
7579
7580         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7581         (elmo-imap4-list-folder-important): Ditto.
7582
7583 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7584
7585         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7586
7587 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7588
7589         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7590
7591 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7592
7593         * elmo-nntp.el (elmo-network-initialize-session):
7594         Add starttls negotiation.
7595
7596 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7597
7598         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7599         response.
7600         (elmo-network-setup-session): Define.
7601         Call `elmo-nntp-send-mode-reader' when session opened.
7602
7603 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7604
7605         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7606
7607 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7608
7609         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7610         an invalid SPACE character ahead of `SEARCH' command.  Move
7611         a valid SPACE character following `SEARCH' from conditional
7612         `format' arguments to control-strings.
7613
7614 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7615
7616         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7617         was succeeded.
7618
7619         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7620
7621 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7622
7623         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7624         `w32-get-true-file-link-count' as t.
7625
7626         * elmo-imap4.el (elmo-imap4-read): Abolished.
7627         (Renamed to `elmo-read' and moved to elmo-util.el)
7628         All other related portions are changed.
7629
7630         * elmo-util.el (elmo-read): New function.
7631         (elmo-condition-parse-search-value): Use it.
7632
7633 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7634
7635         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7636
7637         * elmo-nntp.el (elmo-nntp-session): Define.
7638         (elmo-nntp-setting): Abolished.
7639         All other related portions are changed.
7640         (elmo-nntp-get-server-command): Changed argument.
7641         (elmo-nntp-set-server-command): Ditto.
7642         (elmo-nntp-xover-p): Ditto.
7643         (elmo-nntp-set-xover): Ditto.
7644         (elmo-nntp-listgroup-p): Ditto.
7645         (elmo-nntp-set-listgroup): Ditto.
7646         (elmo-nntp-list-active-p): Ditto.
7647         (elmo-nntp-set-list-active): Ditto.
7648         (elmo-nntp-xhdr-p): Ditto.
7649         (elmo-nntp-set-xhdr): Ditto.
7650         (elmo-nntp-flush-connection): Abolished.
7651         (elmo-nntp-get-connection): Abolished.
7652         (elmo-nntp-get-session): New function.
7653         (elmo-network-initialize-session): Defined.
7654         (elmo-network-authenticate-session): Ditto.
7655         (elmo-nntp-send-mode-reader): Changed argument.
7656         (elmo-nntp-send-command): Changed argument.
7657         All other related portions are changed.
7658         (elmo-nntp-read-response): Ditto.
7659         (elmo-nntp-read-raw-response): Ditto.
7660         (elmo-nntp-read-contents): Ditto.
7661         (elmo-nntp-read-body): Ditto.
7662         (elmo-nntp-goto-folder): Abolished.
7663         (elmo-nntp-select-group): New function.
7664         All other related portions are changed.
7665         (This function substitutes `elmo-nntp-goto-folder')
7666         (elmo-nntp-msgdb-create-by-header): Rewrite.
7667         (elmo-nntp-get-overview): Eliminated.
7668         (elmo-nntp-get-message): Ditto.
7669         (elmo-nntp-open-connection) Abolished.
7670         (elmo-nntp-read-msg): Rewrite.
7671         (elmo-nntp-post): Ditto.
7672         (elmo-nntp-send-data): Abolished.
7673         (elmo-nntp-send-buffer): New function.
7674         (elmo-nntp-send-data-line): Define as inline function.
7675         (elmo-nntp-get-folders-info-prepare): Use session as key.
7676         (elmo-nntp-groups-read-response): Changed argument.
7677         (elmo-nntp-retrieve-headers): Ditto.
7678         (elmo-nntp-msgdb-create-message): Ditto.
7679
7680         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7681         when searching by 'since' or 'before'.
7682
7683 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7684
7685         * elmo-version.el (toplevel): Use product-version-as-string for set
7686         verstion-string, if defined.
7687
7688 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7689
7690         * elmo-util.el: Doc fixes.
7691
7692 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7693
7694         * elmo-archive.el (toplevel): Use product-provide.
7695         * elmo-cache.el (toplevel): Ditto.
7696         * elmo-database.el (toplevel): Ditto.
7697         * elmo-date.el (toplevel): Ditto.
7698         * elmo-dop.el (toplevel): Ditto.
7699         * elmo-filter.el (toplevel): Ditto.
7700         * elmo-imap4.el (toplevel): Ditto.
7701         * elmo-internal.el (toplevel): Ditto.
7702         * elmo-localdir.el (toplevel): Ditto.
7703         * elmo-localnews.el (toplevel): Ditto.
7704         * elmo-maildir.el (toplevel): Ditto.
7705         * elmo-msgdb.el (toplevel): Ditto.
7706         * elmo-multi.el (toplevel): Ditto.
7707         * elmo-net.el (toplevel): Ditto.
7708         * elmo-nntp.el (toplevel): Ditto.
7709         * elmo-pipe.el (toplevel): Ditto.
7710         * elmo-pop3.el (toplevel): Ditto.
7711         * elmo-util.el (toplevel): Ditto.
7712         * elmo-vars.el (toplevel): Ditto.
7713         * elmo2.el (toplevel): Ditto.
7714         * mmelmo-1.el (toplevel): Ditto.
7715         * mmelmo-2.el (toplevel): Ditto.
7716         * mmelmo-imap4-1.el (toplevel): Ditto.
7717         * mmelmo-imap4-2.el (toplevel): Ditto.
7718         * mmelmo-imap4.el (toplevel): Ditto.
7719         * mmelmo.el (toplevel): Ditto.
7720
7721 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7722
7723         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7724         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7725
7726 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7727
7728         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7729         before splitting.
7730         (elmo-multi-split-number-alist): Ditto.
7731
7732 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7733
7734         * elmo-version.el: New file.  Use product.el.
7735         * elmo2.el: Add (require 'elmo-version).
7736         * elmo-vars.el (elmo-appname, elmo-version): Move to
7737         elmo-version.el
7738
7739 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7740
7741         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7742         `elmo-msgdb-expand-path'.
7743         (elmo-msgdb-load): Ditto.
7744         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7745         (elmo-generic-list-folder-unread): Rewrite.
7746         (elmo-generic-list-folder-important): Changed argument.
7747         (elmo-list-folder-unread): Ditto.
7748         (elmo-list-folder-important): Ditto.
7749         (elmo-folder-diff): Rewrite.
7750         (elmo-generic-folder-diff): New function.
7751         (elmo-multi-get-number-alist-list): Abolished
7752         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7753         (elmo-multi-folder-diff): Moved to elmo-multi.el
7754         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7755
7756         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7757         `elmo-msgdb-expand-path'.
7758         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7759         (elmo-pop3-read-msg): Ditto.
7760         (elmo-pop3-delete-msgs): Ditto.
7761         (elmo-pop3-folder-diff): New alias.
7762
7763         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7764         `elmo-msgdb-expand-path'.
7765         (elmo-pipe-list-folder-unread): Changed arguments.
7766         (elmo-pipe-list-folder-important): Ditto.
7767         (elmo-pipe-folder-diff): New alias.
7768
7769         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7770         `elmo-msgdb-expand-path'.
7771         (elmo-nntp-max-of-folder): Ditto.
7772         (elmo-nntp-msgdb-create): Ditto.
7773         (elmo-nntp-delete-msgs): Ditto.
7774         (elmo-nntp-folder-diff): New alias.
7775
7776         * elmo-multi.el (elmo-multi-folder-diff): New function.
7777         (elmo-multi-split-mark-alist): Ditto.
7778         (elmo-multi-split-number-alist): Ditto.
7779         (elmo-multi-mark-alist-list): Abolished (Renamed to
7780         elmo-multi-split-mark-alist).
7781         (elmo-multi-list-folder-unread): Rewrite.
7782         (elmo-multi-list-folder-important): Ditto.
7783         (elmo-multi-list-folder): Set `spec' as 1st argument for
7784         `elmo-msgdb-expand-path'.
7785         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7786         instead of `elmo-multi-get-number-alist-list'.
7787
7788         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7789         If 1st argument is not string, treat as spec.
7790         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7791         `elmo-msgdb-expand-path'.
7792         (elmo-msgdb-flist-load): Ditto.
7793         (elmo-msgdb-flist-save): Ditto.
7794         (elmo-msgdb-delete-path): Ditto.
7795         (elmo-msgdb-rename-path): Ditto.
7796
7797         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7798         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7799         (elmo-maildir-delete-mark-msgs): Ditto.
7800         (elmo-maildir-msgdb-create): Ditto.
7801         (elmo-maildir-read-msg): Ditto.
7802         (elmo-maildir-delete-msgs): Ditto.
7803         (elmo-maildir-list-folder-subr): Ditto.
7804         (elmo-maildir-search): Ditto.
7805         (elmo-maildir-get-msg-filename): Ditto.
7806         (elmo-maildir-pack-number): Ditto.
7807         (elmo-maildir-folder-diff): New alias.
7808
7809         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7810
7811         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7812         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7813         (elmo-localdir-folder-diff): New alias.
7814
7815         * elmo-internal.el (elmo-internal-list-folder-subr):
7816         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7817         (elmo-internal-list-folder-by-location): Ditto.
7818         (elmo-internal-msgdb-create): Ditto.
7819         (elmo-internal-delete-msgs): Ditto.
7820         (elmo-internal-read-msg): Ditto.
7821         (elmo-internal-folder-diff): New alias.
7822
7823         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7824         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7825         `elmo-msgdb-expand-path'.
7826         (elmo-imap4-list-folder-unread): Changed arguments.
7827         (elmo-imap4-list-folder-important): Ditto.
7828
7829         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7830         (elmo-filter-list-folder-important): Ditto.
7831         (elmo-filter-folder-diff): New function.
7832
7833         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7834
7835         * elmo-cache.el (elmo-cache-list-folder):
7836         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7837         (elmo-cache-copy-msgs): Ditto.
7838         (elmo-cache-folder-diff): New alias.
7839
7840         * elmo-archive.el (elmo-archive-list-folder-subr):
7841         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7842         (elmo-archive-get-archive-name): Ditto.
7843         (elmo-archive-create-file): Ditto.
7844         (elmo-archive-append-msg): Ditto.
7845         (elmo-archive-copy-msgs): Ditto.
7846         (elmo-archive-copy-msgs-froms): Ditto.
7847         (elmo-archive-get-msg-filename): Ditto.
7848         (elmo-archive-folder-diff): New alias.
7849
7850 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7851
7852         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7853         (elmo-pop3-stream-type-alist): New variable.
7854         (elmo-nntp-stream-type-alist): New variable.
7855
7856         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7857         (elmo-kill-buffer): Ditto.
7858         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7859         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7860         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7861         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7862         (elmo-imap4-get-spec): Take into account
7863         `elmo-imap4-stream-type-alist'.
7864
7865 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7866
7867         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7868         (elmo-nntp-list-folders-get-cache): Ditto.
7869
7870 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7871
7872         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7873         character before 'uid'.
7874
7875 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7876
7877         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7878
7879         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7880
7881         * elmo-util.el (elmo-number-set-member): New function.
7882         (elmo-number-set-append-list): Ditto.
7883         (elmo-number-set-append): Ditto.
7884
7885         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7886         Use `elmo-number-set-member'.
7887         (elmo-living-messages): Ditto.
7888         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7889         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7890
7891         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7892         (elmo-imap4-add-to-cont-list): Abolished.
7893         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7894         instead of elmo-imap4-add-to-cont-list.
7895
7896         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7897         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7898
7899         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7900
7901 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7902
7903         * elmo-util.el (elmo-condition-parse-search-value):
7904         Fixed date parsing.
7905
7906 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7907
7908         * elmo-util.el (elmo-condition-find-key-internal): New function.
7909         (elmo-condition-find-key): Ditto.
7910
7911         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7912         (elmo-msgdb-search-internal): Ditto.
7913         (elmo-msgdb-search): Ditto.
7914
7915 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7916
7917         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7918         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7919
7920         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7921         (elmo-nntp-search-primitive): Fixed problem when condition is
7922         'unmatch'.
7923
7924         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7925
7926         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7927         (elmo-nntp-xhdr-p): New macro.
7928         (elmo-nntp-set-xhdr): Ditto.
7929         (elmo-nntp-parse-xhdr-response): New function.
7930         (elmo-nntp-retrieve-field): Ditto.
7931         (elmo-nntp-search-primitive): Ditto.
7932         (elmo-nntp-search): Implemented.
7933
7934         * elmo-date.el (elmo-date-make-sortable-string): New macro.
7935
7936         * elmo-archive.el (elmo-archive-search): Set all number list to
7937         `elmo-archive-field-condition-match'
7938
7939         * elmo-localdir.el (elmo-localdir-search): Likewise.
7940
7941         * elmo-maildir.el (elmo-maildir-search): Likewise.
7942
7943 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
7944
7945         * elmo-msgdb.el (elmo-living-messages): New function.
7946         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7947         * elmo-cache.el (elmo-cache-list-folder): Ditto.
7948         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7949         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7950         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7951         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7952         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7953         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7954         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7955         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7956         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7957
7958 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
7959
7960         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
7961
7962         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
7963
7964         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
7965
7966         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
7967         arguments for `SEARCH' command.
7968         (elmo-imap4-parse-string): Set `POS' argument for char-after.
7969         All other related portions are changed.
7970
7971         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
7972
7973         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
7974         (elmo-list-folder-unread): Rewrite.
7975         (elmo-list-folder-important): Ditto.
7976
7977         * elmo-util.el (elmo-filter-get-spec): Rewrite.
7978         (elmo-condition-parse-error): New inline function.
7979         (elmo-read-search-condition): New function.
7980         (elmo-read-search-condition-internal): Ditto.
7981         (elmo-parse-search-condition): Rewrite.
7982         (elmo-condition-parse): New function.
7983         (elmo-condition-parse-or-expr): Ditto.
7984         (elmo-condition-parse-and-expr): Ditto.
7985         (elmo-condition-parse-primitive): Ditto.
7986         (elmo-condition-parse-search-value): Ditto.
7987         (elmo-buffer-field-primitive-condition-match): Ditto.
7988         (elmo-buffer-field-condition-match): Rewrite.
7989         (elmo-file-field-condition-match): Ditto.
7990
7991         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
7992         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
7993
7994         * elmo-internal.el (elmo-internal-search): Set `number' and
7995         `number-list' argument of `elmo-file-field-condition-match'.
7996
7997         * elmo-maildir.el (elmo-maildir-search): Ditto.
7998
7999         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8000         `msgdb' as argument instead of `mark-alist'.
8001         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8002         `overview'.
8003
8004         * elmo-multi.el: Likewise.
8005
8006         * elmo-pipe.el: Likewise.
8007
8008         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8009         (elmo-imap4-search-internal): Rewrite.
8010         (elmo-imap4-search): Ditto.
8011
8012         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8013         (elmo-filter-list-folder-unread): Ditto.
8014         (elmo-filter-list-folder-important): Ditto.
8015         (elmo-filter-search): Rewrite.
8016
8017         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8018         `number-list' argument of `elmo-file-field-condition-match'.
8019         (elmo-cache-search): Ditto.
8020
8021         * elmo-localdir.el: Likewise.
8022
8023         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8024         number-list and pass it to `elmo-buffer-field-condition-match'.
8025         (elmo-archive-field-condition-match): Pass `number-list' to
8026         `elmo-archive-field-condition-match'
8027
8028 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8029
8030         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8031         `listgroup'.
8032
8033         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8034         (elmo-folder-diff-async-callback-data): Ditto.
8035         (elmo-folder-diff-async): New function.
8036
8037         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8038         (elmo-network-session-cache-key): Use it as a prefix of the session
8039         name.
8040         (elmo-network-open-session): Ditto.
8041
8042         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8043         (elmo-imap4-status-callback-data): Ditto.
8044         (elmo-imap4-server-diff-async-callback): New variable.
8045         (elmo-imap4-server-diff-async-callback-data): Ditto.
8046         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8047         `elmo-imap4-status-callback-data'.
8048         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8049         `elmo-imap4-status-callback-data' as nil.
8050         (elmo-imap4-server-diff): Ditto.
8051         (elmo-imap4-server-diff-async-callback-1): New function.
8052         (elmo-imap4-server-diff-async): Ditto.
8053         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8054
8055 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8056
8057         * elmo-util.el (elmo-list-delete): Doc fix.
8058         (elmo-delete-lists): Abolish.
8059         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8060         instead of `elmo-delete-lists'.
8061
8062 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8063
8064         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8065         before `sort'.
8066
8067 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8068
8069         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8070         `elmo-imap4-literal-subr'.
8071         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8072         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8073
8074 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8075
8076         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8077         (elmo-archive-list-folder): Fix.
8078         (elmo-archive-max-of-folder): Fix.
8079
8080 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8081
8082         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8083          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8084         (elmo-localdir-append-msg): Ditto.
8085         (elmo-localdir-list-folder): Fix for `nonsort'.
8086         (elmo-localdir-list-folder-subr): Fix for `killed'.
8087         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8088         (elmo-maildir-list-folder-subr): Ditto.
8089         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8090         (elmo-archive-list-folder-subr): Ditto.
8091         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8092         (elmo-internal-list-folder-subr): Ditto.
8093
8094 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8095
8096         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8097
8098 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8099
8100         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8101
8102 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8103
8104         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8105         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8106
8107         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8108         before greeting.
8109         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8110         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8111
8112 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8113
8114         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8115
8116         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8117         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8118         before STORE command.
8119
8120 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8121
8122         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8123
8124         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8125         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8126         of `response'.
8127         (elmo-imap4-list-folders): Removed unused local variable.
8128         (elmo-network-initialize-session): Ditto.
8129         (elmo-imap4-delete-msg-by-id): Ditto.
8130         (elmo-imap4-parse-fetch): Ditto.
8131         (elmo-imap4-copy-msgs): Ditto.
8132         Use `dst-spec' instead of `dst-folder'.
8133         (elmo-network-authenticate-session): Check authenticate type `plain'.
8134
8135 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8136
8137         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8138         garbage checking.
8139         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8140         `elmo-imap4-response-value'.
8141         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8142
8143 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8144
8145         * elmo-imap4.el (elmo-imap4-send-command):
8146         Cause elmo-imap4-bye-error when current response is BYE.
8147         (elmo-imap4-arrival-filter): Changed greeting response value.
8148
8149         * elmo2.el (elmo-imap4-bye-error): Define.
8150
8151         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8152         (elmo-imap4-server-diff): Ditto.
8153         (elmo-imap4-response-bye-p): New macro.
8154         (elmo-imap4-response-error-text): Get text from BYE response.
8155         (elmo-imap4-read-response): Return if BYE response.
8156         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8157         (elmo-imap4-folder-exists-p): Ditto.
8158         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8159         (elmo-imap4-parse-bye): New function.
8160         (elmo-imap4-parse-response): Remove needless let.
8161         Call `elmo-imap4-parse-bye'.
8162
8163 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8164
8165         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8166         the mailbox does not exist.
8167         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8168
8169 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8170
8171         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8172
8173 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8174
8175         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8176
8177         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8178         (elmo-network-initialize-session-buffer): Defined.
8179
8180         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8181         Abolished.
8182         (mmelmo-imap4-get-mime-entity): Rewrite.
8183
8184         * elmo2.el (elmo-error): Capitalize error message.
8185
8186         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8187         (elmo-network-session-buffer): New macro.
8188         (elmo-network-open-session): Use it.
8189
8190         * elmo-imap4.el: Rewrite.
8191
8192 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8193
8194         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8195
8196 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8197
8198         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8199         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8200         (elmo-imap4-create-msgdb-from-overview-string): Use
8201         `elmo-msgdb-create-overview-from-buffer'.
8202
8203 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8204
8205         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8206         (elmo-imap4-default-hierarchy-delimiter): New variable.
8207         (elmo-imap4-list-folders): Use it.
8208
8209 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8210
8211         * elmo-net.el (elmo-network-open-session): Add user and
8212         stream-type for process-buffer name.
8213
8214         * elmo-pop3.el (elmo-network-initialize-session): Call
8215         buffer-disable-undo.
8216
8217         * elmo-imap4.el (elmo-network-initialize-session):
8218         Set current-buffer as an argument for `buffer-disable-undo'.
8219
8220         * elmo-pop3.el (elmo-network-close-session): Don't use
8221         `process-live-p'.
8222
8223         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8224         Set default as 'user.
8225
8226         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8227
8228         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8229         and `elmo-imap4-flush-connection'.
8230
8231         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8232         (elmo-pop3-get-spec): Assume auth as symbol.
8233         (elmo-open-network-stream): Moved to `elmo-net'.
8234
8235         * elmo-pop3.el (toplevel): Require 'elmo-net.
8236         Define `sasl-cram-md5' to silence byte compilier.
8237         (elmo-pop3-connection-cache) Abolished.
8238         (elmo-pop3-authenticator-alist) New variable.
8239         (elmo-pop3-session): Define.
8240         (elmo-pop3-connection-get-process): Abolished.
8241         (elmo-pop3-connection-get-buffer): Ditto.
8242         (elmo-pop3-close-connection): Ditto.
8243         (elmo-pop3-flush-connection): Ditto.
8244         (elmo-pop3-get-connection): Ditto.
8245         (elmo-pop3-get-session): New function.
8246         (Replacement for `elmo-pop3-get-connection').
8247         All other related modules are changed.
8248         (elmo-network-close-session): Define.
8249         (elmo-pop3-send-command): Abolished argument `buffer'.
8250         All other related modules are changed.
8251         (elmo-pop3-read-response): Likewise.
8252         (elmo-pop3-open-connection): Abolished.
8253         (elmo-pop3-auth-user): New function.
8254         (elmo-pop3-auth-apop): Ditto.
8255         (elmo-pop3-auth-cram-md5): Ditto.
8256         (elmo-pop3-auth-scram-md5): Ditto.
8257         (elmo-pop3-auth-digest-md5): Ditto.
8258         (elmo-network-initialize-session): Define.
8259         (elmo-network-authenticate-session): Ditto.
8260         (elmo-network-setup-session): Ditto.
8261
8262         * elmo-imap4.el (toplevel): Require 'elmo-net.
8263         (elmo-imap4-session): Define.
8264         (elmo-imap4-connection-cache): Abolished.
8265         (elmo-imap4-password-key): Ditto.
8266         (elmo-imap4-flush-connection): Ditto.
8267         (elmo-imap4-get-connection): Ditto.
8268         All other related modules are changed.
8269         (elmo-imap4-get-session): New function
8270         (Replacement for `elmo-imap4-get-connection').
8271         (elmo-imap4-read-response): Abolished argument `buffer'.
8272         All other related modules are changed.
8273         (elmo-imap4-send-command): Likewise.
8274         (elmo-imap4-select-folder): Abolished.
8275         All other related modules are changed.
8276         (elmo-imap4-select-mailbox): New function.
8277         (Replacement for `elmo-imap4-select-folder').
8278         (elmo-imap4-auth-login): Simplify.
8279         (Assume current buffer as process buffer)
8280         (elmo-imap4-auth-cram-md5): Ditto.
8281         (elmo-imap4-auth-digest-md5): Ditto.
8282         (elmo-imap4-login): Ditto.
8283         (elmo-imap4-open-connection): Abolished.
8284         (elmo-imap4-open-connection-1): Abolished.
8285         (elmo-network-initialize-sessoin): Define.
8286         (elmo-network-authenticate-session): Ditto.
8287         (elmo-network-setup-session): Ditto.
8288
8289         * elmo-net.el: New module.
8290
8291 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8292
8293         * elmo-util.el (elmo-define-error): New function.
8294
8295         * elmo2.el (elmo-error): Define.
8296         (elmo-open-error): Define.
8297         (elmo-authenticate-error): Define.
8298
8299         * elmo-imap4.el (elmo-imap4-error): Abolish.
8300         (elmo-imap4-error-type): Abolish.
8301         (elmo-imap4-error-process): Abolish.
8302         (elmo-imap4-error-message): Abolish
8303         (elmo-imap4-list-folders): Don't quote lambda.
8304         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8305         (elmo-imap4-parse-namespace): Ditto.
8306         (elmo-imap4-open-connection): Rewrite.
8307         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8308         (elmo-imap4-get-connection): Abolish local variable `result'.
8309
8310 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8311
8312         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8313         wrong-type-argument error when auth is nil.
8314
8315 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8316
8317         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8318         (elmo-default-nntp-stream-type): Ditto.
8319         (elmo-default-pop3-stream-type): Ditto.
8320         (elmo-network-stream-type-alist): Ditto.
8321         (elmo-default-imap4-ssl): Abolished.
8322         (elmo-default-nntp-ssl): Ditto.
8323         (elmo-default-pop3-ssl): Ditto.
8324
8325         * elmo-util.el: (toplevel): Removed needless requires.
8326         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8327         (elmo-open-network-stream): Open network stream according to
8328         the value of `elmo-network-stream-type-alist'.
8329         (elmo-get-network-stream-type): New function.
8330         (elmo-network-stream-type-spec-string): New macro.
8331         (elmo-network-stream-type-symbol): Ditto.
8332         (elmo-network-stream-type-function): Ditto.
8333
8334         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8335         network-stream-type. All other related portions are changed.
8336         (elmo-pop3-open-connection): Ditto.
8337
8338         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8339         network-stream-type. All other related portions are changed.
8340
8341         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8342         network-stream-type.All other related portions are changed.
8343         (elmo-imap4-error): New macro.
8344         (elmo-imap4-error-type): Ditto.
8345         (elmo-imap4-error-process): Ditto.
8346         (elmo-imap4-error-message): Ditto.
8347         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8348         (elmo-imap4-auth-cram-md5): Ditto.
8349         (elmo-imap4-auth-digest-md5): Ditto.
8350         (elmo-imap4-login): Ditto.
8351         (elmo-imap4-open-connection): Remove password entry if authentication
8352         was in vain.
8353         (elmo-imap4-user-at-host): Abolished.
8354         (elmo-imap4-password-key): New buffer local variable.
8355         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8356         using protocol, port, auth and stream-type.
8357
8358         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8359
8360 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8361
8362         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8363
8364         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8365
8366         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8367         (elmo-imap4-authenticator-alist): New variable.
8368         (elmo-imap4-open-connection-1): Rename from
8369         elmo-imap4-open-connection.
8370         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8371         only wraps elmo-imap4-open-connection-1.
8372         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8373         user-at-host.
8374         (elmo-imap4-auth-login): New function.
8375         (elmo-imap4-auth-cram-md5): New function.
8376         (elmo-imap4-auth-digest-md5): New function.
8377         (elmo-imap4-login): New function.
8378
8379 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8380
8381         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8382         function `error'.
8383
8384 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8385
8386         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8387
8388 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8389
8390         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8391
8392 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8393
8394         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8395         for server responses, quote `*' regardless of where it appears.
8396
8397 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8398
8399         * elmo-maildir.el (elmo-maildir-commit): New alias.
8400
8401 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8402
8403         * elmo-util.el (elmo-display-progress):
8404                 Use `progress-feedback-with-label'.
8405
8406 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8407
8408         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8409         (elmo-imap4-non-atom-char-regex): Ditto.
8410         (elmo-imap4-non-text-char-regex): Ditto.
8411         (elmo-imap4-literal-threshold): Ditto.
8412         (elmo-imap4-atom-p): New function.
8413         (elmo-imap4-quotable-p): Ditto.
8414         (elmo-imap4-nil): Ditto.
8415         (elmo-imap4-atom): Ditto.
8416         (elmo-imap4-quoted): Ditto.
8417         (elmo-imap4-literal-subr): Ditto.
8418         (elmo-imap4-literal): Ditto.
8419         (elmo-imap4-buffer-literal): Ditto.
8420         (elmo-imap4-string-subr): Ditto.
8421         (elmo-imap4-string): Ditto.
8422         (elmo-imap4-buffer-string): Ditto.
8423         (elmo-imap4-astring-subr): Ditto.
8424         (elmo-imap4-astring): Ditto.
8425         (elmo-imap4-buffer-astring): Ditto.
8426         (elmo-imap4-nstring): Ditto.
8427         (elmo-imap4-buffer-nstring): Ditto.
8428         (elmo-imap4-mailbox): New alias.
8429         (elmo-imap4-field-body): Ditto.
8430         (elmo-imap4-userid): Ditto.
8431         (elmo-imap4-password): Ditto.
8432         (elmo-imap4-format-quoted): New function.
8433         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8434         arguments and handle "atom", "quoted" and "literal" string here.
8435         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8436         `elmo-imap4-send-command'.
8437         (elmo-imap4-folder-exists-p): Likewise.
8438         (elmo-imap4-create-folder): Likewise.
8439         (elmo-imap4-delete-folder): Likewise.
8440         (elmo-imap4-rename-folder): Likewise.
8441         (elmo-imap4-max-of-folder): Likewise.
8442         (elmo-imap4-check-validity): Likewise.
8443         (elmo-imap4-sync-validity): Likewise.
8444         (elmo-imap4-server-diff): Likewise.
8445         (elmo-imap4-select-folder): Likewise.
8446         (elmo-imap4-copy-msgs): Likewise.
8447         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8448         (elmo-imap4-mark-set-on-msgs): Likewise.
8449         (elmo-imap4-read-part): Likewise.
8450         (elmo-imap4-read-msg): Likewise.
8451         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8452         `elmo-imap4-password' for `elmo-imap4-send-command'.
8453         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8454         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8455         `elmo-imap4-buffer-literal'.
8456         (elmo-imap4-append-msg): Likewise.
8457
8458         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8459         `delete' for removing dead connection from the connection cache.
8460         Move deletion of the process buffer after that.
8461         (elmo-imap4-list): Change `defsubst' to `defun'.
8462         (elmo-imap4-commit): Make error message verbose.
8463         (elmo-imap4-search): Ditto.
8464         (elmo-imap4-list): Ditto.
8465         (elmo-imap4-select-folder): Ditto.
8466         (elmo-imap4-copy-msgs): Ditto.
8467         (elmo-imap4-delete-msg-by-id): Ditto.
8468         (elmo-imap4-append-msg-by-id): Ditto.
8469         (elmo-imap4-append-msg): Ditto.
8470
8471 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8472
8473         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8474         when dired is used on XEmacs.
8475
8476 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8477
8478         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8479         instead of `append'.
8480         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8481         `elmo-plugged-p' directly.
8482         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8483         of `elmo-plugged-p' directly.
8484
8485         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8486         Eliminate unused variable.  Use `memq' for checking a process status.
8487         Use `cons' instead of `append' for updating the connection cache.
8488         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8489         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8490
8491 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8492
8493         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8494         `elmo-imap4-read-point' exactly.
8495
8496         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8497         the local variable `folder' to `mailbox'.
8498         Rename the argument `fld' to `folder'.
8499
8500 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8501
8502         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8503         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8504
8505 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8506
8507         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8508         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8509         (elmo-pop3-uidl-number-hash): Ditto.
8510         (elmo-pop3-size-hash): Ditto.
8511         (elmo-pop3-uidl-done): Ditto.
8512         (elmo-pop3-list-done): Ditto.
8513         (elmo-pop3-connection-get-process): New defmacro.
8514         (elmo-pop3-connection-get-buffer): Ditto.
8515         (elmo-pop3-close-connection): Delete buffer and process.
8516         (elmo-pop3-flush-connection): Don't delete buffer and process.
8517         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8518         Setup UIDL and size hash.
8519         (elmo-pop3-send-command-no-erase): Deleted
8520         (elmo-pop3-send-command): Added optional argument `no-erase'.
8521         (elmo-pop3-parse-uidl-response): New function.
8522         (elmo-pop3-parse-list-response): Set size hash.
8523         (elmo-pop3-list-location): New function.
8524         (elmo-pop3-list-by-uidl-subr): Ditto.
8525         (elmo-pop3-list-by-list): Ditto.
8526         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8527         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8528         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8529         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8530         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8531         Use uidl.
8532         (elmo-pop3-uidl-to-number): New function.
8533         (elmo-pop3-number-to-uidl): Ditto.
8534         (elmo-pop3-number-to-size): Ditto.
8535         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8536         Set number by use of uidl.
8537         (elmo-pop3-msgdb-create-message): Likewise.
8538         Set size, loc-alist in msgdb.
8539         (elmo-pop3-read-msg): Set number by use of uidl.
8540         Added optional argument `msgdb'.
8541         (elmo-pop3-delete-msg): Ditto.
8542         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8543         (elmo-pop3-commit): Close connection.
8544
8545         * elmo-pipe.el (elmo-pipe-max-of-folder):
8546         Bind `elmo-pop3-use-uidl' as nil.
8547         (elmo-pipe-drain): Ditto.
8548         Call `elmo-commit'.
8549
8550         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8551         (elmo-msgdb-overview-entity-set-size): New defsubst.
8552
8553 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8554
8555         * elmo-vars.el (elmo-use-killed-list): New variable
8556         (Renamed from `elmo-nntp-use-killed-list').
8557         (elmo-nntp-use-killed-list): Eliminated.
8558
8559         * elmo-msgdb.el (elmo-msgdb-expand-path):
8560         Changed expanding msgdb path for elmo-multi.
8561
8562         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8563         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8564         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8565         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8566         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8567         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8568         (toplevel): Deleted time-stamp line.
8569
8570         * elmo2.el (elmo-clear-killed ): Defined as function
8571         (Abolished defining as a backend function).
8572         All other related modules are changed.
8573
8574 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8575
8576         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8577
8578 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8579
8580         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8581
8582 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8583
8584         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8585
8586 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8587
8588         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8589         asynchronous folder check.
8590
8591         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8592
8593         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8594         `elmo-nntp-use-killed-list'.
8595         (elmo-nntp-list-folder): Use killed list.
8596         (elmo-nntp-max-of-folder): Ditto.
8597         (elmo-nntp-msgdb-create): Set killed list.
8598
8599         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8600
8601         * elmo2.el (elmo-clear-killed): New backend function.
8602         All other related modules are changed.
8603
8604 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8605
8606         * elmo-util.el (elmo-imap4-spec-folder): Use
8607         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8608         All callers changed.
8609
8610 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8611
8612         * mmelmo-2.el (initialize-instance):
8613         Use `mime-buffer-entity-buffer-internal' instead of
8614         `mime-entity-buffer'.
8615
8616         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8617         (mime-entity-body): Implemented.
8618         (mime-goto-header-start-point): Deleted.
8619         (mime-goto-body-end-point): Ditto.
8620         (mime-entity-point-min): Ditto.
8621         (mime-entity-point-max): Ditto.
8622         (mime-entity-children): Ditto.
8623         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8624         instead of `mime-entity-buffer'.
8625         (mime-entity-header-buffer): Ditto.
8626         (mime-entity-body-buffer): Ditto.
8627         (mime-write-entity-content): Ditto.
8628
8629         * pldap.el (ldap-static-if): New macro.
8630         (toplevel): Use it instead of `static-if'.
8631
8632 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8633
8634         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8635         included in `attrs' argument.
8636
8637 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8638
8639         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8640
8641         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8642         (ldap-ldif-safe-init-char-regexp): Ditto.
8643         (ldap-ldif-safe-string-regexp): Ditto.
8644         (ldap/ldif-safe-string-p): New macro.
8645         (ldap/ldif-insert-field): Ditto.
8646         (ldap-modify): Use it.
8647         (ldap-add): Ditto.
8648         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8649         (ldap-decode-attribute): Decode only when `attr' is consp.
8650         (ldap-delete): Bind `ret'.
8651         (toplevel): Require 'cl at compile time.
8652         Removed (require 'poe) and (require 'std11).
8653         (pldap-version): Eliminated.
8654         (ldap-search-basic): Removed auth and dn binding.
8655         (ldap-ldif-field-name-regexp): New constant.
8656         (ldap-ldif-field-head-regexp): Ditto.
8657         (ldap-ldif-next-field-head-regexp): Ditto.
8658         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8659         (ldap/field-end): New function.
8660         (ldap/field-body): Use it.
8661         (ldap/collect-field): Ditto.
8662         (ldap-search-basic): Use `ldap/field-body'.
8663
8664 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8665
8666         * pldap.el (ldap-default-attribute-encoder): New user option.
8667         (ldap/field-body): Decode base64 string.
8668         (ldap/collect-field): Ditto.
8669         (ldap-encode-attribute): New function.
8670         (ldap-add-entries): Use it.
8671         (ldap-modify-entries): Ditto.
8672         (ldap-search-entries): Enclosed decoding function with
8673         `with-temp-buffer' and set as unibyte.
8674         (ldap-search-basic): Set process buffer as unibyte.
8675
8676         * elmo-util.el (elmo-folder-identical-system-p):
8677         Eliminated name space checking.
8678
8679         * pldap.el: New module.
8680         toplevel: Changed condition to detect built-in ldap feature.
8681         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8682         (ldap-add): Added error handling.
8683         (ldap-modify): Ditto.
8684         (ldap-delete): Ditto.
8685
8686 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8687
8688         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8689         Initialize local variables with `let'.  Inline a temporary
8690         variable for the progress percentage.  Sort `setq' to reduce
8691         function call in the while-loop.
8692
8693         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8694         into the conditional branch.
8695
8696 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8697
8698         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8699         Move a conditional out of the while-loop.
8700
8701 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8702
8703         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8704         elmo-msgdb-overview-get-entity-by-number.
8705         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8706         throw.
8707
8708 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8709
8710         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8711         the local variable for a packed number self descriptively.
8712
8713 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8714
8715         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8716         * elmo-localdir.el (elmo-localdir-pack-number): Use
8717         `elmo-msgdb-overview-get-entity' instead of
8718         `elmo-msgdb-overview-get-entity-by-number'.
8719         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8720         (elmo-msgdb-search-overview-entity): Removed.
8721         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8722         by message-id or number.
8723         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8724         instead of `elmo-msgdb-overview-get-entity-by-number'.
8725
8726 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8727
8728         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8729         non-nil, use hash table for overview.
8730         (elmo-hash-maximum-size): New variable.
8731         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8732         (elmo-msgdb-make-overview-hashtb): New function.
8733         (elmo-msgdb-clear-overview-hashtb): New function.
8734         (elmo-clear-hash-val): New macro.
8735         All other related modules are changed.
8736
8737 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8738
8739         * elmo2.el (elmo-move-msgs): If there's other message with
8740         same message-id, don't use cache.
8741
8742 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8743
8744         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8745         number is already packed.
8746
8747 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8748
8749         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8750
8751 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8752
8753         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8754         All other related modules are changed.
8755
8756 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8757
8758         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8759         of refiling failure on Maildir.
8760
8761 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8762
8763         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8764         decoded mime-charset with cache.
8765         (elmo-msgdb-overview-entity-get-from): Ditto.
8766         (elmo-msgdb-overview-entity-get-subject): Ditto.
8767         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8768
8769 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8770
8771         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8772         (elmo-remove-passwd): Fill password with 0 before erase.
8773         * elmo-vars.el (elmo-passwd-life-time): New variable.
8774
8775 \f
8776 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8777
8778         * elmo-cache.el (elmo-buffer-cache-add):
8779         Set message cache buffer as unibyte.
8780
8781 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8782
8783         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8784         become nil.
8785
8786 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8787
8788         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8789         when display is finished.
8790         (elmo-nntp-msgdb-create): Ditto.
8791         (elmo-nntp-groups-read-response): Ditto.
8792         (elmo-nntp-retrieve-headers): Ditto.
8793         (elmo-nntp-msgdb-create-message): Ditto.
8794         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8795         (elmo-pop3-msgdb-create-message): Ditto.
8796
8797 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8798
8799         * elmo-maildir.el (elmo-maildir-msgdb-create):
8800         Use `elmo-msgdb-sort-by-date'.
8801
8802 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8803
8804         * elmo2.el (elmo-read-msg-no-cache):
8805         Eliminated arguments after `outbuf'.
8806         Don't use cache even if it exists.
8807         (elmo-read-msg): Don't pass arguments after `outbuf' to
8808         `elmo-read-msg-no-cache'.
8809
8810 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8811
8812         * elmo-archive.el (elmo-archive-list-folders):
8813         Use `file-name-directory' if base folder does not exist.
8814
8815 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8816
8817         * elmo-archive.el (elmo-archive-list-folders): Don't use
8818         `file-name-directory'.
8819
8820 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8821
8822         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8823         If `force' is non-nil, try flushing all operation queues.
8824
8825 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8826
8827         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8828         as-binary-process.
8829
8830 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8831
8832         * elmo-util.el (elmo-display-progress): Fixed.
8833
8834 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8835
8836         * elmo-util.el (elmo-display-progress): New function.
8837         All other related modules are changed.