* elmo-signal.el (elmo-signal-bindings): Use cons to append
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-signal.el (elmo-signal-bindings): Use cons to append
4         element into list.
5         (elmo-define-signal-handler): Add docstring.
6         (elmo-define-signal-filter): Ditto.
7
8         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
9
10 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
11
12         * elmo-util.el (elmo-flatten): Don't use recursive call.
13
14         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
15         assignment.
16         (elmo-folder-message-make-temp-files): Use `number-to-string'
17         instead of `int-to-string'.
18
19 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
20
21         * elmo-search.el (elmo-folder-delete-messages): Define.
22
23 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
24
25         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
26         customization type.
27         (elmo-mailing-list-count-spec-list): Ditto.
28
29         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
30         for `list-id'.
31
32 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
33
34         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
35         handling.
36
37 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
38
39         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
40         (elmo-mailing-list-count-spec-list): Ditto.
41
42         * elmo-util.el (elmo-map-until-success): New function.
43         (elmo-string-match-substring): Ditto.
44         (elmo-find-list-match-value): Ditto.
45
46         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
47         Removed.
48         (modb-entity-extract-ml-info-from-subject): Ditto.
49         (modb-entity-extract-ml-info-from-return-path): Ditto.
50         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
51         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
52         (modb-entity-extract-ml-info-from-mailman): Ditto.
53         (modb-entity-extract-mailing-list-info-functions): Ditto.
54         (modb-entity-extract-mailing-list-info): Rewrite with
55         `elmo-find-list-match-value'.
56
57 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
58
59         * elmo-net.el (elmo-network-session-retry-count): New user option.
60         (elmo-network-session-buffer-name): New internal function.
61         (elmo-network-session-buffer-create): Ditto.
62         (elmo-network-open-session): Retry open network session
63         `elmo-network-session-retry-count' times.
64
65 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
66
67         * elmo-util.el (elmo-list-filter): Rewritten.
68
69 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
70
71         * elmo-util.el (elmo-string-member): Allow symbol element in list.
72
73 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
74
75         * elmo-search.el (elmo-make-search-engine): Use prefix
76         `elmo-search-' for require symbol instead of `else-'.
77         (elmo-search-engine-extprog): New class.
78         (elmo-search-engine-do-search): Remove nil from argument
79         list. Added argument pattern to evaluate element as function.
80         (elmo-search-engine-local-file): Derived from
81         `elmo-search-engine-extprog'.
82         (elmo-search-engine-create-message-entity): Check existance of file.
83         (elmo-search-engine-fetch-message): Ditto.
84         (elmo-search-namazu-index): Follow the API change.
85         (elmo-search-grep-target): Ditto.
86
87 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
88
89         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
90         characters of working buffer.
91
92         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
93         Does not bind `default-mime-charset'.
94         (elmo-msgdb-create-message-entity-from-buffer): Removed
95         unnecessary local bind.
96
97         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
98         function.
99         (modb-entity-extract-mailing-list-info-functions): Added it.
100
101 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
102
103         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
104         when number and message-id are non-nil.
105
106         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
107
108         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
109         conditional steatment.
110         (elmo-pop3-auth-apop): Likewise.
111         (elmo-network-authenticate-session): Likewise.
112
113 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
114
115         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
116         symbol `fill-column'.
117         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
118         decode field value.
119
120         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
121         (elmo-decoded-field-body): Ditto.
122
123 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
124
125         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
126         `tokens' to `params'.
127
128 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
129
130         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
131         working buffer.
132
133 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
134
135         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
136         decide index.
137
138 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
139
140         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
141         Set default value as nil.
142         (toplevel): Register search engines by
143         `elmo-search-register-engine' if there are not defined.
144
145         * elmo.el (autoload): Added autoload setting for
146         `elmo-search-register-engine'.
147
148 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
149
150         * elmo.el (toplevel): `[' is redefined as the prefix of the search
151         folder instead of nmz folder.
152         (elmo-nmz-default-index-path): Added obsolete variable setting.
153         (elmo-nmz-index-alias-alist): Ditto.
154         (elmo-nmz-use-drive-letter): Ditto.
155
156         * elmo-search.el (elmo-search-register-engine): New function.
157
158         * elmo-nmz.el: Removed.
159
160         * elmo-version.el (elmo-version): Up to 2.15.2.
161
162 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
163
164         * elmo-search.el: New file.
165
166 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
167
168         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
169         condition `larger' and `smaller'.
170
171 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
172
173         * elmo-util.el (elmo-safe-filename): Rewrite to replace
174         `"' (double quote) into "_Q_".
175
176 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
177
178         * elmo-net.el (elmo-net-quote-chars): Abolish.
179         (elmo-net-format-quoted): Ditto.
180
181 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
182
183         * elmo.el (elmo-get-folder-function): New variable.
184         (elmo-get-folder): New function.
185         (elmo-folder-rename): Call `elmo-make-folder' with specified
186         mime-charset.
187
188         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
189         `elmo-make-folder'.
190         (elmo-split-subr): Ditto.
191
192         * elmo-multi.el (elmo-folder-initialize): Ditto.
193
194         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
195
196         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
197         (elmo-flag-get-folder): Ditto.
198
199         * elmo-filter.el (elmo-folder-initialize): Ditto.
200
201         * elmo-access.el (elmo-folder-initialize): Ditto.
202         (elmo-access-folder-update-children): Ditto.
203
204         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
205         (elmo-dop-queue-flush): Ditto.
206         (elmo-folder-append-buffer-dop-delayed): Ditto.
207         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
208         mime-charset.
209
210         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
211         instead of `elmo-make-folder'.
212         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
213         destination folder instead of send `elmo-folder-rename-internal'.
214
215         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
216         slot of subfolder instead of create it.
217
218 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
219
220         * elmo-util.el (elmo-collect-separators): New function.
221         (elmo-collect-separators-internal): Ditto.
222         (elmo-collect-trail-separators): Ditto.
223         (elmo-parse-separated-tokens): Ditto.
224         (elmo-parse-separated-tokens-internal): Ditto.
225         (elmo-quote-syntactical-element): Ditto.
226
227         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
228         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
229
230         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
231         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
232         (elmo-nntp-folder-list-subfolders): Quote a user name.
233
234         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
235         (elmo-net-parse-network): Abolish.
236         (elmo-net-folder-set-parameters): New function.
237         (elmo-folder-initialize): Follow the above change.
238
239         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
240         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
241         (elmo-folder-list-subfolders): Use
242         `elmo-quote-syntactical-element' instead of
243         `elmo-net-format-quoted' to quote mailbox and user name.
244
245 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
246
247         * elmo-util.el (elmo-token-valid-p): New function.
248         (elmo-parse-token): Add optional argument `requirement'.
249         (elmo-parse-prefixed-element): Likewise.
250
251         * elmo-net.el (elmo-net-quote-chars): Renamed from
252         `elmo-net-quote-chars-regexp'.
253         (elmo-net-format-quoted): Add optional argument `extra-chars'.
254
255         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
256         by info document. Check token `uidl' is started an alphabet.
257
258         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
259         by info document. Check token `user' is started an alphabet.
260
261         * elmo-imap4.el (elmo-folder-initialize): Ditto.
262         (elmo-folder-list-subfolders): Quote user.
263
264 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
265
266         * elmo-util.el (elmo-quoted-specials-list): New constant.
267         (elmo-quoted-token): New function.
268
269         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
270         (elmo-net-format-quoted): New function.
271         (elmo-net-parse-network): Ditto.
272         (elmo-folder-initialize): Use it.
273
274         * elmo-nntp.el (elmo-folder-initialize): Use
275         `elmo-net-parse-network' to parse network specification instead of
276         `elmo-folder-initialize#elmo-net'.
277
278         * elmo-pop3.el (elmo-folder-initialize): Ditto.
279
280         * elmo-imap4.el (elmo-folder-initialize): Ditto.
281         (elmo-folder-list-subfolders): Quote folder name by
282         `elmo-net-format-quoted'.
283
284 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
285
286         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
287         (elmo-folder-search): Use it.
288
289 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
290
291         * modb-standard.el (modb-standard-loaded-message-id): Use
292         `elmo-msgdb-message-entity-field'.
293
294 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
295
296         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
297         without filename.
298
299 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
300
301         * elmo-util.el (elmo-set-auto-coding): New function.
302         (elmo-object-load): Use it.
303
304 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
305
306         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
307         (elmo-time<): Define as alias of `elmo-time-less-p'.
308         (elmo-time-to-datevec): New function.
309
310         * elmo-date.el (elmo-time-to-days): New function.
311
312 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
313
314         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
315         is not cons cell.
316
317 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
318
319         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
320         parenthesis.
321
322         * elmo-util.el (elmo-map-recursive): New function.
323
324         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
325         (modb-entity-encode-string-recursive): Ditto.
326
327 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
328
329         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
330         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
331         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
332         compare sequence number when last modified time is nil.
333
334 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
335
336         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
337
338         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
339
340 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
341
342         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
343         modification time of the file.
344
345 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
346
347         * elmo-util.el (elmo-condition-optimize): Discriminated against
348         preserved fields, extra fields and the other weight.
349
350 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
351
352         * modb-entity.el (initialize-instance): Define.
353         (modb-entity-handler-mime-charset): New internal function.
354         (modb-standard-entity-set-field): Use it.
355         (elmo-msgdb-message-entity-field): Ditto.
356         (elmo-msgdb-message-entity-field): Ditto.
357
358         * modb.el (elmo-msgdb-match-condition): Rewrite with
359         `elmo-condition-match'.
360         (elmo-msgdb-match-condition-primitive): New function.
361
362         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
363         arguments `flags' and `numbers'.
364         (elmo-msgdb-match-condition-primitive): Abolished (merged to
365         `elmo-msgdb-message-match-condition').
366         (modb-buffer-entity-handler): New class.
367
368         * elmo.el (elmo-folder-search): Optimize condition to use
369         `elmo-condition-optimize'.
370         (elmo-message-buffer-match-condition): New function.
371         (elmo-message-match-condition): Use
372         `elmo-message-buffer-match-condition' instead of
373         `elmo-buffer-field-condition-match'.
374
375         * elmo-util.el (elmo-condition-match): New function.
376         (elmo-condition-optimize): Ditto.
377         (elmo-buffer-field-primitive-condition-match): Abolish.
378         (elmo-buffer-field-condition-match): Ditto.
379
380         * elmo-archive.el (elmo-archive-field-condition-match): Use
381         `elmo-message-buffer-match-condition' instead of
382         `elmo-buffer-field-condition-match'.
383
384 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
385
386         * elmo-flag.el (elmo-global-flags-initialize): Check the
387         existence of the flag directory.
388
389 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
390
391         * elmo-access.el (elmo-folder-initialize): Call
392         `elmo-multi-connect-signals'.
393
394         * elmo-pipe.el (elmo-folder-close): Define.
395
396         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
397         children folders.
398
399         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
400         with target folder.
401
402         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
403         `number'.
404
405         * elmo-multi.el (elmo-message-entity): Don't use return value of
406         `elmo-message-entity-set-number'.
407
408 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
409
410         * modb.el (modb-generic): Added slot `mime-charset'.
411
412         * modb-standard.el (modb-standard): Added slot `overview-handler'.
413         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
414         and `modb-entity-handler-dump-parameters'.
415         (modb-standard-default-entity-handler): Abolish.
416         (elmo-msgdb-message-entity-handler): Save created handler by
417         instance slot.
418
419         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
420         (modb-entity-handler-list-parameters): New method.
421         (modb-entity-handler-equal-p): New function.
422         (modb-entity-handler-dump-parameters): Ditto.
423         (modb-entity-parse-address-string): Encode return value.
424         (modb-entity-make-address-string): Decode argument value.
425         (modb-entity-decode-string-recursive): New function.
426         (modb-entity-encode-string-recursive): Ditto.
427         (modb-standard-entity-normalizer): Set to encode field value.
428         (modb-standard-entity-specializer): Follow the above change.
429         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
430         mime-charset of handler.
431         (elmo-msgdb-message-entity-field): Ditto.
432         (elmo-msgdb-copy-message-entity): Fixed reference to internal
433         structure.
434         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
435
436         * elmo.el (elmo-folder): Added slot `mime-charset'.
437         (elmo-make-folder): Added argument `mime-charset'.
438         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
439         `mime-charest'.
440
441         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
442         (elmo-make-msgdb): Likewise.
443
444         * elmo-internal.el (elmo-internal-folder-initialize): Call
445         `luna-make-entity' with :mime-charset parameter.
446
447 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
448
449         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
450         encoded words in `from' and `subject' field.
451
452 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
453
454         * modb.el (elmo-msgdb-message-field): Add argument `type'.
455         (elmo-msgdb-match-condition): Get handler from entity instead of
456         msgdb.
457
458         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
459         (modb-standard-load-entity): Treat new file format.
460         (modb-standard-save-entity-1): Save as new file format.
461         (modb-standard-save-entity): Split messages into section here.
462         (elmo-msgdb-message-field): Follow the API change.
463         (modb-standard-default-entity-handler): New internal variable.
464         (elmo-msgdb-message-entity-handler): Define.
465
466         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
467         to `elmo-vars.el'.
468         (modb-entity-field-extractor-alist): New user option.
469         (elmo-msgdb-message-entity-field): Removed argument `decode' and
470         added argument `type'.
471         (elmo-msgdb-copy-message-entity): Add optional argument
472         `make-handler'.
473         (modb-set-field-converter): New function.
474         (modb-convert-field-value): Ditto.
475         (modb-entity-string-decoder): Ditto.
476         (modb-entity-string-encoder): Ditto.
477         (modb-entity-parse-date-string): Ditto.
478         (modb-entity-make-date-string): Ditto.
479         (modb-entity-mime-decoder): Ditto.
480         (modb-entity-mime-encoder): Ditto.
481         (modb-entity-address-list-decoder): Ditto.
482         (modb-entity-address-list-encoder): Ditto.
483         (modb-entity-parse-address-string): Ditto.
484         (modb-entity-make-address-string): Ditto.
485         (modb-entity-create-field-indices): Ditto.
486         (modb-legacy-entity-field-slots): New constant.
487         (modb-legacy-entity-field-indices): Ditto.
488         (modb-legacy-entity-normalizer): New variable.
489         (modb-legacy-entity-specializer): Ditto.
490         (modb-legacy-entity-field-index): New macro.
491         (modb-legacy-entity-set-field): New function.
492         (modb-legacy-make-message-entity): Rewrite.
493         (elmo-msgdb-create-message-entity-from-buffer): Use
494         `elmo-msgdb-get-references-from-buffer'. Use
495         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
496         Use `modb-legacy-entity-set-field' instead of
497         `elmo-msgdb-message-entity-set-field'.
498         (elmo-msgdb-message-entity-field): Rewrite.
499         (elmo-msgdb-message-entity-set-field): Ditto.
500         (elmo-msgdb-copy-message-entity): Make new entity by
501         `make-handler' if it specified.
502         (elmo-msgdb-message-match-condition): Define a method of
503         `modb-entity-handler' and follow the API change.
504         (modb-standard-entity-handler): New class.
505         (modb-entity-extract-ml-info-from-x-sequence): New function.
506         (modb-entity-extract-ml-info-from-subject): Ditto.
507         (modb-entity-extract-ml-info-from-return-path): Ditto.
508         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
509         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
510         (modb-entity-extract-mailing-list-info): Ditto.
511         (modb-entity-extract-mailing-list-info-functions): New variable.
512
513         * elmo.el (elmo-message-field): Add optional argument `type'.
514
515         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
516         from `modb-entity.el'.
517
518         * elmo-util.el (elmo-object-load): Decode by coding-system from
519         `set-auto-coding-function'.
520         (elmo-object-save): Use `detect-mime-charset-region' and add
521         coding cookie if encode.
522         (elmo-msgdb-get-references-from-buffer): New function.
523         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
524
525         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
526
527         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
528         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
529         instead of `shimbun-make-header' and follow the API change.
530         (elmo-shimbun-update-overview): Follow the API change.
531         (elmo-map-folder-list-message-locations): Ditto.
532
533         * elmo-pipe.el (elmo-message-field): Ditto.
534
535         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
536         Ditto.
537
538         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
539
540         * elmo-multi.el (elmo-message-field): Ditto.
541
542         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
543         (elmo-msgdb-sort-by-date): Ditto.
544         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
545         `elmo-message-entity-field'.
546         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
547         change.
548         (elmo-msgdb-overview-entity-get-from): Ditto.
549         (elmo-msgdb-overview-entity-get-subject): Ditto.
550         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
551         (elmo-msgdb-overview-entity-get-date): Ditto.
552         (elmo-msgdb-overview-entity-get-to): Ditto.
553         (elmo-msgdb-overview-entity-get-cc): Ditto.
554
555         * elmo-mime.el (elmo-message-mime-entity): Ditto.
556         (elmo-mime-collect-message/partial-pieces): Ditto.
557
558         * elmo-filter.el (elmo-message-field): Ditto.
559
560         * elmo-date.el (elmo-datevec-to-time): New function.
561         (elmo-time-parse-date-string): Ditto.
562         (elmo-time-make-date-string): Ditto.
563         (elmo-time<): Ditto.
564
565         * elmo-version.el (elmo-version): Up to 2.15.1.
566
567 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
568
569         * elmo-flag.el (elmo-global-flags-initialize): Don't include
570         member of elmo-local-flags.
571
572 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
573
574         * elmo-version.el (elmo-version): Up to 2.15.0.
575
576 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
577
578         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
579         `ignore-msgdb' is non-nil.
580
581 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
582
583         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
584         (elmo-condition-in-msgdb-p): Ditto.
585         (elmo-file-field-primitive-condition-match): Ditto.
586         (elmo-file-field-condition-match): Ditto.
587
588         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
589
590 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
591
592         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
593         subdirectories here.
594         (elmo-global-flags-initialize): New function.
595
596         * elmo.el (toplevel): Added autoload setting for
597         `elmo-global-flags-initialize'.
598
599 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
600
601         * elmo.el (message-number-changed): Define new signal.
602         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
603         message-number-changed signal.
604         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
605         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
606         Respect `elmo-pack-number-check-strict'.
607
608 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
609
610         * elmo-signal.el (elmo-connect-signal): Document.
611         (elmo-emit-signal): Ditto.
612         (elmo-emit-signal): It should pass source argument to filter and
613         handler, not slot-source.
614
615 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
616
617         * modb.el (elmo-msgdb-update-entity): New API and define generic
618         implement.
619
620         * modb-standard.el (elmo-msgdb-update-entity): Define.
621
622         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
623         API and define generic implement.
624
625         * elmo.el (update-overview): New singnal.
626
627         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
628         `elmo-msgdb-update-entity' and emit signal `update-overview'.
629         (elmo-message-entity-parent): Define.
630
631         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
632         `update-overview'.
633
634         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
635
636         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
637
638 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
639
640         * elmo.el (elmo-folder-synchronize): Sort the return value of
641         `elmo-list-diff'.
642
643         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
644         list.
645
646 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
647
648         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
649         `default-enable-multibyte-characters'.
650         (elmo-object-load): Use `with-temp-buffer' instead of
651         `elmo-set-work-buf'.
652         (elmo-object-save): Ditto.
653         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
654         `elmo-set-work-buf'.
655         (elmo-decoded-field-body): Ditto.
656
657         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
658
659         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
660         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
661
662         * elmo-version.el (elmo-version): Up to 2.13.3.
663
664 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
665
666         * elmo-util.el (elmo-list-diff): Fix the last change.
667         Reverse order of result lists.
668
669 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
670
671         * modb-standard.el (elmo-msgdb-set-flag): Use
672         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
673         (elmo-msgdb-unset-flag): Ditto.
674
675         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
676         `elmo-list-diff'.
677
678         * elmo-util.el (elmo-list-diff): Rewrite.
679         (elmo-list-diff-nonsortable): New function.
680
681 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
682
683         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
684         `elmo-multibypte-buffer-name'.  All referers are updated.
685
686 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
687
688         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
689         (elmo-mime-entity-fragment-p): New function.
690         (mime-elmo-buffer-entity): Added slot `reassembled'.
691         (elmo-message-mime-entity): Added 4th argument `reassemble'.
692         (elmo-message-mime-entity-internal): New function (renamed from
693         `elmo-message-mime-entity').
694         (elmo-mime-inherit-field-list-from-enclosed): New constant.
695         (elmo-mime-make-reassembled-mime-entity): New function.
696         (elmo-message-reassembled-mime-entity): Ditto.
697         (elmo-mime-collect-message/partial-pieces): Ditto.
698
699 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
700
701         * elmo.el (elmo-message-fetch-string): Disable multibyte.
702
703         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
704         (elmo-with-enable-multibyte): New macro.
705
706         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
707
708 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
709
710         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
711         argument `number'.
712         (elmo-filter-connect-signals): Follow the above change.
713
714 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
715
716         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
717
718         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
719         that only the first flag is used.
720
721 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
722
723         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
724         if available.
725
726 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
727
728         * elmo-signal.el: New file.
729
730         * elmo.el (toplevel): Require elmo-signal.
731         (flag-changing, flag-changed, cache-changed): New signal.
732         (elmo-folder): Remove slog `handlers'.
733         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
734         `elmo-folder-notify-event'.
735         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
736         (elmo-folder-unset-flag): Ditto.
737         (elmo-event-handler): Abolish.
738         (elmo-event-handler-flag-changed): Ditto.
739         (elmo-event-handler-cache-changed): Ditto.
740         (elmo-folder-add-handler): Ditto.
741         (elmo-folder-remove-handler): Ditto.
742         (elmo-folder-notify-event): Ditto.
743
744         * elmo-pipe.el (toplevel): Require elmo-signal.
745         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
746         (elmo-pipe-connect-signals): New function.
747         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
748         (elmo-folder-set-flag): Ditto.
749         (elmo-folder-unset-flag): Ditto.
750         (elmo-message-set-cached): Ditto.
751
752         * elmo-multi.el (toplevel): Require elmo-signal.
753         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
754         (elmo-multi-connect-signals): New function.
755         (elmo-multi-map-numbers): Ditto.
756         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
757         (elmo-message-fetch): Ditto.
758         (elmo-folder-set-flag): Ditto.
759         (elmo-folder-unset-flag): Ditto.
760
761         * elmo-filter.el (toplevel): Require elmo-signal.
762         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
763         (elmo-filter-connect-signals): New function.
764         (elmo-filter-add-flag-count): Ditto.
765         (elmo-message-fetch): Does not call
766         `elmo-filter-folder-countup-message-flags' and
767         `elmo-folder-notify-event'.
768         (elmo-message-set-cached): Ditto.
769         (elmo-folder-set-flag): Ditto.
770         (elmo-folder-unset-flag): Ditto.
771
772         * elmo-version.el (elmo-version): Up to 2.13.2.
773
774 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
775
776         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
777         `flags'.
778
779 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
780
781         * elmo-filter.el (elmo-message-set-cached): Call
782         `elmo-folder-notify-event' with event `cache-changed'.
783
784         * elmo-multi.el (elmo-message-set-cached): Ditto.
785
786         * elmo-pipe.el (elmo-message-set-cached): Ditto.
787
788 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
789
790         * elmo.el (elmo-folder-encache): Abolish.
791
792 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
793
794         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
795         (elmo-folder-next-message-number-dop): Return appropriate negative
796         integer.
797
798 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
799
800         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
801         clearing pending operations.
802         (elmo-folder-next-message-number-dop): Return appropriate negative
803         integer.
804
805 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
806
807         * elmo.el (toplevel): Added autoload setting for `md5'.
808         (elmo-msgdb-path-encode-threshold): New user option.
809         (elmo-folder-msgdb-path): Encode msgdb path if its length is
810         longer than `elmo-msgdb-path-encode-threshold'.
811
812         * elmo-flag.el (elmo-global-mark-migrate): Use
813         `elmo-folder-expand-msgdb-path' instead of
814         `elmo-folder-msgdb-path'.
815
816 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
817
818         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
819         element of the difference is nil.
820
821 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
822
823         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
824         to the check logic of file systems which are weak in colon character.
825
826 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
827
828         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
829
830 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
831
832         * elmo-maildir.el (elmo-maildir-move-file): New function.
833         (elmo-folder-append-buffer): Use it.
834         (elmo-folder-append-messages): Ditto.
835         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
836
837         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
838         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
839
840         * elmo-maildir.el (elmo-maildir-separator): New user option.
841         (elmo-maildir-adjust-separator): New macro.
842         (elmo-maildir-list-location): Use it.
843         (elmo-maildir-update-current): Ditto.
844         (elmo-maildir-set-mark): Ditto.
845         (elmo-maildir-delete-mark): Ditto.
846         (These changes are based on Hiroya Murata's patch [wl: 13437])
847
848 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
849
850         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
851
852 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
853
854         * elmo-flag.el (elmo-flag-valid-p): Simplify.
855         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
856         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
857
858 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
859
860         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
861         Use `with-temp-buffer'.
862
863 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
864
865         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
866
867         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
868         `wl-read-search-condition').
869         (elmo-read-search-condition-internal): Likewise.
870
871         * elmo-flag.el (elmo-flag-char-regexp): New constant.
872         (elmo-flag-valid-p): New function.
873         (elmo-folder-initialize): Check flag name is valid.
874
875 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
876
877         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
878         delimiter to obtain root mailbox itself.
879
880 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
881
882         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
883         type mismatch.
884
885 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
886
887         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
888         as t.
889
890 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
891
892         * elmo-shimbun.el (toplevel): Require cl at compile.
893
894         * elmo-nntp.el (toplevel): Ditto.
895
896         * elmo-nmz.el (toplevel): Ditto.
897
898         * elmo-multi.el (toplevel): Ditto.
899
900         * elmo-file.el (toplevel): Ditto.
901
902         * elmo-dop.el (toplevel): Ditto.
903
904         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
905
906 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
907
908         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
909         as nil.
910
911         * elmo.el (elmo-message-fetch): Return t even when the output buffer
912         size of elmo-message-fetch-internal is 0 byte.
913
914 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
915
916         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
917
918 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
919
920         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
921         always plugged.
922
923 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
924
925         * elmo-maildir.el (elmo-map-message-fetch): Call
926         `elmo-map-folder-set-flag'.
927
928         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
929         (elmo-message-fetch): Merge from
930         `elmo-message-fetch-with-cache-process'.
931
932         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
933         (elmo-message-fetch): Define.
934
935         * elmo-nntp.el (elmo-message-fetch): Renamed from
936         `elmo-message-fetch-with-cache-process'.
937
938         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
939         (elmo-message-fetch): Define.
940
941         * elmo-util.el (elmo-condition-parse-primitive): Downcase
942         search-key.
943
944         * elmo-shimbun.el (shimbun-mua-search-id): Use
945         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
946         (elmo-shimbun-folder-shimbun-header): Ditto.
947         (elmo-shimbun-get-headers): Ditto.
948         (elmo-shimbun-update-overview): Ditto.
949
950         * elmo-pipe.el (elmo-folder-detach-messages): Define.
951
952         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
953         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
954
955 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
956
957         * elmo.el (elmo-message-fetch): Unset unread flag on server when
958         message is cached.
959         (elmo-message-fetch-string): Fixed argument.
960
961 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
962
963         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
964         exchange order of arguments `section' and `unread'.
965         (elmo-message-encache): Follow the API change.
966         (elmo-message-match-condition): Ditto.
967         (elmo-generic-folder-append-messages): Ditto.
968         (elmo-message-fetch-string): New function.
969
970         * elmo-split.el (elmo-split-subr): Ditto.
971
972         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
973
974         * elmo-pipe.el (elmo-message-fetch): Ditto.
975
976         * elmo-multi.el (elmo-message-fetch): Ditto.
977
978         * elmo-mime.el (elmo-message-mime-entity): Ditto.
979
980         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
981
982         * elmo-filter.el (elmo-message-fetch): Ditto.
983
984         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
985
986         * elmo-imap4.el (mime-imap-location-section-body): Use
987         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
988         follow the API change.
989
990 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
991
992         * elmo-access.el: New file.
993
994         * elmo-null.el: Ditto.
995
996         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
997
998 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
999
1000         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1001         (elmo-network-session): New attribute `last-accessed'.
1002         (elmo-network-get-session): Discard network cache if elapsed time
1003         since last-accessed is larger than elmo-network-session-idle-timeout.
1004
1005 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1006
1007         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1008         and added `number', `require-entireness'.
1009         (elmo-find-fetch-strategy): Rewrite.
1010         (elmo-message-fetch): Unset `unread' flag when argument unread is
1011         non-nil.
1012
1013         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1014
1015         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1016         (elmo-message-fetch): Notify event `flag-changed'.
1017
1018         * elmo-pipe.el: Likewise.
1019
1020         * elmo-mime.el (elmo-mime-entity): New class.
1021         (elmo-mime-entity-display-p): New generic function.
1022         (elmo-mime-entity-display): Ditto.
1023         (elmo-mime-entity-display-as-is): Ditto.
1024         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1025         elmo-mime-entity.
1026         (elmo-make-mime-message-location): Removed.
1027         (elmo-mime-message-display): Ditto.
1028         (elmo-mime-display-as-is): Ditto.
1029         (elmo-message-mime-entity): New function.
1030
1031         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1032
1033         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1034         change.
1035         (elmo-message-fetch): Re-count flagged message number and notify
1036         event `flag-changed'.
1037
1038         * elmo-version.el (elmo-version): Up to 2.13.1.
1039
1040 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1041
1042         * elmo-filter.el (elmo-message-field): Define.
1043         (elmo-message-set-field): Ditto.
1044
1045 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1046
1047         * elmo.el (elmo-message-set-cached): Call
1048         `elmo-folder-notify-event' with cache-changed.
1049         (elmo-event-handler-cache-changed): New generic function.
1050
1051 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1052
1053         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1054         instead of elmo-add-name-to-file.
1055         (elmo-folder-append-messages): Ditto.
1056
1057 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1058
1059         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1060
1061 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1062
1063         * elmo-version.el (elmo-version): Up to 2.13.0.
1064
1065         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1066         `auto'.
1067
1068         * modb-standard.el (modb-standard-economize-entity-size): Changed
1069         default value to `t'.
1070
1071         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1072         `standard'.
1073
1074         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1075         after parsing greeting string.
1076
1077 2004-11-23  Daishi Kato <daishi@axlight.com>
1078
1079         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1080         New user option.
1081         (elmo-spam-spamoracle-call): Use it.
1082
1083 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1084
1085         * elmo.el (elmo-message-accessible-p): Message in dop spool
1086         is accessible.
1087
1088 2004-11-23  Daishi Kato <daishi@axlight.com>
1089
1090         * elsp-spamoracle.el: New file.
1091
1092 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1093
1094         * elmo.el (elmo-message-flags-for-append): New function.
1095         (elmo-generic-folder-append-messages): Use it.
1096
1097         * elmo-split.el (elmo-split-subr): Ditto.
1098
1099         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1100         `flags' and use elmo-folder-append-buffer instead of
1101         write-region-as-binary.
1102         (elmo-dop-filter-pending-messages): New function.
1103         (elmo-folder-append-buffer-dop): Call
1104         elmo-dop-spool-folder-append-buffer with `flag'.
1105         (elmo-folder-set-flag-dop): Filter messages by
1106         elmo-dop-filter-pending-messages.
1107         (elmo-folder-unset-flag-dop): Ditto.
1108         (elmo-folder-append-buffer-dop-delayed): Use
1109         elmo-message-flags-for-append to get flags of the message and
1110         simplify.
1111
1112 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1113
1114         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1115
1116 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1117
1118         * elmo.el (elmo-folder): Added handlers slot.
1119         (elmo-event-handler): New class.
1120         (elmo-event-handler-flag-changed): New API.
1121         (elmo-folder-add-handler): New function.
1122         (elmo-folder-remove-handler): Ditto.
1123         (elmo-folder-notify-event): Ditto.
1124         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1125         `flag-changed'.
1126         (elmo-folder-unset-flag): Ditto.
1127
1128         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1129         (elmo-folder-unset-flag): Ditto.
1130
1131         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1132         (elmo-folder-unset-flag): Ditto.
1133
1134         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1135         (elmo-folder-unset-flag): Ditto.
1136
1137         * elmo-version.el (elmo-version): Up to 2.11.33.
1138
1139 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1140
1141         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1142
1143 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1144
1145         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1146
1147         * elmo-flag.el (elmo-folder-unset-flag): Define.
1148         (elmo-global-flag-detach): Do process when the flag is not target
1149         flag.
1150
1151 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1152
1153         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1154         variable.
1155         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1156
1157 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1158
1159         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1160         function.
1161         (elmo-folder-delete-messages): Detach messages before delete
1162         messages from target folder.
1163         (elmo-folder-detach-messages): Set updated number-list to slot.
1164
1165 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1166
1167         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1168
1169 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1170
1171         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1172
1173 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1174
1175         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1176         internal use only).
1177         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1178         not modified.
1179         (elmo-folder-delete-messages): Define.
1180         (elmo-folder-move-messages): Don't call
1181         `elmo-folder-detach-messages'.
1182         (elmo-folder-synchronize): Rewrite.
1183         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1184
1185         * elmo-util.el (elmo-last): New function.
1186         (elmo-set-list): Ditto.
1187         (elmo-number-set-delete-list): Ditto.
1188         (elmo-number-set-delete): Ditto.
1189
1190         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1191
1192         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1193         `elmo-folder-delete-messages' and don't delete location map.
1194         (elmo-folder-detach-messages): Define.
1195
1196         * elmo-imap4.el (elmo-folder-delete): Use
1197         `elmo-folder-delete-messages-internal' instead of
1198         `elmo-folder-delete-messages'.
1199
1200         * elmo-filter.el (elmo-folder-delete-messages): Call
1201         `elmo-folder-detach-messages'.
1202         (elmo-folder-detach-messages): Don't call
1203         `elmo-folder-detach-messages' for target folder.
1204
1205         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1206         message deletion is succeeded.
1207
1208         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1209
1210         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1211         from `elmo-folder-delete-messages'.
1212
1213         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1214
1215         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1216
1217         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1218
1219         * elmo-version.el (elmo-version): Up to 2.11.32.
1220
1221 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1222
1223         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1224         (elmo-global-flag-list): Added obsolete variable setting.
1225
1226         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1227
1228         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1229         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1230         `elmo-mime-display-header-analysis' is nil.
1231
1232         * elmo-flag.el (elmo-global-flags): Renamed from
1233         `elmo-global-flag-list' (All other related portions are changed).
1234         (elmo-local-flags): New variable.
1235         (elmo-local-flag-p): New function.
1236         (elmo-global-flag-set-internal): Cause an error when flag is not
1237         global.
1238
1239 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1240
1241         * elmo-util.el (elmo-concat-path): Treat empty path.
1242
1243 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1244
1245         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1246         field-or-fields).
1247         (elmo-split-address-match): Ditto.
1248         (elmo-split-equal): Ditto.
1249         (elmo-split-match): Ditto.
1250
1251 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1252
1253         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1254         (elmo-generic-folder-append-messages): If src message exists but
1255         has no flag, pass (read) for the FLAG argument of
1256         `elmo-folder-append-buffer'. Otherwise, pass nil.
1257
1258         * elmo-split.el (elmo-split-subr): Likewise.
1259
1260         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1261
1262         * elmo-multi.el (elmo-message-flags): Ditto.
1263
1264         * elmo-filter.el (elmo-message-flags): Ditto.
1265
1266         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1267         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1268         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1269         
1270 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1271
1272         * elmo-split.el (elmo-split-rule): Update comment.
1273         (elmo-split-address-equal): Allow 2nd argument to be a list.
1274         (elmo-split-address-match): Ditto.
1275         (elmo-split-equal): Ditto.
1276         (elmo-split-match): Ditto.
1277
1278 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1279
1280         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1281         (elmo-folder-append-msgdb): Don't treat `read'.
1282         (elmo-message-flags): Don't return `read'.
1283
1284         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1285         (elmo-folder-unset-read-delayed): Ditto.
1286
1287         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1288
1289 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1290
1291         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1292         deletion.
1293
1294 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1295
1296         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1297         header.
1298
1299 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1300
1301         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1302         here.
1303         (elmo-msgdb-save): Bind inhibit-quit.
1304         (modb-standard-message-entity): Ditto.
1305
1306 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1307
1308         * elmo-database.el: No need to require elmo-msgdb.
1309
1310 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1311
1312         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1313         instead of `elmo-list-subdirectories'.
1314
1315 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1316
1317         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1318         group entry.
1319         (elmo-folder-exists-p): "[" is empty.
1320         (elmo-folder-list-subfolders): Define.
1321         (elmo-folder-have-subfolder-p): Ditto.
1322
1323 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1324
1325         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1326
1327 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1328
1329         * elmo-filter.el (elmo-folder-local-p): Define.
1330
1331 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1332
1333         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1334         when entity is garbaged.
1335         (modb-standard-save-entity-1): Don't modify the original entity.
1336
1337 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1338
1339         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1340
1341 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1342
1343         * elmo.el (elmo-strict-folder-diff): Use
1344         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1345
1346 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1347
1348         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1349         (elmo-msgdb-message-number): Ditto.
1350         (elmo-msgdb-message-field): Ditto.
1351
1352         * modb-standard.el (modb-standard-economize-entity-size): New user
1353         option.
1354         (modb-standard-loaded-message-id): New inline function.
1355         (modb-standard-load-entity): Use it.
1356         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1357         throw message-id string away.
1358         (elmo-msgdb-flag-available-p): Define.
1359         (elmo-msgdb-message-number): Ditto.
1360         (elmo-msgdb-message-field): Ditto.
1361
1362         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1363         (suppoted -> supported).
1364         (modb-legacy-supported-flag-p): Ditto.
1365         (elmo-msgdb-set-flag): Ditto.
1366         (elmo-msgdb-unset-flag): Ditto.
1367         (elmo-msgdb-flag-available-p): Define.
1368
1369         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1370         is `t', treat it as legacy entity.
1371         
1372         * elmo.el (elmo-message-flag-available-p): New generic function.
1373         (elmo-message-number): Ditto.
1374         (elmo-message-field): Use `elmo-msgdb-message-field'.
1375
1376         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1377
1378         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1379         (elmo-message-number): Ditto.
1380
1381         * elmo-multi.el (elmo-message-number): Define.
1382         (elmo-message-flag-available-p): Ditto.
1383
1384         * elmo-filter.el (elmo-message-flag-available-p): Define.
1385         (elmo-message-number): Ditto.
1386
1387         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1388         (elmo-folder-initialize): Load `max-number'.
1389         (elmo-folder-commit): Save it.
1390         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1391         (elmo-global-flag-set-internal): Set up max-number slot.
1392
1393 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1394
1395         * elmo-version.el (elmo-version): Up to 2.11.31.
1396
1397 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1398
1399         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1400         unibyte string of the current buffer for the argument of `md5'
1401         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1402
1403 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1404
1405         * modb-legacy.el (modb-legacy-flag-list): New constant.
1406         (modb-legacy-suppoted-flag-p): New internal function.
1407         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1408         (elmo-msgdb-unset-flag): Ditto.
1409
1410 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1411
1412         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1413
1414         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1415         from msgdb.
1416
1417 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1418
1419         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1420         (follow the API change).
1421
1422         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1423
1424 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1425
1426         * modb-standard.el (modb-standard-digest-flags): Abolish.
1427         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1428
1429         * elmo-vars.el (elmo-digest-flags): New variable.
1430         (elmo-preserved-flags): Moved from elmo-flag.el.
1431
1432         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1433         (elmo-imap4-flag-to-imap-criteria): Ditto.
1434         (elmo-imap4-folder-list-flagged): Use it.
1435
1436         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1437
1438         * elmo.el (elmo-folder-count-flags): Changed return value.
1439
1440         * elmo-flag.el (elmo-preserved-flags): New variable.
1441         (elmo-get-global-flags): Use it.
1442
1443         * modb-standard.el (modb-standard-digest-flags): New variable.
1444         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1445         Changed behavior of `any'.
1446
1447         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1448         which are defined the Internet draft
1449         (draft-melnikov-imap-keywords-03.txt).
1450         (elmo-imap4-flags-to-imap): New function.
1451         (elmo-folder-append-buffer): Use it.
1452
1453         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1454         in the docstring.
1455
1456         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1457         avoid the bug of Emacs 21.3.
1458
1459 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1460
1461         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1462         function find-coding-system does not exist.
1463
1464 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1465
1466         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1467         parsing.
1468
1469 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1470
1471         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1472         response codes.
1473
1474 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1475
1476         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1477         (elmo-network-close-session): Follow the changes in
1478         `elmo-pop3-read-response'.
1479         (elmo-pop3-auth-user): Ditto.
1480         (elmo-pop3-auth-apop): Ditto.
1481         (elmo-network-initialize-session): Ditto.
1482         (elmo-network-authenticate-session): Ditto.
1483         (elmo-network-setup-session): Ditto.
1484         (elmo-folder-status): Ditto.
1485         (elmo-message-fetch-plugged): Ditto.
1486         (elmo-pop3-delete-msg): Ditto.
1487
1488 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1489
1490         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1491         on failure.
1492
1493 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1494
1495         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1496         style.
1497         (elmo-bind-directory): Ditto.
1498
1499 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1500
1501         * elmo.el (elmo-folder-append-messages): Note on return value.
1502         * elmo-archive.el (elmo-folder-append-messages): Don't return
1503         message numbers which could not be appended.
1504
1505 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1506
1507         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1508
1509 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1510
1511         * elmo-version.el (elmo-version): Up to 2.11.30.
1512
1513 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1514
1515         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1516         `mask'.
1517
1518         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1519
1520         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1521         (elmo-multi-split-numbers): Add elmo-folder object into each
1522         element of return value at first.
1523         (elmo-folder-delete-messages): Follow the above change.
1524         (elmo-folder-detach-messages): Ditto.
1525
1526         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1527         number which is synchronized in target folder.
1528
1529 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1530
1531         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1532         Change default value to symbol `all'.
1533         (elmo-map-message-fetch): Change condition to update overview
1534         follow the above.
1535
1536 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1537
1538         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1539         behavior to update overview.
1540         (elmo-shimbun-update-overview-folder-list): Note it.
1541
1542 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1543
1544         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1545         recursive call.
1546
1547 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1548
1549         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1550         buffer-disable-undo, it is unnecessary.
1551         (elmo-spam-register-good-messages): Ditto.
1552
1553         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1554         Ditto.
1555
1556         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1557
1558 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1559
1560         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1561         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1562         elmo-set-buffer-multibyte.
1563         (elmo-object-load): Ditto.
1564         (elmo-save-buffer): Ditto.
1565         (elmo-delete-char): Ditto.
1566         (elmo-file-field-primitive-condition-match): Ditto.
1567         (elmo-mime-string): Ditto.
1568
1569         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1570         (elmo-archive-field-condition-match): Ditto.
1571
1572         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1573
1574         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1575
1576         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1577         (elmo-nntp-msgdb-create-message): Ditto.
1578
1579         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1580
1581         * elmo.el (elmo-message-match-condition): Ditto.
1582         (elmo-message-match-condition): Ditto.
1583
1584         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1585         Ditto.
1586
1587         * elmo-version.el (elmo-version): Up to 2.11.29.
1588
1589         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1590         (elsp-header): New backend.
1591
1592         * elmo-util.el (elmo-decoded-field-body): New function.
1593
1594 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1595
1596         * elmo-version.el (elmo-version): Up to 2.11.28.
1597
1598 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1599
1600         * elmo-filter.el: Rewrite.
1601
1602         * elmo-version.el (elmo-version): Up to 2.11.27.
1603
1604 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1605
1606         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1607         msgdb path for the localdir folder with absolute path.
1608
1609         * utf7.el: Synch up with latest gnus/utf7.el;
1610         Modified for latest Emacs.
1611
1612 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1613
1614         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1615         shimbun backend couldn't open.
1616
1617 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1618
1619         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1620         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1621         when a destination folder is a filter folder.
1622
1623 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1624
1625         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1626         (elmo-generic-folder-append-messages): Call elmo-message-flags
1627         with argument `msgid'.
1628
1629         * elmo-split.el (elmo-split-subr): Ditto.
1630
1631         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1632
1633         * elmo-multi.el (elmo-message-flags): Ditto.
1634
1635 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1636
1637         * elmo.el (elmo-folder): Add new slot `flag-table'.
1638         (elmo-folder-flag-table): New API.
1639         (elmo-folder-close-flag-table): Ditto.
1640         (elmo-folder-preserve-flags): New function.
1641         (elmo-generic-folder-append-messages): Use
1642         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1643         Flag of a non-registered message, it sets to nil.
1644         Does not set flag to flag-table.
1645
1646         * elmo-maildir.el (elmo-folder-append-buffer): Use
1647         `elmo-folder-preserve-flags'.
1648         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1649         `elmo-folder-close-flag-table'.
1650
1651         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1652         (elmo-archive-folder-append-buffer): Use
1653         `elmo-folder-preserve-flags'.
1654
1655         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1656
1657         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1658
1659         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1660         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1661         `elmo-folder-close-flag-table'.
1662
1663         * elmo-version.el (elmo-version): Up to 2.11.26.
1664
1665 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1666
1667         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1668
1669         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1670         md5's 4th and 5th argument (non-existent in flim one).
1671
1672 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1673
1674         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1675         message, It sets to nil.
1676
1677 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1678
1679         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1680         list is non-nil.
1681
1682 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1683
1684         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1685
1686         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1687
1688         * elmo-util.el (elmo-uniq-sorted-list): New function.
1689         (elmo-make-number-list): Ditto.
1690         (elmo-number-set-to-number-list): Use elmo-make-number-list
1691         and don't use nreverse.
1692
1693 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1694
1695         * elmo-version.el (elmo-version): Up to 2.11.25.
1696
1697 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1698
1699         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1700         field not exists in message, Use md5 message digest of header.
1701
1702 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1703
1704         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1705         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1706         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1707         * elmo-split.el (elmo-split-subr): Check return value of
1708         elmo-folder-append-buffer.
1709
1710         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1711         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1712
1713         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1714         message-id.
1715
1716 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1717
1718         * elmo-split.el (elmo-split-subr): Append message with flag.
1719
1720         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1721         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1722         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1723
1724 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1725
1726         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1727         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1728         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1729
1730 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1731
1732         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1733         with a function call of `process-buffer'.  All callers are updated.
1734         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1735         Remove redundant `set-buffer' in a while loop.
1736
1737 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1738
1739         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1740         calls.
1741
1742 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1743
1744         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1745         elsp-spamfilter-register-buffer-internal with current buffer.
1746         (elmo-spam-register-spam-buffer): Ditto.
1747         (elmo-spam-register-good-buffer): Ditto.
1748
1749 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1750
1751         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1752         if it is not contained in the response(A workaround for courier-imap).
1753
1754 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1755
1756         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1757         parenthesis.
1758
1759 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1760
1761         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1762         range.
1763
1764 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1765
1766         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1767         of nconc.
1768
1769         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1770         argument handler.
1771         (elmo-msgdb-message-match-condition): Follow the change above.
1772
1773 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1774
1775         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1776         folder name.
1777
1778 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1779
1780         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1781
1782 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1783
1784         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1785
1786 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1787
1788         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1789         not found.
1790
1791 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1792
1793         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1794         value.
1795         (elmo-file-command-argument): Undo last change for cygwin.
1796         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1797         Don't return nil.
1798         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1799
1800 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1801
1802         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1803         value returned from elmo-file-find is nil.
1804
1805 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1806
1807         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1808         to elmo-vars.el.
1809
1810         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1811         instead of insert-file-contents-as-binary.
1812         (elmo-message-set-field): New generic function.
1813
1814         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1815         behavior change on `split-string'.
1816
1817         * elmo-file.el (elmo-file-find): New function.
1818         (elmo-file-command): New user option.
1819         (elmo-file-command-argument): Ditto.
1820         (elmo-file-fetch-max-size): Ditto.
1821         (elmo-file-detect-format): New function.
1822         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1823         Use elmo-file-detect-format.
1824         (elmo-map-folder-list-message-locations): Don't treat directories.
1825
1826 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1827
1828         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1829         (elmo-passwd-alist-clear): Shred password before clear.
1830         (elmo-remove-passwd): Remove all mached pair.
1831
1832 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1833
1834         * elmo.el (elmo-folder-synchronize): Fix description of the return
1835         value.
1836
1837 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1838
1839         * elmo.el (elmo-message-fetch-bodystructure): New method.
1840         (elmo-message-fetch-bodystructure): Define default.
1841
1842         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1843         elmo-message-fetch-bodystructure.
1844         (elmo-message-fetch-bodystructure): Define.
1845
1846         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1847
1848 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1849
1850         * elmo-filter.el (elmo-message-folder): Define.
1851
1852 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1853
1854         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1855         elmo-delete-cr-buffer.
1856
1857         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1858
1859         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1860
1861         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1862
1863         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1864         type seems to be a text.
1865
1866 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1867
1868         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1869         (elmo-spam-register-good-buffer): Ditto.
1870         (elmo-spam-spamassassin-register-messages): Ditto.
1871
1872         * elmo-util.el (elmo-string-member-ignore-case): Define with
1873         static-cond.
1874
1875 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1876
1877         * elmo.el (elmo-folder-type): Undo last change.
1878
1879         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1880
1881         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1882         warnings.
1883
1884         * elmo-file.el: New file.
1885         
1886         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1887
1888         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1889         variable.
1890         (elmo-spam-spamassassin-register-messages): New inline function.
1891         (elmo-spam-register-spam-messages): Define.
1892         (elmo-spam-register-good-messages): Ditto.
1893
1894         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1895         Fixed typo.
1896
1897         * elmo.el (toplevel): Added autoload setting for
1898         `elmo-get-global-flags'.
1899         (elmo-message-has-global-flag-p): New function.
1900         (elmo-message-set-global-flags): Ditto.
1901         (elmo-folder-type): Improvement for name: format.
1902
1903         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1904         availability of keyword flags.
1905         (elmo-imap4-folder-list-flagged): Treat keyword flags.
1906         (elmo-folder-list-flagged-plugged): Renamed from
1907         elmo-folder-list-flagged-unplugged.
1908         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1909         accept any flag as keyword flag.
1910         (elmo-folder-set-flag-plugged): Accept keyword flags.
1911         (toplevel): Added autoload setting for `elmo-get-global-flags'.
1912
1913         * elmo-flag.el (elmo-get-global-flags): New function.
1914
1915         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1916         folders.
1917
1918         * elmo-version.el (elmo-version): Up to 2.11.24.
1919
1920 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1921
1922         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1923         elmo-multiple-field-body instead of std11-field-body to check all
1924         headers.
1925
1926 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1927
1928         * elmo-util.el (elmo-cache-expire): Completion require match "age"
1929         or "size".
1930
1931 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1932
1933         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
1934         unintern is unbound.
1935
1936 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1937
1938         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1939         Protect from infinite loop.
1940
1941 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1942
1943         * elsp-bogofilter.el
1944         (elmo-spam-bogofilter-max-messages-per-process): New user option.
1945         (elmo-spam-bogofilter-register-messages): New internal function.
1946         (elmo-spam-register-spam-messages): Define.
1947         (elmo-spam-register-good-messages): Ditto.
1948
1949 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1950
1951         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1952         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
1953         (elmo-spam-bogofilter-call): Fixed the last change.
1954         (elmo-spam-bogofilter-arguments): Ditto.
1955
1956         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
1957         Follow the options change of latest bogofilter.
1958
1959         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
1960         (elmo-spam-bogofilter-good-switch): Ditto.
1961         (elmo-spam-bogofilter-arguments-alist): New user option.
1962         (elmo-spam-bogofilter-debug): Ditto.
1963         (elmo-spam-bogofilter-call): Renamed from
1964         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
1965         is non-nil, insert output in buffer for debug.
1966         (elmo-spam-bogofilter-arguments): New macro.
1967         (elmo-spam-buffer-spam-p): Use it.
1968         (elsp-bogofilter-register-buffer): Ditto.
1969
1970 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1971
1972         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
1973         regexp.
1974
1975 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1976
1977         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
1978         value as "ruby".
1979         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
1980         (elmo-spam-bsfilter-program): Set default value as full path for
1981         `bsfilter'.
1982         (elmo-spam-bsfilter-debug): New user option.
1983         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
1984         non-nil, insert output in buffer for debug. Fix treating of
1985         argument.
1986
1987 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1988
1989         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
1990         `elmo-maildir-flag-specs' element instead of one.
1991         (elmo-map-folder-unset-flag): Ditto.
1992         (Reported by Ken Makimura <macky@astem.or.jp>)
1993
1994         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
1995         (elmo-folder-unset-flag-plugged): Ditto.
1996
1997 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1998
1999         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2000         to `reads' slot only if `in-msgdb' is nil.
2001
2002 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2003
2004         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2005         and complement argument list.
2006
2007 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2008
2009         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2010         instead of elmo-folder-list-flagged.
2011
2012 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2013
2014         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2015
2016         * elsp-bsfilter.el: New file.
2017
2018         * elmo-pipe.el (elmo-folder-list-unreads,
2019         elmo-folder-list-answereds,
2020         elmo-folder-list-importants,
2021         elmo-folder-flag-as-important,
2022         elmo-folder-unflag-important,
2023         elmo-folder-flag-as-read,
2024         elmo-folder-unflag-read,
2025         elmo-folder-flag-as-answered,
2026         elmo-folder-unflag-answered): Remove.
2027         (elmo-folder-set-flag): Define.
2028         (elmo-folder-unset-flag): Ditto.
2029
2030         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2031         (elmo-folder-set-flag): Define.
2032         (elmo-folder-unset-flag): Ditto.
2033         (elmo-folder-list-unreads): Remove.
2034         (elmo-folder-list-flagged): Define.
2035
2036         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2037         (elmo-folder-list-unreads,
2038         elmo-folder-list-importants,
2039         elmo-folder-list-answereds,
2040         elmo-folder-list-unreads-plugged,
2041         elmo-folder-list-importants-plugged,
2042         elmo-folder-list-answereds-plugged): Remove.
2043         (elmo-folder-list-flagged-plugged): New method.
2044         (elmo-folder-unflag-important,
2045         elmo-folder-flag-as-important,
2046         elmo-folder-unflag-read,
2047         elmo-folder-flag-as-read,
2048         elmo-folder-unflag-answered,
2049         elmo-folder-flag-as-answered,
2050         elmo-folder-flag-as-read-unplugged,
2051         elmo-folder-unflag-read-unplugged,
2052         elmo-folder-flag-as-important-unplugged,
2053         elmo-folder-unflag-important-unplugged,
2054         elmo-folder-flag-as-answered-unplugged,
2055         elmo-folder-unflag-answered-unplugged): Remove.
2056         (elmo-folder-set-flag): Define.
2057         (elmo-folder-unset-flag): Ditto.
2058         (elmo-folder-set-flag-unplugged): Ditto.
2059         (elmo-folder-unset-flag-unplugged): Ditto.
2060
2061         * elmo-multi.el (elmo-folder-list-unreads,
2062         elmo-folder-list-answereds,
2063         elmo-folder-list-importants,
2064         elmo-folder-flag-as-important,
2065         elmo-folder-unflag-important,
2066         elmo-folder-flag-as-read,
2067         elmo-folder-unflag-read,
2068         elmo-folder-flag-as-answered,
2069         elmo-folder-unflag-answered): Remove.
2070         (elmo-folder-set-flag): Define.
2071         (elmo-folder-unset-flag): Ditto.
2072
2073         * elmo-map.el (elmo-map-folder-unflag-important,
2074         elmo-map-folder-flag-as-important,
2075         elmo-map-folder-unflag-read,
2076         elmo-map-folder-flag-as-read,
2077         elmo-map-folder-unflag-answered,
2078         elmo-map-folder-flag-as-answered): Remove.
2079         (elmo-map-folder-set-flag): New method.
2080         (elmo-map-folder-unset-flag): Ditto.
2081         (elmo-map-folder-list-unreads,
2082         elmo-map-folder-list-importants,
2083         elmo-map-folder-list-answereds): Remove.
2084         (elmo-folder-list-flagged-internal): Define.
2085         (elmo-map-folder-list-flagged): New method.
2086
2087         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2088         (elmo-map-folder-list-unreads,
2089         elmo-map-folder-list-importants,
2090         elmo-map-folder-list-flagged): Remove.
2091         (elmo-map-folder-list-flagged): Define.
2092         (elmo-map-folder-flag-as-important,
2093         elmo-map-folder-unflag-important,
2094         elmo-map-folder-flag-as-read,
2095         elmo-map-folder-unflag-read,
2096         elmo-map-folder-flag-as-answered,
2097         elmo-map-folder-unflag-answered): Remove.
2098         (elmo-maildir-set-mark-messages): New internal function.
2099         (elmo-map-folder-set-flag): Define.
2100         (elmo-map-folder-unset-flag): Ditto.
2101
2102         * elmo.el (toplevel): Added autoload setting for
2103         `elmo-folder-list-global-flag-messages'.
2104         (elmo-folder-list-unreads,
2105         elmo-folder-list-importants,
2106         elmo-folder-list-answereds): Remove.
2107         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2108         Return a list whitch merged with messages have global flag.
2109         (elmo-folder-list-flagged-internal): New method.
2110         (elmo-folder-unflag-important,
2111         elmo-folder-flag-as-important,
2112         elmo-folder-unflag-read,
2113         elmo-folder-flag-as-read,
2114         elmo-folder-unflag-answered,
2115         elmo-folder-flag-as-answered): Remove.
2116         (elmo-folder-set-flag): New method.
2117         (elmo-folder-unset-flag): Ditto.
2118         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2119         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2120
2121         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2122         (elmo-folder-list-unreads-plugged,
2123         elmo-folder-list-importants-plugged,
2124         elmo-folder-list-answereds-plugged,
2125         elmo-folder-list-flagged-unplugged,
2126         elmo-folder-unflag-important-plugged,
2127         elmo-folder-flag-as-important-plugged,
2128         elmo-folder-unflag-read-plugged,
2129         elmo-folder-flag-as-read-plugged,
2130         elmo-folder-unflag-answered-plugged,
2131         elmo-folder-flag-as-answered-plugged): Remove.
2132         (elmo-folder-set-flag-plugged,
2133         elmo-folder-unset-flag-plugged): Define.
2134
2135         * elmo-flag.el (elmo-folder-initialize): Register to
2136         `elmo-global-flag-list' if flag is not global.
2137         (elmo-folder-append-messages): Set flag to source messages.
2138
2139         * elmo-filter.el (elmo-filter-folder-list-unreads,
2140         elmo-folder-list-unreads,
2141         elmo-filter-folder-list-importants,
2142         elmo-folder-list-importants,
2143         elmo-folder-flag-as-read,
2144         elmo-folder-unflag-read,
2145         elmo-folder-flag-as-important,
2146         elmo-folder-unflag-important,
2147         elmo-folder-flag-as-answered,
2148         elmo-folder-unflag-answered): Remove.
2149         (elmo-folder-set-flag): Define.
2150         (elmo-folder-unset-flag): Ditto.
2151
2152         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2153         elmo-folder-unflag-read-dop,
2154         elmo-folder-flag-as-important-dop,
2155         elmo-folder-unflag-important-dop,
2156         elmo-folder-flag-as-answered-dop,
2157         elmo-folder-unflag-answered-dop): Remove.
2158         (elmo-folder-set-flag-dop,
2159         elmo-folder-unset-flag-dop,
2160         elmo-folder-set-important-delayed,
2161         elmo-folder-unset-important-delayed,
2162         elmo-folder-set-read-delayed,
2163         elmo-folder-unset-read-delayed,
2164         elmo-folder-set-answered-delayed,
2165         elmo-folder-unset-answered-delayed): New function.
2166         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2167         (elmo-dop-queue-method-name-alist): Ditto.
2168
2169         * elmo-version.el (elmo-version): Up to 2.11.23.
2170
2171 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2172
2173         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2174
2175         * elsp-sa.el: New file.
2176
2177 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2178
2179         * modb-standard.el (modb-standard-message-entity): New function.
2180         (elmo-msgdb-message-entity): Use it.
2181
2182 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2183
2184         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2185         behavior when one-level is nil.
2186
2187         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2188
2189         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2190
2191 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2192
2193         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2194         get max number.
2195         (elmo-generic-folder-diff): Ditto.
2196
2197         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2198         (elmo-folder-update-number): Ditto.
2199
2200         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2201         (elmo-folder-next-message-number-dop): Ditto.
2202
2203 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2204
2205         * elmo-filter.el (elmo-folder-msgdb-create): Use
2206         `elmo-message-entity' and `elmo-message-flags' instead of
2207         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2208
2209 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2210
2211         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2212         `if-exists'.
2213
2214 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2215
2216         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2217
2218         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2219
2220         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2221
2222 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2223
2224         * elmo-version.el (elmo-version): Up to 2.11.22.
2225
2226 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2227
2228         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2229
2230 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2231
2232         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2233         if the message dose not exist.
2234
2235 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2236
2237         * elmo-version.el (elmo-version): Up to 2.11.21.
2238
2239 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2240
2241         * modb-standard.el (toplevel): Don't require mime.
2242
2243 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2244
2245         * elsp-bogofilter.el (toplevel): Don't require path-util.
2246         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2247         (elmo-spam-bogofilter-header): Abolish.
2248         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2249         (elmo-spam-bogofilter-args): New user option.
2250         (elsp-bogofilter-call-bogofilter): New internal function.
2251         (elmo-spam-buffer-spam-p): Use it.
2252         (elsp-bogofilter-register-buffer): Renamed from
2253         `elmo-spam-bogofilter-register-buffer';
2254         Use `elsp-bogofilter-call-bogofilter'.
2255         (elmo-spam-register-spam-buffer): Follow the change above.
2256         (elmo-spam-register-good-buffer): Ditto.
2257
2258 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2259
2260         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2261         message-id is nil do nothing.
2262
2263 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2264
2265         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2266         Revival.
2267         (elmo-imap4-session): Removed use-flag slot.
2268         (elmo-imap4-session-select-mailbox): Undo last change.
2269         (elmo-folder-use-flag-p): Use
2270         elmo-imap4-disuse-server-flag-mailbox-regexp.
2271
2272 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2273
2274         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2275         (elmo-imap4-session-select-mailbox): Set it up.
2276         (elmo-folder-use-flag-p): Return value of use-flag slot.
2277
2278 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2279
2280         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2281         message-id is nil.
2282         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2283
2284         * modb-entity.el (elmo-message-entity-handler): Likewise.
2285
2286 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2287
2288         * elmo.el (toplevel): Remove setting of autoloding for
2289         elmo-global-flag-initialize.
2290         (elmo-init): Don't call elmo-global-flag-initialize.
2291         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2292
2293         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2294         (elmo-global-mark-migrate): Don't call it.
2295         (elmo-global-mark-upgrade): Ditto.
2296
2297 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2298
2299         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2300         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2301
2302         * elmo-vars.el (elmo-init-hook): New user option.
2303
2304         * elmo.el (elmo-init): Run the elmo-init-hook.
2305
2306         * elmo-flag.el (elmo-global-mark-migrate): New function.
2307
2308 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2309
2310         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2311         Undo last change (move to elmo-msgdb-unset-flag).
2312         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2313         flag is unset.
2314
2315 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2316
2317         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2318         read flag is set.
2319         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2320         (elmo-msgdb-unset-flag): Ditto.
2321
2322 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2323
2324         * elmo-split.el (elmo-split): Return split message count.
2325
2326 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2327
2328         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2329         is nil.
2330
2331 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2332
2333         * elmo.el (elmo-folder-unflag-important): Call
2334         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2335         a symbol `always'.
2336
2337         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2338         before unset flag.
2339         (elmo-global-flag-detach): Delete the message from flag folder, if
2340         `delete-if-none' is a symbol `always'.
2341
2342 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2343
2344         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2345         `elmo-spam-spamfilter-decode-buffer'.
2346         (elsp-spamfilter-register-buffer-internal): New internal function.
2347         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2348         (elmo-spam-register-spam-buffer): Ditto.
2349         (elmo-spam-register-good-buffer): Ditto.
2350
2351         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2352         change.
2353         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2354         (elmo-spam-register-spam-buffer): Follow the API change.
2355         (elmo-spam-register-good-buffer): Ditto.
2356
2357         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2358         (elmo-split-spam-p): Added argument plist; Call
2359         `elmo-spam-buffer-spam-p' with new argument register.
2360
2361         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2362         `register'.
2363         (elmo-spam-message-spam-p): Ditto.
2364         (elmo-spam-register-spam-buffer): Added optional argument
2365         `restore'.
2366         (elmo-spam-register-good-buffer): Ditto.
2367         (elmo-spam-register-spam-messages): Ditto.
2368         (elmo-spam-register-good-messages): Ditto.
2369
2370 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2371
2372         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2373         register into good corpus.
2374         (elmo-spam-register-good-buffer): Fixed to register into bad
2375         corpus.
2376
2377 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2378
2379         * elmo-version.el (elmo-version): Up to 2.11.20.
2380
2381         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2382         change.
2383
2384         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2385         flag without depending on \Recent flag.
2386
2387 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2388
2389         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2390         (elmo-spam-modified-p): Defined.
2391         (elmo-spam-save-status): Set `modified' slot to nil.
2392         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2393         (elmo-spam-register-good-buffer): Ditto.
2394
2395         * elmo-spam.el (elmo-spam-modified-p): New API.
2396
2397 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2398
2399         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2400         duplicate definition.
2401
2402         * elmo-util.el (elmo-unfold-field-body): New function.
2403         (elmo-msgdb-get-message-id-from-buffer): Use it.
2404
2405         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2406         Fixed the last change; Use elmo-unfold-field-body.
2407
2408 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2409
2410         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2411         Unfold date value.
2412
2413 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2414
2415         * elmo-spam.el (elmo-spam-save-status): New API.
2416
2417         * elsp-spamfilter.el: New file.
2418
2419 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2420
2421         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2422
2423 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2424
2425         * elmo-split.el (elmo-split-spam-p): New function.
2426
2427         * elmo-spam.el: New file.
2428
2429         * elsp-bogofilter.el: Ditto.
2430
2431 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2432
2433         * elmo.el (elmo-folder-next-message-number): New API.
2434         (elmo-folder-next-message-number): Define.
2435         (elmo-message-field): Don't check folder length.
2436
2437         * elmo-net.el (elmo-folder-next-message-number): Define.
2438         (elmo-folder-next-message-number-unplugged): Define.
2439
2440         * elmo-map.el (elmo-folder-next-message-number): Define.
2441         (elmo-folder-delete-messages): Clear hash value.
2442
2443         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2444
2445         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2446         (elmo-folder-delete-messages-dop-delayed): Always return t.
2447
2448         * elmo-version.el (elmo-version): Up to 2.11.19.
2449
2450 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2451
2452         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2453         change.
2454
2455         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2456         identical cons cell into the mark-alist and the hash table.
2457
2458 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2459
2460         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2461         elmo-folder-list-messages with argument `visible-only' as t.
2462
2463         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2464         (elmo-folder-msgdb-create): Check the target folder.
2465
2466 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2467
2468         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2469         `permanentflag' instead of `flags'.
2470         (elmo-folder-open): Ditto.
2471         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2472         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2473         (elmo-folder-use-flag-p): Always return t.
2474         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2475         `permanentflags' does not exist.
2476         (elmo-folder-open): Ditto.
2477
2478 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2479
2480         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2481         is nil.
2482         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2483
2484         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2485         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2486         response.
2487         (elmo-folder-open): Ditto.
2488         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2489         slot of the session includes the flag.
2490         (elmo-imap4-session-flag-available-p): New function.
2491         (elmo-imap4-folder-list-flagged): Ditto.
2492         (elmo-folder-list-unreads-plugged): Use it.
2493         (elmo-folder-list-importants-plugged): Ditto.
2494         (elmo-folder-list-answereds-plugged): Ditto.
2495         (elmo-imap4-search-internal-primitive): Ditto.
2496         (elmo-imap4-folder-list-any-plugged,
2497         elmo-imap4-folder-list-digest-plugged): Abolish.
2498
2499         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2500         if numbers is nil.
2501
2502 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2503
2504         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2505
2506 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2507
2508         * elmo-util.el (elmo-get-hash-val): Simplify.
2509         (elmo-set-hash-val): Rewrite.
2510
2511 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2512
2513         * elmo.el (elmo-folder-list-messages): Append killed messages into
2514         result if `visible-only' is nil and `in-msgdb' is non-nil.
2515
2516         * elmo-util.el (elmo-uniq-list): Added optional argument
2517         `delete-function'.
2518
2519         * modb.el (elmo-msgdb-flag-count): New API.
2520
2521         * modb-standard.el (modb-standard): Added slot flag-count.
2522         (modb-standard-countup-flags): New function.
2523         (modb-standard-load-flag): Call it.
2524         (elmo-msgdb-append): Ditto.
2525         (elmo-msgdb-clear): Clear slot flag-count.
2526         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2527         (elmo-msgdb-unset-flag): Treat `all' flag and call
2528         modb-standard-countup-flags.
2529         (elmo-msgdb-flag-count): Define.
2530         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2531         (elmo-msgdb-delete-messages): Ditto.
2532
2533         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2534         (elmo-msgdb-flag-count): Define.
2535
2536         * elmo.el (elmo-folder-list-messages): Undo last change.
2537         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2538         (elmo-folder-kill-messages): Unset all flags to numbers.
2539
2540         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2541         elmo-folder-kill-messages.
2542
2543         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2544         (elmo-nntp-folder-delete-messages): Abolish.
2545
2546         * elmo-version.el (elmo-version): Up to 2.11.18.
2547
2548 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2549
2550         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2551         (elmo-folder-kill-messages-range): New function.
2552         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2553         instead of elmo-folder-kill-messages-before.
2554
2555 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2556
2557         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2558         elmo-imap4-current-msgdb to decide entity handler.
2559
2560 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2561
2562         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2563
2564         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2565         inline function.
2566         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2567         (elmo-msgdb-overview-entity-set-number,
2568         elmo-msgdb-overview-entity-get-references,
2569         elmo-msgdb-overview-entity-set-references,
2570         elmo-msgdb-overview-entity-get-from-no-decode,
2571         elmo-msgdb-overview-entity-get-from,
2572         elmo-msgdb-overview-entity-set-from,
2573         elmo-msgdb-overview-entity-get-subject,
2574         elmo-msgdb-overview-entity-get-subject-no-decode,
2575         elmo-msgdb-overview-entity-set-subject,
2576         elmo-msgdb-overview-entity-get-date,
2577         elmo-msgdb-overview-entity-set-date,
2578         elmo-msgdb-overview-entity-get-to,
2579         elmo-msgdb-overview-entity-get-cc,
2580         elmo-msgdb-overview-entity-get-size,
2581         elmo-msgdb-overview-entity-set-size,
2582         elmo-msgdb-overview-entity-get-extra,
2583         elmo-msgdb-overview-entity-set-extra,
2584         elmo-msgdb-overview-entity-get-extra-field,
2585         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2586         (elmo-msgdb-make-index): Use
2587         `elmo-msgdb-overview-entity-get-number-internal'.
2588         (elmo-msgdb-clear-index): Ditto.
2589         (elmo-msgdb-append-entity): Ditto;
2590         Use `elmo-msgdb-overview-entity-get-id-internal'.
2591
2592         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2593         elmo-msgdb-overview-entity-set-number,
2594         elmo-msgdb-overview-entity-get-references,
2595         elmo-msgdb-overview-entity-set-references,
2596         elmo-msgdb-overview-entity-get-from-no-decode,
2597         elmo-msgdb-overview-entity-get-from,
2598         elmo-msgdb-overview-entity-set-from,
2599         elmo-msgdb-overview-entity-get-subject,
2600         elmo-msgdb-overview-entity-get-subject-no-decode,
2601         elmo-msgdb-overview-entity-set-subject,
2602         elmo-msgdb-overview-entity-get-date,
2603         elmo-msgdb-overview-entity-set-date,
2604         elmo-msgdb-overview-entity-get-to,
2605         elmo-msgdb-overview-entity-get-cc,
2606         elmo-msgdb-overview-entity-get-size,
2607         elmo-msgdb-overview-entity-set-size,
2608         elmo-msgdb-overview-entity-get-extra,
2609         elmo-msgdb-overview-entity-set-extra,
2610         elmo-msgdb-overview-entity-get-extra-field,
2611         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2612         and rewrote for backward compatibility.
2613
2614 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2615
2616         * elmo.el (elmo-message-entity-number,
2617         elmo-message-entity-set-number,
2618         elmo-message-entity-field,
2619         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2620
2621         * elmo-msgdb.el (elmo-message-entity-number,
2622         elmo-message-entity-set-number,
2623         elmo-message-entity-field,
2624         elmo-message-entity-set-field): Moved from elmo.el.
2625
2626 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2627
2628         * elmo.el (toplevel): Changed definition orders.
2629
2630 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2631
2632         * modb.el (elmo-msgdb-search): New API .
2633         (elmo-msgdb-match-condition): Ditto.
2634
2635         * modb-standard.el (elmo-msgdb-search): Define.
2636
2637         * modb-legacy.el (elmo-msgdb-search): Ditto.
2638
2639         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2640         from elmo-msgdb-match-condition-internal.
2641
2642         * elmo.el (elmo-folder-search-fast): Abolish.
2643         (elmo-folder-search): Use elmo-msgdb-search and
2644         elmo-with-progress-display.
2645
2646         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2647         as msgdb API.
2648
2649         * elmo.el (elmo-folder): Remove slot message-modified and
2650         flag-modified.
2651         (elmo-folder-set-message-modified): Abolish.
2652         (elmo-generic-folder-commit): Follow the change above.
2653         (elmo-folder-synchronize): Ditto.
2654
2655         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2656
2657         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2658
2659         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2660
2661 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2662
2663         * modb-standard.el (modb-standard-make-message-entity,
2664         elmo-msgdb-make-message-entity,
2665         elmo-msgdb-create-message-entity-from-buffer,
2666         elmo-msgdb-message-entity-number,
2667         elmo-msgdb-message-entity-set-number,
2668         elmo-msgdb-message-entity-field,
2669         elmo-msgdb-message-entity-set-field,
2670         elmo-msgdb-copy-message-entity,
2671         elmo-msgdb-match-condition-internal): Remove.
2672
2673         * modb-entity.el: New file (again).
2674
2675         * modb.el (toplevel): Require modb-entity.
2676         (elmo-msgdb-message-entity-handler): New method.
2677
2678         * modb-standard.el (modb-standard-entity-id): Use
2679         elmo-message-entity-handler.
2680         (modb-standard-load-entity): Ditto.
2681         (elmo-msgdb-append-entity): Ditto.
2682         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2683
2684         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2685         elmo-msgdb-decoded-cache-hashtb,
2686         (modb-legacy-make-message-entity,
2687         elmo-msgdb-make-message-entity,
2688         elmo-msgdb-create-message-entity-from-buffer,
2689         elmo-msgdb-message-entity-number,
2690         elmo-msgdb-message-entity-set-number,
2691         elmo-msgdb-message-entity-field,
2692         elmo-msgdb-message-entity-set-field,
2693         elmo-msgdb-copy-message-entity,
2694         elmo-msgdb-match-condition-internal,
2695         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2696
2697         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2698         (elmo-message-entity-set-number): Ditto.
2699         (elmo-message-entity-field): Ditto.
2700         (elmo-message-entity-set-field): Ditto.
2701
2702         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2703
2704         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2705
2706         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2707
2708         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2709         (elmo-nntp-msgdb-create-message): Ditto.
2710
2711         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2712         (elmo-folder-msgdb-create): Add unread flag.
2713
2714         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2715
2716         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2717
2718         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2719
2720         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2721
2722         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2723         elmo-msgdb-messge-entity-handler.
2724         * elmo-version.el (elmo-version): Up to 2.11.17.
2725
2726 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2727
2728         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2729         change.
2730
2731 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2732
2733         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2734
2735         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2736         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2737         (elmo-msgdb-flag-table): Ditto.
2738         (elmo-msgdb-sort-by-date): Ditto.
2739
2740         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2741
2742         * modb-standard.el (toplevel): Require mime.
2743         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2744         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2745         elmo-msgdb-message-entity-number.
2746         (elmo-msgdb-append-entity): Ditto.
2747         (elmo-msgdb-create-message-entity-from-file): Remove.
2748         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2749         corresponds to the entity.
2750         (elmo-msgdb-message-entity-number): Do nothing currently.
2751         (elmo-msgdb-message-entity-field): Ditto.
2752         (elmo-msgdb-message-entity-set-field): Ditto.
2753         (elmo-msgdb-copy-message-entity): Ditto.
2754         (elmo-msgdb-match-condition-internal): Ditto.
2755
2756         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2757         elmo-util.el.
2758         (elmo-msgdb-create-message-entity-from-file): Remove.
2759
2760         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2761         modb-legacy.el.
2762         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2763
2764         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2765
2766 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2767
2768         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2769         (elmo-msgdb-message-entity-field): Ditto.
2770         (elmo-msgdb-message-entity-number): Ditto.
2771
2772 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2773
2774         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2775         Fixed how to set extra field into entity.
2776         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2777         symbol.
2778
2779         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2780         Fixed how to set extra field into entity.
2781         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2782         symbol.
2783
2784 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2785
2786         * modb.el (elmo-message-entity-db): New function.
2787         (elmo-msgdb-make-message-entity): New API.
2788         (elmo-msgdb-message-entity-number): Ditto.
2789         (elmo-msgdb-message-entity-set-number): Ditto.
2790         (elmo-msgdb-message-entity-field): Ditto.
2791         (elmo-msgdb-message-entity-set-field): Ditto.
2792         (elmo-msgdb-copy-message-entity): Ditto.
2793         (elmo-msgdb-create-message-entity-from-file): Ditto.
2794         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2795         (elmo-msgdb-match-condition-internal): Ditto.
2796
2797         * modb-standard.el (modb-legacy): Require modb-legacy.
2798         (modb-standard-make-message-entity): New inline function.
2799         (elmo-msgdb-make-message-entity): Define.
2800         (elmo-msgdb-create-message-entity-from-file): Ditto.
2801         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2802         (elmo-msgdb-message-entity-field): Ditto.
2803         (elmo-msgdb-message-entity-set-field): Ditto.
2804         (elmo-msgdb-copy-message-entity): Ditto.
2805         (elmo-msgdb-match-condition-internal): Ditto.
2806
2807         * modb-legacy.el: Don't require modb-entity.
2808         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2809         (elmo-msgdb-match-condition-primitive): Ditto.
2810         (elmo-msgdb-get-decoded-cache): Ditto.
2811         (elmo-msgdb-overview-entity-get-id): Ditto.
2812         (elmo-msgdb-overview-entity-get-number): Ditto.
2813         (elmo-msgdb-overview-entity-set-number): Ditto.
2814         (elmo-msgdb-overview-entity-get-references): Ditto.
2815         (elmo-msgdb-overview-entity-set-references): Ditto.
2816         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2817         (elmo-msgdb-overview-entity-get-from): Ditto.
2818         (elmo-msgdb-overview-entity-set-from): Ditto.
2819         (elmo-msgdb-overview-entity-get-subject): Ditto.
2820         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2821         (elmo-msgdb-overview-entity-set-subject): Ditto.
2822         (elmo-msgdb-overview-entity-get-date): Ditto.
2823         (elmo-msgdb-overview-entity-set-date): Ditto.
2824         (elmo-msgdb-overview-entity-get-to): Ditto.
2825         (elmo-msgdb-overview-entity-get-cc): Ditto.
2826         (elmo-msgdb-overview-entity-get-size): Ditto.
2827         (elmo-msgdb-overview-entity-set-size): Ditto.
2828         (elmo-msgdb-overview-entity-get-extra): Ditto.
2829         (elmo-msgdb-overview-entity-set-extra): Ditto.
2830         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2831         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2832         (elmo-msgdb-number-load): Ditto.
2833         (elmo-msgdb-overview-load): Ditto.
2834         (elmo-msgdb-mark-load): Ditto.
2835         (elmo-msgdb-number-save): Ditto.
2836         (elmo-msgdb-mark-save): Ditto.
2837         (elmo-msgdb-overview-save): Ditto.
2838         (modb-legacy-make-message-entity): New inline function.
2839         (elmo-msgdb-insert-file-header): Ditto.
2840         (elmo-msgdb-make-message-entity): Define.
2841         (elmo-msgdb-create-message-entity-from-file): Ditto.
2842         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2843         (elmo-msgdb-message-entity-number): Ditto.
2844         (elmo-msgdb-message-entity-set-number): Ditto.
2845         (elmo-msgdb-message-entity-field): Ditto.
2846         (elmo-msgdb-message-entity-set-field): Ditto.
2847         (elmo-msgdb-copy-message-entity): Ditto.
2848         (elmo-msgdb-match-condition-internal): Ditto.
2849
2850         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2851         (elmo-message-copy-entity): Rewrite.
2852         (elmo-message-entity-number): Ditto.
2853         (elmo-message-entity-set-number): Ditto.
2854         (elmo-message-entity-field): Use elmo-message-entity-db.
2855         (elmo-message-entity-set-field): Ditto.
2856         (elmo-message-field): Rewrite.
2857
2858         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2859         elmo-msgdb.el
2860         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2861
2862         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2863         elmo-message-entity-field.
2864         (elmo-shimbun-folder-shimbun-header): Ditto.
2865         (elmo-shimbun-entity-to-header): Ditto.
2866         (elmo-folder-msgdb-create): Ditto.
2867         (elmo-shimbun-msgdb-create-entity): Ditto;
2868         Use elmo-msgdb-create-message-entity-from-buffer.
2869         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2870         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2871
2872         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2873         elmo-msgdb-create-message-entity-from-file and 
2874         elmo-message-entity-field.
2875
2876         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2877         elmo-message-entity-number.
2878         (elmo-pop3-msgdb-create-message): Use
2879         elmo-msgdb-create-message-entity-from-buffer,
2880         elmo-message-entity-set-field, elmo-message-entity-number and
2881         elmo-message-entity-set-number.
2882
2883         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2884         the API change in elmo-msgdb-make-message-entity.
2885         (elmo-nntp-msgdb-create-message): Use
2886         elmo-msgdb-create-message-entity-from-buffer.
2887
2888         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2889         elmo-message-entity-field and
2890         elmo-msgdb-create-message-entity-from-file.
2891
2892         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2893         (elmo-msgdb-get-field): Abolish.
2894         (elmo-msgdb-get-number): Rewrite.
2895         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2896         (elmo-msgdb-flag-table): Ditto.
2897         (elmo-msgdb-get-last-message-id,
2898         elmo-msgdb-number-load, elmo-msgdb-overview-load,
2899         elmo-msgdb-mark-load, elmo-msgdb-number-save,
2900         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2901         (elmo-msgdb-create-overview-from-buffer,
2902         elmo-msgdb-overview-get-parent-entity): Abolish.
2903
2904         * elmo-mime.el (elmo-mime-display-as-is): Use
2905         elmo-message-entity-field.
2906
2907         * elmo-map.el (elmo-folder-pack-numbers): Use
2908         elmo-message-entity-set-number.
2909
2910         * elmo-maildir.el (elmo-folder-msgdb-create): 
2911         elmo-msgdb-create-message-entity-from-file instead of
2912         elmo-msgdb-create-overview-entity-from-file.
2913
2914         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2915         msgdb.
2916         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2917         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2918
2919         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2920         elmo-messge-entity-field and elmo-message-entity-number.
2921         (elmo-imap4-fetch-callback-1): Call
2922         elmo-msgdb-create-message-entity-from-buffer instead of
2923         elmo-msgdb-create-overview-from-buffer. 
2924         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
2925         (elmo-find-fetch-strategy): Likewise.
2926
2927         * elmo-flag.el (elmo-folder-msgdb-create): Call 
2928         elmo-localdir-msgdb-create-entity with argument msgdb.
2929
2930         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
2931         and elmo-message-entity-set-number.
2932
2933         * elmo-cache.el (elmo-folder-msgdb-create): Use
2934         elmo-message-entity-field.
2935         (elmo-folder-msgdb-create): Call
2936         elmo-msgdb-create-message-entity-from-file instead of
2937         elmo-msgdb-create-overview-entity-from-file.
2938
2939         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
2940         argument msgdb; Call elmo-msgdb-create-message-from-buffer
2941         instead of elmo-msgdb-create-overview-from-buffer.
2942         (elmo-archive-msgdb-create-entity): Ditto.
2943         (elmo-archive-msgdb-create-as-numlist-subr1): Use
2944         elmo-message-entity-field.
2945         (elmo-archive-parse-mmdf): Ditto.
2946
2947         * modb-entity.el: Removed.
2948
2949         * elmo-version.el (elmo-version): Up to 2.11.16.
2950
2951 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
2952
2953         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
2954         `is-local'.
2955         (elmo-folder-flag-as-answered): Ditto.
2956
2957 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2958
2959         * modb-standard.el: New file.
2960
2961         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
2962         elmo-msgdb-convert-type is `sync'.
2963
2964         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
2965         (elmo-msgdb-convert-type): New user option.
2966
2967         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
2968         (elmo-load-msgdb): Auto detect saved type.
2969
2970         * elmo-version.el (elmo-version): Up to 2.11.15.
2971
2972 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
2973
2974         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
2975
2976         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
2977         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
2978         with argument `delete-if-none' when dst-folder is 'null.
2979
2980         * elmo-flag.el (elmo-folder-append-messages): Defined.
2981         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
2982
2983 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2984
2985         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
2986
2987 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2988
2989         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
2990         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
2991         (elmo-folder-commit): Ditto.
2992
2993 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2994
2995         * elmo-flag.el: New file.
2996
2997         * elmo-mark.el: Removed.
2998
2999         * modb-legacy.el (modb-legacy-new-mark,
3000         modb-legacy-unread-uncached-mark,
3001         modb-legacy-unread-cached-mark,
3002         modb-legacy-read-uncached-mark,
3003         modb-legacy-answered-cached-mark,
3004         modb-legacy-answered-uncached-mark,
3005         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3006         All other related portions are changed.
3007
3008         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3009         (elmo-folder-list-messages-with-global-mark): Abolish.
3010         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3011         (elmo-folder-flag-as-important): Ditto.
3012         (elmo-folder-unflag-read): Ditto.
3013         (elmo-folder-flag-as-read): Ditto.
3014         (elmo-folder-unflag-answered): Ditto.
3015         (elmo-folder-flag-as-answered): Ditto.
3016         (elmo-message-encache): Return the cache path.
3017         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3018         (elmo-message-set-flag): Transitional implementation.
3019         (elmo-message-unset-flag): Ditto.
3020         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3021         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3022         (elmo-init): Call elmo-global-flag-initialize.
3023         (toplevel): Added autoload settings for elmo-flag.
3024
3025         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3026
3027         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3028         (elmo-file-cache-delete): Don't treat global-mark.
3029
3030         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3031
3032         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3033
3034         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3035         `elmo-global-flags-set'.
3036
3037         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3038         `flag'.
3039         (elmo-folder-unflag-read): Ditto.
3040         (elmo-folder-unflag-important): Ditto.
3041         (elmo-folder-flag-as-important): Ditto.
3042         (elmo-folder-unflag-answered): Ditto.
3043         (elmo-folder-flag-as-answered): Ditto.
3044
3045         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3046         `elmo-global-flags-set'.
3047         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3048
3049         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3050
3051         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3052         `flag'.
3053         (elmo-folder-flag-as-important): Ditto.
3054         (elmo-folder-unflag-important): Ditto.
3055         (elmo-folder-flag-as-important): Ditto.
3056         (elmo-folder-unflag-read): Ditto.
3057         (elmo-folder-flag-as-read): Ditto.
3058         (elmo-folder-unflag-answered): Ditto.
3059         (elmo-folder-flag-as-answered): Ditto.
3060
3061         * elmo-multi.el (elmo-folder-list-importants): Don't call
3062         elmo-folder-list-messages-with-global-mark.
3063         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3064         (elmo-folder-unflag-important): Ditto.
3065         (elmo-folder-flag-as-read): Ditto.
3066         (elmo-folder-unflag-read): Ditto.
3067         (elmo-folder-flag-as-answered): Ditto.
3068         (elmo-folder-unflag-answered): Ditto.
3069
3070         * elmo-msgdb.el (elmo-msgdb-new-mark,
3071         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3072         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3073         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3074         (Moved to modb-legacy.el).
3075         (elmo-flag-table-get): Treat important flag too.
3076
3077         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3078         `mark' to `flag'.
3079         (elmo-map-folder-flag-as-important): Ditto.
3080         (elmo-map-folder-unflag-read): Ditto.
3081         (elmo-map-folder-flag-as-read): Ditto.
3082         (elmo-map-folder-unflag-answered): Ditto.
3083         (elmo-map-folder-flag-as-answered): Ditto.
3084         (elmo-folder-unflag-important): Ditto.
3085         (elmo-folder-flag-as-important): Ditto.
3086         (elmo-folder-unflag-read): Ditto.
3087         (elmo-folder-flag-as-read): Ditto.
3088         (elmo-folder-unflag-answered): Ditto.
3089         (elmo-folder-flag-as-answered): Ditto.
3090
3091         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3092         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3093         `flag'.
3094         (elmo-map-folder-unflag-important): Ditto.
3095         (elmo-map-folder-flag-as-read): Ditto.
3096         (elmo-map-folder-unflag-read): Ditto.
3097         (elmo-map-folder-flag-as-answered): Ditto.
3098         (elmo-map-folder-unflag-answered): Ditto.
3099
3100         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3101         `elmo-global-flags-set'.
3102         (elmo-global-flags-set): Added autoload setting.
3103
3104         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3105         `flag'.
3106
3107         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3108         `elmo-msgdb-global-mark-set'.
3109         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3110         Call `elmo-global-flags-set'.
3111         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3112         `flag'.
3113         (elmo-folder-flag-as-important-plugged): Ditto.
3114         (elmo-folder-unflag-read-plugged): Ditto.
3115         (elmo-folder-flag-as-read-plugged): Ditto.
3116         (elmo-folder-unflag-answered-plugged): Ditto.
3117         (elmo-folder-flag-as-answered-plugged): Ditto.
3118         (elmo-global-flags-set): Added autoload setting.
3119
3120         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3121         `flag'.
3122         (elmo-folder-unflag-read): Ditto.
3123         (elmo-folder-flag-as-important): Ditto.
3124         (elmo-folder-unflag-important): Ditto.
3125         (elmo-folder-flag-as-answered): Ditto.
3126         (elmo-folder-unflag-answered): Ditto.
3127
3128         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3129         change of `mark'->`flag'.
3130         (elmo-dop-queue-method-name-alist): Ditto.
3131         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3132         (elmo-folder-unflag-read-dop): Ditto.
3133         (elmo-folder-flag-as-important-dop): Ditto.
3134         (elmo-folder-unflag-important-dop): Ditto.
3135         (elmo-folder-flag-as-answered-dop): Ditto.
3136         (elmo-folder-unflag-answered-dop): Ditto.
3137
3138         * elmo-cache.el (elmo-folder-msgdb-create): Call
3139         `elmo-global-flags-set'.
3140
3141         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3142         Call `elmo-global-flags-set'.
3143         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3144         elmo-archive-parse-mmdf with argument `folder'.
3145         (elmo-archive-parse-mmdf): Added argument `folder';
3146         Call `elmo-global-flags-set'.
3147
3148         * elmo-version.el (elmo-version): Up to 2.11.14.
3149
3150 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3151
3152         * modb.el (elmo-msgdb-length): Define.
3153
3154         * elmo.el (elmo-make-folder): Fixed.
3155         (elmo-generic-folder-append-messages): Follow the API change.
3156
3157         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3158         API change.
3159
3160 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3161
3162         * modb.el: New file.
3163
3164         * modb-entity.el: Ditto.
3165
3166         * modb-legacy.el: Ditto.
3167
3168         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3169         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3170         of `elmo-msgdb-overview-get-entity'.
3171         (elmo-msgdb-get-field): Ditto.
3172         (elmo-msgdb-merge): Moved to `elmo.el'.
3173         (elmo-msgdb-length): Removed; redefine as modb method.
3174         (elmo-msgdb-change-mark): Abolish.
3175         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3176         (elmo-msgdb-match-condition): Don't use mark.
3177         (elmo-msgdb-overview-get-entity): Abolish.
3178         Split modb part into `modb*.el'.
3179
3180         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3181
3182         * elmo-shimbun.el (shimbun-mua-search-id): Use
3183         `elmo-msgdb-message-entity' instead of
3184         `elmo-msgdb-overview-get-entity'.
3185         (elmo-shimbun-folder-shimbun-header): Ditto.
3186         (elmo-shimbun-get-headers): Ditto.
3187         (elmo-shimbun-update-overview): Ditto.
3188
3189         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3190
3191         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3192
3193         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3194         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3195
3196         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3197         `elmo-msgdb-mark-to-flags'.
3198
3199         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3200         `elmo-msgdb-set-path'.
3201
3202         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3203  
3204         * elmo-version.el (elmo-version): Up to 2.11.13.
3205
3206         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3207
3208         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3209         of mark.
3210
3211 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3212
3213         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3214         mismatch.
3215
3216 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3217
3218         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3219         instead of `elmo-msgdb-get-cached'.
3220         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3221
3222         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3223         (elmo-msgdb-set-cached): Ditto.
3224         (elmo-msgdb-set-flag): Rewrite.
3225         (elmo-msgdb-unset-flag): Ditto.
3226
3227         * elmo-msgdb.el: Rewrite with luna.
3228
3229         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3230         (elmo-folder-msgdb): Follow the change above.
3231         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3232         (elmo-folder-unmark-important): Follow the API change.
3233         (elmo-folder-mark-as-important): Ditto.
3234         (elmo-folder-unmark-read): Ditto.
3235         (elmo-folder-mark-as-read): Ditto.
3236         (elmo-folder-unmark-answered): Ditto.
3237         (elmo-folder-mark-as-answered): Ditto.
3238         (elmo-folder-clear): Likewise.
3239
3240         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3241         instead of `elmo-msgdb-load' (renamed).
3242
3243         * elmo-version.el (elmo-version): Up to 2.11.12.
3244
3245 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3246
3247         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3248         change.
3249         (elmo-message-mark): Abolish.
3250         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3251         instead of `elmo-msgdb-change-mark'.
3252
3253         * elmo-pipe.el (elmo-message-mark): Abolish.
3254
3255         * elmo-multi.el (elmo-message-mark): Ditto.
3256
3257         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3258         (elmo-msgdb-unread-uncached-mark): Ditto.
3259         (elmo-msgdb-unread-cached-mark): Ditto.
3260         (elmo-msgdb-read-uncached-mark): Ditto.
3261         (elmo-msgdb-answered-cached-mark): Ditto.
3262         (elmo-msgdb-answered-uncached-mark): Ditto.
3263         (elmo-msgdb-important-mark): Ditto.
3264         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3265         `use-cache'.
3266         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3267         `flags'.
3268         (elmo-flag-table-load): Changed flag to list of flag.
3269         (elmo-flag-table-set): If flags is nil, set read flag.
3270         (elmo-flag-table-get): Return derived flags from global mark,
3271         cache status and saved flags.
3272         (elmo-msgdb-flag-table): Follow the change above.
3273         (elmo-msgdb-out-of-date-messages): New function.
3274
3275         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3276
3277         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3278
3279         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3280
3281         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3282         (elmo-nntp-msgdb-create-message): Ditto.
3283
3284         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3285
3286         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3287         independent.
3288         (elmo-folder-msgdb-create): Follow the API change.
3289
3290         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3291         (elmo-folder-append-messages): Ditto.
3292
3293         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3294         (elmo-folder-append-buffer): Ditto.
3295
3296         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3297
3298         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3299
3300         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3301         (elmo-archive-parse-mmdf): Ditto.
3302
3303         * elmo-version.el (elmo-version): Up to 2.11.11.
3304
3305 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3306
3307         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3308         `elmo-msgdb-mark'.
3309
3310         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3311
3312         * elmo-pipe.el (elmo-message-flags): Defined.
3313
3314         * elmo-multi.el (elmo-message-flags): Ditto.
3315
3316 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3317
3318         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3319         `elmo-msgdb-delete-msgs'.
3320
3321         * elmo.el (elmo-folder-count-flags): Don't use
3322         `elmo-msgdb-get-mark-alist'.
3323         (elmo-folder-detach-messages): Follow the API change.
3324
3325         * elmo.el (elmo-folder-list-messages): Append killed messages into
3326         result if `visible-only' is nil.
3327
3328         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3329         canceled messages.
3330         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3331         (elmo-folder-update-number): Likewise.
3332
3333         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3334         (elmo-pop3-sort-msgdb-by-original-number): Use
3335         `elmo-msgdb-sort-entities'.
3336
3337         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3338         (elmo-msgdb-sort-by-date): Use it.
3339         (elmo-msgdb-overview-sort-by-date): Abolish.
3340
3341         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3342
3343         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3344         (elmo-msgdb-flags): New function.
3345         (elmo-msgdb-merge): Use elmo-msgdb-append.
3346
3347         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3348         change.
3349
3350         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3351
3352         * elmo-dop.el (elmo-folder-status-dop): Use
3353         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3354
3355 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3356
3357         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3358
3359         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3360
3361         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3362
3363         * elmo-util.el (elmo-with-progress-display): New macro.
3364
3365         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3366
3367 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3368
3369         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3370         `elmo-folder-list-message-entities' instead of
3371         `elmo-msgdb-get-overview'.
3372         (elmo-map-folder-list-message-locations): Ditto.
3373
3374         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3375         methods instead of treat directly).
3376         (elmo-msgdb-clear): Ditto.
3377         (elmo-msgdb-delete-msgs): Ditto.
3378         (elmo-msgdb-sort-by-date): Ditto.
3379
3380         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3381         local variables.
3382         (elmo-nntp-folder-msgdb-create): Follow the API change.
3383
3384         * elmo-version.el (elmo-version): Up to 2.11.10.
3385
3386 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3387
3388         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3389         (elmo-msgdb-flags-to-mark): Ditto.
3390         (elmo-msgdb-append-entity): Ditto.
3391
3392         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3393         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3394         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3395         (elmo-archive-parse-mmdf): Ditto.
3396
3397         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3398
3399         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3400
3401         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3402
3403         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3404
3405         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3406
3407         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3408
3409         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3410
3411         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3412
3413         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3414         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3415         to empty msgdb.
3416
3417         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3418         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3419         instead of directly construction.
3420         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3421         instead of construct msgdb.
3422
3423         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3424         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3425         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3426         instead of construct msgdb.
3427
3428 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3429
3430         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3431         when field is from or subject.
3432
3433 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3434
3435         * elmo-multi.el (elmo-message-entity-parent): Define.
3436         (elmo-folder-search): Rewrite.
3437
3438 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3439
3440         * elmo-multi.el (elmo-message-cached-p): Define.
3441
3442         * elmo.el (elmo-message-cached-p): New method.
3443         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3444         (elmo-message-flags): New method.
3445         (elmo-message-flagged-p): New function.
3446
3447         * elmo-version.el (elmo-version): Up to 2.11.9.
3448
3449 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3450
3451         * elmo-version.el (elmo-version): Up to 2.11.8.
3452
3453         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3454
3455         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3456
3457 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3458
3459         * elmo.el (elmo-folder-detach-messages): Undo last change.
3460
3461 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3462
3463         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3464
3465         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3466         only when src folder type is pop3.
3467
3468 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3469
3470         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3471         elmo-msgdb-overview-entity-get-number instead of
3472         elmo-message-entity-number.
3473
3474 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3475
3476         * elmo-version.el (elmo-version): Up to 2.11.7.
3477
3478 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3479
3480         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3481         function.
3482
3483         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3484         (elmo-msgdb-merge): New function.
3485         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3486         (elmo-msgdb-make-index): Rewrite.
3487
3488         * elmo-version.el (elmo-version): Up to 2.11.6.
3489
3490         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3491         use it as a the path for loading message entities.
3492
3493         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3494
3495 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3496
3497         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3498         message-modified slot of itself if it does not require target msgdb.
3499
3500         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3501         if folder length is zero.
3502         (elmo-mime-display-as-is): Ditto.
3503
3504         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3505
3506         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3507
3508 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3509
3510         * elmo.el (elmo-folder-set-message-modified): New method.
3511         (elmo-generic-folder-commit): Use it.
3512         (elmo-folder-synchronize): Ditto.
3513
3514         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3515         (elmo-folder-commit): Remove duplicate definition.
3516
3517 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3518
3519         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3520
3521 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3522
3523         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3524         (elmo-strict-folder-diff): Ditto.
3525         (elmo-folder-set-info-max-by-numdb): Simplify.
3526
3527         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3528         elmo-msgdb-list-messages.
3529
3530         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3531         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3532
3533 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3534
3535         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3536         visible-only is non-nil.
3537         (elmo-folder-confirm-appends): Changed message.
3538         (elmo-folder-synchronize): Added argument disable-killed.
3539
3540         * elmo-multi.el (elmo-folder-synchronize): Added argument
3541         disable-killed.
3542
3543         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3544
3545         * elmo-version.el (elmo-version): Up to 2.11.5.
3546
3547         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3548         elmo-list-filter.
3549
3550         * elmo-util.el (elmo-list-filter): Simplify.
3551
3552         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3553         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3554         (elmo-generic-folder-diff): Abolish argument.
3555         (elmo-msgdb-load): Don't use number-alist.
3556
3557         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3558
3559         * elmo-pipe.el (elmo-folder-diff): Ditto.
3560
3561         * elmo-nmz.el (elmo-folder-diff): Ditto.
3562
3563         * elmo-net.el (elmo-folder-diff): Ditto.
3564
3565         * elmo-maildir.el (elmo-folder-diff): Ditto.
3566
3567         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3568
3569         * elmo-multi.el (elmo-folder-diff): Ditto
3570         (elmo-multi-folder-diff): Rewrite.
3571
3572 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3573
3574         * elmo-pipe.el (elmo-folder-msgdb): Define.
3575
3576 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3577
3578         * elmo.el (elmo-message-set-cached): Define as a method.
3579
3580         * elmo-pipe.el (elmo-message-set-cached): Define.
3581         (elmo-find-fetch-strategy): Ditto.
3582
3583         * elmo-multi.el (elmo-message-set-cached): Define.
3584         (elmo-find-fetch-strategy): Rewrite.
3585
3586         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3587
3588         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3589
3590 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3591
3592         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3593         instead of number-alist.
3594
3595         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3596         mark nor message-id when msgdb of source folder is not loaded.
3597
3598         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3599
3600         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3601
3602 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3603
3604         * elmo.el (elmo-folder-length): Don't require msgdb.
3605
3606 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3607
3608         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3609         (elmo-message-field): Ditto.
3610
3611         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3612         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3613         slot.
3614         (elmo-map-folder-list-answereds): Define.
3615         (elmo-maildir-list-location): Treat 'R' info.
3616         (elmo-folder-msgdb-create): Treat flag-table.
3617         (elmo-folder-append-messages): Save flag-table.
3618
3619 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3620
3621         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3622         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3623
3624 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3625
3626         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3627
3628         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3629         'read when mark is null.
3630
3631 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3632
3633         * elmo-version.el (elmo-version): Up to 2.11.4.
3634
3635 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3636
3637         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3638         (elmo-folder-mark-as-answered): Ditto.
3639
3640 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3641
3642         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3643         (elmo-pop3-get-session): Make msgdb directory after session.
3644         (elmo-folder-exists-p): Check exactly at the first time even when the
3645         elmo-pop3-exists-exactly is nil.
3646
3647         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3648         (elmo-folder-list-messages): Define instead of
3649         elmo-folder-list-messages-internal.
3650         (elmo-folder-check): Check destination folder.
3651         (elmo-folder-synchronize): Drain the pipe.
3652
3653         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3654         when msgdb is not loaded.
3655
3656         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3657
3658         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3659         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3660         messages.
3661
3662         * elmo.el (elmo-folder-kill-messages-before): New function.
3663         (elmo-folder-kill-messages): Ditto.
3664         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3665
3666         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3667         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3668         killed not by synchronize (e.g. scoring).
3669
3670 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3671
3672         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3673         treated.
3674         (elmo-folder-search): Follow the change above.
3675
3676         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3677         into the candidates of search field.
3678
3679 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3680
3681         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3682         (elmo-msgdb-unset-flag): Ditto.
3683
3684         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3685
3686 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3687
3688         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3689         (elmo-folder-commit): Define.
3690         (elmo-folder-synchronize): Ditto.
3691         (elmo-folder-list-flagged): Ditto.
3692         (elmo-folder-commit): Ditto.
3693         (elmo-folder-length): Ditto.
3694         (elmo-folder-count-flags): Ditto.
3695         (elmo-message-mark): Ditto.
3696         (elmo-message-field): Ditto.
3697         (elmo-message-entity): Ditto.
3698         (elmo-message-folder): Ditto.
3699
3700 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3701
3702         * elmo.el (elmo-message-field): Define as a method.
3703
3704         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3705         (elmo-message-field): Define.
3706
3707         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3708         (elmo-folder-list-importants): Ditto.
3709         (elmo-folder-list-answereds): Ditto.
3710
3711         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3712         qualifier.
3713         (elmo-folder-mark-as-read): Ditto.
3714         (elmo-folder-unmark-read): Ditto.
3715         (elmo-folder-mark-as-answered): Ditto.
3716         (elmo-folder-unmark-answered): Ditto.
3717         (elmo-folder-list-flagged): Define.
3718         (elmo-folder-commit): Ditto.
3719         (elmo-folder-length): Ditto.
3720         (elmo-folder-count-flags): Ditto.
3721
3722 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3723
3724         * elmo.el (elmo-folder-detach-messages): New method.
3725         (elmo-folder-move-messages): Use it.
3726         (elmo-folder-synchronize): Ditto.
3727
3728         * elmo-multi.el (elmo-folder-detach-messages): Define.
3729
3730         * elmo.el (elmo-message-copy-entity): New function.
3731         (elmo-message-entity-set-number): Ditto.
3732         (elmo-message-mark): Define as method.
3733
3734         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3735         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3736         (elmo-message-entity): Fixed last change.
3737         (elmo-message-mark): Define.
3738         (elmo-folder-msgdb-create): Abolish.
3739         (elmo-multi-folder-append-msgdb): Ditto.
3740         (elmo-multi-folder-diff): Fixed.
3741         (elmo-multi-split-number-alist): Removed.
3742         (elmo-multi-split-mark-alist): Removed.
3743         (elmo-folder-list-messages): Define.
3744         (elmo-folder-list-messages-internal): Removed.
3745
3746         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3747         local file messages.
3748         (elmo-folder-msgdb-create): Fixed read mark.
3749
3750 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3751
3752         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3753         if mark is nil.
3754
3755 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3756
3757         * elmo.el (elmo-folder-list-message-entities): Define as inline
3758         function.
3759         (elmo-folder-messages): Abolish.
3760
3761         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3762         folder.
3763         (elmo-folder-synchronize): Define.
3764         (elmo-message-entity): Define.
3765
3766 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3767
3768         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3769         elmo-imap4-session-select-mailbox.
3770
3771         * elmo.el (elmo-folder-move-messages): Don't display any message.
3772
3773         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3774         parsing.
3775         (elmo-imap4-session-check): Don't wait CHECK response.
3776         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3777
3778 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3779
3780         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3781
3782 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3783
3784         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3785         API.
3786         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3787
3788
3789         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3790         (elmo-folder-list-message-entities): Added argument in-msgdb and
3791         numbers.
3792         (elmo-folder-synchronize): Define as a method.
3793
3794         * elmo-nntp.el (elmo-folder-initialize): Don't use
3795         elmo-nntp-default-user if zero-length username is specified
3796         explicitly.
3797
3798 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3799
3800         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3801         server name in case with username.
3802         (XXX: this is ad-hoc fix against username includes "@", it
3803         should be solved fundamentally)
3804
3805 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3806
3807         * elmo-nntp.el (elmo-nntp-debug): New function.
3808         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3809         (elmo-network-authenticate-session): Hide auth-info from the log.
3810
3811         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3812         user name if it is equal to elmo-nntp-default-user.
3813
3814 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3815
3816         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3817         instead of shimbun-server-internal;
3818         Use shimbun-current-group instead of shimbun-current-group-internal.
3819         (elmo-folder-plugged-p): Use shimbun-server instead of
3820         shimbun-server-internal.
3821         (elmo-folder-set-plugged): Ditto.
3822         (elmo-net-port-info): Ditto.
3823         (elmo-folder-check): Ditto.
3824         (elmo-folder-expand-msgdb-path): Ditto.
3825         (elmo-folder-list-subfolders): Ditto.
3826
3827 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3828
3829         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3830         Convert field-name to lower case.
3831         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3832
3833 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3834
3835         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3836         `message' and `error' take format string.
3837
3838 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3839
3840         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3841
3842 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3843
3844         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3845         recursive call (can't byte compile on emacs 20.7).
3846
3847 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3848
3849         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3850         (elmo-folder-list-message-entities): New API.
3851         (elmo-message-entity): Ditto.
3852         (elmo-message-entity-parent): Ditto.
3853         (elmo-folder-do-each-message-entity): Ditto.
3854         (elmo-message-entity-number): Ditto.
3855         (elmo-message-entity-field): Ditto.
3856         (elmo-message-entity-set-field): Ditto.
3857         (elmo-folder-count-flags): Ditto.
3858         (elmo-folder-length): Ditto.
3859
3860         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3861         not.
3862
3863         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3864         (elmo-msgdb-count-marks): Abolish.
3865         (elmo-msgdb-make-entity): Ditto.
3866         (elmo-msgdb-do-each-entity): Ditto.
3867         (elmo-msgdb-message-entity): New inline function.
3868         (elmo-msgdb-message-entity-field): Ditto.
3869         (elmo-msgdb-message-entity-set-field): Ditto.
3870         (elmo-msgdb-make-message-entity): New function.
3871
3872 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3873
3874         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3875         to flag. (All other related portions are changed.)
3876         (elmo-folder-msgdb-create): Likewise.
3877         (elmo-generic-folder-append-messages): Use flag-table instead of
3878         seen-list.
3879         (elmo-folder-move-messages): Removed redundant process.
3880         (elmo-folder-synchronize): Likewise.
3881
3882         * elmo-msgdb.el (elmo-flag-table-get): New function.
3883         (elmo-flag-table-save): Fixed.
3884         (elmo-msgdb-length): New inline function.
3885         (elmo-msgdb-flag-table): New function.
3886         (elmo-msgdb-mark): Add optional argument new.
3887         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3888         (elmo-msgdb-seen-list): Ditto.
3889         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3890
3891
3892 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3893
3894         * elmo.el (elmo-message-set-mark): Abolish.
3895         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3896         (All related portions are changed.)
3897
3898         * elmo-msgdb.el (toplevel): Added comment.
3899         (elmo-load-msgdb): Added 4th element `path'.
3900         (elmo-msgdb-append): Follow the change above.
3901         (elmo-msgdb-clear): Ditto.
3902         (elmo-msgdb-delete-msgs): Ditto.
3903         (elmo-msgdb-get-path): New inline function.
3904         (elmo-msgdb-set-path): Ditto.
3905         (elmo-flag-table-filename): New variable.
3906         (elmo-flag-table-load): New function.
3907         (elmo-flag-table-set): Ditto.
3908         (elmo-flag-table-save): Ditto.
3909         (elmo-msgdb-get-field-value): Abolish.
3910         (elmo-msgdb-overview-get-entity-by-number): Ditto.
3911
3912 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
3913
3914         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3915         the folder has been deleted successfully.
3916         * elmo-imap4.el (elmo-folder-delete): Ditto.
3917         * elmo-archive.el (elmo-folder-delete): Ditto.
3918         * elmo-localdir.el (elmo-folder-delete): Ditto.
3919         * elmo-maildir.el (elmo-folder-delete): Ditto.
3920
3921 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
3922
3923         * elmo-util.el (elmo-string-member-ignore-case): New function.
3924         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
3925         (elmo-imap4-fetch-callback-1-subr): Likewise.
3926
3927 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
3928
3929         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
3930         the case of the name attribute "\Noselect".
3931
3932 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3933
3934         * elmo.el (elmo-folder-rename-internal): New method to cause error.
3935
3936         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
3937         flist, is not always a member of onum-alist.
3938
3939 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3940
3941         * elmo-version.el (elmo-version): Up to 2.11.3.
3942
3943 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3944
3945         * elmo-maildir.el (elmo-folder-rename-internal): New method,
3946         copied from localdir's one.
3947
3948         * elmo-pipe.el (elmo-folder-rename): New method, rename
3949         destination folder with leaving source folder as it is.
3950
3951 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
3952
3953         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
3954         replace-regexp.
3955
3956 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3957
3958         * elmo-version.el (elmo-version): Up to 2.11.2.
3959
3960 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3961
3962         * elmo-shimbun.el (elmo-folder-initialize): Do not call
3963         shimbun-open in case of "@".
3964         (elmo-folder-open-internal): Cope with shimbun = nil case.
3965         (elmo-folder-plugged-p): Ditto.
3966         (elmo-folder-list-subfolders): Make list for "@/" group.
3967
3968 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3969
3970         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
3971         mailbox (e.g. for %~/something).
3972
3973 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3974
3975         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
3976         Replace nested conditional with guard clauses.
3977
3978 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
3979
3980         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
3981         error [wl:11327].
3982
3983         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
3984         print-depth.
3985
3986 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3987
3988         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
3989         Replace nested conditional with guard clauses.
3990
3991 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3992
3993         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
3994         (elmo-passwd-alist-save): Ditto.
3995         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
3996
3997 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3998
3999         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4000         dir-name only if it is absolute path.
4001         (TODO: distinguish +/something and +something)
4002
4003 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4004
4005         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4006         path for "+~/something".
4007
4008 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4009
4010         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4011         as non-directory, cause error before rename-file.
4012         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4013         apropriately, mimic localdir's one.
4014         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4015
4016 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4017
4018         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4019
4020 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4021
4022         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4023
4024         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4025         
4026         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4027         is included in the global-mark or not.
4028
4029 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4030
4031         * utf7.el (toplevel): Avoid error when the function
4032         find-coding-system does not exist.
4033
4034 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4035
4036         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4037         cache even if the folder is plugged.
4038         (elmo-nntp-search-primitive): Do nothing when body search is
4039         invoked (although it is not used by the change above).
4040         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4041
4042 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4043
4044         * elmo-version.el (elmo-version): Up to 2.11.1.
4045
4046 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4047
4048         * elmo-archive.el: Specify charset.
4049
4050 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4051
4052         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4053         process buffer lives or not.
4054
4055         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4056         while flushing queues (It causes infinite loop).
4057
4058 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4059
4060         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4061
4062 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4063
4064         * utf7.el (toplevel): Check the ucs features dynamically.
4065         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4066
4067         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4068         folder is creatabe or not if it already exists.
4069
4070 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4071
4072         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4073
4074         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4075
4076         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4077         (elmo-imap4-read-response): Take care of garbage response.
4078
4079 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4080
4081         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4082         just return nil instead of error.
4083
4084 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4085
4086         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4087         search-key is "body".
4088
4089 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4090
4091         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4092         of elmo-string-matched-assoc to use match-data.
4093         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4094
4095 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4096
4097         * elmo-split.el (elmo-split->): New function.
4098         (elmo-split-<): Ditto.
4099
4100 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4101
4102         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4103         workaround for invalid message-id.
4104
4105 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4106
4107         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4108         return normal pop3 session or pop3 biff session.
4109
4110 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4111
4112         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4113         info part to the cur files when the new files already have it.
4114         (Adviced by Jared Rhine <jared@wordzoo.com>)
4115
4116 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4117
4118         * elmo-split.el (elmo-split-default-action): New variable.
4119         (elmo-split-subr): Use it if all other conditions are passed.
4120         Extend `fname' and rename it as `action'. (implemented
4121         Teranishi-san's idea in [wl:10800])
4122
4123 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4124
4125         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4126         * elmo-util.el: Ditto.
4127
4128 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4129
4130         * elmo.el (elmo-message-accessible-p): Renamed from
4131         elmo-message-cached-p and rewritten.
4132
4133 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4134
4135         * elmo.el (elmo-folder-list-flagged): New generic function.
4136         (elmo-folder-list-importants): New implementation.
4137         (elmo-folder-list-answereds): Ditto.
4138         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4139         Added 'digest'.
4140         (elmo-message-cached-p): New function.
4141         (elmo-message-set-flag): Ditto (no content).
4142         (elmo-message-unset-flag): Ditto.
4143         (elmo-folder-list-messages-mark-match): Abolish.
4144
4145         * elmo-util.el (elmo-regexp-opt): New function.
4146
4147         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4148         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4149         Added 'digest'.
4150         (elmo-msgdb-list-flagged): New function.
4151
4152         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4153         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4154         Added 'digest'.
4155
4156         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4157
4158 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4159
4160         * elmo-version.el (elmo-version): Up to 2.11.0.
4161
4162 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4163
4164         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4165         `elmo-file-cache-exists-p'; use proper mark that depends on
4166         `use-cache'.
4167         (elmo-msgdb-unset-flag): Ditto.
4168         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4169
4170         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4171         with 4th argument `use-cache'.
4172
4173 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4174
4175         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4176         (elmo-folder-mark-as-important): Ditto.
4177         (elmo-folder-unmark-read): Ditto.
4178         (elmo-folder-mark-as-read): Ditto.
4179         (elmo-folder-unmark-answered): Ditto.
4180         (elmo-folder-mark-as-answered): Ditto.
4181
4182         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4183         message status.
4184         (elmo-msgdb-mark): Likewise.
4185         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4186         (elmo-msgdb-unset-flag): Likewise.
4187
4188         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4189
4190 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4191
4192         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4193         `last:' filter.
4194
4195 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4196
4197         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4198         set spool-length to 0.
4199
4200 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4201
4202         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4203         (elmo-dop-queue-flush): Fixed last change.
4204
4205 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4206
4207         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4208         if require-msgdb slot is nil.
4209         (elmo-folder-list-importants): Likewise.
4210
4211 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4212
4213         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4214         mark is changed.
4215
4216         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4217         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4218         is changed.
4219
4220 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4221
4222         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4223
4224 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4225
4226         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4227
4228         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4229
4230 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4231
4232         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4233         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4234
4235 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4236
4237         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4238         the problem reported by Sean Rima [wl-en:180].
4239
4240 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4241
4242         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4243
4244         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4245
4246         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4247
4248         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4249
4250         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4251
4252         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4253
4254         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4255
4256 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4257
4258         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4259         status number.
4260
4261 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4262
4263         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4264         (elmo-folder-mark-as-read): Follow the API change.
4265         (elmo-message-set-cached): New function.
4266
4267         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4268
4269         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4270
4271         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4272         (elmo-folder-mark-as-important): Ditto.
4273         (elmo-folder-unmark-read): Ditto.
4274         (elmo-folder-mark-as-read): Ditto.
4275         (elmo-folder-unmark-answered): Ditto.
4276         (elmo-folder-mark-as-answered): Ditto.
4277
4278         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4279         (elmo-folder-unmark-important): Ditto.
4280         (elmo-folder-mark-as-read): Ditto.
4281         (elmo-folder-unmark-read): Ditto.
4282         (elmo-folder-mark-as-answered): Ditto.
4283         (elmo-folder-unmark-answered): Ditto.
4284
4285         * elmo-mark.el (toplevel): Removed some mark method definitions.
4286
4287         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4288         (elmo-map-folder-mark-as-answered): Ditto.
4289         (elmo-folder-unmark-important): Add :before qualifier.
4290         (elmo-folder-mark-as-important): Ditto.
4291         (elmo-folder-unmark-read): Ditto.
4292         (elmo-folder-mark-as-read): Ditto.
4293         (elmo-folder-unmark-answered): Define.
4294         (elmo-folder-mark-as-answered): Ditto.
4295
4296         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4297         (elmo-map-folder-unmark-answered): Ditto.
4298
4299         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4300
4301         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4302         (elmo-folder-mark-as-important): Ditto.
4303         (elmo-folder-unmark-read): Ditto.
4304         (elmo-folder-mark-as-read): Ditto.
4305         (elmo-folder-unmark-answered): Ditto.
4306         (elmo-folder-mark-as-answered): Ditto.
4307
4308         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4309         `mark'; evaluate mark condition.
4310         (elmo-msgdb-match-condition-internal): New function.
4311         (elmo-msgdb-match-condition): Call it; changed argument.
4312
4313         * elmo.el (elmo-folder-search): Follow the API change on
4314         `elmo-msgdb-match-condition'.
4315
4316 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4317
4318         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4319         original mark is non-nil.
4320
4321 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4322
4323         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4324         (elmo-map-folder-list-answereds): New method.
4325         (elmo-folder-list-unreads): Add :around qualifier.
4326         (elmo-folder-list-importants): Ditto.
4327         (elmo-folder-list-answereds): Ditto.
4328
4329 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4330
4331         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4332
4333         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4334         method if msgdb is not required.
4335         (elmo-filter-folder-list-importants): Don't treat global-mark.
4336
4337         * elmo.el (elmo-folder-list-importants): Ditto.
4338
4339         * elmo-net.el (elmo-folder-list-importants): Ditto.
4340
4341         * elmo-map.el (elmo-folder-list-importants): Ditto.
4342
4343         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4344
4345         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4346         (elmo-imap4-folder-list-any-plugged): New function.
4347         (elmo-imap4-search-internal-primitive): Use it.
4348
4349         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4350         only when require-msgdb slot is non-nil.
4351         (elmo-folder-close): Clear target folder's msgdb.
4352
4353 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4354
4355         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4356         (elmo-pop3-msgdb-create-by-header): Ditto.
4357         (elmo-pop3-msgdb-create-message): Ditto.
4358
4359         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4360
4361         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4362
4363         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4364
4365         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4366         (elmo-folder-msgdb-create): Ditto.
4367         (elmo-nntp-folder-msgdb-create): Ditto.
4368         (elmo-nntp-msgdb-create-by-header): Ditto.
4369         (elmo-nntp-msgdb-create-message): Ditto.
4370         (elmo-folder-list-unreads): Define.
4371
4372         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4373         (elmo-folder-append-messages): Ditto.
4374         (elmo-folder-list-unreads): Define.
4375         (elmo-folder-list-importants): Ditto.
4376         (elmo-folder-list-answereds): Ditto.
4377
4378         * elmo-net.el (elmo-folder-list-unreads): Define.
4379         (elmo-folder-list-importants): Ditto.
4380         (elmo-folder-list-answereds): Ditto.
4381         (elmo-folder-list-answereds-plugged): Ditto.
4382         (elmo-folder-msgdb-create): Follow the API change.
4383         (elmo-folder-msgdb-create-unplugged): Ditto.
4384         (elmo-folder-unmark-answered): Define.
4385         (elmo-folder-mark-as-answered-unplugged): Ditto.
4386         (elmo-folder-unmark-answered-unplugged): Ditto.
4387
4388         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4389         (elmo-msgdb-unread-uncached-mark): Ditto.
4390         (elmo-msgdb-unread-cached-mark): Ditto.
4391         (elmo-msgdb-read-uncached-mark): Ditto.
4392         (elmo-msgdb-answered-cached-mark): Ditto.
4393         (elmo-msgdb-answered-uncached-mark): Ditto.
4394         (elmo-msgdb-important-mark): Ditto.
4395         (elmo-msgdb-set-mark): Rewrite.
4396         (elmo-msgdb-count-marks): Rewrite.
4397         (elmo-msgdb-mark-alist-set): Abolish.
4398         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4399         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4400
4401         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4402         (elmo-folder-close): Define.
4403         (elmo-folder-msgdb-create): Follow the API change.
4404         (elmo-folder-list-unreads): Rewrite.
4405         (elmo-folder-mark-as-important): Ditto.
4406         (elmo-folder-unmark-important): Ditto.
4407         (elmo-folder-mark-as-read): Ditto.
4408         (elmo-folder-unmark-read): Ditto.
4409         (elmo-folder-mark-as-answered): Define.
4410         (elmo-folder-unmark-answered): Ditto.
4411
4412         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4413         (elmo-folder-append-messages): Ditto.
4414
4415         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4416
4417         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4418         (elmo-folder-list-importants): Ditto.
4419
4420         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4421         (elmo-folder-append-messages): Ditto.
4422
4423         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4424         change.
4425         (elmo-folder-msgdb-create-plugged): Ditto.
4426         (elmo-folder-append-messages): Ditto.
4427         (elmo-folder-list-answereds-plugged): Define.
4428         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4429         (elmo-folder-unmark-answered-plugged): Define.
4430         (elmo-folder-mark-as-answered-plugged): Ditto.
4431         (elmo-folder-search-requires-msgdb-p): Ditto.
4432
4433         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4434         (elmo-folder-initialize): Set it.
4435         (elmo-folder-msgdb): Define.
4436         (elmo-folder-check): Call elmo-folder-synchronize.
4437         (elmo-folder-close): Define.
4438         (elmo-folder-commit): Ditto.
4439         (elmo-folder-msgdb-create): Rewrite.
4440         (elmo-folder-list-unreads): Ditto.
4441         (elmo-folder-list-importants): Ditto.
4442         (elmo-folder-mark-as-read): Ditto.
4443         (elmo-folder-unmark-read): Ditto.
4444         (elmo-folder-mark-as-important): Ditto.
4445         (elmo-folder-unmark-important): Ditto.
4446         (elmo-folder-mark-as-answered): Define.
4447         (elmo-folder-unmark-answered): Ditto.
4448
4449         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4450         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4451         (elmo-dop-queue-method-name-alist): Likewise.
4452         (elmo-folder-mark-as-answered-dop): New inline function.
4453         (elmo-folder-unmark-answered-dop): Ditto.
4454         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4455
4456         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4457         (elmo-folder-msgdb-create): Ditto.
4458         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4459         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4460         (elmo-archive-parse-mmdf): Ditto.
4461
4462         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4463         (elmo-folder-list-unreads-internal): Ditto.
4464
4465         * elmo.el (elmo-folder-msgdb): Define as generic function.
4466         (elmo-folder-list-messages): Added argument `in-msgdb'.
4467         (elmo-folder-list-unreads): Define as generic function.
4468         (elmo-folder-list-importants): Ditto.
4469         (elmo-folder-list-answereds): Ditto.
4470         (elmo-folder-list-messages-with-global-mark): New function.
4471         (elmo-folder-msgdb-create): Removed mark arguments.
4472         (elmo-folder-unmark-answered): New generic function.
4473         (elmo-folder-mark-as-answered): Ditto.
4474         (elmo-folder-append-messages): Removed argunment `unread-marks'
4475         (elmo-folder-list-unreads-internal): Abolish.
4476         (elmo-folder-list-importants-internal): Ditto.
4477         (elmo-folder-search-requires-msgdb-p): New generic function.
4478         (elmo-folder-search-requires-msgdb-p-internal): New function.
4479         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4480         elmo-msgdb-load.
4481         (elmo-folder-search-fast): Added key 'mark'.
4482         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4483         instead of unread-marks argument.
4484         (elmo-folder-move-messages): Removed argunment `unread-marks'
4485         (elmo-folder-unmark-important): Define.
4486         (elmo-folder-mark-as-important): Ditto.
4487         (elmo-folder-unmark-read): Ditto.
4488         (elmo-folder-mark-as-read): Ditto.
4489         (elmo-folder-unmark-answered): Ditto.
4490         (elmo-folder-mark-as-answered): Ditto.
4491         (elmo-folder-replace-marks): Abolish.
4492         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4493         duplicates.
4494         (elmo-folder-synchronize): Removed mark arguments;
4495         return crosspost only number.
4496
4497 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4498
4499         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4500         Remove redundunt connectivity check.
4501
4502 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4503
4504         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4505         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4506
4507 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4508
4509         * pldap.el (ldap-decode-string): Return string as-is if
4510         `ldap-coding-system' is nil.
4511         (ldap-encode-string): Ditto.
4512         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4513         (ldap-default-host): Fixed docstring.
4514
4515 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4516
4517         * elmo-util.el (elmo-warning): Define as a macro which uses
4518         `display-warning' if it is defined as a function.
4519
4520         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4521         (elmo-split-equal): Use it.
4522         (elmo-split-match): Ditto.
4523         (elmo-split-message-entity): New buffer-local variable.
4524         (elmo-split-subr): Set it.
4525
4526         * elmo-version.el (elmo-version): Up to 2.9.15.
4527
4528 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4529
4530         * elmo-imap4.el (elmo-network-initialize-session):
4531         Check capability after starttls.
4532
4533 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4534
4535         * elmo-util.el (elmo-list-delete): Added optional argument
4536         DELETE-FUNCTION.
4537
4538         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4539
4540         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4541
4542         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4543
4544         * elmo-imap4.el (elmo-folder-initialize): Don't use
4545         elmo-imap4-default-mailbox.
4546
4547 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4548
4549         * elmo-split.el (toplevel): Use `product-provide'.
4550         (elmo-split): Checkdoc.
4551
4552 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4553
4554         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4555         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4556         the function `elmo-imap4-debug-1'.
4557
4558 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4559
4560         * elmo-split.el (elmo-split): Moved to run hooks and to show
4561         message from elmo-split-subr.
4562         (elmo-split-subr): Follow the change above.
4563
4564         * elmo-split.el (elmo-split-subr): New function (renamed from
4565         elmo-split-subr).
4566         (elmo-split): Changed to call elmo-split-subr by element of
4567         elmo-split-folder.
4568         (elmo-split-folder): Changed customization type to choice.
4569
4570 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4571
4572         * elmo-split.el (elmo-split-and): Fixed condition.
4573
4574 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4575
4576         * elmo-split.el: New file.
4577         (elmo-split): Fixed logic.
4578         Display "Test:" instead of "Folder:" when reharsal.
4579
4580         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4581         explicitly.
4582
4583         * elmo-version.el (elmo-version): Up to 2.9.14.
4584
4585         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4586         wl-expand-newtext).
4587
4588 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4589
4590         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4591         message with no message-id field.
4592
4593 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4594
4595         * elmo-version.el (elmo-version): Up to 2.9.13.
4596
4597         * elmo-dop.el (elmo-folder-status-dop): Fix.
4598
4599 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4600
4601         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4602
4603         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4604         changing default value of default-mime-charset.
4605         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4606
4607         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4608
4609         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4610         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4611         instead of elmo-dop-queue-method-name-alist to check merging queue.
4612         (elmo-folder-delete-messages-dop): Delete from queue if negative
4613         message number.
4614         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4615         file is already removed.
4616
4617 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4618
4619         * elmo-vars.el: Bind colon keywords for old Emacsen.
4620
4621 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4622
4623         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4624         against non-exsisting charset.
4625
4626 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4627
4628         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4629         Use eword-decode-and-unfold-unstructured-field-body.
4630
4631         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4632         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4633         exists to decode raw subject string.
4634         (toplevel): Require 'mime.
4635
4636         * elmo-version.el (elmo-version): Up to 2.9.12.
4637
4638 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4639
4640         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4641         (elmo-msgdb-set-mark): Ditto.
4642
4643         * elmo-version.el (elmo-version): Up to 2.9.11.
4644
4645 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4646
4647         * elmo-util.el (elmo-delete-match-files): New function.
4648
4649         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4650         instead of elmo-delete-directory.
4651
4652         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4653         elmo-hash-minimun-size as 63.
4654
4655         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4656         elmo-diff-unread is nil.
4657
4658         * elmo-imap4.el (elmo-folder-open): Fix.
4659
4660         * elmo.el (elmo-message-mark): Rewrite.
4661         (elmo-message-field): Ditto.
4662         (elmo-message-set-mark): Ditto.
4663         (elmo-folder-replace-marks): New function.
4664         (elmo-generic-folder-append-msgdb): Removed third argument for
4665         elmo-msgdb-append.
4666         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4667         (elmo-msgdb-load): New implementation.
4668
4669         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4670
4671         * elmo-util.el (elmo-list-insert): New implementation.
4672
4673         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4674         argument for elmo-msgdb-append.
4675         
4676
4677         * elmo-msgdb.el (elmo-load-msgdb): New function.
4678         (elmo-make-msgdb): Ditto.
4679         (elmo-msgdb-get-index): New inline function.
4680         (elmo-msgdb-set-index): Ditto.
4681         (elmo-msgdb-get-entity-hashtb): Ditto.
4682         (elmo-msgdb-get-mark-hashtb): Ditto.
4683         (elmo-msgdb-get-mark): Ditto.
4684         (elmo-msgdb-set-mark): Ditto.
4685         (elmo-msgdb-count-marks): Ditto.
4686         (elmo-msgdb-get-number): Ditto.
4687         (elmo-msgdb-get-field): Ditto.
4688         (elmo-msgdb-seen-list): Ditto.
4689         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4690         (elmo-msgdb-delete-msgs): Follow the changes above.
4691         (elmo-msgdb-overview-get-entity): Ditto.
4692         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4693         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4694         and rewritten.
4695         (elmo-msgdb-make-index): Likewise.
4696         (elmo-msgdb-append): Removed third argument.
4697         (elmo-msgdb-clear): Clear index as nil.
4698         (elmo-folder-set-info-hashtb): Removed.
4699         (elmo-folder-set-info-max-by-numdb): Ditto.
4700         (elmo-folder-info-make-hashtb): Ditto.
4701
4702         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4703
4704         * elmo-map.el (elmo-folder-pack-number): Ditto.
4705
4706 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4707
4708         * elmo-version.el (elmo-version): Up to 2.9.10.
4709
4710         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4711
4712         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4713
4714 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4715
4716         * elmo-utils.el (elmo-make-directory): Add option.
4717         Default file mode is 700.
4718
4719 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4720
4721         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4722
4723 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4724
4725         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4726         mime-charset.
4727
4728         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4729         and "smaller".
4730
4731 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4732
4733         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4734         (elmo-shimbun-folder-entity-hash): New function.
4735         (elmo-shimbun-folder-shimbun-header): Ditto.
4736         (elmo-shimbun-entity-to-header): Ditto.
4737         (elmo-shimbun-msgdb-to-headers): Removed.
4738         (elmo-shimbun-folder-setup): Ditto.
4739         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4740         for hash key.
4741         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4742         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4743         Removed useless local bind.
4744         (elmo-folder-open-internal): Don't call
4745         `elmo-shimbun-folder-setup'.
4746         (elmo-folder-close-internal): Clear entity-hash slot.
4747         (elmo-folder-clear): Ditto.
4748         (elmo-shimbun-msgdb-create-entity): Use
4749         `elmo-shimbun-folder-shimbun-header'.
4750         (elmo-map-message-fetch): Ditto.
4751         (elmo-shimbun-update-overview): Use overview entity instead of
4752         shimbun header to lookup id by references.
4753         (elmo-map-folder-list-message-locations): Use not only headers but
4754         also overviews to list locations.
4755
4756 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4757
4758         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4759         msgdb path.
4760
4761         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4762
4763 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4764
4765         * elmo-util.el (elmo-read-search-condition-internal): Give default
4766         value for date.
4767
4768 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4769
4770         * elmo-util.el (elmo-condition-parse-search-value): Accept
4771         YYYY-MM-DD format to search.
4772         * elmo-date.el (elmo-date-get-datevec): Likewise.
4773
4774 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4775
4776         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4777         debugging code.
4778
4779 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4780
4781         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4782         from t.
4783
4784         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4785
4786         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4787         case from `elmo-folder-exists-p'.
4788         (elmo-folder-exists-p): Removed.
4789         (elmo-folder-creatable-p) Ditto.
4790
4791         * elmo-net.el (elmo-folder-create): Defined.
4792         (elmo-folder-create-unplugged): New function.
4793         (elmo-folder-exists-p): Changed default value to nil from t.
4794
4795         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4796         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4797
4798         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4799         `elmo-create-folder-dop' and append queue
4800         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4801         (elmo-folder-create-dop-delayed): New function.
4802
4803         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4804
4805         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4806
4807         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4808         (elmo-folder-writable-p) : Ditto.
4809
4810         * elmo-version.el (elmo-version): Up to 2.9.9.
4811
4812 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4813
4814         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4815         `elmo-message-use-cache-p' returns nil.
4816         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4817         (ignore cache file and refer the substance in local folders)
4818
4819 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4820
4821         * elmo-version.el (elmo-version): Up to 2.9.8.
4822
4823 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4824
4825         * elmo-version.el (elmo-version): Up to 2.9.7.
4826
4827         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4828
4829 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4830
4831         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4832
4833 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4834
4835         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4836         from --early.
4837         (elmo-map-folder-list-message-locations): Reverse location list.
4838
4839 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4840
4841         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4842
4843 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4844
4845         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4846         as a key.
4847         (elmo-nntp-folder-list-subfolders): Follow the change above.
4848
4849 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4850
4851         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4852         name if authentication type is specified.
4853
4854 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4855
4856         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4857         variable.
4858         (elmo-default-nntp-stream-type): Ditto.
4859         (elmo-default-pop3-stream-type): Ditto.
4860
4861 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4862
4863         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4864
4865 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4866
4867         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4868         elmo-vars.el.
4869         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4870
4871         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4872         (elmo-maildir-folder-path): Ditto.
4873         (elmo-maildir-list): Ditto (abolished).
4874
4875 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4876
4877         * elmo-version.el (elmo-version): Up to 2.9.6.
4878
4879 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4880
4881         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4882         (elmo-maildir-folder-path): Ditto.
4883         (elmo-msgdb-directory): Ditto.
4884         (elmo-passwd-life-time): Ditto.
4885         (elmo-msgdb-extra-fields): Ditto.
4886         (elmo-enable-disconnected-operation): Ditto.
4887
4888 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4889
4890         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4891         other choices.
4892         (elmo-pop3-default-authenticate-type): Ditto.
4893
4894 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4895
4896         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4897         choices for custom.
4898         (elmo-pop3-default-authenticate-type): Ditto.
4899
4900 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4901
4902         * elmo-imap4.el (elmo-folder-rename-internal): Change current
4903         mailbox to new-folder.
4904
4905 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
4906
4907         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4908         less than new, set new as unread.
4909
4910         * elmo-util.el (elmo-string): Don't put text-property if nil.
4911
4912 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4913
4914         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4915         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4916
4917 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4918
4919         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4920         is nil on `completing-read'.
4921
4922 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
4923
4924         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
4925         for namespace part.
4926         (elmo-imap4-parse-namespace-subr): Ditto.
4927         (elmo-folder-list-subfolders): Append a delimiter when the specified
4928         folder path is a root with namespace and does not end with delimiter.
4929
4930 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4931
4932         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
4933         was used.
4934
4935 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4936
4937         * elmo-util.el (elmo-save-buffer): The first argument of message
4938         is a format control string.
4939
4940 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4941
4942         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
4943         `elmo-folder-diff').
4944         (elmo-diff-unread): Likewise.
4945
4946 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4947
4948         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4949         is t on `completing-read'.
4950
4951 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4952
4953         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
4954         method of target folder with self mark-alist if MARK-ALIST is nil.
4955
4956 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
4957
4958         * elmo-version.el (elmo-version): Up to 2.9.5.
4959
4960 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
4961
4962         * elmo-dop.el (elmo-dop-queue-merge): Implement.
4963         (elmo-dop-merge-funcs): Remove.
4964
4965 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4966
4967         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
4968         Return t if PATH is directory, too.
4969         Use `dolist' instead of while loop.
4970
4971 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4972
4973         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
4974         is deleted.
4975
4976 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4977
4978         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
4979         return value to t.
4980         (elmo-folder-list-messages-unplugged): Return t if
4981         elmo-enable-disconnected-operation is nil.
4982
4983         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
4984         `elmo-folder-list-messages-internal'.
4985
4986 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
4987
4988         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
4989         Change to looking-at `[23][0-9]+'.
4990         (elmo-network-initialize-session): Use 'error-msg'
4991         * elmo-net.el (elmo-network-open-session): Set unplugged
4992         if elmo-network-initialize-session returns 'elmo-open-err.
4993
4994 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
4995
4996         * elmo-version.el (elmo-version): Up to 2.9.4.
4997
4998 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
4999
5000         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5001         `elmo-folder-list-messages-internal'.
5002
5003 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5004
5005         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5006         (elmo-message-match-condition): New method.
5007         (elmo-folder-search-fast): New inline function.
5008         (elmo-msgdb-search): Removed.
5009
5010         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5011         target folder if it is unplugged.
5012         (elmo-folder-list-messages-internal): Return t if target folder is
5013         unplugged and itself is persistent; In this case, use list be
5014         searched already.
5015
5016         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5017         (elmo-msgdb-search-internal-primitive): Ditto.
5018         (elmo-msgdb-match-condition): New function.
5019         (elmo-msgdb-match-condition-primitive): Ditto.
5020
5021         * elmo-util.el (elmo-filter-condition-p): New macro.
5022
5023         * elmo-cache.el (elmo-folder-search): Removed.
5024
5025         * elmo-localdir.el (elmo-folder-search): Ditto.
5026
5027         * elmo-maildir.el (elmo-folder-search): Ditto.
5028
5029         * elmo-mark.el (elmo-folder-search): Ditto.
5030
5031         * elmo-nmz.el (elmo-folder-search): Ditto.
5032
5033         * elmo-sendlog.el (elmo-folder-search): Ditto.
5034
5035         * elmo-shimbun.el (elmo-folder-search): Ditto.
5036
5037         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5038         if folder is unplugged.
5039
5040         * elmo-nntp.el (elmo-folder-search): Likewise.
5041         (elmo-nntp-search-internal): New function.
5042
5043         * elmo-version.el (elmo-version): Up to 2.9.3.
5044
5045 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5046
5047         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5048
5049 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5050
5051         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5052
5053 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5054
5055         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5056
5057 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5058
5059         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5060         (elmo-map-folder-list-message-locations): Do drive letter conversion
5061         on Windows environment.
5062         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5063         (elmo-map-message-fetch): Ditto.
5064
5065 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5066
5067         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5068         (elmo-network-initialize-session): Ditto.
5069
5070 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5071
5072         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5073
5074         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5075
5076         * elmo-util.el (elmo-progress-clear): Ditto.
5077
5078         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5079         `DD-Mon-YYYY' type date.
5080
5081 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5082
5083         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5084         `elmo-date-make-sortable-string' instead of
5085         `timezone-make-date-sortable'.
5086
5087         * elmo-date.el (elmo-date-make-sortable-string): Use
5088         `timezone-make-time-string'.
5089
5090 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5091
5092         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5093
5094         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5095         `since'; Fix timezone.
5096
5097         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5098
5099         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5100
5101 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5102
5103         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5104
5105 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5106
5107         * elmo.el (elmo-generic-folder-append-messages): Make
5108         fetch-strategy with `use-cache' as 'maybe. Check return value of
5109         `elmo-message-fetch'.
5110         (elmo-message-fetch): Return return value of
5111         `elmo-message-fetch-with-cache-process'.
5112         (elmo-message-fetch-with-cache-process): Return non-nil if
5113         fetching was succeed. Load cache when fetching was failed and
5114         fetch-strategy-use-cache is 'maybe.
5115
5116         * elmo-util.el (elmo-file-cache-load): New function.
5117
5118         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5119         defun.
5120
5121         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5122         non-nil if fetching was succeed.
5123
5124         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5125
5126         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5127
5128         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5129         (elmo-message-fetch-with-cache-process): Likwise.
5130
5131         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5132
5133         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5134
5135         * elmo-version.el (elmo-version): Up to 2.9.2.
5136
5137 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5138
5139         * elmo.el (elmo-folder-delete): Delete msgdb path.
5140
5141         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5142
5143         * elmo-maildir.el (elmo-folder-delete): Ditto.
5144
5145         * elmo-localdir.el (elmo-folder-delete): Ditto.
5146
5147         * elmo-imap4.el (elmo-folder-delete): Ditto.
5148
5149 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5150
5151         * elmo.el (luna-define-class): Added `biff' slot.
5152
5153         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5154         (elmo-pop3-debug-inhibit-logging): Abolished.
5155         (elmo-network-close-session): Eliminated needless let.
5156         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5157         (elmo-pop3-send-command): Added `no-log' argument.
5158         (elmo-pop3-process-filter): Use `with-current-buffer'.
5159         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5160         if login failure.
5161         (elmo-pop3-auth-apop): Likewise.
5162         (elmo-network-authenticate-session): Likewise.
5163
5164         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5165         if biff folder.
5166
5167         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5168         string to determine protocol.
5169         (elmo-network-session-name-prefix): Abolished.
5170         (elmo-network-session-cache-key): Follow the change above.
5171         (elmo-network-open-session): Ditto.
5172
5173         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5174         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5175
5176         * elmo-version.el (elmo-version): Up to 2.9.1.
5177
5178         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5179         unmatch condition checking.
5180
5181         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5182         condition.
5183
5184 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5185
5186         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5187
5188 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5189
5190         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5191         test for while loop to execute at least one SEARCH command.
5192
5193 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5194
5195         * elmo-version.el (elmo-version): Up to 2.9.0.
5196
5197 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5198
5199         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5200         (elmo-archive-folder-path): Define.
5201         (elmo-folder-initialize): Setup `dir-name' slot.
5202         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5203         Use `dir-name' as prefix of each subfolders.
5204         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5205
5206 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5207
5208         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5209         (elmo-pipe-folder-list-target-messages): New internal function.
5210         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5211         `killed-list'.
5212         (elmo-pipe-folder-copied-list-load): New function.
5213         (elmo-pipe-folder-copied-list-save): Ditto.
5214         (elmo-folder-open-internal): Follow the change above.
5215         (elmo-folder-status): Fixed for copy.
5216
5217 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5218
5219         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5220
5221 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5222
5223         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5224         elmo-copy-file instead of elmo-add-name-to-file.
5225
5226         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5227
5228         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5229         "file://..." index.
5230
5231         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5232         of accept-process-output as 1.
5233         (elmo-pop3-read-contents): Ditto.
5234         (elmo-pop3-read-body): Ditto.
5235
5236 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5237
5238         * elmo-version.el (product-version-as-string): Remove define.
5239
5240 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5241
5242         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5243         (elmo-imap4-copy-messages): Chop number set using
5244         `elmo-imap4-number-set-chop-length'.
5245         (elmo-imap4-set-flag): Ditto.
5246         (elmo-imap4-search-internal-primitive): Ditto.
5247
5248 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5249
5250         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5251         `elmo-folder-make-temp-dir'
5252
5253         * elmo-vars.el (elmo-cache-directory): New variable.
5254         (elmo-cache-dir): Abolished.
5255         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5256
5257         * elmo-version.el (elmo-version): Up to 2.7.7.
5258
5259 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5260
5261         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5262         defcustom; Set default value as t.
5263
5264 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5265
5266         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5267         (ldap-search-program-arguments): Changed default value.
5268         (ldap-search-basic): Accept exit status 4.
5269         (ldap/field-body): Parse options.
5270         (ldap/collect-field): Ditto.
5271         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5272
5273         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5274         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5275         (elmo-imap4-accept-ok): Ditto.
5276         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5277         'notify-bye, only BYE error is reported.
5278         (elmo-folder-exists-p-plugged): Set no-error argument of
5279         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5280
5281         * elmo.el (elmo-imap4-bye-error): Changed message.
5282
5283         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5284         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5285         queues (It causes infinite loop).
5286
5287 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5288
5289         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5290         (RECENT UNSEEN MESSAGES) extension.
5291
5292 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5293
5294         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5295         Check number of overview fields.
5296
5297 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5298
5299         * elmo.el (elmo-folder-confirm-appends): Changed message.
5300         (elmo-folder-confirm-appends): Ditto.
5301
5302         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5303         `with-temp-buffer'.
5304         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5305
5306 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5307
5308         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5309         of elmo-folder-update-threshold is nil, which can be set by
5310         wl-summary-update-confirm-threshold.
5311
5312 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5313
5314         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5315         (elmo-nmz-index-alias-alist): Ditto.
5316         (elmo-map-folder-list-message-locations): Follow the change above.
5317
5318 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5319
5320         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5321
5322         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5323
5324         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5325
5326         * elmo-util.el (elmo-read): Ditto.
5327         (elmo-display-error): Ditto.
5328
5329         * elmo-vars.el (elmo-date-match): Ditto.
5330
5331         * pldap.el (ldap-coding-system): Ditto.
5332
5333         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5334         `elmo-inhibit-number-mapping' as nil.
5335
5336 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5337
5338         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5339         space delimiter for list response.
5340
5341 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5342
5343         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5344
5345 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5346
5347         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5348         (elmo-map-message-fetch): Fix.
5349         * elmo-map.el (elmo-folder-status): Fix for killed.
5350
5351 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5352
5353         * elmo-sendlog.el: New file.
5354         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5355
5356 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5357
5358         * acap.el (acap-logging-out): New buffer local variable.
5359         (acap-close): Set it.
5360         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5361         an error.
5362
5363 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5364
5365         * acap.el (acap-response-bye-p): New function.
5366         (acap-response-bye-message): Ditto.
5367         (acap-wait-for-response): If bye response is received, cause an error.
5368         (acap-parse-response): Make bye response when 'Bye' is received.
5369
5370 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5371
5372         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5373
5374 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5375
5376         * elmo-util.el (elmo-copy-file): Added argument
5377         `ok-if-already-exists'.
5378         (elmo-copy-file): Fixed typo.
5379
5380 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5381
5382         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5383
5384 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5385
5386         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5387
5388 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5389
5390         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5391         to killed-list.
5392
5393 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5394
5395         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5396         (elmo-folder-initialize): Fix for `copy'.
5397         (elmo-pipe-drain): Ditto.
5398         (elmo-folder-open-internal): Ditto.
5399         (elmo-folder-newsgroups): Fix.
5400
5401 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5402
5403         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5404         for each message.
5405
5406         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5407         recent value is returned from imap folder.
5408
5409         * elmo.el (elmo-folder-newsgroups): New generic function.
5410
5411         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5412         (elmo-folder-initialize): Set it.
5413         (elmo-folder-expand-msgdb-path): Use it.
5414         (elmo-folder-newsgroups): Define.
5415
5416         * elmo-filter.el (elmo-folder-newsgroups): Define.
5417
5418         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5419
5420         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5421
5422         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5423
5424 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5425
5426         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5427         user option.
5428         (elmo-shimbun-header-extra-field): New inline function.
5429         (elmo-shimbun-header-set-extra-field): Ditto.
5430         (elmo-shimbun-folder-header-hash-setup): Ditto.
5431         (elmo-shimbun-update-overview): Ditto.
5432         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5433         (elmo-shimbun-folder-setup): Use
5434         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5435         (elmo-shimbun-get-headers): Ditto.
5436         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5437         Insert `X-Shimbun-Id:' header if extra field is set.
5438         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5439         field's value instead of `shimbun-header-id'.
5440
5441         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5442         inline function.
5443         (elmo-msgdb-overview-entity-set-date): Ditto.
5444         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5445
5446 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5447
5448         * mmimap.el (mmimap-entity-section): Changed body node number from
5449         "0" to "1".
5450
5451 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5452
5453         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5454         `elmo-folder-delete-messages'.
5455
5456         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5457         (elmo-folder-initialize): Changed to expand alias into index path.
5458
5459         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5460         `elmo-mime-insert-header-from-buffer' with 6th arg
5461         `sorted-fields'.
5462
5463 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5464
5465         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5466
5467         * elmo.el (elmo-diff-new): New inline function.
5468         (elmo-diff-unread): Ditto.
5469         (elmo-diff-all): Ditto.
5470
5471         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5472         value from responseb.
5473         (elmo-imap4-folder-diff-plugged): Ditto.
5474         (elmo-imap4-server-diff-async): Added recent argument.
5475         (elmo-server-diff-async): Ditto.
5476         (elmo-imap4-folder-diff-plugged): Ditto.
5477
5478         * elmo-version.el (elmo-version): Up to 2.7.6.
5479
5480 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5481
5482         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5483         in quoted-stirng.
5484
5485 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5486
5487         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5488
5489         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5490
5491         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5492
5493         * elmo-multi.el (elmo-folder-initialize): Ditto.
5494
5495         * elmo-util.el (elmo-parse-token): New function.
5496         (elmo-parse-prefixed-element): Ditto.
5497
5498 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5499
5500         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5501         delete process.
5502         (elmo-imap4-accept-ok): Ditto.
5503
5504 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5505
5506         * mmimap.el (mime-imap-entity-header-string): Don't check first
5507         element of node-id is `0' (Follow last change).
5508
5509 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5510
5511         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5512         assigned irregular node-id to nested multipart section.
5513         (initialize-instance): Followed above change.
5514
5515 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5516
5517         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5518         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5519         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5520         `elmo-shimbun-get-headers');
5521         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5522         visible article on summary exists in headers).
5523         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5524
5525 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5526
5527         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5528         definition.
5529
5530 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5531
5532         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5533
5534 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5535
5536         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5537         header separator into loop condition.
5538
5539 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5540
5541         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5542         Return duplicate folder if it has subfolder.
5543
5544 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5545
5546         * elmo.el (elmo-make-folder): Add folder name error check.
5547
5548         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5549         (elmo-nntp-encode-group-string): New inline function.
5550         (elmo-nntp-decode-group-string): Ditto.
5551         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5552         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5553         Use `not' instead of `null';
5554         Use elmo-nntp-decode-group-string.
5555
5556         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5557
5558         * elmo-version.el (elmo-version): Up to 2.7.5.
5559
5560 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5561
5562         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5563         Hide progress gauge if `elmo-folder-move-messages' exits
5564         nonlocally.
5565
5566 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5567
5568         * elmo-imap4.el (elmo-folder-initialize): Use
5569         `elmo-imap4-encode-folder-string' for folder name.
5570
5571 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5572
5573         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5574         `done'.
5575
5576 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5577
5578         * elmo-util.el (elmo-progress-counter-alist): New internal
5579         variable.
5580         (elmo-progress-counter-value): New macro.
5581         (elmo-progress-counter-all-value): Ditto.
5582         (elmo-progress-counter-format): Ditto.
5583         (elmo-progress-counter-set-value): Ditto.
5584         (elmo-progress-set): New function.
5585         (elmo-progress-clear): Ditto.
5586         (elmo-progress-notify): Ditto.
5587
5588         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5589         counter.
5590
5591         * elmo.el (elmo-generic-folder-append-messages): Call
5592         `elmo-progress-notify'.
5593         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5594
5595         * elmo-archive.el (elmo-folder-append-messages): Call
5596         `elmo-progress-notify'.
5597
5598         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5599
5600         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5601
5602         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5603
5604 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5605
5606         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5607         'Create'.
5608         (elmo-message-encache-dop): Added argument `read'.
5609
5610         * elmo-shimbun.el (elmo-message-encache): Ditto.
5611
5612         * elmo-net.el (elmo-message-encache): Ditto.
5613
5614         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5615         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5616         elmo-imap4-seen-messages.
5617         (elmo-folder-msgdb-create-plugged): Initialize
5618         elmo-imap4-seen-messages;
5619         Set seen mark on elmo-imap4-seen-messages.
5620
5621         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5622
5623         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5624         elmo-folder-append-buffer.
5625         (elmo-folder-encache): Added optional argument `read'.
5626         (elmo-message-encache): Ditto.
5627
5628         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5629
5630         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5631
5632         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5633         if append buffer content succeds.
5634
5635 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5636
5637         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5638         elmo-display-progress.
5639
5640         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5641         Set 4th argument of mime-display-message.
5642         (elmo-mime-display-as-is): Ditto.
5643
5644 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5645
5646         * elmo-nmz.el (toplevel): Require 'mime-edit.
5647         (elmo-nmz-content-type-alist): Abolished.
5648         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5649         content is not a message.
5650         (elmo-map-message-fetch): Changed behavior exept for message content;
5651         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5652         content-type, Add From: and Subject: field.
5653
5654 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5655
5656         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5657         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5658         not a message.
5659
5660 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5661
5662         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5663         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5664
5665         * elmo-archive.el (elmo-folder-writable-p): Defined.
5666
5667         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5668
5669         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5670
5671         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5672
5673         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5674
5675         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5676
5677         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5678
5679         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5680
5681         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5682
5683 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5684
5685         * elmo-util.el (elmo-address-quote-specials): New function;
5686         Renamed from `wl-address-quote-specials'.
5687
5688 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5689
5690         * elmo-version.el (elmo-version): Up to 2.7.4.
5691
5692 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5693
5694         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5695
5696 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5697
5698         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5699         both compile-time and run-time to avoid byte-compile warning.
5700
5701 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5702
5703         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5704
5705 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5706
5707         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5708         option.
5709         (elmo-mime-display-as-is-internal): Use it.
5710
5711         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5712         if `read-passwd' is not defined.
5713
5714 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5715
5716         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5717         by original number.
5718         (elmo-folder-status): Call `elmo-folder-open-internal';
5719         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5720         (elmo-folder-close-internal): Set location-alist as nil.
5721         (elmo-folder-clear): Define.
5722         (elmo-folder-check): Don't set location-alist as nil.
5723
5724         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5725
5726 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5727
5728         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5729         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5730
5731         * mmimap.el (mime-imap-entity::requested): New slot.
5732         (mime-imap-location-fetch-entity-p): New generic function.
5733         (mime-decode-parameters): Define using `defun-maybe'.
5734         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5735         content-type structure.
5736         (mime-entity-body): Return empty body if
5737         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5738
5739         * elmo.el (elmo-message-displaying): New variable.
5740
5741         * elmo-mime.el (elmo-mime-message-display): Bind
5742         elmo-message-displaying as t.
5743
5744         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5745
5746 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5747
5748         * acap.el (acap-open): erase buffer before starting network process.
5749         (acap-store): Rewrite.
5750
5751 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5752
5753         * elmo-imap4.el (elmo-imap4-default-mailbox,
5754         elmo-imap4-default-server
5755         elmo-imap4-default-authenticate-type,
5756         elmo-imap4-default-user,
5757         elmo-imap4-default-port,
5758         elmo-imap4-default-stream-type,
5759         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5760
5761         * elmo-pop3.el (elmo-pop3-default-user,
5762         elmo-pop3-default-server,
5763         elmo-pop3-default-authenticate-type,
5764         elmo-pop3-default-port,
5765         elmo-pop3-default-stream-type,
5766         elmo-pop3-stream-type-alist): Ditto.
5767
5768         * elmo-nntp.el (elmo-nntp-default-server,
5769         elmo-nntp-default-user,
5770         elmo-nntp-default-port,
5771         elmo-nntp-default-stream-type,
5772         elmo-nntp-stream-type-alist): Ditto.
5773
5774         * elmo-vars.el: Follow changes above.
5775         (elmo-setting): New custom group; added 'elmo-setting group to
5776         above variables.
5777
5778         * elmo-version.el (elmo-version): Up to 2.7.3.
5779
5780         * acap.el (acap-parse-response): Don't delete process when BYE
5781         response (It causes hang-up on slow network environment).
5782         (toplevel): Added comment.
5783
5784 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5785
5786         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5787
5788         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5789         parsing NIL.
5790         (acap-parse-return-metadata): Ditto.
5791
5792         * slp.el: New file.
5793         (toplevel): Fixed typo.
5794
5795         * acap.el: New file.
5796         (acap-network-stream-open): Show "Connecting..." message.
5797         (acap-parse-response): Fixed problem for BYE untagged response.
5798         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5799         (toplevel): Added tiny comments.
5800
5801 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5802
5803         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5804         space delimiter for uidl response.
5805
5806 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5807
5808         * elmo-vars.el (elmo-use-semi): Eliminated.
5809
5810         * elmo-util.el (elmo-string-assoc-all): New function.
5811
5812 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5813
5814         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5815         property 'mime-preview-situation for `mime-preview-quit'.
5816
5817 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5818
5819         * elmo.el (elmo-message-fetch-with-cache-process): Call
5820         elmo-message-fetch-internal instead of causing an error when fetch
5821         strategy is 'entire but only 'section cache is available.
5822
5823 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5824
5825         * elmo-version.el (elmo-version): Up to 2.7.2.
5826
5827         * elmo.el (elmo-generic-folder-append-messages): Make
5828         fetch-strategy with `use-cache'.
5829
5830         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5831         (elmo-dop-queue-method-name): New macro.
5832
5833 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5834
5835         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5836         unbalanced parenthesis.
5837
5838 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5839
5840         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5841
5842 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5843
5844         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5845         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5846
5847 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5848
5849         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5850         local variables.
5851
5852 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5853
5854         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5855         (elmo-message-use-cache-p): Define.
5856         (elmo-folder-msgdb-create): Treat cache.
5857
5858 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5859
5860         * elmo-nntp.el (elmo-network-initialize-session): Call
5861         `elmo-nntp-send-mode-reader'.
5862         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5863
5864 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5865
5866         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5867         alist.
5868         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5869         assoc.
5870
5871         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5872         for `elmo-plugged-p'.
5873         (elmo-open-network-stream): Fixed stream-type argument.
5874
5875 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5876
5877         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5878         unknown archive type is specified.
5879
5880 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5881
5882         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5883
5884         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5885         while loading msgdb.
5886
5887         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5888         (elmo-folder-open-internal): Rewrite.
5889
5890 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5891
5892         * elmo-mime.el (elmo-mime-display-as-is-internal):
5893         Adjust buffer-multibyte status.
5894
5895 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5896
5897         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5898         of elmo-condition-find-key.
5899
5900         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5901         (elmo-condition-in-msgdb-p): Ditto.
5902         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5903         argument.
5904
5905 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5906
5907         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5908
5909 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
5910
5911         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5912         label for elmo-display-progress.
5913
5914 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
5915
5916         * elmo.el (elmo-folder-clear): New method.
5917         (elmo-folder-clear): Define.
5918         (elmo-folder-synchronize): Call `elmo-folder-clear'.
5919
5920         * elmo-shimbun.el (elmo-folder-check): Rewrite.
5921         (elmo-folder-clear): Define.
5922
5923         * elmo-map.el (elmo-folder-clear): Define.
5924
5925         * elmo-version.el (elmo-version): Up to 2.7.1.
5926
5927 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
5928
5929         * elmo.el (elmo-folder-synchronize): Return list of nil when no
5930         updates.
5931
5932 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
5933
5934         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
5935         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
5936
5937 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
5938
5939         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
5940
5941         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
5942         and re-written.
5943
5944         * elmo-imap4.el (elmo-folder-initialize): Use
5945         elmo-get-network-stream-type.
5946
5947         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5948
5949         * elmo-pop3.el (elmo-folder-initialize): Ditto.
5950
5951 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
5952
5953         * elmo.el (elmo-message-encache): Set unread argument for
5954         elmo-message-fetch.
5955
5956         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
5957
5958         * elmo.el (elmo-net-port-info): New method.
5959
5960         * elmo-shimbun.el (elmo-net-port-info): Define.
5961         (elmo-message-encache): Ditto.
5962
5963         * elmo-net.el (elmo-net-port-info): Define as method.
5964
5965         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
5966         unplugged status when elmo-enable-disconnected-operation is t.
5967
5968         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
5969         of spool folder before checking new number.
5970
5971 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
5972
5973         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
5974         (elmo-network-setup-session): Ditto.
5975         (elmo-message-fetch-plugged): Ditto.
5976         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
5977         (elmo-network-initialize-session): Ditto.
5978         (elmo-pop3-read-response): Abolish 3rd argument.
5979         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
5980         (elmo-pop3-read-contents): Ditto.
5981         (elmo-pop3-read-body): Ditto.
5982         (elmo-folder-status): Call elmo-folder-close.
5983         (elmo-pop3-lock): Abolish.
5984         (elmo-pop3-unlock): Ditto.
5985         (elmo-pop3-locked-p): Ditto.
5986         (elmo-folder-check): Don't call elmo-pop3-locked-p.
5987
5988 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
5989
5990         * elmo-version.el (elmo-version): Up to 2.7.0.
5991
5992         * elmo-pop3.el (elmo-pop3-debug): New variable.
5993         (elmo-pop3-debug-inhibit-logging): Ditto.
5994         (elmo-pop3-debug): New function.
5995         (elmo-pop3-send-command): Call elmo-pop3-debug.
5996         (elmo-pop3-read-response): Added keep-lock optional argument;
5997         Don't unlock if keep-lock is non-nil.
5998         (elmo-pop3-process-filter): Call elmo-pop3-debug.
5999         (elmo-network-authenticate-session): Bind
6000         elmo-pop3-debug-inhibit-logging as t.
6001         (elmo-network-setup-session): Call elmo-pop3-read-response with
6002         keep-lock argument.
6003         (elmo-pop3-read-msg): Ditto.
6004         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6005         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6006         (elmo-network-initialize-session): Call elmo-pop3-lock.
6007         (elmo-folder-close-internal): Don't clear location-alist slot.
6008         (elmo-folder-check): Clear location-alist slot.
6009
6010 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6011
6012         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6013         (elmo-pop3-send-command): Call elmo-pop3-lock.
6014         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6015         (elmo-pop3-read-contents): Ditto.
6016         (elmo-pop3-lock): New function.
6017         (elmo-pop3-unlock): Ditto.
6018         (elmo-pop3-locked-p): Ditto.
6019         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6020         returns t.
6021
6022 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6023
6024         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6025
6026         * elmo-util.el (elmo-file-field-primitive-condition-match):
6027         New inline function (Don't fetch file content if "first" or "last").
6028         (elmo-file-field-condition-match): Use
6029         elmo-file-field-primitive-condition-match.
6030
6031         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6032         "first".
6033
6034         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6035         (elmo-message-fetch-plugged): Fixed.
6036
6037         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6038
6039 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6040
6041         * elmo.el (elmo-folder-move-messages): Bind
6042         elmo-inhibit-display-retrieval-progress as t while moving messages.
6043
6044         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6045         New variable.
6046         (elmo-inhibit-display-retrieval-progress): Ditto.
6047
6048         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6049         for retrieval progress;
6050         Don't display progress when total buffer size is smaller than
6051         elmo-display-retrieval-progress-threshold.
6052         (elmo-message-fetch-plugged): Don't display progress when
6053         elmo-inhibit-display-retrieval-progress is non-nil.
6054
6055         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6056         for retrieval progress;
6057         Don't display progress when literal size is smaller than
6058         elmo-display-retrieval-progress-threshold.
6059         (elmo-imap4-message-fetch): Don't display progress when
6060         elmo-inhibit-display-retrieval-progress is non-nil.
6061
6062 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6063
6064         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6065         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6066         (elmo-imap4-message-fetch): Likewise.
6067
6068         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6069         (elmo-shimbun-index-range-alist): Ditto.
6070         (elmo-shimbun-use-entire-index): Abolish.
6071         (shimbun-mua-use-entire-index): Ditto.
6072         (elmo-shimbun-folder): Added new slot `range'.
6073         (elmo-folder-initialize): Setup slot `range'.
6074
6075 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6076
6077         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6078         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6079         (elmo-shimbun-get-headers): Use return value of
6080         `shimbun-article-expiration-days'.
6081         (elmo-folder-close-internal): Clean up last-check slot.
6082
6083         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6084         (elmo-pop3-total-size): New variable.
6085         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6086
6087         * elmo.el (elmo-folder-reserve-status-p): New method.
6088
6089         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6090         (elmo-shimbun-use-entire-index): New user option.
6091         (shimbun-elmo-mua): New class.
6092         (shimbun-mua-search-id): Define.
6093         (shimbun-mua-use-entire-index): Ditto.
6094         (elmo-shimbun-folder:last-check): New slot.
6095         (elmo-shimbun-headers-cache-header-list): Abolish.
6096         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6097         (elmo-shimbun-headers-cache-header-hash): Ditto.
6098         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6099         (elmo-shimbun-headers-cache-last-check): Ditto.
6100         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6101         (elmo-shimbun-headers-check-p): Rewrite.
6102         (elmo-shimbun-msgdb-to-headers): New function.
6103         (elmo-shimbun-get-headers): Rewrite.
6104         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6105         (elmo-folder-open-internal): Get headers only if
6106         `elmo-shimbun-headers-check-p' is non-nil.
6107         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6108         is non-nil.
6109         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6110         (elmo-quit): Removed.
6111
6112         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6113         function.
6114         (elmo-msgdb-overview-entity-set-extra): Ditto.
6115         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6116
6117         * elmo-map.el (elmo-folder-status): Don't call
6118         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6119         is non-nil.
6120
6121 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6122
6123         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6124         of `elmo-msgdb-search-internal-primitive' when condition's car is
6125         `and' or `or'.
6126
6127 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6128
6129         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6130
6131 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6132
6133         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6134         call `elmo-pipe-drain'.
6135
6136 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6137
6138         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6139         typo. (elmo-cache-folder -> elmo-mark-folder)
6140
6141 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6142
6143         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6144         `elmo-message-fetch'.
6145
6146 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6147
6148         * elmo-net.el (elmo-message-encache): Fixed typo.
6149         (elmo-message-fetch-unplugged): Changed call
6150         `elmo-message-fetch-internal' without argument `outbuf'.
6151
6152 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6153
6154         * elmo.el (elmo-message-encache): Define as generic function.
6155         (elmo-message-fetch-field): New generic function.
6156         (elmo-message-fetch-with-cache-process): Cause an error when
6157         fetch strategy is 'entire but only 'section cache is available.
6158         (toplevel): Fixed nmz folder definition.
6159
6160         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6161         (elmo-msgdb-resume-list-filename): Ditto.
6162         (elmo-queue-filename): Ditto.
6163         (elmo-enable-disconnected-operation): Changed default value to t.
6164
6165         * elmo-util.el (elmo-cache-path-section-p): New function.
6166         (elmo-file-cache-get): Use it.
6167         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6168         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6169         (elmo-dop-queue-save): Ditto.
6170
6171         * elmo-net.el (elmo-folder-status-unplugged): Call
6172         elmo-folder-status-dop.
6173         (elmo-folder-list-messages-unplugged): Implemented.
6174         (elmo-folder-delete-messages-unplugged): Define.
6175         (elmo-folder-msgdb-create): Define.
6176         (elmo-folder-msgdb-create-unplugged): Define.
6177         (elmo-folder-mark-as-read-unplugged): Ditto.
6178         (elmo-folder-unmark-read-unplugged): Ditto.
6179         (elmo-folder-mark-as-important-unplugged): Ditto.
6180         (elmo-folder-unmark-important-unplugged): Ditto.
6181         (elmo-message-encache): Ditto.
6182
6183         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6184         (elmo-dop-queue-save): Ditto.
6185
6186         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6187         `elmo-folder-msgdb-create'.
6188         (elmo-folder-append-buffer): Implemented unplugged operation.
6189         (elmo-folder-append-messages): Call parent method in unplugged status.
6190         (elmo-message-fetch-unplugged): Removed definition.
6191         (elmo-message-fetch-field): Implemented.
6192
6193         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6194         (elmo-dop-folder): Removed variable definition.
6195         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6196         (elmo-dop-queue-flush): Implemented.
6197         (elmo-dop-queue-merge): Removed definition (TODO).
6198         (elmo-dop-spool-folder): New function.
6199         (elmo-dop-spool-folder-append-buffer): Ditto.
6200         (elmo-dop-spool-folder-list-messages): Ditto.
6201         (elmo-dop-list-deleting-messages): Ditto.
6202         (elmo-folder-append-buffer-dop): Ditto.
6203         (elmo-folder-delete-messages-dop): Ditto.
6204         (elmo-message-encache-dop): New inline function.
6205         (elmo-create-folder-dop): Ditto.
6206         (elmo-folder-mark-as-read-dop): Ditto.
6207         (elmo-folder-unmark-read-dop): Ditto.
6208         (elmo-folder-mark-as-important-dop): Ditto.
6209         (elmo-folder-unmark-important-dop): Ditto.
6210         (elmo-folder-status-dop): Fixed.
6211         (elmo-folder-append-buffer-dop-delayed): New function.
6212         (elmo-folder-delete-messages-dop-delayed): Ditto.
6213         (elmo-dop-msgdb): Ditto.
6214
6215 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6216
6217         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6218
6219 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6220
6221         * elmo.el (elmo-folder-move-messages): Fixed problem when
6222         `dst-folder' is 'null.
6223
6224 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6225
6226         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6227         instead of current mark.
6228
6229         * elmo-multi.el (elmo-folder-list-importants-internal): No
6230         operation if importants is not list.
6231
6232         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6233         Return t if importants is not list.
6234
6235         * elmo-map.el (elmo-map-folder-list-importants): Define.
6236         (elmo-folder-list-importants-internal): Check return value of
6237         `elmo-map-folder-list-importants-internal'.
6238
6239         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6240
6241         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6242
6243         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6244
6245         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6246
6247 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6248
6249         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6250         (Patch is provided by <kita@coe.nttdata.co.jp>).
6251
6252 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6253
6254         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6255         mark folder.
6256
6257 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6258
6259         * elmo.el (elmo-message-fetch): Define.
6260         (elmo-message-fetch-with-cache-process): New generic method.
6261         (elmo-message-fetch-internal): New generic method.
6262         (elmo-folder-synchronize):
6263
6264         * elmo-archive.el (elmo-message-fetch-internal): Define.
6265         (elmo-message-fetch): Eliminated.
6266
6267         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6268         (elmo-message-fetch): Eliminated.
6269
6270         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6271         argument OUTBUF.
6272         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6273
6274         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6275         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6276
6277         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6278         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6279
6280         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6281
6282         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6283
6284         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6285
6286         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6287         (elmo-message-fetch-unplugged): New generic method.
6288         (elmo-message-fetch-internal): Remove cache process (Renamed from
6289         `elmo-message-fetch').
6290
6291         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6292         (elmo-message-fetch): Eliminated.
6293         (elmo-message-fetch-unplugged): Ditto.
6294
6295         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6296
6297 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6298
6299         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6300         of `to-be-deleted' from number-alist to number-list.
6301
6302 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6303
6304         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6305         (elmo-folder-mark-as-important): Ditto.
6306
6307 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6308
6309         * elmo.el (elmo-folder): Added process-duplicates slot.
6310
6311         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6312         (elmo-folder-unmark-read): Ditto.
6313         (elmo-folder-unmark-important): Ditto.
6314         (elmo-folder-mark-as-important): Ditto.
6315
6316         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6317         duplicated message processing.
6318
6319         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6320
6321 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6322
6323         * elmo-util.el (elmo-list-subdirectories-1): New function.
6324         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6325         (elmo-mapcar-list-of-list): New function.
6326
6327         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6328         `elmo-mapcar-list-of-list' instead of `mapcar'.
6329
6330         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6331
6332         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6333         `elmo-have-link-count'. Return the fully qualified folder name.
6334
6335 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6336
6337         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6338         (elmo-shimbun-headers-cache): New internal variable.
6339         (elmo-shimbun-headers-cache-header-list): New inline function.
6340         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6341         (elmo-shimbun-headers-cache-header-hash): Ditto.
6342         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6343         (elmo-shimbun-headers-cache-last-check): Ditto.
6344         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6345         (elmo-shimbun-lapse-seconds): Ditto.
6346         (elmo-shimbun-headers-cache-check-p): Ditto.
6347         (elmo-shimbun-get-headers): New function.
6348         (elmo-folder-open-internal): Call it.
6349         (elmo-quit): Define (Clear headers-cache).
6350
6351 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6352
6353         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6354
6355         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6356         (elmo-msgdb-flist-save): Ditto.
6357
6358         * elmo-shimbun.el (elmo-folder-list-subfolders):
6359         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6360         (elmo-folder-exists-p): Ditto.
6361
6362         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6363         argument for `shimbun-header-insert'.
6364
6365 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6366
6367         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6368         at first time.
6369
6370         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6371         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6372
6373 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6374
6375         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6376         (elmo-folder-plugged-p): Define.
6377         (elmo-folder-set-plugged): Ditto.
6378         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6379         (elmo-folder-list-messages-internal): Return t if unplugged.
6380         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6381
6382         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6383         when elmo-folder-list-messages-internal method of children returns t.
6384
6385         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6386         pair is nil.
6387         (elmo-folder-open-internal): Don't update if unplugged status.
6388
6389 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6390
6391         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6392         new message.
6393
6394 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6395
6396         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6397
6398         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6399         saving.
6400
6401 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6402
6403         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6404
6405         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6406         (elmo-folder-open-internal): Set up headers slot.
6407         (elmo-folder-check): Call elmo-folder-close-internal and
6408         elmo-folder-open-internal.
6409         (elmo-folder-close-internal): Clean up headers slot.
6410
6411 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6412
6413         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6414         exactly folder list.
6415         (elmo-folder-append-messages): Fixed append archive with prefix.
6416
6417         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6418         make temp files with start-number.
6419
6420         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6421
6422 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6423
6424         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6425         argument `visible-only'.
6426         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6427         instead of `if'.
6428
6429         * elmo-pop3.el (elmo-folder-open-internal): Check
6430         `elmo-inhibit-number-mapping' is non-nil.
6431
6432         * elmo-pipe.el (elmo-folder-status): Fixed.
6433
6434 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6435
6436         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6437
6438         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6439         (elmo-folder-open-internal): Setup `header-hash' slot.
6440         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6441         information.
6442         (elmo-map-message-fetch): Ditto.
6443
6444 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6445
6446         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6447         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6448         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6449         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6450
6451         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6452
6453 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6454
6455         * sb-airs.el: Added footer.
6456
6457         * shimbun.el (shimbun-article): Define as luna-method.
6458
6459         * sb-tcup.el: New file.
6460
6461         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6462         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6463
6464 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6465
6466         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6467         (shimbun-get-headers): Ditto.
6468
6469         * elmo.el: Moved obsolete variable definitions from
6470         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6471
6472         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6473         groups.
6474
6475         * shimbun.el: New file.
6476
6477         * elmo-shimbun.el: New file.
6478
6479         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6480         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6481         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6482         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6483
6484 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6485
6486         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6487         hierarchy is t.
6488
6489 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6490
6491         * elmo.el (elmo-folder-msgdb): Define as macro.
6492         (elmo-folder-open): Added argument `load-msgdb'.
6493         (elmo-generic-folder-open): Ditto.
6494         (elmo-folder-encache): New function.
6495
6496         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6497
6498         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6499
6500         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6501         Eliminated argument FOLDER and added argument MSGDB.
6502         (elmo-dop-queue-load): Moved from elmo-dop.el.
6503         (elmo-dop-queue-save): Ditto.
6504
6505         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6506
6507         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6508
6509         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6510         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6511         (elmo-filter-folder-list-importants-internal): Ditto.
6512
6513         * elmo-map.el (elmo-folder-pack-number): Ditto.
6514
6515         * elmo-mime.el (elmo-mime-message-display): Ditto.
6516
6517         * elmo.el (elmo-generic-folder-commit): Ditto.
6518         (elmo-folder-list-unreads): Ditto.
6519         (elmo-folder-list-importants): Ditto.
6520         (elmo-generic-folder-commit): Ditto.
6521         (elmo-message-set-mark): Ditto.
6522         (elmo-generic-folder-append-msgdb): Ditto.
6523         (elmo-folder-synchronize): Ditto.
6524         (elmo-folder-messages): Ditto.
6525         (elmo-init): Call elmo-dop-queue-load.
6526         (elmo-folder-list-messages): Ditto.
6527
6528         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6529         (elmo-nntp-folder-process-crosspost): Ditto.
6530         (elmo-folder-list-unreads-internal): Ditto.
6531
6532         * elmo-dop.el: Removed old functions.
6533
6534 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6535
6536         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6537         `folder' to `msgdb'.
6538
6539 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6540
6541         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6542         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6543
6544         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6545         case-fold-search.
6546
6547 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6548
6549         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6550         defined.
6551
6552         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6553         (mmimap-parse-parameters-from-list): Define as alias for
6554         `mime-decode-parameter-plist' if it is defined as function.
6555         (mmimap-make-mime-entity): Added argument `number'.
6556         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6557         as 0.
6558         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6559
6560         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6561
6562         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6563
6564         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6565
6566 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6567
6568         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6569
6570         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6571         when elmo-imap4-default-authenticate-type is nil.
6572         (elmo-folder-list-subfolders): Ditto
6573         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6574         (elmo-imap4-fetch-callback-1-subr): Renamed from
6575         `elmo-imap4-fetch-callback-1' and define as inline function.
6576         (elmo-imap4-fetch-callback-1):
6577         Renamed from `elmo-imap4-fetch-callback'.
6578         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6579
6580         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6581         msgdb path (To keep compatibility with main trunk).
6582
6583         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6584
6585         * elmo-util.el (elmo-make-file-cache): Moved position of
6586         some macros.
6587
6588         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6589         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6590         instead of `elmo-pop3-inhibit-uidl'.
6591         (elmo-folder-exists-p): Ditto.
6592         (elmo-pop3-folder-list-messages): Ditto.
6593
6594         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6595         instead of `elmo-pop3-inhibit-uidl'.
6596         (elmo-folder-status): Ditto.
6597
6598         * elmo-dop.el (elmo-dop-folder): New variable.
6599         (elmo-dop-lock-message): Eliminated.
6600         (elmo-dop-unlock-message): Ditto.
6601         (elmo-dop-lock-list-load): Ditto.
6602         (elmo-dop-lock-list-save): Ditto.
6603         (elmo-dop-delete-folder): Ditto.
6604         (elmo-dop-rename-folder): Ditto.
6605
6606         * elmo.el: Removed incomplete commentary.
6607
6608 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6609
6610         * elmo.el (toplevel): Require 'elmo-version first;
6611         for little `recursive-load-depth' settings.
6612         Fix "ends here" comment.
6613
6614 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6615
6616         * elmo-util.el (toplevel): Require 'poem;
6617         Some functions are moved from elmo-cache.el.
6618
6619         * elmo-net.el (toplevel): Require 'elmo-cache.
6620
6621         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6622
6623         * elmo.el (toplevel): Ditto.
6624
6625         * elmo-cache.el: Rewrite with luna;
6626         Some functions are moved to elmo-util.el.
6627
6628         * elmo-internal.el (elmo-internal-folder-list): New variable.
6629         (elmo-internal-folder-initialize): Rewrite.
6630         (elmo-folder-list-subfolders): Ditto.
6631
6632         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6633         (elmo-cache-collect-sub-directories): Ditto.
6634
6635 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6636
6637         * elmo-version.el (elmo-version): Up to 2.5.8.
6638
6639         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6640
6641         * elmo-util.el (elmo-list-insert): New function.
6642
6643 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6644
6645         * elmo.el (elmo-init): New function.
6646         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6647
6648         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6649         (Renamed from `elmo-localdir-header-chop-length').
6650
6651         * elmo-pop3.el (elmo-pop3-use-cache,
6652         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6653
6654         * elmo-nntp.el (elmo-message-fetch): Define.
6655         (elmo-message-fetch-unplugged): Ditto.
6656         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6657         (elmo-nntp-use-cache): Ditto.
6658         (elmo-nntp-max-number-precedes-list-active): Ditto.
6659
6660         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6661
6662         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6663         `elmo-msgdb-insert-file-header'.
6664         Use `elmo-msgdb-file-header-chop-length'.
6665
6666         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6667         `elmo-vars.el'.
6668
6669         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6670         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6671         `elmo-msgdb-insert-file-header'.
6672
6673         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6674         Use new variable;
6675         Define obsolete variables with `elmo-define-obsolete-variable',
6676
6677         * elmo-util.el (elmo-warning-buffer-name): New constant.
6678         (elmo-warning): New function.
6679         (elmo-obsolete-variable-alist): New variable.
6680         (elmo-obsolete-variable-show-warnings): New variable.
6681         (elmo-define-obsolete-variable): New function.
6682         (elmo-resque-obsolete-variable): Ditto.
6683         (elmo-resque-obsolete-variables): Ditto.
6684
6685 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6686
6687         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6688         Eliminated.
6689
6690         * elmo-pop3.el, elmo-nntp.el: Use custom.
6691
6692 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6693
6694         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6695         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6696
6697 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6698
6699         * Luna-fy Kenichi OKADA's following changes.
6700         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6701         `nohide'.
6702         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6703
6704 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6705
6706         * elmo-util.el (elmo-display-progress): Prefer
6707         `progress-feedback-with-label' to `lprogress-display'.
6708
6709 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6710
6711         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6712
6713 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6714
6715         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6716         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6717         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6718         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6719         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6720         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6721         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6722         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6723         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6724         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6725         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6726         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6727         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6728
6729 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6730
6731         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6732         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6733
6734 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6735
6736         * elmo.el (elmo-folder-process-crosspost): New generic method.
6737         (elmo-folder-writable-p): Ditto.
6738         (elmo-folder-message-appendable-p): Eliminated.
6739         (elmo-generic-folder-append-msgdb): Rewrite.
6740         (elmo-newsgroups-hashtb): New internal variable.
6741         (elmo-crosspost-message-set): Eliminated.
6742         (elmo-crosspost-message-delete): Ditto.
6743         (elmo-setup-subscribed-newsgroups): New function.
6744         (elmo-crosspost-message-alist-modified): New internal variable.
6745         (elmo-crosspost-message-alist-load): New function (Renamed from
6746         `wl-crosspost-alist-load').
6747         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6748         `wl-crosspost-alist-save').
6749
6750         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6751
6752         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6753         `unreads'.
6754         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6755         elmo-newsgroups-hashtb).
6756         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6757         `elmo-nntp-folder-update-crosspost-message-alist'.
6758         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6759         `elmo-nntp-groups-hashtb'.
6760         (elmo-nntp-make-groups-hashtb): Eliminated.
6761         (elmo-nntp-parse-newsgroups): New function (Renamed from
6762         `wl-parse-newsgroups').
6763         (elmo-folder-creatable-p, elmo-folder-writable-p,
6764         elmo-folder-close-internal, elmo-folder-mark-as-read,
6765         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6766         Define.
6767         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6768
6769         * elmo-net.el (elmo-message-fetch): Check buffer size.
6770
6771         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6772
6773         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6774
6775         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6776         before `close' command.
6777
6778         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6779         `mark-alist' (All other related portions are changed).
6780
6781 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6782
6783         * elmo-util.el (elmo-create-hash-size): Eliminated.
6784         (elmo-make-hash) Make a hash with `one less than a power of two'
6785         length.
6786
6787         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6788         (elmo-hash-maximum-size): Changed value.
6789
6790 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6791
6792         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6793         (elmo-mime-message-display-as-is): Ditto.
6794
6795 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6796
6797         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6798         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6799
6800 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6801
6802         * elmo-mark.el: New file.
6803
6804         * elmo-internal.el: Rewrite (Almost empty).
6805
6806 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6807
6808         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6809         (mime-imap-entity-header-string): Ditto.
6810         (mmimap-entity-section): Rewrite.
6811
6812 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6813
6814         * elmo-nmz.el: New file.
6815
6816         * elmo-pipe.el: Rewrite with luna.
6817
6818 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6819
6820         * elmo-archive.el: Rewrite with luna.
6821
6822         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6823         (elmo-folder-list-importants-internal): Ditto.
6824
6825 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6826
6827         * elmo-archive.el (elmo-archive-version): Abolish.
6828         (toplevel) Removed `boso' comment.
6829
6830 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6831
6832         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6833         elmo-msgdb-add-msgs-to-seen-list-subr;
6834         Changed argument seen-marks to unread-marks.
6835
6836         * elmo-nntp.el: Rewrite with luna.
6837
6838 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6839
6840         * elmo-filter.el: Rewrite with luna.
6841
6842 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6843
6844         * elmo-pop3.el: Rewrite with luna.
6845
6846 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6847
6848         * elmo-multi.el: Rewrite with luna.
6849
6850         * elmo-vars.el (elmo-use-killed-list): Abolish.
6851         All other related portions are changed.
6852         (elmo-filename-replace-string-alist): Renamed from
6853         elmo-msgid-replace-string-alist.
6854
6855 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6856
6857         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6858
6859         * elmo-map.el: New file.
6860         * elmo-maildir.el: Rewrite with luna.
6861
6862 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6863
6864         * elmo.el: Changed meaning of `elmo-folder-commit'.
6865         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6866
6867 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6868
6869         * elmo.el (elmo-folder-append-buffer): New function.
6870         (Renamed from `elmo-append-msg')
6871
6872 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6873
6874         * elmo-mime.el: New file.
6875
6876 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6877
6878         * elmo-cache.el: Rewrite.
6879
6880 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6881
6882         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6883
6884 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6885
6886         * elmo-vars.el (elmo): New group.
6887         (elmo-strict-diff-folder-regexp): New variable.
6888
6889         * elmo-util.el (elmo-call-func): Abolish.
6890         (elmo-folder-get-type): Ditto.
6891         (elmo-*-get-spec): Ditto.
6892         (elmo-*-spec-*): Ditto.
6893         (elmo-imap4-identical-name-space-p): Ditto.
6894         (elmo-folder-identical-system-p): Ditto.
6895         (elmo-folder-direct-copy-alist): Ditto.
6896         (elmo-folder-direct-copy-p): Ditto.
6897
6898         * elmo-pipe.el (elmo-pipe-folder): New luna class.
6899         (elmo-folder-initialize): Define.
6900         (elmo-folder-get-primitive-list): Ditto.
6901
6902         * elmo-nntp.el (elmo-nntp-folder): New luna class.
6903         (elmo-folder-initialize): Define.
6904         Renamed `elmo-network-session-host-internal' to
6905         `elmo-network-session-server-internal'.
6906
6907         * elmo-multi.el (elmo-multi-folder): New luna class.
6908         (elmo-folder-initialize): Define.
6909         (elmo-folder-get-primitive-list): Ditto.
6910         (elmo-folder-contains-type): Ditto.
6911         (elmo-message-use-cache-p): Ditto.
6912
6913         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6914         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6915
6916         * elmo-maildir.el (elmo-maildir-folder): New luna class.
6917         (elmo-folder-initialize): Define.
6918
6919         * elmo-filter.el (elmo-filter-folder): New luna class.
6920         (elmo-folder-initialize): Define.
6921         (elmo-folder-get-primitive-list): Ditto.
6922         (elmo-folder-contains-type): Ditto.
6923
6924 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6925
6926         * elmo-imap4.el: Rewrite with luna.
6927
6928         * mmimap.el: New file.
6929
6930         * mmelmo.el, mmelmo-imap4.el: Removed.
6931
6932         * elmo-net.el: Ditto.
6933
6934         * elmo-pop3.el (elmo-pop3-folder): New luna class.
6935         (elmo-folder-initialize): Define.
6936
6937         * elmo-archive.el (elmo-archive-folder): New luna class.
6938         (elmo-folder-initialize): Define.
6939
6940         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
6941         `elmo-folder-msgdb-path'.
6942         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
6943         `elmo-make-folder'.
6944
6945 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6946
6947         * elmo.el: New file.
6948
6949         * elmo2.el: Renamed to elmo.el.
6950
6951 \f
6952 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
6953
6954         * elmo-cache.el (elmo-cache-expire-by-size): Count
6955         a disk usage for a cache file entry in KB even when
6956         its kind is a directory.
6957
6958 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
6959
6960         * elmo-version.el (elmo-version): Up to 2.5.7.
6961
6962 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6963
6964         * elmo-version.el (elmo-version): Up to 2.5.6.
6965
6966 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6967
6968         * elmo-version.el (elmo-version): Up to 2.5.5.
6969
6970 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
6971
6972         * elmo-imap4.el (elmo-network-authenticate-session):
6973         Fixed a logic for response checking.
6974
6975 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
6976
6977         * elmo-net.el: Add autoload settings for `starttls-negotiate',
6978         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
6979         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
6980         `sasl-mechanisms'.
6981
6982         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
6983         for `starttls-open-stream' and `starttls-negotiate'.
6984
6985         * elmo-nntp.el: Remove autoload settings for
6986         `starttls-open-stream' and `starttls-negotiate'.
6987
6988         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
6989         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
6990         `luna-define-class' with `eval-and-compile'.
6991
6992 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
6993
6994         * elmo-util.el (elmo-read-search-condition-internal):
6995         Require an element of table for searching field.
6996
6997 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
6998
6999         * elmo-version.el (elmo-version): Up to 2.5.4.
7000
7001 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7002
7003         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7004
7005 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7006
7007         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7008
7009 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7010
7011         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7012         before greeting.
7013
7014 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7015
7016         * elmo-imap4.el (elmo-imap4-delete-folder):
7017         Send "close" before "delete" (Use commented out line).
7018         (elmo-imap4-rename-folder): Ditto.
7019
7020         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7021         folder string itself.
7022         (elmo-dop-list-deleted): New function.
7023         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7024         killed.
7025
7026         * elmo-util.el (elmo-string-rassoc-all): New function.
7027
7028 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7029
7030         * elmo-version.el (elmo-version): Up to 2.5.3.
7031
7032         * elmo-net.el (elmo-network-get-session): Changed logic for
7033         checking process status.
7034
7035         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7036         process is nil;
7037         Changed logic for checking process status.
7038
7039 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7040
7041         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7042         before greeting.
7043         (elmo-network-setup-session): Set UIDL hash size according to
7044         the length of list response.
7045         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7046         according to the length of list response;
7047         Return the length of list response.
7048         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7049
7050 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7051
7052         * elmo-imap4.el (toplevel): Require 'ssl.
7053         Add autoload 'starttls.
7054         * elmo-pop3.el (toplevel): Ditto.
7055         * elmo-nntp.el (toplevel): Ditto.
7056
7057 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7058
7059         * elmo-imap4.el (toplevel): defun at compile time.
7060         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7061         sasl-next-step, sasl-step-data, sasl-step-set-data.
7062         * elmo-pop3.el (toplevel): Ditto.
7063
7064 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7065
7066         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7067
7068 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7069
7070         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7071         if error.
7072         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7073         and `elmo-pop-auth-apop'.
7074
7075 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7076
7077         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7078
7079 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7080
7081         * elmo-pop3.el (elmo-network-authenticate-session): Split
7082         encoded response value.
7083
7084 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7085
7086         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7087         `elmo-pop3-force-login'.
7088         Redefine `sasl-mechanisms'.
7089         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7090
7091 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7092
7093         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7094         Delete `elmo-imap4-authenticator-alist'.
7095         (elmo-imap4-auth-cram-md5): Delete.
7096         (elmo-imap4-auth-digest-md5): Delete.
7097
7098 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7099
7100         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7101         (elmo-pop3-auth-scram-md5): Ditto.
7102         (elmo-pop3-auth-cram-md5): Ditto.
7103
7104 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7105
7106         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7107         Delete `elmo-pop3-authenticator-alist'.
7108
7109 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7110
7111         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7112         new SASL API.
7113         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7114
7115 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7116
7117         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7118
7119 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7120
7121         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7122         Fixed problem when `elmo-pop3-use-uidl' is nil.
7123         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7124
7125 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7126
7127         * elmo-version.el (elmo-version): Up to 2.5.2.
7128
7129 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7130
7131         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7132         New function.
7133         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7134         (elmo-pop3-msgdb-create-as-numlist): Use it.
7135
7136         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7137         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7138
7139         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7140         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7141
7142 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7143
7144         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7145         when elmo-mark-as-read is called with second argument nil.
7146
7147 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7148
7149         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7150         Moved to elmo-util.el.
7151
7152         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7153         Moved from elmo-pipe.el
7154
7155         * elmo-archive.el (elmo-archive-call-process): Enclose with
7156         static-if.
7157
7158         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7159         "RFC822" (because RFC822.PEEK is obsolete).
7160         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7161
7162 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7163
7164         * elmo-archive.el (elmo-archive-call-process): Don't check for
7165         the exit status when Nemacs is running.
7166
7167 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7168
7169         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7170         'plain.
7171
7172         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7173         (elmo-pop3-get-spec): Set default of auth to 'user.
7174
7175         * elmo-imap4.el (elmo-imap4-session-check):
7176         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7177         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7178         (elmo-imap4-auth-login): New function; Revival.
7179         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7180         `elmo-imap4-auth-login'.
7181
7182 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7183
7184         * elmo2.el (toplevel): Move `product-provide' declare.
7185         * mmelmo.el (toplevel): Ditto.
7186
7187 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7188
7189         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7190
7191 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7192
7193         * elmo-util.el (elmo-folder-get-store-type): New function.
7194         (elmo-folder-direct-copy-p): Use it.
7195
7196 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7197
7198         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7199         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7200         and result of `elmo-imap4-use-flag-p'.
7201         (elmo-imap4-fetch-callback-1): Set mark according to
7202         the result of `elmo-imap4-use-flag-p'.
7203
7204 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7205
7206         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7207         (elmo-generic-list-folder-unread): Ditto.
7208         (elmo-folder-get-info): Ditto.
7209         (elmo-folder-set-info-max-by-numdb): Ditto.
7210         (elmo-folder-get-info-max): Ditto.
7211         (elmo-folder-get-info-length): Ditto.
7212         (elmo-folder-get-info-unread): Ditto.
7213         (elmo-folder-info-make-hashtb): Ditto.
7214
7215         * elmo2.el: Removed above functions.
7216
7217 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7218
7219         * elmo-imap4.el (toplevel): Require 'ssl.
7220         Add autoload 'starttls.
7221         * elmo-pop3.el (toplevel): Ditto.
7222         * elmo-nntp.el (toplevel): Ditto.
7223
7224 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7225
7226         * elmo-imap4.el (toplevel): defun at compile time.
7227         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7228         sasl-next-step, sasl-step-data, sasl-step-set-data.
7229         * elmo-pop3.el (toplevel): Ditto.
7230
7231 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7232
7233         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7234
7235 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7236
7237         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7238         if error.
7239         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7240         and `elmo-pop-auth-apop'.
7241
7242 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7243
7244         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7245
7246 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7247
7248         * elmo-pop3.el (elmo-network-authenticate-session): Split
7249         encoded response value.
7250
7251 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7252
7253         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7254         `elmo-pop3-force-login'.
7255         Redefine `sasl-mechanisms'.
7256         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7257
7258 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7259
7260         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7261         Delete `elmo-imap4-authenticator-alist'.
7262         (elmo-imap4-auth-cram-md5): Delete.
7263         (elmo-imap4-auth-digest-md5): Delete.
7264
7265 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7266
7267         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7268         (elmo-pop3-auth-scram-md5): Ditto.
7269         (elmo-pop3-auth-cram-md5): Ditto.
7270
7271 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7272
7273         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7274         Delete `elmo-pop3-authenticator-alist'.
7275
7276 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7277
7278         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7279         new SASL API.
7280         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7281
7282 \f
7283 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7284
7285         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7286
7287 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7288
7289         * elmo-nntp.el (elmo-nntp-get-folders-info):
7290         Fixed problem when '\' character is contained in user-id.
7291         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7292
7293 \f
7294 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7295
7296         * elmo-imap4.el (elmo-imap4-delete-folder):
7297         Send "close" before "delete" (Use commented out line).
7298         (elmo-imap4-rename-folder): Ditto.
7299
7300         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7301         folder string itself.
7302         (elmo-dop-list-deleted): New function.
7303         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7304         killed.
7305
7306         * elmo-util.el (elmo-string-rassoc-all): New function.
7307
7308         * elmo-version.el (elmo-version): Up to 2.5.1.
7309
7310 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7311
7312         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7313
7314         * elmo-internal.el (elmo-internal-search): Fix last change.
7315
7316 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7317
7318         * elmo-internal.el (elmo-internal-search): Rewrite.
7319         (Fixed problem which is pointed out by Akihiro MOTOKI
7320         <motoki@da.jp.nec.com>)
7321
7322         * elmo-version.el (elmo-version): Up to 2.5.0.
7323
7324 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7325
7326         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7327
7328 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7329
7330         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7331         non-nil, make hierarchy.
7332
7333 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7334
7335         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7336         `elmo-pop3-use-uidl' must be bound to nil.
7337         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7338
7339 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7340
7341         * elmo-util.el (elmo-copy-file): Don't cause an error after
7342         `add-name-to-file' failed.
7343
7344         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7345         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7346
7347 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7348
7349         * elmo-version.el (elmo-version): Up to 2.3.93.
7350
7351 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7352
7353         * elmo-util.el (elmo-flatten): New function.
7354
7355 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7356
7357         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7358         sync Author header.
7359         * elmo-cache.el (toplevel): Ditto.
7360         * elmo-database.el (toplevel): Ditto.
7361         * elmo-date.el (toplevel): Ditto.
7362         * elmo-dop.el (toplevel): Ditto.
7363         * elmo-filter.el (toplevel): Ditto.
7364         * elmo-imap4.el (toplevel): Ditto.
7365         * elmo-internal.el (toplevel): Ditto.
7366         * elmo-localdir.el (toplevel): Ditto.
7367         * elmo-localnews.el (toplevel): Ditto.
7368         * elmo-maildir.el (toplevel): Ditto.
7369         * elmo-msgdb.el (toplevel): Ditto.
7370         * elmo-multi.el (toplevel): Ditto.
7371         * elmo-net.el (toplevel): Ditto.
7372         * elmo-nntp.el (toplevel): Ditto.
7373         * elmo-pipe.el (toplevel): Ditto.
7374         * elmo-pop3.el (toplevel): Ditto.
7375         * elmo-util.el (toplevel): Ditto.
7376         * elmo-vars.el (toplevel): Ditto.
7377         * elmo2.el (toplevel): Ditto.
7378         * mmelmo-imap4.el (toplevel): Ditto.
7379         * mmelmo.el (toplevel): Ditto.
7380
7381         * elmo-version.el (elmo-version): Move to top.
7382
7383         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7384         * elmo-imap4.el (toplevel): Ditto.
7385         * elmo-localdir.el (toplevel): Ditto.
7386         * elmo-msgdb.el (toplevel): Ditto.
7387         * elmo-nntp.el (toplevel): Ditto.
7388         * elmo-pop3.el (toplevel): Ditto.
7389         * elmo-version.el (toplevel): Ditto.
7390
7391         * elmo-localnews.el (toplevel): Added Keyword header.
7392
7393 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7394
7395         * elmo-version.el (product-version-as-string): Defined using
7396         `defun-maybe'.
7397         (toplevel): Use it.
7398
7399         * elmo-localdir.el (toplevel): Updated copyright notice.
7400         * elmo-version.el (toplevel): Ditto.
7401         * elmo-msgdb.el (toplevel): Ditto.
7402         * elmo-imap4.el (toplevel): Ditto.
7403         * elmo-nntp.el (toplevel): Ditto.
7404         * elmo-pop3.el (toplevel): Ditto.
7405
7406 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7407
7408         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7409         messages.
7410
7411         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7412         parameter value (It sometimes contains raw kanji).
7413
7414 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7415
7416         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7417         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7418
7419 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7420
7421         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7422
7423 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7424
7425         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7426         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7427
7428 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7429
7430         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7431         value if selecting folder succceeded.
7432         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7433
7434 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7435
7436         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7437         representation.
7438
7439         * elmo-util.el (elmo-string-matched-member): New function.
7440
7441 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7442
7443         * elmo-util.el (elmo-unintern): New macro.
7444         (elmo-number-set-member): Fixed docstring.
7445
7446         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7447         tag token.
7448
7449 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7450
7451         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7452         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7453
7454 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7455
7456         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7457         `no-error'.
7458         Added docstring.
7459         Return non-nil if selecting folder succeeded.
7460         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7461
7462 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7463
7464         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7465         `file-name-completion' returns t.
7466         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7467         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7468         directory if it does not exist.
7469         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7470         for iteration.
7471
7472 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7473
7474         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7475         enclosure (It's harmful in unplugged status).
7476
7477         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7478
7479         * mmelmo-1.el: Removed.
7480
7481         * mmelmo-2.el: Ditto.
7482
7483         * mmelmo-imap4-1.el: Ditto.
7484
7485         * mmelmo-imap4-2.el: Ditto.
7486
7487         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7488
7489         * mmelmo.el: Merged mmelmo-2.el.
7490
7491         * elmo-version.el (elmo-version): Up to 2.3.92.
7492
7493 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7494
7495         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7496         elmo-update-number): Remove last period in "...done." message.
7497         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7498         Ditto.
7499         * elmo-cache.el (elmo-cache-expire-by-size,
7500         elmo-cache-get-sorted-cache-file-list,
7501         elmo-cache-msgdb-create-as-numlist): Ditto.
7502         * elmo-dop.el (elmo-dop-save-pending-messages,
7503         (elmo-dop-flush-pending-append-operations): Ditto.
7504         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7505         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7506         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7507         (elmo-localdir-pack-number): Ditto.
7508         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7509         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7510         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7511         mime-write-entity-content): Ditto.
7512         * pldap.el (ldap-search-basic): Ditto.
7513
7514 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7515
7516         * elmo-version.el (elmo-version): Up to 2.3.91.
7517
7518         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7519         Only when filter is 'last'.
7520
7521         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7522         (elmo-condition-parse-search-value): Use it.
7523         (elmo-read-search-condition-internal): Quote value only when
7524         it is not an atom.
7525
7526 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7527
7528         * elmo2.el (elmo-generic-folder-diff): Fix.
7529
7530 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7531
7532         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7533         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7534         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7535         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7536         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7537         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7538
7539 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7540
7541         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7542         extra-fields.
7543
7544 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7545
7546         * elmo-version.el (elmo-version): Up to 2.3.90.
7547
7548         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7549         (elmo-imap4-list-folder-important): Ditto.
7550
7551 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7552
7553         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7554
7555 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7556
7557         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7558
7559 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7560
7561         * elmo-nntp.el (elmo-network-initialize-session):
7562         Add starttls negotiation.
7563
7564 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7565
7566         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7567         response.
7568         (elmo-network-setup-session): Define.
7569         Call `elmo-nntp-send-mode-reader' when session opened.
7570
7571 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7572
7573         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7574
7575 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7576
7577         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7578         an invalid SPACE character ahead of `SEARCH' command.  Move
7579         a valid SPACE character following `SEARCH' from conditional
7580         `format' arguments to control-strings.
7581
7582 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7583
7584         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7585         was succeeded.
7586
7587         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7588
7589 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7590
7591         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7592         `w32-get-true-file-link-count' as t.
7593
7594         * elmo-imap4.el (elmo-imap4-read): Abolished.
7595         (Renamed to `elmo-read' and moved to elmo-util.el)
7596         All other related portions are changed.
7597
7598         * elmo-util.el (elmo-read): New function.
7599         (elmo-condition-parse-search-value): Use it.
7600
7601 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7602
7603         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7604
7605         * elmo-nntp.el (elmo-nntp-session): Define.
7606         (elmo-nntp-setting): Abolished.
7607         All other related portions are changed.
7608         (elmo-nntp-get-server-command): Changed argument.
7609         (elmo-nntp-set-server-command): Ditto.
7610         (elmo-nntp-xover-p): Ditto.
7611         (elmo-nntp-set-xover): Ditto.
7612         (elmo-nntp-listgroup-p): Ditto.
7613         (elmo-nntp-set-listgroup): Ditto.
7614         (elmo-nntp-list-active-p): Ditto.
7615         (elmo-nntp-set-list-active): Ditto.
7616         (elmo-nntp-xhdr-p): Ditto.
7617         (elmo-nntp-set-xhdr): Ditto.
7618         (elmo-nntp-flush-connection): Abolished.
7619         (elmo-nntp-get-connection): Abolished.
7620         (elmo-nntp-get-session): New function.
7621         (elmo-network-initialize-session): Defined.
7622         (elmo-network-authenticate-session): Ditto.
7623         (elmo-nntp-send-mode-reader): Changed argument.
7624         (elmo-nntp-send-command): Changed argument.
7625         All other related portions are changed.
7626         (elmo-nntp-read-response): Ditto.
7627         (elmo-nntp-read-raw-response): Ditto.
7628         (elmo-nntp-read-contents): Ditto.
7629         (elmo-nntp-read-body): Ditto.
7630         (elmo-nntp-goto-folder): Abolished.
7631         (elmo-nntp-select-group): New function.
7632         All other related portions are changed.
7633         (This function substitutes `elmo-nntp-goto-folder')
7634         (elmo-nntp-msgdb-create-by-header): Rewrite.
7635         (elmo-nntp-get-overview): Eliminated.
7636         (elmo-nntp-get-message): Ditto.
7637         (elmo-nntp-open-connection) Abolished.
7638         (elmo-nntp-read-msg): Rewrite.
7639         (elmo-nntp-post): Ditto.
7640         (elmo-nntp-send-data): Abolished.
7641         (elmo-nntp-send-buffer): New function.
7642         (elmo-nntp-send-data-line): Define as inline function.
7643         (elmo-nntp-get-folders-info-prepare): Use session as key.
7644         (elmo-nntp-groups-read-response): Changed argument.
7645         (elmo-nntp-retrieve-headers): Ditto.
7646         (elmo-nntp-msgdb-create-message): Ditto.
7647
7648         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7649         when searching by 'since' or 'before'.
7650
7651 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7652
7653         * elmo-version.el (toplevel): Use product-version-as-string for set
7654         verstion-string, if defined.
7655
7656 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7657
7658         * elmo-util.el: Doc fixes.
7659
7660 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7661
7662         * elmo-archive.el (toplevel): Use product-provide.
7663         * elmo-cache.el (toplevel): Ditto.
7664         * elmo-database.el (toplevel): Ditto.
7665         * elmo-date.el (toplevel): Ditto.
7666         * elmo-dop.el (toplevel): Ditto.
7667         * elmo-filter.el (toplevel): Ditto.
7668         * elmo-imap4.el (toplevel): Ditto.
7669         * elmo-internal.el (toplevel): Ditto.
7670         * elmo-localdir.el (toplevel): Ditto.
7671         * elmo-localnews.el (toplevel): Ditto.
7672         * elmo-maildir.el (toplevel): Ditto.
7673         * elmo-msgdb.el (toplevel): Ditto.
7674         * elmo-multi.el (toplevel): Ditto.
7675         * elmo-net.el (toplevel): Ditto.
7676         * elmo-nntp.el (toplevel): Ditto.
7677         * elmo-pipe.el (toplevel): Ditto.
7678         * elmo-pop3.el (toplevel): Ditto.
7679         * elmo-util.el (toplevel): Ditto.
7680         * elmo-vars.el (toplevel): Ditto.
7681         * elmo2.el (toplevel): Ditto.
7682         * mmelmo-1.el (toplevel): Ditto.
7683         * mmelmo-2.el (toplevel): Ditto.
7684         * mmelmo-imap4-1.el (toplevel): Ditto.
7685         * mmelmo-imap4-2.el (toplevel): Ditto.
7686         * mmelmo-imap4.el (toplevel): Ditto.
7687         * mmelmo.el (toplevel): Ditto.
7688
7689 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7690
7691         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7692         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7693
7694 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7695
7696         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7697         before splitting.
7698         (elmo-multi-split-number-alist): Ditto.
7699
7700 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7701
7702         * elmo-version.el: New file.  Use product.el.
7703         * elmo2.el: Add (require 'elmo-version).
7704         * elmo-vars.el (elmo-appname, elmo-version): Move to
7705         elmo-version.el
7706
7707 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7708
7709         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7710         `elmo-msgdb-expand-path'.
7711         (elmo-msgdb-load): Ditto.
7712         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7713         (elmo-generic-list-folder-unread): Rewrite.
7714         (elmo-generic-list-folder-important): Changed argument.
7715         (elmo-list-folder-unread): Ditto.
7716         (elmo-list-folder-important): Ditto.
7717         (elmo-folder-diff): Rewrite.
7718         (elmo-generic-folder-diff): New function.
7719         (elmo-multi-get-number-alist-list): Abolished
7720         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7721         (elmo-multi-folder-diff): Moved to elmo-multi.el
7722         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7723
7724         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7725         `elmo-msgdb-expand-path'.
7726         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7727         (elmo-pop3-read-msg): Ditto.
7728         (elmo-pop3-delete-msgs): Ditto.
7729         (elmo-pop3-folder-diff): New alias.
7730
7731         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7732         `elmo-msgdb-expand-path'.
7733         (elmo-pipe-list-folder-unread): Changed arguments.
7734         (elmo-pipe-list-folder-important): Ditto.
7735         (elmo-pipe-folder-diff): New alias.
7736
7737         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7738         `elmo-msgdb-expand-path'.
7739         (elmo-nntp-max-of-folder): Ditto.
7740         (elmo-nntp-msgdb-create): Ditto.
7741         (elmo-nntp-delete-msgs): Ditto.
7742         (elmo-nntp-folder-diff): New alias.
7743
7744         * elmo-multi.el (elmo-multi-folder-diff): New function.
7745         (elmo-multi-split-mark-alist): Ditto.
7746         (elmo-multi-split-number-alist): Ditto.
7747         (elmo-multi-mark-alist-list): Abolished (Renamed to
7748         elmo-multi-split-mark-alist).
7749         (elmo-multi-list-folder-unread): Rewrite.
7750         (elmo-multi-list-folder-important): Ditto.
7751         (elmo-multi-list-folder): Set `spec' as 1st argument for
7752         `elmo-msgdb-expand-path'.
7753         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7754         instead of `elmo-multi-get-number-alist-list'.
7755
7756         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7757         If 1st argument is not string, treat as spec.
7758         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7759         `elmo-msgdb-expand-path'.
7760         (elmo-msgdb-flist-load): Ditto.
7761         (elmo-msgdb-flist-save): Ditto.
7762         (elmo-msgdb-delete-path): Ditto.
7763         (elmo-msgdb-rename-path): Ditto.
7764
7765         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7766         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7767         (elmo-maildir-delete-mark-msgs): Ditto.
7768         (elmo-maildir-msgdb-create): Ditto.
7769         (elmo-maildir-read-msg): Ditto.
7770         (elmo-maildir-delete-msgs): Ditto.
7771         (elmo-maildir-list-folder-subr): Ditto.
7772         (elmo-maildir-search): Ditto.
7773         (elmo-maildir-get-msg-filename): Ditto.
7774         (elmo-maildir-pack-number): Ditto.
7775         (elmo-maildir-folder-diff): New alias.
7776
7777         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7778
7779         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7780         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7781         (elmo-localdir-folder-diff): New alias.
7782
7783         * elmo-internal.el (elmo-internal-list-folder-subr):
7784         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7785         (elmo-internal-list-folder-by-location): Ditto.
7786         (elmo-internal-msgdb-create): Ditto.
7787         (elmo-internal-delete-msgs): Ditto.
7788         (elmo-internal-read-msg): Ditto.
7789         (elmo-internal-folder-diff): New alias.
7790
7791         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7792         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7793         `elmo-msgdb-expand-path'.
7794         (elmo-imap4-list-folder-unread): Changed arguments.
7795         (elmo-imap4-list-folder-important): Ditto.
7796
7797         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7798         (elmo-filter-list-folder-important): Ditto.
7799         (elmo-filter-folder-diff): New function.
7800
7801         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7802
7803         * elmo-cache.el (elmo-cache-list-folder):
7804         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7805         (elmo-cache-copy-msgs): Ditto.
7806         (elmo-cache-folder-diff): New alias.
7807
7808         * elmo-archive.el (elmo-archive-list-folder-subr):
7809         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7810         (elmo-archive-get-archive-name): Ditto.
7811         (elmo-archive-create-file): Ditto.
7812         (elmo-archive-append-msg): Ditto.
7813         (elmo-archive-copy-msgs): Ditto.
7814         (elmo-archive-copy-msgs-froms): Ditto.
7815         (elmo-archive-get-msg-filename): Ditto.
7816         (elmo-archive-folder-diff): New alias.
7817
7818 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7819
7820         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7821         (elmo-pop3-stream-type-alist): New variable.
7822         (elmo-nntp-stream-type-alist): New variable.
7823
7824         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7825         (elmo-kill-buffer): Ditto.
7826         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7827         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7828         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7829         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7830         (elmo-imap4-get-spec): Take into account
7831         `elmo-imap4-stream-type-alist'.
7832
7833 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7834
7835         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7836         (elmo-nntp-list-folders-get-cache): Ditto.
7837
7838 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7839
7840         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7841         character before 'uid'.
7842
7843 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7844
7845         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7846
7847         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7848
7849         * elmo-util.el (elmo-number-set-member): New function.
7850         (elmo-number-set-append-list): Ditto.
7851         (elmo-number-set-append): Ditto.
7852
7853         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7854         Use `elmo-number-set-member'.
7855         (elmo-living-messages): Ditto.
7856         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7857         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7858
7859         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7860         (elmo-imap4-add-to-cont-list): Abolished.
7861         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7862         instead of elmo-imap4-add-to-cont-list.
7863
7864         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7865         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7866
7867         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7868
7869 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7870
7871         * elmo-util.el (elmo-condition-parse-search-value):
7872         Fixed date parsing.
7873
7874 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7875
7876         * elmo-util.el (elmo-condition-find-key-internal): New function.
7877         (elmo-condition-find-key): Ditto.
7878
7879         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7880         (elmo-msgdb-search-internal): Ditto.
7881         (elmo-msgdb-search): Ditto.
7882
7883 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7884
7885         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7886         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7887
7888         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7889         (elmo-nntp-search-primitive): Fixed problem when condition is
7890         'unmatch'.
7891
7892         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7893
7894         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7895         (elmo-nntp-xhdr-p): New macro.
7896         (elmo-nntp-set-xhdr): Ditto.
7897         (elmo-nntp-parse-xhdr-response): New function.
7898         (elmo-nntp-retrieve-field): Ditto.
7899         (elmo-nntp-search-primitive): Ditto.
7900         (elmo-nntp-search): Implemented.
7901
7902         * elmo-date.el (elmo-date-make-sortable-string): New macro.
7903
7904         * elmo-archive.el (elmo-archive-search): Set all number list to
7905         `elmo-archive-field-condition-match'
7906
7907         * elmo-localdir.el (elmo-localdir-search): Likewise.
7908
7909         * elmo-maildir.el (elmo-maildir-search): Likewise.
7910
7911 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
7912
7913         * elmo-msgdb.el (elmo-living-messages): New function.
7914         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7915         * elmo-cache.el (elmo-cache-list-folder): Ditto.
7916         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7917         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7918         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7919         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7920         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7921         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7922         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7923         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7924         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7925
7926 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
7927
7928         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
7929
7930         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
7931
7932         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
7933
7934         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
7935         arguments for `SEARCH' command.
7936         (elmo-imap4-parse-string): Set `POS' argument for char-after.
7937         All other related portions are changed.
7938
7939         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
7940
7941         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
7942         (elmo-list-folder-unread): Rewrite.
7943         (elmo-list-folder-important): Ditto.
7944
7945         * elmo-util.el (elmo-filter-get-spec): Rewrite.
7946         (elmo-condition-parse-error): New inline function.
7947         (elmo-read-search-condition): New function.
7948         (elmo-read-search-condition-internal): Ditto.
7949         (elmo-parse-search-condition): Rewrite.
7950         (elmo-condition-parse): New function.
7951         (elmo-condition-parse-or-expr): Ditto.
7952         (elmo-condition-parse-and-expr): Ditto.
7953         (elmo-condition-parse-primitive): Ditto.
7954         (elmo-condition-parse-search-value): Ditto.
7955         (elmo-buffer-field-primitive-condition-match): Ditto.
7956         (elmo-buffer-field-condition-match): Rewrite.
7957         (elmo-file-field-condition-match): Ditto.
7958
7959         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
7960         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
7961
7962         * elmo-internal.el (elmo-internal-search): Set `number' and
7963         `number-list' argument of `elmo-file-field-condition-match'.
7964
7965         * elmo-maildir.el (elmo-maildir-search): Ditto.
7966
7967         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
7968         `msgdb' as argument instead of `mark-alist'.
7969         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
7970         `overview'.
7971
7972         * elmo-multi.el: Likewise.
7973
7974         * elmo-pipe.el: Likewise.
7975
7976         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
7977         (elmo-imap4-search-internal): Rewrite.
7978         (elmo-imap4-search): Ditto.
7979
7980         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
7981         (elmo-filter-list-folder-unread): Ditto.
7982         (elmo-filter-list-folder-important): Ditto.
7983         (elmo-filter-search): Rewrite.
7984
7985         * elmo-cache.el (elmo-cache-search-all): Set `number' and
7986         `number-list' argument of `elmo-file-field-condition-match'.
7987         (elmo-cache-search): Ditto.
7988
7989         * elmo-localdir.el: Likewise.
7990
7991         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
7992         number-list and pass it to `elmo-buffer-field-condition-match'.
7993         (elmo-archive-field-condition-match): Pass `number-list' to
7994         `elmo-archive-field-condition-match'
7995
7996 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
7997
7998         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
7999         `listgroup'.
8000
8001         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8002         (elmo-folder-diff-async-callback-data): Ditto.
8003         (elmo-folder-diff-async): New function.
8004
8005         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8006         (elmo-network-session-cache-key): Use it as a prefix of the session
8007         name.
8008         (elmo-network-open-session): Ditto.
8009
8010         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8011         (elmo-imap4-status-callback-data): Ditto.
8012         (elmo-imap4-server-diff-async-callback): New variable.
8013         (elmo-imap4-server-diff-async-callback-data): Ditto.
8014         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8015         `elmo-imap4-status-callback-data'.
8016         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8017         `elmo-imap4-status-callback-data' as nil.
8018         (elmo-imap4-server-diff): Ditto.
8019         (elmo-imap4-server-diff-async-callback-1): New function.
8020         (elmo-imap4-server-diff-async): Ditto.
8021         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8022
8023 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8024
8025         * elmo-util.el (elmo-list-delete): Doc fix.
8026         (elmo-delete-lists): Abolish.
8027         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8028         instead of `elmo-delete-lists'.
8029
8030 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8031
8032         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8033         before `sort'.
8034
8035 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8036
8037         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8038         `elmo-imap4-literal-subr'.
8039         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8040         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8041
8042 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8043
8044         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8045         (elmo-archive-list-folder): Fix.
8046         (elmo-archive-max-of-folder): Fix.
8047
8048 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8049
8050         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8051          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8052         (elmo-localdir-append-msg): Ditto.
8053         (elmo-localdir-list-folder): Fix for `nonsort'.
8054         (elmo-localdir-list-folder-subr): Fix for `killed'.
8055         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8056         (elmo-maildir-list-folder-subr): Ditto.
8057         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8058         (elmo-archive-list-folder-subr): Ditto.
8059         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8060         (elmo-internal-list-folder-subr): Ditto.
8061
8062 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8063
8064         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8065
8066 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8067
8068         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8069
8070 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8071
8072         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8073         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8074
8075         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8076         before greeting.
8077         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8078         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8079
8080 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8081
8082         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8083
8084         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8085         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8086         before STORE command.
8087
8088 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8089
8090         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8091
8092         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8093         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8094         of `response'.
8095         (elmo-imap4-list-folders): Removed unused local variable.
8096         (elmo-network-initialize-session): Ditto.
8097         (elmo-imap4-delete-msg-by-id): Ditto.
8098         (elmo-imap4-parse-fetch): Ditto.
8099         (elmo-imap4-copy-msgs): Ditto.
8100         Use `dst-spec' instead of `dst-folder'.
8101         (elmo-network-authenticate-session): Check authenticate type `plain'.
8102
8103 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8104
8105         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8106         garbage checking.
8107         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8108         `elmo-imap4-response-value'.
8109         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8110
8111 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8112
8113         * elmo-imap4.el (elmo-imap4-send-command):
8114         Cause elmo-imap4-bye-error when current response is BYE.
8115         (elmo-imap4-arrival-filter): Changed greeting response value.
8116
8117         * elmo2.el (elmo-imap4-bye-error): Define.
8118
8119         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8120         (elmo-imap4-server-diff): Ditto.
8121         (elmo-imap4-response-bye-p): New macro.
8122         (elmo-imap4-response-error-text): Get text from BYE response.
8123         (elmo-imap4-read-response): Return if BYE response.
8124         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8125         (elmo-imap4-folder-exists-p): Ditto.
8126         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8127         (elmo-imap4-parse-bye): New function.
8128         (elmo-imap4-parse-response): Remove needless let.
8129         Call `elmo-imap4-parse-bye'.
8130
8131 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8132
8133         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8134         the mailbox does not exist.
8135         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8136
8137 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8138
8139         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8140
8141 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8142
8143         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8144
8145         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8146         (elmo-network-initialize-session-buffer): Defined.
8147
8148         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8149         Abolished.
8150         (mmelmo-imap4-get-mime-entity): Rewrite.
8151
8152         * elmo2.el (elmo-error): Capitalize error message.
8153
8154         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8155         (elmo-network-session-buffer): New macro.
8156         (elmo-network-open-session): Use it.
8157
8158         * elmo-imap4.el: Rewrite.
8159
8160 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8161
8162         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8163
8164 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8165
8166         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8167         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8168         (elmo-imap4-create-msgdb-from-overview-string): Use
8169         `elmo-msgdb-create-overview-from-buffer'.
8170
8171 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8172
8173         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8174         (elmo-imap4-default-hierarchy-delimiter): New variable.
8175         (elmo-imap4-list-folders): Use it.
8176
8177 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8178
8179         * elmo-net.el (elmo-network-open-session): Add user and
8180         stream-type for process-buffer name.
8181
8182         * elmo-pop3.el (elmo-network-initialize-session): Call
8183         buffer-disable-undo.
8184
8185         * elmo-imap4.el (elmo-network-initialize-session):
8186         Set current-buffer as an argument for `buffer-disable-undo'.
8187
8188         * elmo-pop3.el (elmo-network-close-session): Don't use
8189         `process-live-p'.
8190
8191         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8192         Set default as 'user.
8193
8194         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8195
8196         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8197         and `elmo-imap4-flush-connection'.
8198
8199         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8200         (elmo-pop3-get-spec): Assume auth as symbol.
8201         (elmo-open-network-stream): Moved to `elmo-net'.
8202
8203         * elmo-pop3.el (toplevel): Require 'elmo-net.
8204         Define `sasl-cram-md5' to silence byte compilier.
8205         (elmo-pop3-connection-cache) Abolished.
8206         (elmo-pop3-authenticator-alist) New variable.
8207         (elmo-pop3-session): Define.
8208         (elmo-pop3-connection-get-process): Abolished.
8209         (elmo-pop3-connection-get-buffer): Ditto.
8210         (elmo-pop3-close-connection): Ditto.
8211         (elmo-pop3-flush-connection): Ditto.
8212         (elmo-pop3-get-connection): Ditto.
8213         (elmo-pop3-get-session): New function.
8214         (Replacement for `elmo-pop3-get-connection').
8215         All other related modules are changed.
8216         (elmo-network-close-session): Define.
8217         (elmo-pop3-send-command): Abolished argument `buffer'.
8218         All other related modules are changed.
8219         (elmo-pop3-read-response): Likewise.
8220         (elmo-pop3-open-connection): Abolished.
8221         (elmo-pop3-auth-user): New function.
8222         (elmo-pop3-auth-apop): Ditto.
8223         (elmo-pop3-auth-cram-md5): Ditto.
8224         (elmo-pop3-auth-scram-md5): Ditto.
8225         (elmo-pop3-auth-digest-md5): Ditto.
8226         (elmo-network-initialize-session): Define.
8227         (elmo-network-authenticate-session): Ditto.
8228         (elmo-network-setup-session): Ditto.
8229
8230         * elmo-imap4.el (toplevel): Require 'elmo-net.
8231         (elmo-imap4-session): Define.
8232         (elmo-imap4-connection-cache): Abolished.
8233         (elmo-imap4-password-key): Ditto.
8234         (elmo-imap4-flush-connection): Ditto.
8235         (elmo-imap4-get-connection): Ditto.
8236         All other related modules are changed.
8237         (elmo-imap4-get-session): New function
8238         (Replacement for `elmo-imap4-get-connection').
8239         (elmo-imap4-read-response): Abolished argument `buffer'.
8240         All other related modules are changed.
8241         (elmo-imap4-send-command): Likewise.
8242         (elmo-imap4-select-folder): Abolished.
8243         All other related modules are changed.
8244         (elmo-imap4-select-mailbox): New function.
8245         (Replacement for `elmo-imap4-select-folder').
8246         (elmo-imap4-auth-login): Simplify.
8247         (Assume current buffer as process buffer)
8248         (elmo-imap4-auth-cram-md5): Ditto.
8249         (elmo-imap4-auth-digest-md5): Ditto.
8250         (elmo-imap4-login): Ditto.
8251         (elmo-imap4-open-connection): Abolished.
8252         (elmo-imap4-open-connection-1): Abolished.
8253         (elmo-network-initialize-sessoin): Define.
8254         (elmo-network-authenticate-session): Ditto.
8255         (elmo-network-setup-session): Ditto.
8256
8257         * elmo-net.el: New module.
8258
8259 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8260
8261         * elmo-util.el (elmo-define-error): New function.
8262
8263         * elmo2.el (elmo-error): Define.
8264         (elmo-open-error): Define.
8265         (elmo-authenticate-error): Define.
8266
8267         * elmo-imap4.el (elmo-imap4-error): Abolish.
8268         (elmo-imap4-error-type): Abolish.
8269         (elmo-imap4-error-process): Abolish.
8270         (elmo-imap4-error-message): Abolish
8271         (elmo-imap4-list-folders): Don't quote lambda.
8272         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8273         (elmo-imap4-parse-namespace): Ditto.
8274         (elmo-imap4-open-connection): Rewrite.
8275         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8276         (elmo-imap4-get-connection): Abolish local variable `result'.
8277
8278 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8279
8280         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8281         wrong-type-argument error when auth is nil.
8282
8283 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8284
8285         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8286         (elmo-default-nntp-stream-type): Ditto.
8287         (elmo-default-pop3-stream-type): Ditto.
8288         (elmo-network-stream-type-alist): Ditto.
8289         (elmo-default-imap4-ssl): Abolished.
8290         (elmo-default-nntp-ssl): Ditto.
8291         (elmo-default-pop3-ssl): Ditto.
8292
8293         * elmo-util.el: (toplevel): Removed needless requires.
8294         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8295         (elmo-open-network-stream): Open network stream according to
8296         the value of `elmo-network-stream-type-alist'.
8297         (elmo-get-network-stream-type): New function.
8298         (elmo-network-stream-type-spec-string): New macro.
8299         (elmo-network-stream-type-symbol): Ditto.
8300         (elmo-network-stream-type-function): Ditto.
8301
8302         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8303         network-stream-type. All other related portions are changed.
8304         (elmo-pop3-open-connection): Ditto.
8305
8306         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8307         network-stream-type. All other related portions are changed.
8308
8309         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8310         network-stream-type.All other related portions are changed.
8311         (elmo-imap4-error): New macro.
8312         (elmo-imap4-error-type): Ditto.
8313         (elmo-imap4-error-process): Ditto.
8314         (elmo-imap4-error-message): Ditto.
8315         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8316         (elmo-imap4-auth-cram-md5): Ditto.
8317         (elmo-imap4-auth-digest-md5): Ditto.
8318         (elmo-imap4-login): Ditto.
8319         (elmo-imap4-open-connection): Remove password entry if authentication
8320         was in vain.
8321         (elmo-imap4-user-at-host): Abolished.
8322         (elmo-imap4-password-key): New buffer local variable.
8323         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8324         using protocol, port, auth and stream-type.
8325
8326         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8327
8328 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8329
8330         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8331
8332         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8333
8334         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8335         (elmo-imap4-authenticator-alist): New variable.
8336         (elmo-imap4-open-connection-1): Rename from
8337         elmo-imap4-open-connection.
8338         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8339         only wraps elmo-imap4-open-connection-1.
8340         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8341         user-at-host.
8342         (elmo-imap4-auth-login): New function.
8343         (elmo-imap4-auth-cram-md5): New function.
8344         (elmo-imap4-auth-digest-md5): New function.
8345         (elmo-imap4-login): New function.
8346
8347 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8348
8349         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8350         function `error'.
8351
8352 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8353
8354         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8355
8356 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8357
8358         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8359
8360 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8361
8362         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8363         for server responses, quote `*' regardless of where it appears.
8364
8365 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8366
8367         * elmo-maildir.el (elmo-maildir-commit): New alias.
8368
8369 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8370
8371         * elmo-util.el (elmo-display-progress):
8372                 Use `progress-feedback-with-label'.
8373
8374 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8375
8376         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8377         (elmo-imap4-non-atom-char-regex): Ditto.
8378         (elmo-imap4-non-text-char-regex): Ditto.
8379         (elmo-imap4-literal-threshold): Ditto.
8380         (elmo-imap4-atom-p): New function.
8381         (elmo-imap4-quotable-p): Ditto.
8382         (elmo-imap4-nil): Ditto.
8383         (elmo-imap4-atom): Ditto.
8384         (elmo-imap4-quoted): Ditto.
8385         (elmo-imap4-literal-subr): Ditto.
8386         (elmo-imap4-literal): Ditto.
8387         (elmo-imap4-buffer-literal): Ditto.
8388         (elmo-imap4-string-subr): Ditto.
8389         (elmo-imap4-string): Ditto.
8390         (elmo-imap4-buffer-string): Ditto.
8391         (elmo-imap4-astring-subr): Ditto.
8392         (elmo-imap4-astring): Ditto.
8393         (elmo-imap4-buffer-astring): Ditto.
8394         (elmo-imap4-nstring): Ditto.
8395         (elmo-imap4-buffer-nstring): Ditto.
8396         (elmo-imap4-mailbox): New alias.
8397         (elmo-imap4-field-body): Ditto.
8398         (elmo-imap4-userid): Ditto.
8399         (elmo-imap4-password): Ditto.
8400         (elmo-imap4-format-quoted): New function.
8401         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8402         arguments and handle "atom", "quoted" and "literal" string here.
8403         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8404         `elmo-imap4-send-command'.
8405         (elmo-imap4-folder-exists-p): Likewise.
8406         (elmo-imap4-create-folder): Likewise.
8407         (elmo-imap4-delete-folder): Likewise.
8408         (elmo-imap4-rename-folder): Likewise.
8409         (elmo-imap4-max-of-folder): Likewise.
8410         (elmo-imap4-check-validity): Likewise.
8411         (elmo-imap4-sync-validity): Likewise.
8412         (elmo-imap4-server-diff): Likewise.
8413         (elmo-imap4-select-folder): Likewise.
8414         (elmo-imap4-copy-msgs): Likewise.
8415         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8416         (elmo-imap4-mark-set-on-msgs): Likewise.
8417         (elmo-imap4-read-part): Likewise.
8418         (elmo-imap4-read-msg): Likewise.
8419         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8420         `elmo-imap4-password' for `elmo-imap4-send-command'.
8421         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8422         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8423         `elmo-imap4-buffer-literal'.
8424         (elmo-imap4-append-msg): Likewise.
8425
8426         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8427         `delete' for removing dead connection from the connection cache.
8428         Move deletion of the process buffer after that.
8429         (elmo-imap4-list): Change `defsubst' to `defun'.
8430         (elmo-imap4-commit): Make error message verbose.
8431         (elmo-imap4-search): Ditto.
8432         (elmo-imap4-list): Ditto.
8433         (elmo-imap4-select-folder): Ditto.
8434         (elmo-imap4-copy-msgs): Ditto.
8435         (elmo-imap4-delete-msg-by-id): Ditto.
8436         (elmo-imap4-append-msg-by-id): Ditto.
8437         (elmo-imap4-append-msg): Ditto.
8438
8439 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8440
8441         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8442         when dired is used on XEmacs.
8443
8444 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8445
8446         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8447         instead of `append'.
8448         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8449         `elmo-plugged-p' directly.
8450         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8451         of `elmo-plugged-p' directly.
8452
8453         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8454         Eliminate unused variable.  Use `memq' for checking a process status.
8455         Use `cons' instead of `append' for updating the connection cache.
8456         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8457         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8458
8459 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8460
8461         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8462         `elmo-imap4-read-point' exactly.
8463
8464         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8465         the local variable `folder' to `mailbox'.
8466         Rename the argument `fld' to `folder'.
8467
8468 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8469
8470         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8471         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8472
8473 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8474
8475         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8476         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8477         (elmo-pop3-uidl-number-hash): Ditto.
8478         (elmo-pop3-size-hash): Ditto.
8479         (elmo-pop3-uidl-done): Ditto.
8480         (elmo-pop3-list-done): Ditto.
8481         (elmo-pop3-connection-get-process): New defmacro.
8482         (elmo-pop3-connection-get-buffer): Ditto.
8483         (elmo-pop3-close-connection): Delete buffer and process.
8484         (elmo-pop3-flush-connection): Don't delete buffer and process.
8485         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8486         Setup UIDL and size hash.
8487         (elmo-pop3-send-command-no-erase): Deleted
8488         (elmo-pop3-send-command): Added optional argument `no-erase'.
8489         (elmo-pop3-parse-uidl-response): New function.
8490         (elmo-pop3-parse-list-response): Set size hash.
8491         (elmo-pop3-list-location): New function.
8492         (elmo-pop3-list-by-uidl-subr): Ditto.
8493         (elmo-pop3-list-by-list): Ditto.
8494         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8495         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8496         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8497         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8498         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8499         Use uidl.
8500         (elmo-pop3-uidl-to-number): New function.
8501         (elmo-pop3-number-to-uidl): Ditto.
8502         (elmo-pop3-number-to-size): Ditto.
8503         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8504         Set number by use of uidl.
8505         (elmo-pop3-msgdb-create-message): Likewise.
8506         Set size, loc-alist in msgdb.
8507         (elmo-pop3-read-msg): Set number by use of uidl.
8508         Added optional argument `msgdb'.
8509         (elmo-pop3-delete-msg): Ditto.
8510         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8511         (elmo-pop3-commit): Close connection.
8512
8513         * elmo-pipe.el (elmo-pipe-max-of-folder):
8514         Bind `elmo-pop3-use-uidl' as nil.
8515         (elmo-pipe-drain): Ditto.
8516         Call `elmo-commit'.
8517
8518         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8519         (elmo-msgdb-overview-entity-set-size): New defsubst.
8520
8521 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8522
8523         * elmo-vars.el (elmo-use-killed-list): New variable
8524         (Renamed from `elmo-nntp-use-killed-list').
8525         (elmo-nntp-use-killed-list): Eliminated.
8526
8527         * elmo-msgdb.el (elmo-msgdb-expand-path):
8528         Changed expanding msgdb path for elmo-multi.
8529
8530         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8531         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8532         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8533         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8534         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8535         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8536         (toplevel): Deleted time-stamp line.
8537
8538         * elmo2.el (elmo-clear-killed ): Defined as function
8539         (Abolished defining as a backend function).
8540         All other related modules are changed.
8541
8542 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8543
8544         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8545
8546 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8547
8548         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8549
8550 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8551
8552         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8553
8554 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8555
8556         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8557         asynchronous folder check.
8558
8559         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8560
8561         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8562         `elmo-nntp-use-killed-list'.
8563         (elmo-nntp-list-folder): Use killed list.
8564         (elmo-nntp-max-of-folder): Ditto.
8565         (elmo-nntp-msgdb-create): Set killed list.
8566
8567         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8568
8569         * elmo2.el (elmo-clear-killed): New backend function.
8570         All other related modules are changed.
8571
8572 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8573
8574         * elmo-util.el (elmo-imap4-spec-folder): Use
8575         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8576         All callers changed.
8577
8578 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8579
8580         * mmelmo-2.el (initialize-instance):
8581         Use `mime-buffer-entity-buffer-internal' instead of
8582         `mime-entity-buffer'.
8583
8584         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8585         (mime-entity-body): Implemented.
8586         (mime-goto-header-start-point): Deleted.
8587         (mime-goto-body-end-point): Ditto.
8588         (mime-entity-point-min): Ditto.
8589         (mime-entity-point-max): Ditto.
8590         (mime-entity-children): Ditto.
8591         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8592         instead of `mime-entity-buffer'.
8593         (mime-entity-header-buffer): Ditto.
8594         (mime-entity-body-buffer): Ditto.
8595         (mime-write-entity-content): Ditto.
8596
8597         * pldap.el (ldap-static-if): New macro.
8598         (toplevel): Use it instead of `static-if'.
8599
8600 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8601
8602         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8603         included in `attrs' argument.
8604
8605 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8606
8607         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8608
8609         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8610         (ldap-ldif-safe-init-char-regexp): Ditto.
8611         (ldap-ldif-safe-string-regexp): Ditto.
8612         (ldap/ldif-safe-string-p): New macro.
8613         (ldap/ldif-insert-field): Ditto.
8614         (ldap-modify): Use it.
8615         (ldap-add): Ditto.
8616         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8617         (ldap-decode-attribute): Decode only when `attr' is consp.
8618         (ldap-delete): Bind `ret'.
8619         (toplevel): Require 'cl at compile time.
8620         Removed (require 'poe) and (require 'std11).
8621         (pldap-version): Eliminated.
8622         (ldap-search-basic): Removed auth and dn binding.
8623         (ldap-ldif-field-name-regexp): New constant.
8624         (ldap-ldif-field-head-regexp): Ditto.
8625         (ldap-ldif-next-field-head-regexp): Ditto.
8626         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8627         (ldap/field-end): New function.
8628         (ldap/field-body): Use it.
8629         (ldap/collect-field): Ditto.
8630         (ldap-search-basic): Use `ldap/field-body'.
8631
8632 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8633
8634         * pldap.el (ldap-default-attribute-encoder): New user option.
8635         (ldap/field-body): Decode base64 string.
8636         (ldap/collect-field): Ditto.
8637         (ldap-encode-attribute): New function.
8638         (ldap-add-entries): Use it.
8639         (ldap-modify-entries): Ditto.
8640         (ldap-search-entries): Enclosed decoding function with
8641         `with-temp-buffer' and set as unibyte.
8642         (ldap-search-basic): Set process buffer as unibyte.
8643
8644         * elmo-util.el (elmo-folder-identical-system-p):
8645         Eliminated name space checking.
8646
8647         * pldap.el: New module.
8648         toplevel: Changed condition to detect built-in ldap feature.
8649         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8650         (ldap-add): Added error handling.
8651         (ldap-modify): Ditto.
8652         (ldap-delete): Ditto.
8653
8654 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8655
8656         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8657         Initialize local variables with `let'.  Inline a temporary
8658         variable for the progress percentage.  Sort `setq' to reduce
8659         function call in the while-loop.
8660
8661         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8662         into the conditional branch.
8663
8664 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8665
8666         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8667         Move a conditional out of the while-loop.
8668
8669 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8670
8671         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8672         elmo-msgdb-overview-get-entity-by-number.
8673         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8674         throw.
8675
8676 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8677
8678         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8679         the local variable for a packed number self descriptively.
8680
8681 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8682
8683         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8684         * elmo-localdir.el (elmo-localdir-pack-number): Use
8685         `elmo-msgdb-overview-get-entity' instead of
8686         `elmo-msgdb-overview-get-entity-by-number'.
8687         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8688         (elmo-msgdb-search-overview-entity): Removed.
8689         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8690         by message-id or number.
8691         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8692         instead of `elmo-msgdb-overview-get-entity-by-number'.
8693
8694 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8695
8696         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8697         non-nil, use hash table for overview.
8698         (elmo-hash-maximum-size): New variable.
8699         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8700         (elmo-msgdb-make-overview-hashtb): New function.
8701         (elmo-msgdb-clear-overview-hashtb): New function.
8702         (elmo-clear-hash-val): New macro.
8703         All other related modules are changed.
8704
8705 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8706
8707         * elmo2.el (elmo-move-msgs): If there's other message with
8708         same message-id, don't use cache.
8709
8710 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8711
8712         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8713         number is already packed.
8714
8715 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8716
8717         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8718
8719 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8720
8721         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8722         All other related modules are changed.
8723
8724 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8725
8726         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8727         of refiling failure on Maildir.
8728
8729 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8730
8731         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8732         decoded mime-charset with cache.
8733         (elmo-msgdb-overview-entity-get-from): Ditto.
8734         (elmo-msgdb-overview-entity-get-subject): Ditto.
8735         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8736
8737 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8738
8739         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8740         (elmo-remove-passwd): Fill password with 0 before erase.
8741         * elmo-vars.el (elmo-passwd-life-time): New variable.
8742
8743 \f
8744 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8745
8746         * elmo-cache.el (elmo-buffer-cache-add):
8747         Set message cache buffer as unibyte.
8748
8749 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8750
8751         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8752         become nil.
8753
8754 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8755
8756         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8757         when display is finished.
8758         (elmo-nntp-msgdb-create): Ditto.
8759         (elmo-nntp-groups-read-response): Ditto.
8760         (elmo-nntp-retrieve-headers): Ditto.
8761         (elmo-nntp-msgdb-create-message): Ditto.
8762         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8763         (elmo-pop3-msgdb-create-message): Ditto.
8764
8765 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8766
8767         * elmo-maildir.el (elmo-maildir-msgdb-create):
8768         Use `elmo-msgdb-sort-by-date'.
8769
8770 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8771
8772         * elmo2.el (elmo-read-msg-no-cache):
8773         Eliminated arguments after `outbuf'.
8774         Don't use cache even if it exists.
8775         (elmo-read-msg): Don't pass arguments after `outbuf' to
8776         `elmo-read-msg-no-cache'.
8777
8778 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8779
8780         * elmo-archive.el (elmo-archive-list-folders):
8781         Use `file-name-directory' if base folder does not exist.
8782
8783 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8784
8785         * elmo-archive.el (elmo-archive-list-folders): Don't use
8786         `file-name-directory'.
8787
8788 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8789
8790         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8791         If `force' is non-nil, try flushing all operation queues.
8792
8793 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8794
8795         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8796         as-binary-process.
8797
8798 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8799
8800         * elmo-util.el (elmo-display-progress): Fixed.
8801
8802 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8803
8804         * elmo-util.el (elmo-display-progress): New function.
8805         All other related modules are changed.