f9b9951acb42f374097ccb6013df1c494e375628
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
2
3         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
4         args.
5         (elsp-bsfilter-list-spam-files): Ditto.
6
7 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8
9         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
10         (elmo-spam-bsfilter-max-messages-per-process): New use option.
11         (elmo-spam-bsfilter-debug): Fix a group.
12         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
13         `--homedir'.
14         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
15         (elsp-bsfilter-list-spam-files): New function.
16         (elmo-spam-list-spam-messages): Define.
17         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
18         (elmo-spam-bsfilter-register-messages): New function.
19         (elmo-spam-register-spam-messages): Define.
20         (elmo-spam-register-good-messages): Ditto.
21
22         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
23
24         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
25         `nconc' and `consp'.
26
27 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
28
29         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
30         hash table to test whether a location is exists.
31
32 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
33
34         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
35         even if some error occurred.
36
37         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
38         meaningless unwind-protect.
39
40         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
41         start-number correctly.
42         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
43         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
44
45 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
46
47         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
48         (elmo-folder-initialize): Use it.
49         (elmo-global-flag-replace-referrer): New function.
50
51         * elmo.el (toplevel): Added autoload setting for
52         `elmo-global-flag-replace-referrer'.
53         (elmo-folder-rename): Rewrite the last change use
54         `elmo-global-flag-replace-referrer'.
55
56         * elmo-pipe.el (elmo-folder-rename): Call
57         `elmo-global-flag-replace-referrer'.
58
59 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
60
61         * elmo.el (elmo-folder-rename): Set meta data for global flags
62         follow the rename.
63
64 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
65
66         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
67         as 'not-loaded.
68         (elmo-folder-close): Ditto.
69         (elmo-filter-folder-number-list-loaded-p): New function.
70         (elmo-filter-folder-number-list): Check whether loaded or not.
71         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
72         of `elmo-filter-folder-number-list-internal'.
73         (elmo-folder-delete-messages): Ditto.
74         (elmo-folder-length): Check whether number-list is loaded or not.
75
76 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
77
78         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
79         field `real field' into each element of list.
80         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
81         (elmo-msgdb-message-entity-field): Ditto.
82         (modb-entity-ml-info-real-fields): New function.
83
84         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
85
86         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
87         `elmo-msgdb-extra-fields'.
88
89 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
90
91         * elmo-util.el (elmo-passwd-alist-load): Move point to min
92         position before read.
93
94 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
95
96         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
97         (elmo-global-flags-initialize): Ditto.
98
99 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
100
101         * elmo-archive.el (toplevel): Don't require emu, std11
102         and elmo-localdir.
103
104         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
105         definition.
106
107 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
108
109         * elmo.el (elmo-folder-confirm-appends): Display folder name.
110
111 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
112
113         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
114         literals.
115
116 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
117
118         * elmo-maildir.el (elmo-maildir-list-location): Reduce
119         `elmo-get-last-modification-time' call.
120
121 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
122
123         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
124         expression.
125         (elmo-maildir-set-mark): Ditto.
126         (elmo-maildir-delete-mark): Ditto.
127
128 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
129
130         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
131         optional argument `separators'.
132
133 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
134
135         * elmo.el (cache-changed): Abolish.
136         (status-changed): New signal.
137         (elmo-message-killed-p): New generic function and define for
138         elmo-folder.
139         (elmo-folder-recover-messages): Ditto.
140         (elmo-message-set-cached): Emit signal `status-changed' instead of
141         `cache-changed'.
142         (elmo-message-status): New macro.
143         (elmo-message-status-folder): Ditto.
144         (elmo-message-status-number): Ditto.
145         (elmo-message-status-set-flags): Ditto.
146         (elmo-message-status-set-killed): Ditto.
147         (elmo-message-status-flags): New function.
148         (elmo-message-status-cached-p): Ditto.
149         (elmo-message-status-killed-p): Ditto.
150
151         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
152         `status-changed' instead of `cache-changed'.
153         (elmo-folder-recover-messages): Define.
154         (elmo-message-killed-p): Ditto.
155
156         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
157         `status-changed' instead of `cache-changed'.
158
159         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
160         (elmo-message-killed-p): Define.
161         (elmo-folder-recover-messages): Ditto.
162
163         * elmo-version.el (elmo-version): Up to 2.15.3.
164
165 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
166
167         * elmo-signal.el (elmo-signal-bindings): Use cons to append
168         element into list.
169         (elmo-define-signal-handler): Add docstring.
170         (elmo-define-signal-filter): Ditto.
171
172         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
173
174 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
175
176         * elmo-util.el (elmo-flatten): Don't use recursive call.
177
178         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
179         assignment.
180         (elmo-folder-message-make-temp-files): Use `number-to-string'
181         instead of `int-to-string'.
182
183 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
184
185         * elmo-search.el (elmo-folder-delete-messages): Define.
186
187 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
188
189         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
190         customization type.
191         (elmo-mailing-list-count-spec-list): Ditto.
192
193         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
194         for `list-id'.
195
196 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
197
198         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
199         handling.
200
201 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
202
203         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
204         (elmo-mailing-list-count-spec-list): Ditto.
205
206         * elmo-util.el (elmo-map-until-success): New function.
207         (elmo-string-match-substring): Ditto.
208         (elmo-find-list-match-value): Ditto.
209
210         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
211         Removed.
212         (modb-entity-extract-ml-info-from-subject): Ditto.
213         (modb-entity-extract-ml-info-from-return-path): Ditto.
214         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
215         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
216         (modb-entity-extract-ml-info-from-mailman): Ditto.
217         (modb-entity-extract-mailing-list-info-functions): Ditto.
218         (modb-entity-extract-mailing-list-info): Rewrite with
219         `elmo-find-list-match-value'.
220
221 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
222
223         * elmo-net.el (elmo-network-session-retry-count): New user option.
224         (elmo-network-session-buffer-name): New internal function.
225         (elmo-network-session-buffer-create): Ditto.
226         (elmo-network-open-session): Retry open network session
227         `elmo-network-session-retry-count' times.
228
229 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
230
231         * elmo-util.el (elmo-list-filter): Rewritten.
232
233 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
234
235         * elmo-util.el (elmo-string-member): Allow symbol element in list.
236
237 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
238
239         * elmo-search.el (elmo-make-search-engine): Use prefix
240         `elmo-search-' for require symbol instead of `else-'.
241         (elmo-search-engine-extprog): New class.
242         (elmo-search-engine-do-search): Remove nil from argument
243         list. Added argument pattern to evaluate element as function.
244         (elmo-search-engine-local-file): Derived from
245         `elmo-search-engine-extprog'.
246         (elmo-search-engine-create-message-entity): Check existance of file.
247         (elmo-search-engine-fetch-message): Ditto.
248         (elmo-search-namazu-index): Follow the API change.
249         (elmo-search-grep-target): Ditto.
250
251 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
252
253         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
254         characters of working buffer.
255
256         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
257         Does not bind `default-mime-charset'.
258         (elmo-msgdb-create-message-entity-from-buffer): Removed
259         unnecessary local bind.
260
261         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
262         function.
263         (modb-entity-extract-mailing-list-info-functions): Added it.
264
265 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
266
267         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
268         when number and message-id are non-nil.
269
270         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
271
272         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
273         conditional steatment.
274         (elmo-pop3-auth-apop): Likewise.
275         (elmo-network-authenticate-session): Likewise.
276
277 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
278
279         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
280         symbol `fill-column'.
281         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
282         decode field value.
283
284         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
285         (elmo-decoded-field-body): Ditto.
286
287 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
288
289         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
290         `tokens' to `params'.
291
292 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
293
294         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
295         working buffer.
296
297 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
298
299         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
300         decide index.
301
302 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
303
304         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
305         Set default value as nil.
306         (toplevel): Register search engines by
307         `elmo-search-register-engine' if there are not defined.
308
309         * elmo.el (autoload): Added autoload setting for
310         `elmo-search-register-engine'.
311
312 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
313
314         * elmo.el (toplevel): `[' is redefined as the prefix of the search
315         folder instead of nmz folder.
316         (elmo-nmz-default-index-path): Added obsolete variable setting.
317         (elmo-nmz-index-alias-alist): Ditto.
318         (elmo-nmz-use-drive-letter): Ditto.
319
320         * elmo-search.el (elmo-search-register-engine): New function.
321
322         * elmo-nmz.el: Removed.
323
324         * elmo-version.el (elmo-version): Up to 2.15.2.
325
326 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
327
328         * elmo-search.el: New file.
329
330 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
331
332         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
333         condition `larger' and `smaller'.
334
335 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
336
337         * elmo-util.el (elmo-safe-filename): Rewrite to replace
338         `"' (double quote) into "_Q_".
339
340 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
341
342         * elmo-net.el (elmo-net-quote-chars): Abolish.
343         (elmo-net-format-quoted): Ditto.
344
345 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
346
347         * elmo.el (elmo-get-folder-function): New variable.
348         (elmo-get-folder): New function.
349         (elmo-folder-rename): Call `elmo-make-folder' with specified
350         mime-charset.
351
352         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
353         `elmo-make-folder'.
354         (elmo-split-subr): Ditto.
355
356         * elmo-multi.el (elmo-folder-initialize): Ditto.
357
358         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
359
360         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
361         (elmo-flag-get-folder): Ditto.
362
363         * elmo-filter.el (elmo-folder-initialize): Ditto.
364
365         * elmo-access.el (elmo-folder-initialize): Ditto.
366         (elmo-access-folder-update-children): Ditto.
367
368         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
369         (elmo-dop-queue-flush): Ditto.
370         (elmo-folder-append-buffer-dop-delayed): Ditto.
371         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
372         mime-charset.
373
374         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
375         instead of `elmo-make-folder'.
376         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
377         destination folder instead of send `elmo-folder-rename-internal'.
378
379         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
380         slot of subfolder instead of create it.
381
382 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
383
384         * elmo-util.el (elmo-collect-separators): New function.
385         (elmo-collect-separators-internal): Ditto.
386         (elmo-collect-trail-separators): Ditto.
387         (elmo-parse-separated-tokens): Ditto.
388         (elmo-parse-separated-tokens-internal): Ditto.
389         (elmo-quote-syntactical-element): Ditto.
390
391         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
392         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
393
394         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
395         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
396         (elmo-nntp-folder-list-subfolders): Quote a user name.
397
398         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
399         (elmo-net-parse-network): Abolish.
400         (elmo-net-folder-set-parameters): New function.
401         (elmo-folder-initialize): Follow the above change.
402
403         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
404         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
405         (elmo-folder-list-subfolders): Use
406         `elmo-quote-syntactical-element' instead of
407         `elmo-net-format-quoted' to quote mailbox and user name.
408
409 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
410
411         * elmo-util.el (elmo-token-valid-p): New function.
412         (elmo-parse-token): Add optional argument `requirement'.
413         (elmo-parse-prefixed-element): Likewise.
414
415         * elmo-net.el (elmo-net-quote-chars): Renamed from
416         `elmo-net-quote-chars-regexp'.
417         (elmo-net-format-quoted): Add optional argument `extra-chars'.
418
419         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
420         by info document. Check token `uidl' is started an alphabet.
421
422         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
423         by info document. Check token `user' is started an alphabet.
424
425         * elmo-imap4.el (elmo-folder-initialize): Ditto.
426         (elmo-folder-list-subfolders): Quote user.
427
428 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
429
430         * elmo-util.el (elmo-quoted-specials-list): New constant.
431         (elmo-quoted-token): New function.
432
433         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
434         (elmo-net-format-quoted): New function.
435         (elmo-net-parse-network): Ditto.
436         (elmo-folder-initialize): Use it.
437
438         * elmo-nntp.el (elmo-folder-initialize): Use
439         `elmo-net-parse-network' to parse network specification instead of
440         `elmo-folder-initialize#elmo-net'.
441
442         * elmo-pop3.el (elmo-folder-initialize): Ditto.
443
444         * elmo-imap4.el (elmo-folder-initialize): Ditto.
445         (elmo-folder-list-subfolders): Quote folder name by
446         `elmo-net-format-quoted'.
447
448 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
449
450         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
451         (elmo-folder-search): Use it.
452
453 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
454
455         * modb-standard.el (modb-standard-loaded-message-id): Use
456         `elmo-msgdb-message-entity-field'.
457
458 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
459
460         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
461         without filename.
462
463 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
464
465         * elmo-util.el (elmo-set-auto-coding): New function.
466         (elmo-object-load): Use it.
467
468 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
469
470         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
471         (elmo-time<): Define as alias of `elmo-time-less-p'.
472         (elmo-time-to-datevec): New function.
473
474         * elmo-date.el (elmo-time-to-days): New function.
475
476 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
477
478         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
479         is not cons cell.
480
481 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
482
483         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
484         parenthesis.
485
486         * elmo-util.el (elmo-map-recursive): New function.
487
488         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
489         (modb-entity-encode-string-recursive): Ditto.
490
491 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
492
493         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
494         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
495         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
496         compare sequence number when last modified time is nil.
497
498 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
499
500         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
501
502         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
503
504 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
505
506         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
507         modification time of the file.
508
509 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
510
511         * elmo-util.el (elmo-condition-optimize): Discriminated against
512         preserved fields, extra fields and the other weight.
513
514 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
515
516         * modb-entity.el (initialize-instance): Define.
517         (modb-entity-handler-mime-charset): New internal function.
518         (modb-standard-entity-set-field): Use it.
519         (elmo-msgdb-message-entity-field): Ditto.
520         (elmo-msgdb-message-entity-field): Ditto.
521
522         * modb.el (elmo-msgdb-match-condition): Rewrite with
523         `elmo-condition-match'.
524         (elmo-msgdb-match-condition-primitive): New function.
525
526         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
527         arguments `flags' and `numbers'.
528         (elmo-msgdb-match-condition-primitive): Abolished (merged to
529         `elmo-msgdb-message-match-condition').
530         (modb-buffer-entity-handler): New class.
531
532         * elmo.el (elmo-folder-search): Optimize condition to use
533         `elmo-condition-optimize'.
534         (elmo-message-buffer-match-condition): New function.
535         (elmo-message-match-condition): Use
536         `elmo-message-buffer-match-condition' instead of
537         `elmo-buffer-field-condition-match'.
538
539         * elmo-util.el (elmo-condition-match): New function.
540         (elmo-condition-optimize): Ditto.
541         (elmo-buffer-field-primitive-condition-match): Abolish.
542         (elmo-buffer-field-condition-match): Ditto.
543
544         * elmo-archive.el (elmo-archive-field-condition-match): Use
545         `elmo-message-buffer-match-condition' instead of
546         `elmo-buffer-field-condition-match'.
547
548 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
549
550         * elmo-flag.el (elmo-global-flags-initialize): Check the
551         existence of the flag directory.
552
553 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
554
555         * elmo-access.el (elmo-folder-initialize): Call
556         `elmo-multi-connect-signals'.
557
558         * elmo-pipe.el (elmo-folder-close): Define.
559
560         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
561         children folders.
562
563         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
564         with target folder.
565
566         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
567         `number'.
568
569         * elmo-multi.el (elmo-message-entity): Don't use return value of
570         `elmo-message-entity-set-number'.
571
572 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
573
574         * modb.el (modb-generic): Added slot `mime-charset'.
575
576         * modb-standard.el (modb-standard): Added slot `overview-handler'.
577         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
578         and `modb-entity-handler-dump-parameters'.
579         (modb-standard-default-entity-handler): Abolish.
580         (elmo-msgdb-message-entity-handler): Save created handler by
581         instance slot.
582
583         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
584         (modb-entity-handler-list-parameters): New method.
585         (modb-entity-handler-equal-p): New function.
586         (modb-entity-handler-dump-parameters): Ditto.
587         (modb-entity-parse-address-string): Encode return value.
588         (modb-entity-make-address-string): Decode argument value.
589         (modb-entity-decode-string-recursive): New function.
590         (modb-entity-encode-string-recursive): Ditto.
591         (modb-standard-entity-normalizer): Set to encode field value.
592         (modb-standard-entity-specializer): Follow the above change.
593         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
594         mime-charset of handler.
595         (elmo-msgdb-message-entity-field): Ditto.
596         (elmo-msgdb-copy-message-entity): Fixed reference to internal
597         structure.
598         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
599
600         * elmo.el (elmo-folder): Added slot `mime-charset'.
601         (elmo-make-folder): Added argument `mime-charset'.
602         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
603         `mime-charest'.
604
605         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
606         (elmo-make-msgdb): Likewise.
607
608         * elmo-internal.el (elmo-internal-folder-initialize): Call
609         `luna-make-entity' with :mime-charset parameter.
610
611 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
612
613         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
614         encoded words in `from' and `subject' field.
615
616 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
617
618         * modb.el (elmo-msgdb-message-field): Add argument `type'.
619         (elmo-msgdb-match-condition): Get handler from entity instead of
620         msgdb.
621
622         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
623         (modb-standard-load-entity): Treat new file format.
624         (modb-standard-save-entity-1): Save as new file format.
625         (modb-standard-save-entity): Split messages into section here.
626         (elmo-msgdb-message-field): Follow the API change.
627         (modb-standard-default-entity-handler): New internal variable.
628         (elmo-msgdb-message-entity-handler): Define.
629
630         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
631         to `elmo-vars.el'.
632         (modb-entity-field-extractor-alist): New user option.
633         (elmo-msgdb-message-entity-field): Removed argument `decode' and
634         added argument `type'.
635         (elmo-msgdb-copy-message-entity): Add optional argument
636         `make-handler'.
637         (modb-set-field-converter): New function.
638         (modb-convert-field-value): Ditto.
639         (modb-entity-string-decoder): Ditto.
640         (modb-entity-string-encoder): Ditto.
641         (modb-entity-parse-date-string): Ditto.
642         (modb-entity-make-date-string): Ditto.
643         (modb-entity-mime-decoder): Ditto.
644         (modb-entity-mime-encoder): Ditto.
645         (modb-entity-address-list-decoder): Ditto.
646         (modb-entity-address-list-encoder): Ditto.
647         (modb-entity-parse-address-string): Ditto.
648         (modb-entity-make-address-string): Ditto.
649         (modb-entity-create-field-indices): Ditto.
650         (modb-legacy-entity-field-slots): New constant.
651         (modb-legacy-entity-field-indices): Ditto.
652         (modb-legacy-entity-normalizer): New variable.
653         (modb-legacy-entity-specializer): Ditto.
654         (modb-legacy-entity-field-index): New macro.
655         (modb-legacy-entity-set-field): New function.
656         (modb-legacy-make-message-entity): Rewrite.
657         (elmo-msgdb-create-message-entity-from-buffer): Use
658         `elmo-msgdb-get-references-from-buffer'. Use
659         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
660         Use `modb-legacy-entity-set-field' instead of
661         `elmo-msgdb-message-entity-set-field'.
662         (elmo-msgdb-message-entity-field): Rewrite.
663         (elmo-msgdb-message-entity-set-field): Ditto.
664         (elmo-msgdb-copy-message-entity): Make new entity by
665         `make-handler' if it specified.
666         (elmo-msgdb-message-match-condition): Define a method of
667         `modb-entity-handler' and follow the API change.
668         (modb-standard-entity-handler): New class.
669         (modb-entity-extract-ml-info-from-x-sequence): New function.
670         (modb-entity-extract-ml-info-from-subject): Ditto.
671         (modb-entity-extract-ml-info-from-return-path): Ditto.
672         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
673         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
674         (modb-entity-extract-mailing-list-info): Ditto.
675         (modb-entity-extract-mailing-list-info-functions): New variable.
676
677         * elmo.el (elmo-message-field): Add optional argument `type'.
678
679         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
680         from `modb-entity.el'.
681
682         * elmo-util.el (elmo-object-load): Decode by coding-system from
683         `set-auto-coding-function'.
684         (elmo-object-save): Use `detect-mime-charset-region' and add
685         coding cookie if encode.
686         (elmo-msgdb-get-references-from-buffer): New function.
687         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
688
689         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
690
691         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
692         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
693         instead of `shimbun-make-header' and follow the API change.
694         (elmo-shimbun-update-overview): Follow the API change.
695         (elmo-map-folder-list-message-locations): Ditto.
696
697         * elmo-pipe.el (elmo-message-field): Ditto.
698
699         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
700         Ditto.
701
702         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
703
704         * elmo-multi.el (elmo-message-field): Ditto.
705
706         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
707         (elmo-msgdb-sort-by-date): Ditto.
708         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
709         `elmo-message-entity-field'.
710         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
711         change.
712         (elmo-msgdb-overview-entity-get-from): Ditto.
713         (elmo-msgdb-overview-entity-get-subject): Ditto.
714         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
715         (elmo-msgdb-overview-entity-get-date): Ditto.
716         (elmo-msgdb-overview-entity-get-to): Ditto.
717         (elmo-msgdb-overview-entity-get-cc): Ditto.
718
719         * elmo-mime.el (elmo-message-mime-entity): Ditto.
720         (elmo-mime-collect-message/partial-pieces): Ditto.
721
722         * elmo-filter.el (elmo-message-field): Ditto.
723
724         * elmo-date.el (elmo-datevec-to-time): New function.
725         (elmo-time-parse-date-string): Ditto.
726         (elmo-time-make-date-string): Ditto.
727         (elmo-time<): Ditto.
728
729         * elmo-version.el (elmo-version): Up to 2.15.1.
730
731 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
732
733         * elmo-flag.el (elmo-global-flags-initialize): Don't include
734         member of elmo-local-flags.
735
736 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
737
738         * elmo-version.el (elmo-version): Up to 2.15.0.
739
740 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
741
742         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
743         `ignore-msgdb' is non-nil.
744
745 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
746
747         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
748         (elmo-condition-in-msgdb-p): Ditto.
749         (elmo-file-field-primitive-condition-match): Ditto.
750         (elmo-file-field-condition-match): Ditto.
751
752         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
753
754 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
755
756         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
757         subdirectories here.
758         (elmo-global-flags-initialize): New function.
759
760         * elmo.el (toplevel): Added autoload setting for
761         `elmo-global-flags-initialize'.
762
763 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
764
765         * elmo.el (message-number-changed): Define new signal.
766         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
767         message-number-changed signal.
768         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
769         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
770         Respect `elmo-pack-number-check-strict'.
771
772 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
773
774         * elmo-signal.el (elmo-connect-signal): Document.
775         (elmo-emit-signal): Ditto.
776         (elmo-emit-signal): It should pass source argument to filter and
777         handler, not slot-source.
778
779 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
780
781         * modb.el (elmo-msgdb-update-entity): New API and define generic
782         implement.
783
784         * modb-standard.el (elmo-msgdb-update-entity): Define.
785
786         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
787         API and define generic implement.
788
789         * elmo.el (update-overview): New singnal.
790
791         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
792         `elmo-msgdb-update-entity' and emit signal `update-overview'.
793         (elmo-message-entity-parent): Define.
794
795         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
796         `update-overview'.
797
798         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
799
800         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
801
802 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
803
804         * elmo.el (elmo-folder-synchronize): Sort the return value of
805         `elmo-list-diff'.
806
807         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
808         list.
809
810 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
811
812         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
813         `default-enable-multibyte-characters'.
814         (elmo-object-load): Use `with-temp-buffer' instead of
815         `elmo-set-work-buf'.
816         (elmo-object-save): Ditto.
817         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
818         `elmo-set-work-buf'.
819         (elmo-decoded-field-body): Ditto.
820
821         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
822
823         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
824         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
825
826         * elmo-version.el (elmo-version): Up to 2.13.3.
827
828 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
829
830         * elmo-util.el (elmo-list-diff): Fix the last change.
831         Reverse order of result lists.
832
833 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
834
835         * modb-standard.el (elmo-msgdb-set-flag): Use
836         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
837         (elmo-msgdb-unset-flag): Ditto.
838
839         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
840         `elmo-list-diff'.
841
842         * elmo-util.el (elmo-list-diff): Rewrite.
843         (elmo-list-diff-nonsortable): New function.
844
845 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
846
847         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
848         `elmo-multibypte-buffer-name'.  All referers are updated.
849
850 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
851
852         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
853         (elmo-mime-entity-fragment-p): New function.
854         (mime-elmo-buffer-entity): Added slot `reassembled'.
855         (elmo-message-mime-entity): Added 4th argument `reassemble'.
856         (elmo-message-mime-entity-internal): New function (renamed from
857         `elmo-message-mime-entity').
858         (elmo-mime-inherit-field-list-from-enclosed): New constant.
859         (elmo-mime-make-reassembled-mime-entity): New function.
860         (elmo-message-reassembled-mime-entity): Ditto.
861         (elmo-mime-collect-message/partial-pieces): Ditto.
862
863 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
864
865         * elmo.el (elmo-message-fetch-string): Disable multibyte.
866
867         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
868         (elmo-with-enable-multibyte): New macro.
869
870         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
871
872 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
873
874         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
875         argument `number'.
876         (elmo-filter-connect-signals): Follow the above change.
877
878 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
879
880         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
881
882         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
883         that only the first flag is used.
884
885 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
886
887         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
888         if available.
889
890 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
891
892         * elmo-signal.el: New file.
893
894         * elmo.el (toplevel): Require elmo-signal.
895         (flag-changing, flag-changed, cache-changed): New signal.
896         (elmo-folder): Remove slog `handlers'.
897         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
898         `elmo-folder-notify-event'.
899         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
900         (elmo-folder-unset-flag): Ditto.
901         (elmo-event-handler): Abolish.
902         (elmo-event-handler-flag-changed): Ditto.
903         (elmo-event-handler-cache-changed): Ditto.
904         (elmo-folder-add-handler): Ditto.
905         (elmo-folder-remove-handler): Ditto.
906         (elmo-folder-notify-event): Ditto.
907
908         * elmo-pipe.el (toplevel): Require elmo-signal.
909         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
910         (elmo-pipe-connect-signals): New function.
911         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
912         (elmo-folder-set-flag): Ditto.
913         (elmo-folder-unset-flag): Ditto.
914         (elmo-message-set-cached): Ditto.
915
916         * elmo-multi.el (toplevel): Require elmo-signal.
917         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
918         (elmo-multi-connect-signals): New function.
919         (elmo-multi-map-numbers): Ditto.
920         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
921         (elmo-message-fetch): Ditto.
922         (elmo-folder-set-flag): Ditto.
923         (elmo-folder-unset-flag): Ditto.
924
925         * elmo-filter.el (toplevel): Require elmo-signal.
926         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
927         (elmo-filter-connect-signals): New function.
928         (elmo-filter-add-flag-count): Ditto.
929         (elmo-message-fetch): Does not call
930         `elmo-filter-folder-countup-message-flags' and
931         `elmo-folder-notify-event'.
932         (elmo-message-set-cached): Ditto.
933         (elmo-folder-set-flag): Ditto.
934         (elmo-folder-unset-flag): Ditto.
935
936         * elmo-version.el (elmo-version): Up to 2.13.2.
937
938 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
939
940         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
941         `flags'.
942
943 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
944
945         * elmo-filter.el (elmo-message-set-cached): Call
946         `elmo-folder-notify-event' with event `cache-changed'.
947
948         * elmo-multi.el (elmo-message-set-cached): Ditto.
949
950         * elmo-pipe.el (elmo-message-set-cached): Ditto.
951
952 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
953
954         * elmo.el (elmo-folder-encache): Abolish.
955
956 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
957
958         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
959         (elmo-folder-next-message-number-dop): Return appropriate negative
960         integer.
961
962 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
963
964         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
965         clearing pending operations.
966         (elmo-folder-next-message-number-dop): Return appropriate negative
967         integer.
968
969 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
970
971         * elmo.el (toplevel): Added autoload setting for `md5'.
972         (elmo-msgdb-path-encode-threshold): New user option.
973         (elmo-folder-msgdb-path): Encode msgdb path if its length is
974         longer than `elmo-msgdb-path-encode-threshold'.
975
976         * elmo-flag.el (elmo-global-mark-migrate): Use
977         `elmo-folder-expand-msgdb-path' instead of
978         `elmo-folder-msgdb-path'.
979
980 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
981
982         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
983         element of the difference is nil.
984
985 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
986
987         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
988         to the check logic of file systems which are weak in colon character.
989
990 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
991
992         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
993
994 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
995
996         * elmo-maildir.el (elmo-maildir-move-file): New function.
997         (elmo-folder-append-buffer): Use it.
998         (elmo-folder-append-messages): Ditto.
999         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1000
1001         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1002         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1003
1004         * elmo-maildir.el (elmo-maildir-separator): New user option.
1005         (elmo-maildir-adjust-separator): New macro.
1006         (elmo-maildir-list-location): Use it.
1007         (elmo-maildir-update-current): Ditto.
1008         (elmo-maildir-set-mark): Ditto.
1009         (elmo-maildir-delete-mark): Ditto.
1010         (These changes are based on Hiroya Murata's patch [wl: 13437])
1011
1012 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1013
1014         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1015
1016 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1017
1018         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1019         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1020         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1021
1022 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1023
1024         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1025         Use `with-temp-buffer'.
1026
1027 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1028
1029         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1030
1031         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1032         `wl-read-search-condition').
1033         (elmo-read-search-condition-internal): Likewise.
1034
1035         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1036         (elmo-flag-valid-p): New function.
1037         (elmo-folder-initialize): Check flag name is valid.
1038
1039 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1040
1041         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1042         delimiter to obtain root mailbox itself.
1043
1044 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1045
1046         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1047         type mismatch.
1048
1049 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1050
1051         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1052         as t.
1053
1054 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1055
1056         * elmo-shimbun.el (toplevel): Require cl at compile.
1057
1058         * elmo-nntp.el (toplevel): Ditto.
1059
1060         * elmo-nmz.el (toplevel): Ditto.
1061
1062         * elmo-multi.el (toplevel): Ditto.
1063
1064         * elmo-file.el (toplevel): Ditto.
1065
1066         * elmo-dop.el (toplevel): Ditto.
1067
1068         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1069
1070 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1071
1072         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1073         as nil.
1074
1075         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1076         size of elmo-message-fetch-internal is 0 byte.
1077
1078 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1079
1080         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1081
1082 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1083
1084         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1085         always plugged.
1086
1087 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1088
1089         * elmo-maildir.el (elmo-map-message-fetch): Call
1090         `elmo-map-folder-set-flag'.
1091
1092         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1093         (elmo-message-fetch): Merge from
1094         `elmo-message-fetch-with-cache-process'.
1095
1096         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1097         (elmo-message-fetch): Define.
1098
1099         * elmo-nntp.el (elmo-message-fetch): Renamed from
1100         `elmo-message-fetch-with-cache-process'.
1101
1102         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1103         (elmo-message-fetch): Define.
1104
1105         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1106         search-key.
1107
1108         * elmo-shimbun.el (shimbun-mua-search-id): Use
1109         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1110         (elmo-shimbun-folder-shimbun-header): Ditto.
1111         (elmo-shimbun-get-headers): Ditto.
1112         (elmo-shimbun-update-overview): Ditto.
1113
1114         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1115
1116         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1117         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1118
1119 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1120
1121         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1122         message is cached.
1123         (elmo-message-fetch-string): Fixed argument.
1124
1125 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1126
1127         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1128         exchange order of arguments `section' and `unread'.
1129         (elmo-message-encache): Follow the API change.
1130         (elmo-message-match-condition): Ditto.
1131         (elmo-generic-folder-append-messages): Ditto.
1132         (elmo-message-fetch-string): New function.
1133
1134         * elmo-split.el (elmo-split-subr): Ditto.
1135
1136         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1137
1138         * elmo-pipe.el (elmo-message-fetch): Ditto.
1139
1140         * elmo-multi.el (elmo-message-fetch): Ditto.
1141
1142         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1143
1144         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1145
1146         * elmo-filter.el (elmo-message-fetch): Ditto.
1147
1148         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1149
1150         * elmo-imap4.el (mime-imap-location-section-body): Use
1151         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1152         follow the API change.
1153
1154 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1155
1156         * elmo-access.el: New file.
1157
1158         * elmo-null.el: Ditto.
1159
1160         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1161
1162 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1163
1164         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1165         (elmo-network-session): New attribute `last-accessed'.
1166         (elmo-network-get-session): Discard network cache if elapsed time
1167         since last-accessed is larger than elmo-network-session-idle-timeout.
1168
1169 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1170
1171         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1172         and added `number', `require-entireness'.
1173         (elmo-find-fetch-strategy): Rewrite.
1174         (elmo-message-fetch): Unset `unread' flag when argument unread is
1175         non-nil.
1176
1177         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1178
1179         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1180         (elmo-message-fetch): Notify event `flag-changed'.
1181
1182         * elmo-pipe.el: Likewise.
1183
1184         * elmo-mime.el (elmo-mime-entity): New class.
1185         (elmo-mime-entity-display-p): New generic function.
1186         (elmo-mime-entity-display): Ditto.
1187         (elmo-mime-entity-display-as-is): Ditto.
1188         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1189         elmo-mime-entity.
1190         (elmo-make-mime-message-location): Removed.
1191         (elmo-mime-message-display): Ditto.
1192         (elmo-mime-display-as-is): Ditto.
1193         (elmo-message-mime-entity): New function.
1194
1195         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1196
1197         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1198         change.
1199         (elmo-message-fetch): Re-count flagged message number and notify
1200         event `flag-changed'.
1201
1202         * elmo-version.el (elmo-version): Up to 2.13.1.
1203
1204 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1205
1206         * elmo-filter.el (elmo-message-field): Define.
1207         (elmo-message-set-field): Ditto.
1208
1209 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1210
1211         * elmo.el (elmo-message-set-cached): Call
1212         `elmo-folder-notify-event' with cache-changed.
1213         (elmo-event-handler-cache-changed): New generic function.
1214
1215 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1216
1217         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1218         instead of elmo-add-name-to-file.
1219         (elmo-folder-append-messages): Ditto.
1220
1221 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1222
1223         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1224
1225 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1226
1227         * elmo-version.el (elmo-version): Up to 2.13.0.
1228
1229         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1230         `auto'.
1231
1232         * modb-standard.el (modb-standard-economize-entity-size): Changed
1233         default value to `t'.
1234
1235         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1236         `standard'.
1237
1238         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1239         after parsing greeting string.
1240
1241 2004-11-23  Daishi Kato <daishi@axlight.com>
1242
1243         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1244         New user option.
1245         (elmo-spam-spamoracle-call): Use it.
1246
1247 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1248
1249         * elmo.el (elmo-message-accessible-p): Message in dop spool
1250         is accessible.
1251
1252 2004-11-23  Daishi Kato <daishi@axlight.com>
1253
1254         * elsp-spamoracle.el: New file.
1255
1256 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1257
1258         * elmo.el (elmo-message-flags-for-append): New function.
1259         (elmo-generic-folder-append-messages): Use it.
1260
1261         * elmo-split.el (elmo-split-subr): Ditto.
1262
1263         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1264         `flags' and use elmo-folder-append-buffer instead of
1265         write-region-as-binary.
1266         (elmo-dop-filter-pending-messages): New function.
1267         (elmo-folder-append-buffer-dop): Call
1268         elmo-dop-spool-folder-append-buffer with `flag'.
1269         (elmo-folder-set-flag-dop): Filter messages by
1270         elmo-dop-filter-pending-messages.
1271         (elmo-folder-unset-flag-dop): Ditto.
1272         (elmo-folder-append-buffer-dop-delayed): Use
1273         elmo-message-flags-for-append to get flags of the message and
1274         simplify.
1275
1276 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1277
1278         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1279
1280 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1281
1282         * elmo.el (elmo-folder): Added handlers slot.
1283         (elmo-event-handler): New class.
1284         (elmo-event-handler-flag-changed): New API.
1285         (elmo-folder-add-handler): New function.
1286         (elmo-folder-remove-handler): Ditto.
1287         (elmo-folder-notify-event): Ditto.
1288         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1289         `flag-changed'.
1290         (elmo-folder-unset-flag): Ditto.
1291
1292         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1293         (elmo-folder-unset-flag): Ditto.
1294
1295         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1296         (elmo-folder-unset-flag): Ditto.
1297
1298         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1299         (elmo-folder-unset-flag): Ditto.
1300
1301         * elmo-version.el (elmo-version): Up to 2.11.33.
1302
1303 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1304
1305         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1306
1307 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1308
1309         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1310
1311         * elmo-flag.el (elmo-folder-unset-flag): Define.
1312         (elmo-global-flag-detach): Do process when the flag is not target
1313         flag.
1314
1315 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1316
1317         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1318         variable.
1319         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1320
1321 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1322
1323         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1324         function.
1325         (elmo-folder-delete-messages): Detach messages before delete
1326         messages from target folder.
1327         (elmo-folder-detach-messages): Set updated number-list to slot.
1328
1329 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1330
1331         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1332
1333 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1334
1335         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1336
1337 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1338
1339         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1340         internal use only).
1341         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1342         not modified.
1343         (elmo-folder-delete-messages): Define.
1344         (elmo-folder-move-messages): Don't call
1345         `elmo-folder-detach-messages'.
1346         (elmo-folder-synchronize): Rewrite.
1347         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1348
1349         * elmo-util.el (elmo-last): New function.
1350         (elmo-set-list): Ditto.
1351         (elmo-number-set-delete-list): Ditto.
1352         (elmo-number-set-delete): Ditto.
1353
1354         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1355
1356         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1357         `elmo-folder-delete-messages' and don't delete location map.
1358         (elmo-folder-detach-messages): Define.
1359
1360         * elmo-imap4.el (elmo-folder-delete): Use
1361         `elmo-folder-delete-messages-internal' instead of
1362         `elmo-folder-delete-messages'.
1363
1364         * elmo-filter.el (elmo-folder-delete-messages): Call
1365         `elmo-folder-detach-messages'.
1366         (elmo-folder-detach-messages): Don't call
1367         `elmo-folder-detach-messages' for target folder.
1368
1369         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1370         message deletion is succeeded.
1371
1372         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1373
1374         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1375         from `elmo-folder-delete-messages'.
1376
1377         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1378
1379         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1380
1381         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1382
1383         * elmo-version.el (elmo-version): Up to 2.11.32.
1384
1385 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1386
1387         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1388         (elmo-global-flag-list): Added obsolete variable setting.
1389
1390         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1391
1392         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1393         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1394         `elmo-mime-display-header-analysis' is nil.
1395
1396         * elmo-flag.el (elmo-global-flags): Renamed from
1397         `elmo-global-flag-list' (All other related portions are changed).
1398         (elmo-local-flags): New variable.
1399         (elmo-local-flag-p): New function.
1400         (elmo-global-flag-set-internal): Cause an error when flag is not
1401         global.
1402
1403 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1404
1405         * elmo-util.el (elmo-concat-path): Treat empty path.
1406
1407 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1408
1409         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1410         field-or-fields).
1411         (elmo-split-address-match): Ditto.
1412         (elmo-split-equal): Ditto.
1413         (elmo-split-match): Ditto.
1414
1415 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1416
1417         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1418         (elmo-generic-folder-append-messages): If src message exists but
1419         has no flag, pass (read) for the FLAG argument of
1420         `elmo-folder-append-buffer'. Otherwise, pass nil.
1421
1422         * elmo-split.el (elmo-split-subr): Likewise.
1423
1424         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1425
1426         * elmo-multi.el (elmo-message-flags): Ditto.
1427
1428         * elmo-filter.el (elmo-message-flags): Ditto.
1429
1430         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1431         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1432         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1433         
1434 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1435
1436         * elmo-split.el (elmo-split-rule): Update comment.
1437         (elmo-split-address-equal): Allow 2nd argument to be a list.
1438         (elmo-split-address-match): Ditto.
1439         (elmo-split-equal): Ditto.
1440         (elmo-split-match): Ditto.
1441
1442 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1443
1444         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1445         (elmo-folder-append-msgdb): Don't treat `read'.
1446         (elmo-message-flags): Don't return `read'.
1447
1448         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1449         (elmo-folder-unset-read-delayed): Ditto.
1450
1451         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1452
1453 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1454
1455         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1456         deletion.
1457
1458 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1459
1460         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1461         header.
1462
1463 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1464
1465         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1466         here.
1467         (elmo-msgdb-save): Bind inhibit-quit.
1468         (modb-standard-message-entity): Ditto.
1469
1470 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1471
1472         * elmo-database.el: No need to require elmo-msgdb.
1473
1474 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1475
1476         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1477         instead of `elmo-list-subdirectories'.
1478
1479 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1480
1481         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1482         group entry.
1483         (elmo-folder-exists-p): "[" is empty.
1484         (elmo-folder-list-subfolders): Define.
1485         (elmo-folder-have-subfolder-p): Ditto.
1486
1487 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1488
1489         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1490
1491 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1492
1493         * elmo-filter.el (elmo-folder-local-p): Define.
1494
1495 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1496
1497         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1498         when entity is garbaged.
1499         (modb-standard-save-entity-1): Don't modify the original entity.
1500
1501 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1502
1503         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1504
1505 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1506
1507         * elmo.el (elmo-strict-folder-diff): Use
1508         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1509
1510 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1511
1512         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1513         (elmo-msgdb-message-number): Ditto.
1514         (elmo-msgdb-message-field): Ditto.
1515
1516         * modb-standard.el (modb-standard-economize-entity-size): New user
1517         option.
1518         (modb-standard-loaded-message-id): New inline function.
1519         (modb-standard-load-entity): Use it.
1520         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1521         throw message-id string away.
1522         (elmo-msgdb-flag-available-p): Define.
1523         (elmo-msgdb-message-number): Ditto.
1524         (elmo-msgdb-message-field): Ditto.
1525
1526         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1527         (suppoted -> supported).
1528         (modb-legacy-supported-flag-p): Ditto.
1529         (elmo-msgdb-set-flag): Ditto.
1530         (elmo-msgdb-unset-flag): Ditto.
1531         (elmo-msgdb-flag-available-p): Define.
1532
1533         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1534         is `t', treat it as legacy entity.
1535         
1536         * elmo.el (elmo-message-flag-available-p): New generic function.
1537         (elmo-message-number): Ditto.
1538         (elmo-message-field): Use `elmo-msgdb-message-field'.
1539
1540         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1541
1542         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1543         (elmo-message-number): Ditto.
1544
1545         * elmo-multi.el (elmo-message-number): Define.
1546         (elmo-message-flag-available-p): Ditto.
1547
1548         * elmo-filter.el (elmo-message-flag-available-p): Define.
1549         (elmo-message-number): Ditto.
1550
1551         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1552         (elmo-folder-initialize): Load `max-number'.
1553         (elmo-folder-commit): Save it.
1554         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1555         (elmo-global-flag-set-internal): Set up max-number slot.
1556
1557 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1558
1559         * elmo-version.el (elmo-version): Up to 2.11.31.
1560
1561 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1562
1563         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1564         unibyte string of the current buffer for the argument of `md5'
1565         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1566
1567 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1568
1569         * modb-legacy.el (modb-legacy-flag-list): New constant.
1570         (modb-legacy-suppoted-flag-p): New internal function.
1571         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1572         (elmo-msgdb-unset-flag): Ditto.
1573
1574 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1575
1576         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1577
1578         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1579         from msgdb.
1580
1581 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1582
1583         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1584         (follow the API change).
1585
1586         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1587
1588 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1589
1590         * modb-standard.el (modb-standard-digest-flags): Abolish.
1591         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1592
1593         * elmo-vars.el (elmo-digest-flags): New variable.
1594         (elmo-preserved-flags): Moved from elmo-flag.el.
1595
1596         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1597         (elmo-imap4-flag-to-imap-criteria): Ditto.
1598         (elmo-imap4-folder-list-flagged): Use it.
1599
1600         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1601
1602         * elmo.el (elmo-folder-count-flags): Changed return value.
1603
1604         * elmo-flag.el (elmo-preserved-flags): New variable.
1605         (elmo-get-global-flags): Use it.
1606
1607         * modb-standard.el (modb-standard-digest-flags): New variable.
1608         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1609         Changed behavior of `any'.
1610
1611         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1612         which are defined the Internet draft
1613         (draft-melnikov-imap-keywords-03.txt).
1614         (elmo-imap4-flags-to-imap): New function.
1615         (elmo-folder-append-buffer): Use it.
1616
1617         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1618         in the docstring.
1619
1620         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1621         avoid the bug of Emacs 21.3.
1622
1623 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1624
1625         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1626         function find-coding-system does not exist.
1627
1628 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1629
1630         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1631         parsing.
1632
1633 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1634
1635         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1636         response codes.
1637
1638 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1639
1640         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1641         (elmo-network-close-session): Follow the changes in
1642         `elmo-pop3-read-response'.
1643         (elmo-pop3-auth-user): Ditto.
1644         (elmo-pop3-auth-apop): Ditto.
1645         (elmo-network-initialize-session): Ditto.
1646         (elmo-network-authenticate-session): Ditto.
1647         (elmo-network-setup-session): Ditto.
1648         (elmo-folder-status): Ditto.
1649         (elmo-message-fetch-plugged): Ditto.
1650         (elmo-pop3-delete-msg): Ditto.
1651
1652 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1653
1654         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1655         on failure.
1656
1657 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1658
1659         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1660         style.
1661         (elmo-bind-directory): Ditto.
1662
1663 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1664
1665         * elmo.el (elmo-folder-append-messages): Note on return value.
1666         * elmo-archive.el (elmo-folder-append-messages): Don't return
1667         message numbers which could not be appended.
1668
1669 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1670
1671         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1672
1673 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1674
1675         * elmo-version.el (elmo-version): Up to 2.11.30.
1676
1677 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1678
1679         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1680         `mask'.
1681
1682         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1683
1684         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1685         (elmo-multi-split-numbers): Add elmo-folder object into each
1686         element of return value at first.
1687         (elmo-folder-delete-messages): Follow the above change.
1688         (elmo-folder-detach-messages): Ditto.
1689
1690         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1691         number which is synchronized in target folder.
1692
1693 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1694
1695         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1696         Change default value to symbol `all'.
1697         (elmo-map-message-fetch): Change condition to update overview
1698         follow the above.
1699
1700 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1701
1702         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1703         behavior to update overview.
1704         (elmo-shimbun-update-overview-folder-list): Note it.
1705
1706 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1707
1708         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1709         recursive call.
1710
1711 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1712
1713         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1714         buffer-disable-undo, it is unnecessary.
1715         (elmo-spam-register-good-messages): Ditto.
1716
1717         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1718         Ditto.
1719
1720         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1721
1722 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1723
1724         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1725         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1726         elmo-set-buffer-multibyte.
1727         (elmo-object-load): Ditto.
1728         (elmo-save-buffer): Ditto.
1729         (elmo-delete-char): Ditto.
1730         (elmo-file-field-primitive-condition-match): Ditto.
1731         (elmo-mime-string): Ditto.
1732
1733         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1734         (elmo-archive-field-condition-match): Ditto.
1735
1736         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1737
1738         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1739
1740         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1741         (elmo-nntp-msgdb-create-message): Ditto.
1742
1743         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1744
1745         * elmo.el (elmo-message-match-condition): Ditto.
1746         (elmo-message-match-condition): Ditto.
1747
1748         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1749         Ditto.
1750
1751         * elmo-version.el (elmo-version): Up to 2.11.29.
1752
1753         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1754         (elsp-header): New backend.
1755
1756         * elmo-util.el (elmo-decoded-field-body): New function.
1757
1758 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1759
1760         * elmo-version.el (elmo-version): Up to 2.11.28.
1761
1762 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1763
1764         * elmo-filter.el: Rewrite.
1765
1766         * elmo-version.el (elmo-version): Up to 2.11.27.
1767
1768 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1769
1770         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1771         msgdb path for the localdir folder with absolute path.
1772
1773         * utf7.el: Synch up with latest gnus/utf7.el;
1774         Modified for latest Emacs.
1775
1776 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1777
1778         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1779         shimbun backend couldn't open.
1780
1781 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1782
1783         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1784         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1785         when a destination folder is a filter folder.
1786
1787 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1788
1789         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1790         (elmo-generic-folder-append-messages): Call elmo-message-flags
1791         with argument `msgid'.
1792
1793         * elmo-split.el (elmo-split-subr): Ditto.
1794
1795         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1796
1797         * elmo-multi.el (elmo-message-flags): Ditto.
1798
1799 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1800
1801         * elmo.el (elmo-folder): Add new slot `flag-table'.
1802         (elmo-folder-flag-table): New API.
1803         (elmo-folder-close-flag-table): Ditto.
1804         (elmo-folder-preserve-flags): New function.
1805         (elmo-generic-folder-append-messages): Use
1806         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1807         Flag of a non-registered message, it sets to nil.
1808         Does not set flag to flag-table.
1809
1810         * elmo-maildir.el (elmo-folder-append-buffer): Use
1811         `elmo-folder-preserve-flags'.
1812         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1813         `elmo-folder-close-flag-table'.
1814
1815         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1816         (elmo-archive-folder-append-buffer): Use
1817         `elmo-folder-preserve-flags'.
1818
1819         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1820
1821         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1822
1823         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1824         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1825         `elmo-folder-close-flag-table'.
1826
1827         * elmo-version.el (elmo-version): Up to 2.11.26.
1828
1829 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1830
1831         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1832
1833         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1834         md5's 4th and 5th argument (non-existent in flim one).
1835
1836 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1837
1838         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1839         message, It sets to nil.
1840
1841 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1842
1843         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1844         list is non-nil.
1845
1846 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1847
1848         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1849
1850         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1851
1852         * elmo-util.el (elmo-uniq-sorted-list): New function.
1853         (elmo-make-number-list): Ditto.
1854         (elmo-number-set-to-number-list): Use elmo-make-number-list
1855         and don't use nreverse.
1856
1857 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1858
1859         * elmo-version.el (elmo-version): Up to 2.11.25.
1860
1861 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1862
1863         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1864         field not exists in message, Use md5 message digest of header.
1865
1866 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1867
1868         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1869         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1870         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1871         * elmo-split.el (elmo-split-subr): Check return value of
1872         elmo-folder-append-buffer.
1873
1874         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1875         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1876
1877         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1878         message-id.
1879
1880 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1881
1882         * elmo-split.el (elmo-split-subr): Append message with flag.
1883
1884         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1885         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1886         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1887
1888 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1889
1890         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1891         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1892         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1893
1894 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1895
1896         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1897         with a function call of `process-buffer'.  All callers are updated.
1898         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1899         Remove redundant `set-buffer' in a while loop.
1900
1901 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1902
1903         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1904         calls.
1905
1906 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1907
1908         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1909         elsp-spamfilter-register-buffer-internal with current buffer.
1910         (elmo-spam-register-spam-buffer): Ditto.
1911         (elmo-spam-register-good-buffer): Ditto.
1912
1913 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1914
1915         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1916         if it is not contained in the response(A workaround for courier-imap).
1917
1918 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1919
1920         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1921         parenthesis.
1922
1923 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1924
1925         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1926         range.
1927
1928 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1929
1930         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1931         of nconc.
1932
1933         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1934         argument handler.
1935         (elmo-msgdb-message-match-condition): Follow the change above.
1936
1937 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1938
1939         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1940         folder name.
1941
1942 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1943
1944         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1945
1946 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1947
1948         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1949
1950 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1951
1952         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1953         not found.
1954
1955 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1956
1957         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1958         value.
1959         (elmo-file-command-argument): Undo last change for cygwin.
1960         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1961         Don't return nil.
1962         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1963
1964 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1965
1966         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1967         value returned from elmo-file-find is nil.
1968
1969 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1970
1971         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1972         to elmo-vars.el.
1973
1974         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1975         instead of insert-file-contents-as-binary.
1976         (elmo-message-set-field): New generic function.
1977
1978         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1979         behavior change on `split-string'.
1980
1981         * elmo-file.el (elmo-file-find): New function.
1982         (elmo-file-command): New user option.
1983         (elmo-file-command-argument): Ditto.
1984         (elmo-file-fetch-max-size): Ditto.
1985         (elmo-file-detect-format): New function.
1986         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1987         Use elmo-file-detect-format.
1988         (elmo-map-folder-list-message-locations): Don't treat directories.
1989
1990 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1991
1992         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1993         (elmo-passwd-alist-clear): Shred password before clear.
1994         (elmo-remove-passwd): Remove all mached pair.
1995
1996 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1997
1998         * elmo.el (elmo-folder-synchronize): Fix description of the return
1999         value.
2000
2001 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2002
2003         * elmo.el (elmo-message-fetch-bodystructure): New method.
2004         (elmo-message-fetch-bodystructure): Define default.
2005
2006         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2007         elmo-message-fetch-bodystructure.
2008         (elmo-message-fetch-bodystructure): Define.
2009
2010         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2011
2012 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2013
2014         * elmo-filter.el (elmo-message-folder): Define.
2015
2016 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2017
2018         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2019         elmo-delete-cr-buffer.
2020
2021         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2022
2023         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2024
2025         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2026
2027         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2028         type seems to be a text.
2029
2030 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2031
2032         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2033         (elmo-spam-register-good-buffer): Ditto.
2034         (elmo-spam-spamassassin-register-messages): Ditto.
2035
2036         * elmo-util.el (elmo-string-member-ignore-case): Define with
2037         static-cond.
2038
2039 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2040
2041         * elmo.el (elmo-folder-type): Undo last change.
2042
2043         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2044
2045         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2046         warnings.
2047
2048         * elmo-file.el: New file.
2049         
2050         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2051
2052         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2053         variable.
2054         (elmo-spam-spamassassin-register-messages): New inline function.
2055         (elmo-spam-register-spam-messages): Define.
2056         (elmo-spam-register-good-messages): Ditto.
2057
2058         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2059         Fixed typo.
2060
2061         * elmo.el (toplevel): Added autoload setting for
2062         `elmo-get-global-flags'.
2063         (elmo-message-has-global-flag-p): New function.
2064         (elmo-message-set-global-flags): Ditto.
2065         (elmo-folder-type): Improvement for name: format.
2066
2067         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2068         availability of keyword flags.
2069         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2070         (elmo-folder-list-flagged-plugged): Renamed from
2071         elmo-folder-list-flagged-unplugged.
2072         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2073         accept any flag as keyword flag.
2074         (elmo-folder-set-flag-plugged): Accept keyword flags.
2075         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2076
2077         * elmo-flag.el (elmo-get-global-flags): New function.
2078
2079         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2080         folders.
2081
2082         * elmo-version.el (elmo-version): Up to 2.11.24.
2083
2084 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2085
2086         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2087         elmo-multiple-field-body instead of std11-field-body to check all
2088         headers.
2089
2090 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2091
2092         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2093         or "size".
2094
2095 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2096
2097         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2098         unintern is unbound.
2099
2100 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2101
2102         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2103         Protect from infinite loop.
2104
2105 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2106
2107         * elsp-bogofilter.el
2108         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2109         (elmo-spam-bogofilter-register-messages): New internal function.
2110         (elmo-spam-register-spam-messages): Define.
2111         (elmo-spam-register-good-messages): Ditto.
2112
2113 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2114
2115         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2116         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2117         (elmo-spam-bogofilter-call): Fixed the last change.
2118         (elmo-spam-bogofilter-arguments): Ditto.
2119
2120         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2121         Follow the options change of latest bogofilter.
2122
2123         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2124         (elmo-spam-bogofilter-good-switch): Ditto.
2125         (elmo-spam-bogofilter-arguments-alist): New user option.
2126         (elmo-spam-bogofilter-debug): Ditto.
2127         (elmo-spam-bogofilter-call): Renamed from
2128         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2129         is non-nil, insert output in buffer for debug.
2130         (elmo-spam-bogofilter-arguments): New macro.
2131         (elmo-spam-buffer-spam-p): Use it.
2132         (elsp-bogofilter-register-buffer): Ditto.
2133
2134 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2135
2136         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2137         regexp.
2138
2139 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2140
2141         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2142         value as "ruby".
2143         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2144         (elmo-spam-bsfilter-program): Set default value as full path for
2145         `bsfilter'.
2146         (elmo-spam-bsfilter-debug): New user option.
2147         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2148         non-nil, insert output in buffer for debug. Fix treating of
2149         argument.
2150
2151 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2152
2153         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2154         `elmo-maildir-flag-specs' element instead of one.
2155         (elmo-map-folder-unset-flag): Ditto.
2156         (Reported by Ken Makimura <macky@astem.or.jp>)
2157
2158         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2159         (elmo-folder-unset-flag-plugged): Ditto.
2160
2161 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2162
2163         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2164         to `reads' slot only if `in-msgdb' is nil.
2165
2166 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2167
2168         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2169         and complement argument list.
2170
2171 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2172
2173         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2174         instead of elmo-folder-list-flagged.
2175
2176 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2177
2178         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2179
2180         * elsp-bsfilter.el: New file.
2181
2182         * elmo-pipe.el (elmo-folder-list-unreads,
2183         elmo-folder-list-answereds,
2184         elmo-folder-list-importants,
2185         elmo-folder-flag-as-important,
2186         elmo-folder-unflag-important,
2187         elmo-folder-flag-as-read,
2188         elmo-folder-unflag-read,
2189         elmo-folder-flag-as-answered,
2190         elmo-folder-unflag-answered): Remove.
2191         (elmo-folder-set-flag): Define.
2192         (elmo-folder-unset-flag): Ditto.
2193
2194         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2195         (elmo-folder-set-flag): Define.
2196         (elmo-folder-unset-flag): Ditto.
2197         (elmo-folder-list-unreads): Remove.
2198         (elmo-folder-list-flagged): Define.
2199
2200         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2201         (elmo-folder-list-unreads,
2202         elmo-folder-list-importants,
2203         elmo-folder-list-answereds,
2204         elmo-folder-list-unreads-plugged,
2205         elmo-folder-list-importants-plugged,
2206         elmo-folder-list-answereds-plugged): Remove.
2207         (elmo-folder-list-flagged-plugged): New method.
2208         (elmo-folder-unflag-important,
2209         elmo-folder-flag-as-important,
2210         elmo-folder-unflag-read,
2211         elmo-folder-flag-as-read,
2212         elmo-folder-unflag-answered,
2213         elmo-folder-flag-as-answered,
2214         elmo-folder-flag-as-read-unplugged,
2215         elmo-folder-unflag-read-unplugged,
2216         elmo-folder-flag-as-important-unplugged,
2217         elmo-folder-unflag-important-unplugged,
2218         elmo-folder-flag-as-answered-unplugged,
2219         elmo-folder-unflag-answered-unplugged): Remove.
2220         (elmo-folder-set-flag): Define.
2221         (elmo-folder-unset-flag): Ditto.
2222         (elmo-folder-set-flag-unplugged): Ditto.
2223         (elmo-folder-unset-flag-unplugged): Ditto.
2224
2225         * elmo-multi.el (elmo-folder-list-unreads,
2226         elmo-folder-list-answereds,
2227         elmo-folder-list-importants,
2228         elmo-folder-flag-as-important,
2229         elmo-folder-unflag-important,
2230         elmo-folder-flag-as-read,
2231         elmo-folder-unflag-read,
2232         elmo-folder-flag-as-answered,
2233         elmo-folder-unflag-answered): Remove.
2234         (elmo-folder-set-flag): Define.
2235         (elmo-folder-unset-flag): Ditto.
2236
2237         * elmo-map.el (elmo-map-folder-unflag-important,
2238         elmo-map-folder-flag-as-important,
2239         elmo-map-folder-unflag-read,
2240         elmo-map-folder-flag-as-read,
2241         elmo-map-folder-unflag-answered,
2242         elmo-map-folder-flag-as-answered): Remove.
2243         (elmo-map-folder-set-flag): New method.
2244         (elmo-map-folder-unset-flag): Ditto.
2245         (elmo-map-folder-list-unreads,
2246         elmo-map-folder-list-importants,
2247         elmo-map-folder-list-answereds): Remove.
2248         (elmo-folder-list-flagged-internal): Define.
2249         (elmo-map-folder-list-flagged): New method.
2250
2251         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2252         (elmo-map-folder-list-unreads,
2253         elmo-map-folder-list-importants,
2254         elmo-map-folder-list-flagged): Remove.
2255         (elmo-map-folder-list-flagged): Define.
2256         (elmo-map-folder-flag-as-important,
2257         elmo-map-folder-unflag-important,
2258         elmo-map-folder-flag-as-read,
2259         elmo-map-folder-unflag-read,
2260         elmo-map-folder-flag-as-answered,
2261         elmo-map-folder-unflag-answered): Remove.
2262         (elmo-maildir-set-mark-messages): New internal function.
2263         (elmo-map-folder-set-flag): Define.
2264         (elmo-map-folder-unset-flag): Ditto.
2265
2266         * elmo.el (toplevel): Added autoload setting for
2267         `elmo-folder-list-global-flag-messages'.
2268         (elmo-folder-list-unreads,
2269         elmo-folder-list-importants,
2270         elmo-folder-list-answereds): Remove.
2271         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2272         Return a list whitch merged with messages have global flag.
2273         (elmo-folder-list-flagged-internal): New method.
2274         (elmo-folder-unflag-important,
2275         elmo-folder-flag-as-important,
2276         elmo-folder-unflag-read,
2277         elmo-folder-flag-as-read,
2278         elmo-folder-unflag-answered,
2279         elmo-folder-flag-as-answered): Remove.
2280         (elmo-folder-set-flag): New method.
2281         (elmo-folder-unset-flag): Ditto.
2282         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2283         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2284
2285         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2286         (elmo-folder-list-unreads-plugged,
2287         elmo-folder-list-importants-plugged,
2288         elmo-folder-list-answereds-plugged,
2289         elmo-folder-list-flagged-unplugged,
2290         elmo-folder-unflag-important-plugged,
2291         elmo-folder-flag-as-important-plugged,
2292         elmo-folder-unflag-read-plugged,
2293         elmo-folder-flag-as-read-plugged,
2294         elmo-folder-unflag-answered-plugged,
2295         elmo-folder-flag-as-answered-plugged): Remove.
2296         (elmo-folder-set-flag-plugged,
2297         elmo-folder-unset-flag-plugged): Define.
2298
2299         * elmo-flag.el (elmo-folder-initialize): Register to
2300         `elmo-global-flag-list' if flag is not global.
2301         (elmo-folder-append-messages): Set flag to source messages.
2302
2303         * elmo-filter.el (elmo-filter-folder-list-unreads,
2304         elmo-folder-list-unreads,
2305         elmo-filter-folder-list-importants,
2306         elmo-folder-list-importants,
2307         elmo-folder-flag-as-read,
2308         elmo-folder-unflag-read,
2309         elmo-folder-flag-as-important,
2310         elmo-folder-unflag-important,
2311         elmo-folder-flag-as-answered,
2312         elmo-folder-unflag-answered): Remove.
2313         (elmo-folder-set-flag): Define.
2314         (elmo-folder-unset-flag): Ditto.
2315
2316         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2317         elmo-folder-unflag-read-dop,
2318         elmo-folder-flag-as-important-dop,
2319         elmo-folder-unflag-important-dop,
2320         elmo-folder-flag-as-answered-dop,
2321         elmo-folder-unflag-answered-dop): Remove.
2322         (elmo-folder-set-flag-dop,
2323         elmo-folder-unset-flag-dop,
2324         elmo-folder-set-important-delayed,
2325         elmo-folder-unset-important-delayed,
2326         elmo-folder-set-read-delayed,
2327         elmo-folder-unset-read-delayed,
2328         elmo-folder-set-answered-delayed,
2329         elmo-folder-unset-answered-delayed): New function.
2330         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2331         (elmo-dop-queue-method-name-alist): Ditto.
2332
2333         * elmo-version.el (elmo-version): Up to 2.11.23.
2334
2335 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2336
2337         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2338
2339         * elsp-sa.el: New file.
2340
2341 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2342
2343         * modb-standard.el (modb-standard-message-entity): New function.
2344         (elmo-msgdb-message-entity): Use it.
2345
2346 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2347
2348         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2349         behavior when one-level is nil.
2350
2351         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2352
2353         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2354
2355 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2356
2357         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2358         get max number.
2359         (elmo-generic-folder-diff): Ditto.
2360
2361         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2362         (elmo-folder-update-number): Ditto.
2363
2364         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2365         (elmo-folder-next-message-number-dop): Ditto.
2366
2367 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2368
2369         * elmo-filter.el (elmo-folder-msgdb-create): Use
2370         `elmo-message-entity' and `elmo-message-flags' instead of
2371         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2372
2373 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2374
2375         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2376         `if-exists'.
2377
2378 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2379
2380         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2381
2382         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2383
2384         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2385
2386 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2387
2388         * elmo-version.el (elmo-version): Up to 2.11.22.
2389
2390 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2391
2392         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2393
2394 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2395
2396         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2397         if the message dose not exist.
2398
2399 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2400
2401         * elmo-version.el (elmo-version): Up to 2.11.21.
2402
2403 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2404
2405         * modb-standard.el (toplevel): Don't require mime.
2406
2407 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2408
2409         * elsp-bogofilter.el (toplevel): Don't require path-util.
2410         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2411         (elmo-spam-bogofilter-header): Abolish.
2412         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2413         (elmo-spam-bogofilter-args): New user option.
2414         (elsp-bogofilter-call-bogofilter): New internal function.
2415         (elmo-spam-buffer-spam-p): Use it.
2416         (elsp-bogofilter-register-buffer): Renamed from
2417         `elmo-spam-bogofilter-register-buffer';
2418         Use `elsp-bogofilter-call-bogofilter'.
2419         (elmo-spam-register-spam-buffer): Follow the change above.
2420         (elmo-spam-register-good-buffer): Ditto.
2421
2422 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2423
2424         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2425         message-id is nil do nothing.
2426
2427 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2428
2429         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2430         Revival.
2431         (elmo-imap4-session): Removed use-flag slot.
2432         (elmo-imap4-session-select-mailbox): Undo last change.
2433         (elmo-folder-use-flag-p): Use
2434         elmo-imap4-disuse-server-flag-mailbox-regexp.
2435
2436 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2437
2438         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2439         (elmo-imap4-session-select-mailbox): Set it up.
2440         (elmo-folder-use-flag-p): Return value of use-flag slot.
2441
2442 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2443
2444         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2445         message-id is nil.
2446         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2447
2448         * modb-entity.el (elmo-message-entity-handler): Likewise.
2449
2450 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2451
2452         * elmo.el (toplevel): Remove setting of autoloding for
2453         elmo-global-flag-initialize.
2454         (elmo-init): Don't call elmo-global-flag-initialize.
2455         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2456
2457         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2458         (elmo-global-mark-migrate): Don't call it.
2459         (elmo-global-mark-upgrade): Ditto.
2460
2461 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2462
2463         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2464         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2465
2466         * elmo-vars.el (elmo-init-hook): New user option.
2467
2468         * elmo.el (elmo-init): Run the elmo-init-hook.
2469
2470         * elmo-flag.el (elmo-global-mark-migrate): New function.
2471
2472 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2473
2474         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2475         Undo last change (move to elmo-msgdb-unset-flag).
2476         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2477         flag is unset.
2478
2479 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2480
2481         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2482         read flag is set.
2483         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2484         (elmo-msgdb-unset-flag): Ditto.
2485
2486 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2487
2488         * elmo-split.el (elmo-split): Return split message count.
2489
2490 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2491
2492         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2493         is nil.
2494
2495 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2496
2497         * elmo.el (elmo-folder-unflag-important): Call
2498         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2499         a symbol `always'.
2500
2501         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2502         before unset flag.
2503         (elmo-global-flag-detach): Delete the message from flag folder, if
2504         `delete-if-none' is a symbol `always'.
2505
2506 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2507
2508         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2509         `elmo-spam-spamfilter-decode-buffer'.
2510         (elsp-spamfilter-register-buffer-internal): New internal function.
2511         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2512         (elmo-spam-register-spam-buffer): Ditto.
2513         (elmo-spam-register-good-buffer): Ditto.
2514
2515         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2516         change.
2517         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2518         (elmo-spam-register-spam-buffer): Follow the API change.
2519         (elmo-spam-register-good-buffer): Ditto.
2520
2521         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2522         (elmo-split-spam-p): Added argument plist; Call
2523         `elmo-spam-buffer-spam-p' with new argument register.
2524
2525         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2526         `register'.
2527         (elmo-spam-message-spam-p): Ditto.
2528         (elmo-spam-register-spam-buffer): Added optional argument
2529         `restore'.
2530         (elmo-spam-register-good-buffer): Ditto.
2531         (elmo-spam-register-spam-messages): Ditto.
2532         (elmo-spam-register-good-messages): Ditto.
2533
2534 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2535
2536         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2537         register into good corpus.
2538         (elmo-spam-register-good-buffer): Fixed to register into bad
2539         corpus.
2540
2541 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2542
2543         * elmo-version.el (elmo-version): Up to 2.11.20.
2544
2545         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2546         change.
2547
2548         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2549         flag without depending on \Recent flag.
2550
2551 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2552
2553         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2554         (elmo-spam-modified-p): Defined.
2555         (elmo-spam-save-status): Set `modified' slot to nil.
2556         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2557         (elmo-spam-register-good-buffer): Ditto.
2558
2559         * elmo-spam.el (elmo-spam-modified-p): New API.
2560
2561 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2562
2563         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2564         duplicate definition.
2565
2566         * elmo-util.el (elmo-unfold-field-body): New function.
2567         (elmo-msgdb-get-message-id-from-buffer): Use it.
2568
2569         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2570         Fixed the last change; Use elmo-unfold-field-body.
2571
2572 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2573
2574         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2575         Unfold date value.
2576
2577 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2578
2579         * elmo-spam.el (elmo-spam-save-status): New API.
2580
2581         * elsp-spamfilter.el: New file.
2582
2583 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2584
2585         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2586
2587 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2588
2589         * elmo-split.el (elmo-split-spam-p): New function.
2590
2591         * elmo-spam.el: New file.
2592
2593         * elsp-bogofilter.el: Ditto.
2594
2595 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2596
2597         * elmo.el (elmo-folder-next-message-number): New API.
2598         (elmo-folder-next-message-number): Define.
2599         (elmo-message-field): Don't check folder length.
2600
2601         * elmo-net.el (elmo-folder-next-message-number): Define.
2602         (elmo-folder-next-message-number-unplugged): Define.
2603
2604         * elmo-map.el (elmo-folder-next-message-number): Define.
2605         (elmo-folder-delete-messages): Clear hash value.
2606
2607         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2608
2609         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2610         (elmo-folder-delete-messages-dop-delayed): Always return t.
2611
2612         * elmo-version.el (elmo-version): Up to 2.11.19.
2613
2614 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2615
2616         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2617         change.
2618
2619         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2620         identical cons cell into the mark-alist and the hash table.
2621
2622 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2623
2624         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2625         elmo-folder-list-messages with argument `visible-only' as t.
2626
2627         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2628         (elmo-folder-msgdb-create): Check the target folder.
2629
2630 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2631
2632         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2633         `permanentflag' instead of `flags'.
2634         (elmo-folder-open): Ditto.
2635         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2636         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2637         (elmo-folder-use-flag-p): Always return t.
2638         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2639         `permanentflags' does not exist.
2640         (elmo-folder-open): Ditto.
2641
2642 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2643
2644         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2645         is nil.
2646         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2647
2648         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2649         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2650         response.
2651         (elmo-folder-open): Ditto.
2652         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2653         slot of the session includes the flag.
2654         (elmo-imap4-session-flag-available-p): New function.
2655         (elmo-imap4-folder-list-flagged): Ditto.
2656         (elmo-folder-list-unreads-plugged): Use it.
2657         (elmo-folder-list-importants-plugged): Ditto.
2658         (elmo-folder-list-answereds-plugged): Ditto.
2659         (elmo-imap4-search-internal-primitive): Ditto.
2660         (elmo-imap4-folder-list-any-plugged,
2661         elmo-imap4-folder-list-digest-plugged): Abolish.
2662
2663         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2664         if numbers is nil.
2665
2666 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2667
2668         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2669
2670 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2671
2672         * elmo-util.el (elmo-get-hash-val): Simplify.
2673         (elmo-set-hash-val): Rewrite.
2674
2675 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2676
2677         * elmo.el (elmo-folder-list-messages): Append killed messages into
2678         result if `visible-only' is nil and `in-msgdb' is non-nil.
2679
2680         * elmo-util.el (elmo-uniq-list): Added optional argument
2681         `delete-function'.
2682
2683         * modb.el (elmo-msgdb-flag-count): New API.
2684
2685         * modb-standard.el (modb-standard): Added slot flag-count.
2686         (modb-standard-countup-flags): New function.
2687         (modb-standard-load-flag): Call it.
2688         (elmo-msgdb-append): Ditto.
2689         (elmo-msgdb-clear): Clear slot flag-count.
2690         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2691         (elmo-msgdb-unset-flag): Treat `all' flag and call
2692         modb-standard-countup-flags.
2693         (elmo-msgdb-flag-count): Define.
2694         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2695         (elmo-msgdb-delete-messages): Ditto.
2696
2697         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2698         (elmo-msgdb-flag-count): Define.
2699
2700         * elmo.el (elmo-folder-list-messages): Undo last change.
2701         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2702         (elmo-folder-kill-messages): Unset all flags to numbers.
2703
2704         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2705         elmo-folder-kill-messages.
2706
2707         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2708         (elmo-nntp-folder-delete-messages): Abolish.
2709
2710         * elmo-version.el (elmo-version): Up to 2.11.18.
2711
2712 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2713
2714         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2715         (elmo-folder-kill-messages-range): New function.
2716         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2717         instead of elmo-folder-kill-messages-before.
2718
2719 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2720
2721         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2722         elmo-imap4-current-msgdb to decide entity handler.
2723
2724 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2725
2726         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2727
2728         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2729         inline function.
2730         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2731         (elmo-msgdb-overview-entity-set-number,
2732         elmo-msgdb-overview-entity-get-references,
2733         elmo-msgdb-overview-entity-set-references,
2734         elmo-msgdb-overview-entity-get-from-no-decode,
2735         elmo-msgdb-overview-entity-get-from,
2736         elmo-msgdb-overview-entity-set-from,
2737         elmo-msgdb-overview-entity-get-subject,
2738         elmo-msgdb-overview-entity-get-subject-no-decode,
2739         elmo-msgdb-overview-entity-set-subject,
2740         elmo-msgdb-overview-entity-get-date,
2741         elmo-msgdb-overview-entity-set-date,
2742         elmo-msgdb-overview-entity-get-to,
2743         elmo-msgdb-overview-entity-get-cc,
2744         elmo-msgdb-overview-entity-get-size,
2745         elmo-msgdb-overview-entity-set-size,
2746         elmo-msgdb-overview-entity-get-extra,
2747         elmo-msgdb-overview-entity-set-extra,
2748         elmo-msgdb-overview-entity-get-extra-field,
2749         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2750         (elmo-msgdb-make-index): Use
2751         `elmo-msgdb-overview-entity-get-number-internal'.
2752         (elmo-msgdb-clear-index): Ditto.
2753         (elmo-msgdb-append-entity): Ditto;
2754         Use `elmo-msgdb-overview-entity-get-id-internal'.
2755
2756         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2757         elmo-msgdb-overview-entity-set-number,
2758         elmo-msgdb-overview-entity-get-references,
2759         elmo-msgdb-overview-entity-set-references,
2760         elmo-msgdb-overview-entity-get-from-no-decode,
2761         elmo-msgdb-overview-entity-get-from,
2762         elmo-msgdb-overview-entity-set-from,
2763         elmo-msgdb-overview-entity-get-subject,
2764         elmo-msgdb-overview-entity-get-subject-no-decode,
2765         elmo-msgdb-overview-entity-set-subject,
2766         elmo-msgdb-overview-entity-get-date,
2767         elmo-msgdb-overview-entity-set-date,
2768         elmo-msgdb-overview-entity-get-to,
2769         elmo-msgdb-overview-entity-get-cc,
2770         elmo-msgdb-overview-entity-get-size,
2771         elmo-msgdb-overview-entity-set-size,
2772         elmo-msgdb-overview-entity-get-extra,
2773         elmo-msgdb-overview-entity-set-extra,
2774         elmo-msgdb-overview-entity-get-extra-field,
2775         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2776         and rewrote for backward compatibility.
2777
2778 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2779
2780         * elmo.el (elmo-message-entity-number,
2781         elmo-message-entity-set-number,
2782         elmo-message-entity-field,
2783         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2784
2785         * elmo-msgdb.el (elmo-message-entity-number,
2786         elmo-message-entity-set-number,
2787         elmo-message-entity-field,
2788         elmo-message-entity-set-field): Moved from elmo.el.
2789
2790 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2791
2792         * elmo.el (toplevel): Changed definition orders.
2793
2794 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2795
2796         * modb.el (elmo-msgdb-search): New API .
2797         (elmo-msgdb-match-condition): Ditto.
2798
2799         * modb-standard.el (elmo-msgdb-search): Define.
2800
2801         * modb-legacy.el (elmo-msgdb-search): Ditto.
2802
2803         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2804         from elmo-msgdb-match-condition-internal.
2805
2806         * elmo.el (elmo-folder-search-fast): Abolish.
2807         (elmo-folder-search): Use elmo-msgdb-search and
2808         elmo-with-progress-display.
2809
2810         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2811         as msgdb API.
2812
2813         * elmo.el (elmo-folder): Remove slot message-modified and
2814         flag-modified.
2815         (elmo-folder-set-message-modified): Abolish.
2816         (elmo-generic-folder-commit): Follow the change above.
2817         (elmo-folder-synchronize): Ditto.
2818
2819         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2820
2821         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2822
2823         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2824
2825 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2826
2827         * modb-standard.el (modb-standard-make-message-entity,
2828         elmo-msgdb-make-message-entity,
2829         elmo-msgdb-create-message-entity-from-buffer,
2830         elmo-msgdb-message-entity-number,
2831         elmo-msgdb-message-entity-set-number,
2832         elmo-msgdb-message-entity-field,
2833         elmo-msgdb-message-entity-set-field,
2834         elmo-msgdb-copy-message-entity,
2835         elmo-msgdb-match-condition-internal): Remove.
2836
2837         * modb-entity.el: New file (again).
2838
2839         * modb.el (toplevel): Require modb-entity.
2840         (elmo-msgdb-message-entity-handler): New method.
2841
2842         * modb-standard.el (modb-standard-entity-id): Use
2843         elmo-message-entity-handler.
2844         (modb-standard-load-entity): Ditto.
2845         (elmo-msgdb-append-entity): Ditto.
2846         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2847
2848         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2849         elmo-msgdb-decoded-cache-hashtb,
2850         (modb-legacy-make-message-entity,
2851         elmo-msgdb-make-message-entity,
2852         elmo-msgdb-create-message-entity-from-buffer,
2853         elmo-msgdb-message-entity-number,
2854         elmo-msgdb-message-entity-set-number,
2855         elmo-msgdb-message-entity-field,
2856         elmo-msgdb-message-entity-set-field,
2857         elmo-msgdb-copy-message-entity,
2858         elmo-msgdb-match-condition-internal,
2859         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2860
2861         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2862         (elmo-message-entity-set-number): Ditto.
2863         (elmo-message-entity-field): Ditto.
2864         (elmo-message-entity-set-field): Ditto.
2865
2866         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2867
2868         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2869
2870         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2871
2872         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2873         (elmo-nntp-msgdb-create-message): Ditto.
2874
2875         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2876         (elmo-folder-msgdb-create): Add unread flag.
2877
2878         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2879
2880         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2881
2882         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2883
2884         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2885
2886         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2887         elmo-msgdb-messge-entity-handler.
2888         * elmo-version.el (elmo-version): Up to 2.11.17.
2889
2890 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2891
2892         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2893         change.
2894
2895 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2896
2897         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2898
2899         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2900         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2901         (elmo-msgdb-flag-table): Ditto.
2902         (elmo-msgdb-sort-by-date): Ditto.
2903
2904         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2905
2906         * modb-standard.el (toplevel): Require mime.
2907         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2908         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2909         elmo-msgdb-message-entity-number.
2910         (elmo-msgdb-append-entity): Ditto.
2911         (elmo-msgdb-create-message-entity-from-file): Remove.
2912         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2913         corresponds to the entity.
2914         (elmo-msgdb-message-entity-number): Do nothing currently.
2915         (elmo-msgdb-message-entity-field): Ditto.
2916         (elmo-msgdb-message-entity-set-field): Ditto.
2917         (elmo-msgdb-copy-message-entity): Ditto.
2918         (elmo-msgdb-match-condition-internal): Ditto.
2919
2920         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2921         elmo-util.el.
2922         (elmo-msgdb-create-message-entity-from-file): Remove.
2923
2924         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2925         modb-legacy.el.
2926         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2927
2928         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2929
2930 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2931
2932         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2933         (elmo-msgdb-message-entity-field): Ditto.
2934         (elmo-msgdb-message-entity-number): Ditto.
2935
2936 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2937
2938         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2939         Fixed how to set extra field into entity.
2940         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2941         symbol.
2942
2943         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2944         Fixed how to set extra field into entity.
2945         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2946         symbol.
2947
2948 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2949
2950         * modb.el (elmo-message-entity-db): New function.
2951         (elmo-msgdb-make-message-entity): New API.
2952         (elmo-msgdb-message-entity-number): Ditto.
2953         (elmo-msgdb-message-entity-set-number): Ditto.
2954         (elmo-msgdb-message-entity-field): Ditto.
2955         (elmo-msgdb-message-entity-set-field): Ditto.
2956         (elmo-msgdb-copy-message-entity): Ditto.
2957         (elmo-msgdb-create-message-entity-from-file): Ditto.
2958         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2959         (elmo-msgdb-match-condition-internal): Ditto.
2960
2961         * modb-standard.el (modb-legacy): Require modb-legacy.
2962         (modb-standard-make-message-entity): New inline function.
2963         (elmo-msgdb-make-message-entity): Define.
2964         (elmo-msgdb-create-message-entity-from-file): Ditto.
2965         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2966         (elmo-msgdb-message-entity-field): Ditto.
2967         (elmo-msgdb-message-entity-set-field): Ditto.
2968         (elmo-msgdb-copy-message-entity): Ditto.
2969         (elmo-msgdb-match-condition-internal): Ditto.
2970
2971         * modb-legacy.el: Don't require modb-entity.
2972         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2973         (elmo-msgdb-match-condition-primitive): Ditto.
2974         (elmo-msgdb-get-decoded-cache): Ditto.
2975         (elmo-msgdb-overview-entity-get-id): Ditto.
2976         (elmo-msgdb-overview-entity-get-number): Ditto.
2977         (elmo-msgdb-overview-entity-set-number): Ditto.
2978         (elmo-msgdb-overview-entity-get-references): Ditto.
2979         (elmo-msgdb-overview-entity-set-references): Ditto.
2980         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2981         (elmo-msgdb-overview-entity-get-from): Ditto.
2982         (elmo-msgdb-overview-entity-set-from): Ditto.
2983         (elmo-msgdb-overview-entity-get-subject): Ditto.
2984         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2985         (elmo-msgdb-overview-entity-set-subject): Ditto.
2986         (elmo-msgdb-overview-entity-get-date): Ditto.
2987         (elmo-msgdb-overview-entity-set-date): Ditto.
2988         (elmo-msgdb-overview-entity-get-to): Ditto.
2989         (elmo-msgdb-overview-entity-get-cc): Ditto.
2990         (elmo-msgdb-overview-entity-get-size): Ditto.
2991         (elmo-msgdb-overview-entity-set-size): Ditto.
2992         (elmo-msgdb-overview-entity-get-extra): Ditto.
2993         (elmo-msgdb-overview-entity-set-extra): Ditto.
2994         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2995         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2996         (elmo-msgdb-number-load): Ditto.
2997         (elmo-msgdb-overview-load): Ditto.
2998         (elmo-msgdb-mark-load): Ditto.
2999         (elmo-msgdb-number-save): Ditto.
3000         (elmo-msgdb-mark-save): Ditto.
3001         (elmo-msgdb-overview-save): Ditto.
3002         (modb-legacy-make-message-entity): New inline function.
3003         (elmo-msgdb-insert-file-header): Ditto.
3004         (elmo-msgdb-make-message-entity): Define.
3005         (elmo-msgdb-create-message-entity-from-file): Ditto.
3006         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3007         (elmo-msgdb-message-entity-number): Ditto.
3008         (elmo-msgdb-message-entity-set-number): Ditto.
3009         (elmo-msgdb-message-entity-field): Ditto.
3010         (elmo-msgdb-message-entity-set-field): Ditto.
3011         (elmo-msgdb-copy-message-entity): Ditto.
3012         (elmo-msgdb-match-condition-internal): Ditto.
3013
3014         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3015         (elmo-message-copy-entity): Rewrite.
3016         (elmo-message-entity-number): Ditto.
3017         (elmo-message-entity-set-number): Ditto.
3018         (elmo-message-entity-field): Use elmo-message-entity-db.
3019         (elmo-message-entity-set-field): Ditto.
3020         (elmo-message-field): Rewrite.
3021
3022         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3023         elmo-msgdb.el
3024         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3025
3026         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3027         elmo-message-entity-field.
3028         (elmo-shimbun-folder-shimbun-header): Ditto.
3029         (elmo-shimbun-entity-to-header): Ditto.
3030         (elmo-folder-msgdb-create): Ditto.
3031         (elmo-shimbun-msgdb-create-entity): Ditto;
3032         Use elmo-msgdb-create-message-entity-from-buffer.
3033         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3034         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3035
3036         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3037         elmo-msgdb-create-message-entity-from-file and 
3038         elmo-message-entity-field.
3039
3040         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3041         elmo-message-entity-number.
3042         (elmo-pop3-msgdb-create-message): Use
3043         elmo-msgdb-create-message-entity-from-buffer,
3044         elmo-message-entity-set-field, elmo-message-entity-number and
3045         elmo-message-entity-set-number.
3046
3047         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3048         the API change in elmo-msgdb-make-message-entity.
3049         (elmo-nntp-msgdb-create-message): Use
3050         elmo-msgdb-create-message-entity-from-buffer.
3051
3052         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3053         elmo-message-entity-field and
3054         elmo-msgdb-create-message-entity-from-file.
3055
3056         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3057         (elmo-msgdb-get-field): Abolish.
3058         (elmo-msgdb-get-number): Rewrite.
3059         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3060         (elmo-msgdb-flag-table): Ditto.
3061         (elmo-msgdb-get-last-message-id,
3062         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3063         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3064         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3065         (elmo-msgdb-create-overview-from-buffer,
3066         elmo-msgdb-overview-get-parent-entity): Abolish.
3067
3068         * elmo-mime.el (elmo-mime-display-as-is): Use
3069         elmo-message-entity-field.
3070
3071         * elmo-map.el (elmo-folder-pack-numbers): Use
3072         elmo-message-entity-set-number.
3073
3074         * elmo-maildir.el (elmo-folder-msgdb-create): 
3075         elmo-msgdb-create-message-entity-from-file instead of
3076         elmo-msgdb-create-overview-entity-from-file.
3077
3078         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3079         msgdb.
3080         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3081         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3082
3083         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3084         elmo-messge-entity-field and elmo-message-entity-number.
3085         (elmo-imap4-fetch-callback-1): Call
3086         elmo-msgdb-create-message-entity-from-buffer instead of
3087         elmo-msgdb-create-overview-from-buffer. 
3088         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3089         (elmo-find-fetch-strategy): Likewise.
3090
3091         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3092         elmo-localdir-msgdb-create-entity with argument msgdb.
3093
3094         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3095         and elmo-message-entity-set-number.
3096
3097         * elmo-cache.el (elmo-folder-msgdb-create): Use
3098         elmo-message-entity-field.
3099         (elmo-folder-msgdb-create): Call
3100         elmo-msgdb-create-message-entity-from-file instead of
3101         elmo-msgdb-create-overview-entity-from-file.
3102
3103         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3104         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3105         instead of elmo-msgdb-create-overview-from-buffer.
3106         (elmo-archive-msgdb-create-entity): Ditto.
3107         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3108         elmo-message-entity-field.
3109         (elmo-archive-parse-mmdf): Ditto.
3110
3111         * modb-entity.el: Removed.
3112
3113         * elmo-version.el (elmo-version): Up to 2.11.16.
3114
3115 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3116
3117         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3118         `is-local'.
3119         (elmo-folder-flag-as-answered): Ditto.
3120
3121 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3122
3123         * modb-standard.el: New file.
3124
3125         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3126         elmo-msgdb-convert-type is `sync'.
3127
3128         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3129         (elmo-msgdb-convert-type): New user option.
3130
3131         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3132         (elmo-load-msgdb): Auto detect saved type.
3133
3134         * elmo-version.el (elmo-version): Up to 2.11.15.
3135
3136 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3137
3138         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3139
3140         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3141         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3142         with argument `delete-if-none' when dst-folder is 'null.
3143
3144         * elmo-flag.el (elmo-folder-append-messages): Defined.
3145         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3146
3147 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3148
3149         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3150
3151 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3152
3153         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3154         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3155         (elmo-folder-commit): Ditto.
3156
3157 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3158
3159         * elmo-flag.el: New file.
3160
3161         * elmo-mark.el: Removed.
3162
3163         * modb-legacy.el (modb-legacy-new-mark,
3164         modb-legacy-unread-uncached-mark,
3165         modb-legacy-unread-cached-mark,
3166         modb-legacy-read-uncached-mark,
3167         modb-legacy-answered-cached-mark,
3168         modb-legacy-answered-uncached-mark,
3169         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3170         All other related portions are changed.
3171
3172         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3173         (elmo-folder-list-messages-with-global-mark): Abolish.
3174         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3175         (elmo-folder-flag-as-important): Ditto.
3176         (elmo-folder-unflag-read): Ditto.
3177         (elmo-folder-flag-as-read): Ditto.
3178         (elmo-folder-unflag-answered): Ditto.
3179         (elmo-folder-flag-as-answered): Ditto.
3180         (elmo-message-encache): Return the cache path.
3181         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3182         (elmo-message-set-flag): Transitional implementation.
3183         (elmo-message-unset-flag): Ditto.
3184         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3185         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3186         (elmo-init): Call elmo-global-flag-initialize.
3187         (toplevel): Added autoload settings for elmo-flag.
3188
3189         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3190
3191         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3192         (elmo-file-cache-delete): Don't treat global-mark.
3193
3194         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3195
3196         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3197
3198         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3199         `elmo-global-flags-set'.
3200
3201         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3202         `flag'.
3203         (elmo-folder-unflag-read): Ditto.
3204         (elmo-folder-unflag-important): Ditto.
3205         (elmo-folder-flag-as-important): Ditto.
3206         (elmo-folder-unflag-answered): Ditto.
3207         (elmo-folder-flag-as-answered): Ditto.
3208
3209         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3210         `elmo-global-flags-set'.
3211         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3212
3213         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3214
3215         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3216         `flag'.
3217         (elmo-folder-flag-as-important): Ditto.
3218         (elmo-folder-unflag-important): Ditto.
3219         (elmo-folder-flag-as-important): Ditto.
3220         (elmo-folder-unflag-read): Ditto.
3221         (elmo-folder-flag-as-read): Ditto.
3222         (elmo-folder-unflag-answered): Ditto.
3223         (elmo-folder-flag-as-answered): Ditto.
3224
3225         * elmo-multi.el (elmo-folder-list-importants): Don't call
3226         elmo-folder-list-messages-with-global-mark.
3227         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3228         (elmo-folder-unflag-important): Ditto.
3229         (elmo-folder-flag-as-read): Ditto.
3230         (elmo-folder-unflag-read): Ditto.
3231         (elmo-folder-flag-as-answered): Ditto.
3232         (elmo-folder-unflag-answered): Ditto.
3233
3234         * elmo-msgdb.el (elmo-msgdb-new-mark,
3235         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3236         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3237         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3238         (Moved to modb-legacy.el).
3239         (elmo-flag-table-get): Treat important flag too.
3240
3241         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3242         `mark' to `flag'.
3243         (elmo-map-folder-flag-as-important): Ditto.
3244         (elmo-map-folder-unflag-read): Ditto.
3245         (elmo-map-folder-flag-as-read): Ditto.
3246         (elmo-map-folder-unflag-answered): Ditto.
3247         (elmo-map-folder-flag-as-answered): Ditto.
3248         (elmo-folder-unflag-important): Ditto.
3249         (elmo-folder-flag-as-important): Ditto.
3250         (elmo-folder-unflag-read): Ditto.
3251         (elmo-folder-flag-as-read): Ditto.
3252         (elmo-folder-unflag-answered): Ditto.
3253         (elmo-folder-flag-as-answered): Ditto.
3254
3255         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3256         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3257         `flag'.
3258         (elmo-map-folder-unflag-important): Ditto.
3259         (elmo-map-folder-flag-as-read): Ditto.
3260         (elmo-map-folder-unflag-read): Ditto.
3261         (elmo-map-folder-flag-as-answered): Ditto.
3262         (elmo-map-folder-unflag-answered): Ditto.
3263
3264         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3265         `elmo-global-flags-set'.
3266         (elmo-global-flags-set): Added autoload setting.
3267
3268         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3269         `flag'.
3270
3271         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3272         `elmo-msgdb-global-mark-set'.
3273         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3274         Call `elmo-global-flags-set'.
3275         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3276         `flag'.
3277         (elmo-folder-flag-as-important-plugged): Ditto.
3278         (elmo-folder-unflag-read-plugged): Ditto.
3279         (elmo-folder-flag-as-read-plugged): Ditto.
3280         (elmo-folder-unflag-answered-plugged): Ditto.
3281         (elmo-folder-flag-as-answered-plugged): Ditto.
3282         (elmo-global-flags-set): Added autoload setting.
3283
3284         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3285         `flag'.
3286         (elmo-folder-unflag-read): Ditto.
3287         (elmo-folder-flag-as-important): Ditto.
3288         (elmo-folder-unflag-important): Ditto.
3289         (elmo-folder-flag-as-answered): Ditto.
3290         (elmo-folder-unflag-answered): Ditto.
3291
3292         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3293         change of `mark'->`flag'.
3294         (elmo-dop-queue-method-name-alist): Ditto.
3295         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3296         (elmo-folder-unflag-read-dop): Ditto.
3297         (elmo-folder-flag-as-important-dop): Ditto.
3298         (elmo-folder-unflag-important-dop): Ditto.
3299         (elmo-folder-flag-as-answered-dop): Ditto.
3300         (elmo-folder-unflag-answered-dop): Ditto.
3301
3302         * elmo-cache.el (elmo-folder-msgdb-create): Call
3303         `elmo-global-flags-set'.
3304
3305         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3306         Call `elmo-global-flags-set'.
3307         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3308         elmo-archive-parse-mmdf with argument `folder'.
3309         (elmo-archive-parse-mmdf): Added argument `folder';
3310         Call `elmo-global-flags-set'.
3311
3312         * elmo-version.el (elmo-version): Up to 2.11.14.
3313
3314 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3315
3316         * modb.el (elmo-msgdb-length): Define.
3317
3318         * elmo.el (elmo-make-folder): Fixed.
3319         (elmo-generic-folder-append-messages): Follow the API change.
3320
3321         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3322         API change.
3323
3324 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3325
3326         * modb.el: New file.
3327
3328         * modb-entity.el: Ditto.
3329
3330         * modb-legacy.el: Ditto.
3331
3332         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3333         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3334         of `elmo-msgdb-overview-get-entity'.
3335         (elmo-msgdb-get-field): Ditto.
3336         (elmo-msgdb-merge): Moved to `elmo.el'.
3337         (elmo-msgdb-length): Removed; redefine as modb method.
3338         (elmo-msgdb-change-mark): Abolish.
3339         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3340         (elmo-msgdb-match-condition): Don't use mark.
3341         (elmo-msgdb-overview-get-entity): Abolish.
3342         Split modb part into `modb*.el'.
3343
3344         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3345
3346         * elmo-shimbun.el (shimbun-mua-search-id): Use
3347         `elmo-msgdb-message-entity' instead of
3348         `elmo-msgdb-overview-get-entity'.
3349         (elmo-shimbun-folder-shimbun-header): Ditto.
3350         (elmo-shimbun-get-headers): Ditto.
3351         (elmo-shimbun-update-overview): Ditto.
3352
3353         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3354
3355         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3356
3357         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3358         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3359
3360         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3361         `elmo-msgdb-mark-to-flags'.
3362
3363         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3364         `elmo-msgdb-set-path'.
3365
3366         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3367  
3368         * elmo-version.el (elmo-version): Up to 2.11.13.
3369
3370         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3371
3372         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3373         of mark.
3374
3375 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3376
3377         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3378         mismatch.
3379
3380 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3381
3382         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3383         instead of `elmo-msgdb-get-cached'.
3384         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3385
3386         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3387         (elmo-msgdb-set-cached): Ditto.
3388         (elmo-msgdb-set-flag): Rewrite.
3389         (elmo-msgdb-unset-flag): Ditto.
3390
3391         * elmo-msgdb.el: Rewrite with luna.
3392
3393         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3394         (elmo-folder-msgdb): Follow the change above.
3395         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3396         (elmo-folder-unmark-important): Follow the API change.
3397         (elmo-folder-mark-as-important): Ditto.
3398         (elmo-folder-unmark-read): Ditto.
3399         (elmo-folder-mark-as-read): Ditto.
3400         (elmo-folder-unmark-answered): Ditto.
3401         (elmo-folder-mark-as-answered): Ditto.
3402         (elmo-folder-clear): Likewise.
3403
3404         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3405         instead of `elmo-msgdb-load' (renamed).
3406
3407         * elmo-version.el (elmo-version): Up to 2.11.12.
3408
3409 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3410
3411         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3412         change.
3413         (elmo-message-mark): Abolish.
3414         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3415         instead of `elmo-msgdb-change-mark'.
3416
3417         * elmo-pipe.el (elmo-message-mark): Abolish.
3418
3419         * elmo-multi.el (elmo-message-mark): Ditto.
3420
3421         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3422         (elmo-msgdb-unread-uncached-mark): Ditto.
3423         (elmo-msgdb-unread-cached-mark): Ditto.
3424         (elmo-msgdb-read-uncached-mark): Ditto.
3425         (elmo-msgdb-answered-cached-mark): Ditto.
3426         (elmo-msgdb-answered-uncached-mark): Ditto.
3427         (elmo-msgdb-important-mark): Ditto.
3428         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3429         `use-cache'.
3430         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3431         `flags'.
3432         (elmo-flag-table-load): Changed flag to list of flag.
3433         (elmo-flag-table-set): If flags is nil, set read flag.
3434         (elmo-flag-table-get): Return derived flags from global mark,
3435         cache status and saved flags.
3436         (elmo-msgdb-flag-table): Follow the change above.
3437         (elmo-msgdb-out-of-date-messages): New function.
3438
3439         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3440
3441         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3442
3443         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3444
3445         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3446         (elmo-nntp-msgdb-create-message): Ditto.
3447
3448         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3449
3450         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3451         independent.
3452         (elmo-folder-msgdb-create): Follow the API change.
3453
3454         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3455         (elmo-folder-append-messages): Ditto.
3456
3457         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3458         (elmo-folder-append-buffer): Ditto.
3459
3460         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3461
3462         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3463
3464         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3465         (elmo-archive-parse-mmdf): Ditto.
3466
3467         * elmo-version.el (elmo-version): Up to 2.11.11.
3468
3469 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3470
3471         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3472         `elmo-msgdb-mark'.
3473
3474         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3475
3476         * elmo-pipe.el (elmo-message-flags): Defined.
3477
3478         * elmo-multi.el (elmo-message-flags): Ditto.
3479
3480 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3481
3482         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3483         `elmo-msgdb-delete-msgs'.
3484
3485         * elmo.el (elmo-folder-count-flags): Don't use
3486         `elmo-msgdb-get-mark-alist'.
3487         (elmo-folder-detach-messages): Follow the API change.
3488
3489         * elmo.el (elmo-folder-list-messages): Append killed messages into
3490         result if `visible-only' is nil.
3491
3492         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3493         canceled messages.
3494         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3495         (elmo-folder-update-number): Likewise.
3496
3497         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3498         (elmo-pop3-sort-msgdb-by-original-number): Use
3499         `elmo-msgdb-sort-entities'.
3500
3501         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3502         (elmo-msgdb-sort-by-date): Use it.
3503         (elmo-msgdb-overview-sort-by-date): Abolish.
3504
3505         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3506
3507         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3508         (elmo-msgdb-flags): New function.
3509         (elmo-msgdb-merge): Use elmo-msgdb-append.
3510
3511         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3512         change.
3513
3514         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3515
3516         * elmo-dop.el (elmo-folder-status-dop): Use
3517         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3518
3519 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3520
3521         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3522
3523         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3524
3525         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3526
3527         * elmo-util.el (elmo-with-progress-display): New macro.
3528
3529         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3530
3531 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3532
3533         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3534         `elmo-folder-list-message-entities' instead of
3535         `elmo-msgdb-get-overview'.
3536         (elmo-map-folder-list-message-locations): Ditto.
3537
3538         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3539         methods instead of treat directly).
3540         (elmo-msgdb-clear): Ditto.
3541         (elmo-msgdb-delete-msgs): Ditto.
3542         (elmo-msgdb-sort-by-date): Ditto.
3543
3544         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3545         local variables.
3546         (elmo-nntp-folder-msgdb-create): Follow the API change.
3547
3548         * elmo-version.el (elmo-version): Up to 2.11.10.
3549
3550 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3551
3552         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3553         (elmo-msgdb-flags-to-mark): Ditto.
3554         (elmo-msgdb-append-entity): Ditto.
3555
3556         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3557         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3558         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3559         (elmo-archive-parse-mmdf): Ditto.
3560
3561         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3562
3563         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3564
3565         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3566
3567         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3568
3569         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3570
3571         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3572
3573         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3574
3575         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3576
3577         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3578         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3579         to empty msgdb.
3580
3581         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3582         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3583         instead of directly construction.
3584         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3585         instead of construct msgdb.
3586
3587         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3588         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3589         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3590         instead of construct msgdb.
3591
3592 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3593
3594         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3595         when field is from or subject.
3596
3597 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3598
3599         * elmo-multi.el (elmo-message-entity-parent): Define.
3600         (elmo-folder-search): Rewrite.
3601
3602 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3603
3604         * elmo-multi.el (elmo-message-cached-p): Define.
3605
3606         * elmo.el (elmo-message-cached-p): New method.
3607         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3608         (elmo-message-flags): New method.
3609         (elmo-message-flagged-p): New function.
3610
3611         * elmo-version.el (elmo-version): Up to 2.11.9.
3612
3613 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3614
3615         * elmo-version.el (elmo-version): Up to 2.11.8.
3616
3617         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3618
3619         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3620
3621 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3622
3623         * elmo.el (elmo-folder-detach-messages): Undo last change.
3624
3625 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3626
3627         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3628
3629         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3630         only when src folder type is pop3.
3631
3632 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3633
3634         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3635         elmo-msgdb-overview-entity-get-number instead of
3636         elmo-message-entity-number.
3637
3638 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3639
3640         * elmo-version.el (elmo-version): Up to 2.11.7.
3641
3642 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3643
3644         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3645         function.
3646
3647         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3648         (elmo-msgdb-merge): New function.
3649         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3650         (elmo-msgdb-make-index): Rewrite.
3651
3652         * elmo-version.el (elmo-version): Up to 2.11.6.
3653
3654         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3655         use it as a the path for loading message entities.
3656
3657         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3658
3659 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3660
3661         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3662         message-modified slot of itself if it does not require target msgdb.
3663
3664         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3665         if folder length is zero.
3666         (elmo-mime-display-as-is): Ditto.
3667
3668         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3669
3670         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3671
3672 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3673
3674         * elmo.el (elmo-folder-set-message-modified): New method.
3675         (elmo-generic-folder-commit): Use it.
3676         (elmo-folder-synchronize): Ditto.
3677
3678         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3679         (elmo-folder-commit): Remove duplicate definition.
3680
3681 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3682
3683         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3684
3685 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3686
3687         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3688         (elmo-strict-folder-diff): Ditto.
3689         (elmo-folder-set-info-max-by-numdb): Simplify.
3690
3691         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3692         elmo-msgdb-list-messages.
3693
3694         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3695         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3696
3697 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3698
3699         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3700         visible-only is non-nil.
3701         (elmo-folder-confirm-appends): Changed message.
3702         (elmo-folder-synchronize): Added argument disable-killed.
3703
3704         * elmo-multi.el (elmo-folder-synchronize): Added argument
3705         disable-killed.
3706
3707         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3708
3709         * elmo-version.el (elmo-version): Up to 2.11.5.
3710
3711         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3712         elmo-list-filter.
3713
3714         * elmo-util.el (elmo-list-filter): Simplify.
3715
3716         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3717         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3718         (elmo-generic-folder-diff): Abolish argument.
3719         (elmo-msgdb-load): Don't use number-alist.
3720
3721         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3722
3723         * elmo-pipe.el (elmo-folder-diff): Ditto.
3724
3725         * elmo-nmz.el (elmo-folder-diff): Ditto.
3726
3727         * elmo-net.el (elmo-folder-diff): Ditto.
3728
3729         * elmo-maildir.el (elmo-folder-diff): Ditto.
3730
3731         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3732
3733         * elmo-multi.el (elmo-folder-diff): Ditto
3734         (elmo-multi-folder-diff): Rewrite.
3735
3736 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3737
3738         * elmo-pipe.el (elmo-folder-msgdb): Define.
3739
3740 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3741
3742         * elmo.el (elmo-message-set-cached): Define as a method.
3743
3744         * elmo-pipe.el (elmo-message-set-cached): Define.
3745         (elmo-find-fetch-strategy): Ditto.
3746
3747         * elmo-multi.el (elmo-message-set-cached): Define.
3748         (elmo-find-fetch-strategy): Rewrite.
3749
3750         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3751
3752         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3753
3754 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3755
3756         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3757         instead of number-alist.
3758
3759         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3760         mark nor message-id when msgdb of source folder is not loaded.
3761
3762         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3763
3764         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3765
3766 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3767
3768         * elmo.el (elmo-folder-length): Don't require msgdb.
3769
3770 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3771
3772         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3773         (elmo-message-field): Ditto.
3774
3775         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3776         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3777         slot.
3778         (elmo-map-folder-list-answereds): Define.
3779         (elmo-maildir-list-location): Treat 'R' info.
3780         (elmo-folder-msgdb-create): Treat flag-table.
3781         (elmo-folder-append-messages): Save flag-table.
3782
3783 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3784
3785         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3786         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3787
3788 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3789
3790         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3791
3792         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3793         'read when mark is null.
3794
3795 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3796
3797         * elmo-version.el (elmo-version): Up to 2.11.4.
3798
3799 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3800
3801         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3802         (elmo-folder-mark-as-answered): Ditto.
3803
3804 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3805
3806         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3807         (elmo-pop3-get-session): Make msgdb directory after session.
3808         (elmo-folder-exists-p): Check exactly at the first time even when the
3809         elmo-pop3-exists-exactly is nil.
3810
3811         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3812         (elmo-folder-list-messages): Define instead of
3813         elmo-folder-list-messages-internal.
3814         (elmo-folder-check): Check destination folder.
3815         (elmo-folder-synchronize): Drain the pipe.
3816
3817         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3818         when msgdb is not loaded.
3819
3820         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3821
3822         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3823         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3824         messages.
3825
3826         * elmo.el (elmo-folder-kill-messages-before): New function.
3827         (elmo-folder-kill-messages): Ditto.
3828         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3829
3830         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3831         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3832         killed not by synchronize (e.g. scoring).
3833
3834 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3835
3836         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3837         treated.
3838         (elmo-folder-search): Follow the change above.
3839
3840         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3841         into the candidates of search field.
3842
3843 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3844
3845         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3846         (elmo-msgdb-unset-flag): Ditto.
3847
3848         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3849
3850 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3851
3852         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3853         (elmo-folder-commit): Define.
3854         (elmo-folder-synchronize): Ditto.
3855         (elmo-folder-list-flagged): Ditto.
3856         (elmo-folder-commit): Ditto.
3857         (elmo-folder-length): Ditto.
3858         (elmo-folder-count-flags): Ditto.
3859         (elmo-message-mark): Ditto.
3860         (elmo-message-field): Ditto.
3861         (elmo-message-entity): Ditto.
3862         (elmo-message-folder): Ditto.
3863
3864 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3865
3866         * elmo.el (elmo-message-field): Define as a method.
3867
3868         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3869         (elmo-message-field): Define.
3870
3871         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3872         (elmo-folder-list-importants): Ditto.
3873         (elmo-folder-list-answereds): Ditto.
3874
3875         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3876         qualifier.
3877         (elmo-folder-mark-as-read): Ditto.
3878         (elmo-folder-unmark-read): Ditto.
3879         (elmo-folder-mark-as-answered): Ditto.
3880         (elmo-folder-unmark-answered): Ditto.
3881         (elmo-folder-list-flagged): Define.
3882         (elmo-folder-commit): Ditto.
3883         (elmo-folder-length): Ditto.
3884         (elmo-folder-count-flags): Ditto.
3885
3886 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3887
3888         * elmo.el (elmo-folder-detach-messages): New method.
3889         (elmo-folder-move-messages): Use it.
3890         (elmo-folder-synchronize): Ditto.
3891
3892         * elmo-multi.el (elmo-folder-detach-messages): Define.
3893
3894         * elmo.el (elmo-message-copy-entity): New function.
3895         (elmo-message-entity-set-number): Ditto.
3896         (elmo-message-mark): Define as method.
3897
3898         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3899         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3900         (elmo-message-entity): Fixed last change.
3901         (elmo-message-mark): Define.
3902         (elmo-folder-msgdb-create): Abolish.
3903         (elmo-multi-folder-append-msgdb): Ditto.
3904         (elmo-multi-folder-diff): Fixed.
3905         (elmo-multi-split-number-alist): Removed.
3906         (elmo-multi-split-mark-alist): Removed.
3907         (elmo-folder-list-messages): Define.
3908         (elmo-folder-list-messages-internal): Removed.
3909
3910         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3911         local file messages.
3912         (elmo-folder-msgdb-create): Fixed read mark.
3913
3914 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3915
3916         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3917         if mark is nil.
3918
3919 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3920
3921         * elmo.el (elmo-folder-list-message-entities): Define as inline
3922         function.
3923         (elmo-folder-messages): Abolish.
3924
3925         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3926         folder.
3927         (elmo-folder-synchronize): Define.
3928         (elmo-message-entity): Define.
3929
3930 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3931
3932         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3933         elmo-imap4-session-select-mailbox.
3934
3935         * elmo.el (elmo-folder-move-messages): Don't display any message.
3936
3937         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3938         parsing.
3939         (elmo-imap4-session-check): Don't wait CHECK response.
3940         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3941
3942 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3943
3944         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3945
3946 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3947
3948         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3949         API.
3950         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3951
3952
3953         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3954         (elmo-folder-list-message-entities): Added argument in-msgdb and
3955         numbers.
3956         (elmo-folder-synchronize): Define as a method.
3957
3958         * elmo-nntp.el (elmo-folder-initialize): Don't use
3959         elmo-nntp-default-user if zero-length username is specified
3960         explicitly.
3961
3962 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3963
3964         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3965         server name in case with username.
3966         (XXX: this is ad-hoc fix against username includes "@", it
3967         should be solved fundamentally)
3968
3969 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3970
3971         * elmo-nntp.el (elmo-nntp-debug): New function.
3972         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3973         (elmo-network-authenticate-session): Hide auth-info from the log.
3974
3975         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3976         user name if it is equal to elmo-nntp-default-user.
3977
3978 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3979
3980         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3981         instead of shimbun-server-internal;
3982         Use shimbun-current-group instead of shimbun-current-group-internal.
3983         (elmo-folder-plugged-p): Use shimbun-server instead of
3984         shimbun-server-internal.
3985         (elmo-folder-set-plugged): Ditto.
3986         (elmo-net-port-info): Ditto.
3987         (elmo-folder-check): Ditto.
3988         (elmo-folder-expand-msgdb-path): Ditto.
3989         (elmo-folder-list-subfolders): Ditto.
3990
3991 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3992
3993         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3994         Convert field-name to lower case.
3995         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3996
3997 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3998
3999         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4000         `message' and `error' take format string.
4001
4002 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4003
4004         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4005
4006 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4007
4008         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4009         recursive call (can't byte compile on emacs 20.7).
4010
4011 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4012
4013         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4014         (elmo-folder-list-message-entities): New API.
4015         (elmo-message-entity): Ditto.
4016         (elmo-message-entity-parent): Ditto.
4017         (elmo-folder-do-each-message-entity): Ditto.
4018         (elmo-message-entity-number): Ditto.
4019         (elmo-message-entity-field): Ditto.
4020         (elmo-message-entity-set-field): Ditto.
4021         (elmo-folder-count-flags): Ditto.
4022         (elmo-folder-length): Ditto.
4023
4024         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4025         not.
4026
4027         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4028         (elmo-msgdb-count-marks): Abolish.
4029         (elmo-msgdb-make-entity): Ditto.
4030         (elmo-msgdb-do-each-entity): Ditto.
4031         (elmo-msgdb-message-entity): New inline function.
4032         (elmo-msgdb-message-entity-field): Ditto.
4033         (elmo-msgdb-message-entity-set-field): Ditto.
4034         (elmo-msgdb-make-message-entity): New function.
4035
4036 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4037
4038         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4039         to flag. (All other related portions are changed.)
4040         (elmo-folder-msgdb-create): Likewise.
4041         (elmo-generic-folder-append-messages): Use flag-table instead of
4042         seen-list.
4043         (elmo-folder-move-messages): Removed redundant process.
4044         (elmo-folder-synchronize): Likewise.
4045
4046         * elmo-msgdb.el (elmo-flag-table-get): New function.
4047         (elmo-flag-table-save): Fixed.
4048         (elmo-msgdb-length): New inline function.
4049         (elmo-msgdb-flag-table): New function.
4050         (elmo-msgdb-mark): Add optional argument new.
4051         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4052         (elmo-msgdb-seen-list): Ditto.
4053         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4054
4055
4056 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4057
4058         * elmo.el (elmo-message-set-mark): Abolish.
4059         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4060         (All related portions are changed.)
4061
4062         * elmo-msgdb.el (toplevel): Added comment.
4063         (elmo-load-msgdb): Added 4th element `path'.
4064         (elmo-msgdb-append): Follow the change above.
4065         (elmo-msgdb-clear): Ditto.
4066         (elmo-msgdb-delete-msgs): Ditto.
4067         (elmo-msgdb-get-path): New inline function.
4068         (elmo-msgdb-set-path): Ditto.
4069         (elmo-flag-table-filename): New variable.
4070         (elmo-flag-table-load): New function.
4071         (elmo-flag-table-set): Ditto.
4072         (elmo-flag-table-save): Ditto.
4073         (elmo-msgdb-get-field-value): Abolish.
4074         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4075
4076 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4077
4078         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4079         the folder has been deleted successfully.
4080         * elmo-imap4.el (elmo-folder-delete): Ditto.
4081         * elmo-archive.el (elmo-folder-delete): Ditto.
4082         * elmo-localdir.el (elmo-folder-delete): Ditto.
4083         * elmo-maildir.el (elmo-folder-delete): Ditto.
4084
4085 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4086
4087         * elmo-util.el (elmo-string-member-ignore-case): New function.
4088         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4089         (elmo-imap4-fetch-callback-1-subr): Likewise.
4090
4091 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4092
4093         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4094         the case of the name attribute "\Noselect".
4095
4096 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4097
4098         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4099
4100         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4101         flist, is not always a member of onum-alist.
4102
4103 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4104
4105         * elmo-version.el (elmo-version): Up to 2.11.3.
4106
4107 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4108
4109         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4110         copied from localdir's one.
4111
4112         * elmo-pipe.el (elmo-folder-rename): New method, rename
4113         destination folder with leaving source folder as it is.
4114
4115 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4116
4117         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4118         replace-regexp.
4119
4120 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4121
4122         * elmo-version.el (elmo-version): Up to 2.11.2.
4123
4124 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4125
4126         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4127         shimbun-open in case of "@".
4128         (elmo-folder-open-internal): Cope with shimbun = nil case.
4129         (elmo-folder-plugged-p): Ditto.
4130         (elmo-folder-list-subfolders): Make list for "@/" group.
4131
4132 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4133
4134         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4135         mailbox (e.g. for %~/something).
4136
4137 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4138
4139         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4140         Replace nested conditional with guard clauses.
4141
4142 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4143
4144         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4145         error [wl:11327].
4146
4147         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4148         print-depth.
4149
4150 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4151
4152         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4153         Replace nested conditional with guard clauses.
4154
4155 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4156
4157         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4158         (elmo-passwd-alist-save): Ditto.
4159         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4160
4161 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4162
4163         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4164         dir-name only if it is absolute path.
4165         (TODO: distinguish +/something and +something)
4166
4167 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4168
4169         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4170         path for "+~/something".
4171
4172 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4173
4174         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4175         as non-directory, cause error before rename-file.
4176         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4177         apropriately, mimic localdir's one.
4178         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4179
4180 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4181
4182         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4183
4184 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4185
4186         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4187
4188         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4189         
4190         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4191         is included in the global-mark or not.
4192
4193 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4194
4195         * utf7.el (toplevel): Avoid error when the function
4196         find-coding-system does not exist.
4197
4198 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4199
4200         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4201         cache even if the folder is plugged.
4202         (elmo-nntp-search-primitive): Do nothing when body search is
4203         invoked (although it is not used by the change above).
4204         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4205
4206 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4207
4208         * elmo-version.el (elmo-version): Up to 2.11.1.
4209
4210 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4211
4212         * elmo-archive.el: Specify charset.
4213
4214 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4215
4216         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4217         process buffer lives or not.
4218
4219         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4220         while flushing queues (It causes infinite loop).
4221
4222 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4223
4224         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4225
4226 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4227
4228         * utf7.el (toplevel): Check the ucs features dynamically.
4229         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4230
4231         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4232         folder is creatabe or not if it already exists.
4233
4234 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4235
4236         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4237
4238         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4239
4240         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4241         (elmo-imap4-read-response): Take care of garbage response.
4242
4243 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4244
4245         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4246         just return nil instead of error.
4247
4248 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4249
4250         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4251         search-key is "body".
4252
4253 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4254
4255         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4256         of elmo-string-matched-assoc to use match-data.
4257         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4258
4259 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4260
4261         * elmo-split.el (elmo-split->): New function.
4262         (elmo-split-<): Ditto.
4263
4264 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4265
4266         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4267         workaround for invalid message-id.
4268
4269 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4270
4271         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4272         return normal pop3 session or pop3 biff session.
4273
4274 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4275
4276         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4277         info part to the cur files when the new files already have it.
4278         (Adviced by Jared Rhine <jared@wordzoo.com>)
4279
4280 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4281
4282         * elmo-split.el (elmo-split-default-action): New variable.
4283         (elmo-split-subr): Use it if all other conditions are passed.
4284         Extend `fname' and rename it as `action'. (implemented
4285         Teranishi-san's idea in [wl:10800])
4286
4287 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4288
4289         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4290         * elmo-util.el: Ditto.
4291
4292 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4293
4294         * elmo.el (elmo-message-accessible-p): Renamed from
4295         elmo-message-cached-p and rewritten.
4296
4297 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4298
4299         * elmo.el (elmo-folder-list-flagged): New generic function.
4300         (elmo-folder-list-importants): New implementation.
4301         (elmo-folder-list-answereds): Ditto.
4302         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4303         Added 'digest'.
4304         (elmo-message-cached-p): New function.
4305         (elmo-message-set-flag): Ditto (no content).
4306         (elmo-message-unset-flag): Ditto.
4307         (elmo-folder-list-messages-mark-match): Abolish.
4308
4309         * elmo-util.el (elmo-regexp-opt): New function.
4310
4311         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4312         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4313         Added 'digest'.
4314         (elmo-msgdb-list-flagged): New function.
4315
4316         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4317         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4318         Added 'digest'.
4319
4320         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4321
4322 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4323
4324         * elmo-version.el (elmo-version): Up to 2.11.0.
4325
4326 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4327
4328         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4329         `elmo-file-cache-exists-p'; use proper mark that depends on
4330         `use-cache'.
4331         (elmo-msgdb-unset-flag): Ditto.
4332         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4333
4334         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4335         with 4th argument `use-cache'.
4336
4337 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4338
4339         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4340         (elmo-folder-mark-as-important): Ditto.
4341         (elmo-folder-unmark-read): Ditto.
4342         (elmo-folder-mark-as-read): Ditto.
4343         (elmo-folder-unmark-answered): Ditto.
4344         (elmo-folder-mark-as-answered): Ditto.
4345
4346         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4347         message status.
4348         (elmo-msgdb-mark): Likewise.
4349         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4350         (elmo-msgdb-unset-flag): Likewise.
4351
4352         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4353
4354 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4355
4356         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4357         `last:' filter.
4358
4359 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4360
4361         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4362         set spool-length to 0.
4363
4364 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4365
4366         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4367         (elmo-dop-queue-flush): Fixed last change.
4368
4369 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4370
4371         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4372         if require-msgdb slot is nil.
4373         (elmo-folder-list-importants): Likewise.
4374
4375 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4376
4377         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4378         mark is changed.
4379
4380         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4381         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4382         is changed.
4383
4384 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4385
4386         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4387
4388 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4389
4390         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4391
4392         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4393
4394 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4395
4396         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4397         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4398
4399 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4400
4401         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4402         the problem reported by Sean Rima [wl-en:180].
4403
4404 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4405
4406         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4407
4408         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4409
4410         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4411
4412         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4413
4414         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4415
4416         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4417
4418         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4419
4420 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4421
4422         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4423         status number.
4424
4425 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4426
4427         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4428         (elmo-folder-mark-as-read): Follow the API change.
4429         (elmo-message-set-cached): New function.
4430
4431         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4432
4433         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4434
4435         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4436         (elmo-folder-mark-as-important): Ditto.
4437         (elmo-folder-unmark-read): Ditto.
4438         (elmo-folder-mark-as-read): Ditto.
4439         (elmo-folder-unmark-answered): Ditto.
4440         (elmo-folder-mark-as-answered): Ditto.
4441
4442         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4443         (elmo-folder-unmark-important): Ditto.
4444         (elmo-folder-mark-as-read): Ditto.
4445         (elmo-folder-unmark-read): Ditto.
4446         (elmo-folder-mark-as-answered): Ditto.
4447         (elmo-folder-unmark-answered): Ditto.
4448
4449         * elmo-mark.el (toplevel): Removed some mark method definitions.
4450
4451         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4452         (elmo-map-folder-mark-as-answered): Ditto.
4453         (elmo-folder-unmark-important): Add :before qualifier.
4454         (elmo-folder-mark-as-important): Ditto.
4455         (elmo-folder-unmark-read): Ditto.
4456         (elmo-folder-mark-as-read): Ditto.
4457         (elmo-folder-unmark-answered): Define.
4458         (elmo-folder-mark-as-answered): Ditto.
4459
4460         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4461         (elmo-map-folder-unmark-answered): Ditto.
4462
4463         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4464
4465         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4466         (elmo-folder-mark-as-important): Ditto.
4467         (elmo-folder-unmark-read): Ditto.
4468         (elmo-folder-mark-as-read): Ditto.
4469         (elmo-folder-unmark-answered): Ditto.
4470         (elmo-folder-mark-as-answered): Ditto.
4471
4472         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4473         `mark'; evaluate mark condition.
4474         (elmo-msgdb-match-condition-internal): New function.
4475         (elmo-msgdb-match-condition): Call it; changed argument.
4476
4477         * elmo.el (elmo-folder-search): Follow the API change on
4478         `elmo-msgdb-match-condition'.
4479
4480 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4481
4482         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4483         original mark is non-nil.
4484
4485 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4486
4487         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4488         (elmo-map-folder-list-answereds): New method.
4489         (elmo-folder-list-unreads): Add :around qualifier.
4490         (elmo-folder-list-importants): Ditto.
4491         (elmo-folder-list-answereds): Ditto.
4492
4493 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4494
4495         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4496
4497         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4498         method if msgdb is not required.
4499         (elmo-filter-folder-list-importants): Don't treat global-mark.
4500
4501         * elmo.el (elmo-folder-list-importants): Ditto.
4502
4503         * elmo-net.el (elmo-folder-list-importants): Ditto.
4504
4505         * elmo-map.el (elmo-folder-list-importants): Ditto.
4506
4507         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4508
4509         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4510         (elmo-imap4-folder-list-any-plugged): New function.
4511         (elmo-imap4-search-internal-primitive): Use it.
4512
4513         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4514         only when require-msgdb slot is non-nil.
4515         (elmo-folder-close): Clear target folder's msgdb.
4516
4517 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4518
4519         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4520         (elmo-pop3-msgdb-create-by-header): Ditto.
4521         (elmo-pop3-msgdb-create-message): Ditto.
4522
4523         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4524
4525         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4526
4527         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4528
4529         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4530         (elmo-folder-msgdb-create): Ditto.
4531         (elmo-nntp-folder-msgdb-create): Ditto.
4532         (elmo-nntp-msgdb-create-by-header): Ditto.
4533         (elmo-nntp-msgdb-create-message): Ditto.
4534         (elmo-folder-list-unreads): Define.
4535
4536         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4537         (elmo-folder-append-messages): Ditto.
4538         (elmo-folder-list-unreads): Define.
4539         (elmo-folder-list-importants): Ditto.
4540         (elmo-folder-list-answereds): Ditto.
4541
4542         * elmo-net.el (elmo-folder-list-unreads): Define.
4543         (elmo-folder-list-importants): Ditto.
4544         (elmo-folder-list-answereds): Ditto.
4545         (elmo-folder-list-answereds-plugged): Ditto.
4546         (elmo-folder-msgdb-create): Follow the API change.
4547         (elmo-folder-msgdb-create-unplugged): Ditto.
4548         (elmo-folder-unmark-answered): Define.
4549         (elmo-folder-mark-as-answered-unplugged): Ditto.
4550         (elmo-folder-unmark-answered-unplugged): Ditto.
4551
4552         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4553         (elmo-msgdb-unread-uncached-mark): Ditto.
4554         (elmo-msgdb-unread-cached-mark): Ditto.
4555         (elmo-msgdb-read-uncached-mark): Ditto.
4556         (elmo-msgdb-answered-cached-mark): Ditto.
4557         (elmo-msgdb-answered-uncached-mark): Ditto.
4558         (elmo-msgdb-important-mark): Ditto.
4559         (elmo-msgdb-set-mark): Rewrite.
4560         (elmo-msgdb-count-marks): Rewrite.
4561         (elmo-msgdb-mark-alist-set): Abolish.
4562         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4563         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4564
4565         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4566         (elmo-folder-close): Define.
4567         (elmo-folder-msgdb-create): Follow the API change.
4568         (elmo-folder-list-unreads): Rewrite.
4569         (elmo-folder-mark-as-important): Ditto.
4570         (elmo-folder-unmark-important): Ditto.
4571         (elmo-folder-mark-as-read): Ditto.
4572         (elmo-folder-unmark-read): Ditto.
4573         (elmo-folder-mark-as-answered): Define.
4574         (elmo-folder-unmark-answered): Ditto.
4575
4576         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4577         (elmo-folder-append-messages): Ditto.
4578
4579         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4580
4581         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4582         (elmo-folder-list-importants): Ditto.
4583
4584         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4585         (elmo-folder-append-messages): Ditto.
4586
4587         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4588         change.
4589         (elmo-folder-msgdb-create-plugged): Ditto.
4590         (elmo-folder-append-messages): Ditto.
4591         (elmo-folder-list-answereds-plugged): Define.
4592         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4593         (elmo-folder-unmark-answered-plugged): Define.
4594         (elmo-folder-mark-as-answered-plugged): Ditto.
4595         (elmo-folder-search-requires-msgdb-p): Ditto.
4596
4597         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4598         (elmo-folder-initialize): Set it.
4599         (elmo-folder-msgdb): Define.
4600         (elmo-folder-check): Call elmo-folder-synchronize.
4601         (elmo-folder-close): Define.
4602         (elmo-folder-commit): Ditto.
4603         (elmo-folder-msgdb-create): Rewrite.
4604         (elmo-folder-list-unreads): Ditto.
4605         (elmo-folder-list-importants): Ditto.
4606         (elmo-folder-mark-as-read): Ditto.
4607         (elmo-folder-unmark-read): Ditto.
4608         (elmo-folder-mark-as-important): Ditto.
4609         (elmo-folder-unmark-important): Ditto.
4610         (elmo-folder-mark-as-answered): Define.
4611         (elmo-folder-unmark-answered): Ditto.
4612
4613         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4614         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4615         (elmo-dop-queue-method-name-alist): Likewise.
4616         (elmo-folder-mark-as-answered-dop): New inline function.
4617         (elmo-folder-unmark-answered-dop): Ditto.
4618         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4619
4620         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4621         (elmo-folder-msgdb-create): Ditto.
4622         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4623         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4624         (elmo-archive-parse-mmdf): Ditto.
4625
4626         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4627         (elmo-folder-list-unreads-internal): Ditto.
4628
4629         * elmo.el (elmo-folder-msgdb): Define as generic function.
4630         (elmo-folder-list-messages): Added argument `in-msgdb'.
4631         (elmo-folder-list-unreads): Define as generic function.
4632         (elmo-folder-list-importants): Ditto.
4633         (elmo-folder-list-answereds): Ditto.
4634         (elmo-folder-list-messages-with-global-mark): New function.
4635         (elmo-folder-msgdb-create): Removed mark arguments.
4636         (elmo-folder-unmark-answered): New generic function.
4637         (elmo-folder-mark-as-answered): Ditto.
4638         (elmo-folder-append-messages): Removed argunment `unread-marks'
4639         (elmo-folder-list-unreads-internal): Abolish.
4640         (elmo-folder-list-importants-internal): Ditto.
4641         (elmo-folder-search-requires-msgdb-p): New generic function.
4642         (elmo-folder-search-requires-msgdb-p-internal): New function.
4643         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4644         elmo-msgdb-load.
4645         (elmo-folder-search-fast): Added key 'mark'.
4646         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4647         instead of unread-marks argument.
4648         (elmo-folder-move-messages): Removed argunment `unread-marks'
4649         (elmo-folder-unmark-important): Define.
4650         (elmo-folder-mark-as-important): Ditto.
4651         (elmo-folder-unmark-read): Ditto.
4652         (elmo-folder-mark-as-read): Ditto.
4653         (elmo-folder-unmark-answered): Ditto.
4654         (elmo-folder-mark-as-answered): Ditto.
4655         (elmo-folder-replace-marks): Abolish.
4656         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4657         duplicates.
4658         (elmo-folder-synchronize): Removed mark arguments;
4659         return crosspost only number.
4660
4661 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4662
4663         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4664         Remove redundunt connectivity check.
4665
4666 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4667
4668         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4669         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4670
4671 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4672
4673         * pldap.el (ldap-decode-string): Return string as-is if
4674         `ldap-coding-system' is nil.
4675         (ldap-encode-string): Ditto.
4676         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4677         (ldap-default-host): Fixed docstring.
4678
4679 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4680
4681         * elmo-util.el (elmo-warning): Define as a macro which uses
4682         `display-warning' if it is defined as a function.
4683
4684         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4685         (elmo-split-equal): Use it.
4686         (elmo-split-match): Ditto.
4687         (elmo-split-message-entity): New buffer-local variable.
4688         (elmo-split-subr): Set it.
4689
4690         * elmo-version.el (elmo-version): Up to 2.9.15.
4691
4692 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4693
4694         * elmo-imap4.el (elmo-network-initialize-session):
4695         Check capability after starttls.
4696
4697 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4698
4699         * elmo-util.el (elmo-list-delete): Added optional argument
4700         DELETE-FUNCTION.
4701
4702         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4703
4704         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4705
4706         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4707
4708         * elmo-imap4.el (elmo-folder-initialize): Don't use
4709         elmo-imap4-default-mailbox.
4710
4711 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4712
4713         * elmo-split.el (toplevel): Use `product-provide'.
4714         (elmo-split): Checkdoc.
4715
4716 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4717
4718         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4719         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4720         the function `elmo-imap4-debug-1'.
4721
4722 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4723
4724         * elmo-split.el (elmo-split): Moved to run hooks and to show
4725         message from elmo-split-subr.
4726         (elmo-split-subr): Follow the change above.
4727
4728         * elmo-split.el (elmo-split-subr): New function (renamed from
4729         elmo-split-subr).
4730         (elmo-split): Changed to call elmo-split-subr by element of
4731         elmo-split-folder.
4732         (elmo-split-folder): Changed customization type to choice.
4733
4734 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4735
4736         * elmo-split.el (elmo-split-and): Fixed condition.
4737
4738 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4739
4740         * elmo-split.el: New file.
4741         (elmo-split): Fixed logic.
4742         Display "Test:" instead of "Folder:" when reharsal.
4743
4744         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4745         explicitly.
4746
4747         * elmo-version.el (elmo-version): Up to 2.9.14.
4748
4749         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4750         wl-expand-newtext).
4751
4752 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4753
4754         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4755         message with no message-id field.
4756
4757 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4758
4759         * elmo-version.el (elmo-version): Up to 2.9.13.
4760
4761         * elmo-dop.el (elmo-folder-status-dop): Fix.
4762
4763 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4764
4765         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4766
4767         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4768         changing default value of default-mime-charset.
4769         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4770
4771         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4772
4773         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4774         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4775         instead of elmo-dop-queue-method-name-alist to check merging queue.
4776         (elmo-folder-delete-messages-dop): Delete from queue if negative
4777         message number.
4778         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4779         file is already removed.
4780
4781 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4782
4783         * elmo-vars.el: Bind colon keywords for old Emacsen.
4784
4785 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4786
4787         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4788         against non-exsisting charset.
4789
4790 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4791
4792         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4793         Use eword-decode-and-unfold-unstructured-field-body.
4794
4795         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4796         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4797         exists to decode raw subject string.
4798         (toplevel): Require 'mime.
4799
4800         * elmo-version.el (elmo-version): Up to 2.9.12.
4801
4802 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4803
4804         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4805         (elmo-msgdb-set-mark): Ditto.
4806
4807         * elmo-version.el (elmo-version): Up to 2.9.11.
4808
4809 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4810
4811         * elmo-util.el (elmo-delete-match-files): New function.
4812
4813         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4814         instead of elmo-delete-directory.
4815
4816         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4817         elmo-hash-minimun-size as 63.
4818
4819         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4820         elmo-diff-unread is nil.
4821
4822         * elmo-imap4.el (elmo-folder-open): Fix.
4823
4824         * elmo.el (elmo-message-mark): Rewrite.
4825         (elmo-message-field): Ditto.
4826         (elmo-message-set-mark): Ditto.
4827         (elmo-folder-replace-marks): New function.
4828         (elmo-generic-folder-append-msgdb): Removed third argument for
4829         elmo-msgdb-append.
4830         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4831         (elmo-msgdb-load): New implementation.
4832
4833         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4834
4835         * elmo-util.el (elmo-list-insert): New implementation.
4836
4837         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4838         argument for elmo-msgdb-append.
4839         
4840
4841         * elmo-msgdb.el (elmo-load-msgdb): New function.
4842         (elmo-make-msgdb): Ditto.
4843         (elmo-msgdb-get-index): New inline function.
4844         (elmo-msgdb-set-index): Ditto.
4845         (elmo-msgdb-get-entity-hashtb): Ditto.
4846         (elmo-msgdb-get-mark-hashtb): Ditto.
4847         (elmo-msgdb-get-mark): Ditto.
4848         (elmo-msgdb-set-mark): Ditto.
4849         (elmo-msgdb-count-marks): Ditto.
4850         (elmo-msgdb-get-number): Ditto.
4851         (elmo-msgdb-get-field): Ditto.
4852         (elmo-msgdb-seen-list): Ditto.
4853         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4854         (elmo-msgdb-delete-msgs): Follow the changes above.
4855         (elmo-msgdb-overview-get-entity): Ditto.
4856         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4857         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4858         and rewritten.
4859         (elmo-msgdb-make-index): Likewise.
4860         (elmo-msgdb-append): Removed third argument.
4861         (elmo-msgdb-clear): Clear index as nil.
4862         (elmo-folder-set-info-hashtb): Removed.
4863         (elmo-folder-set-info-max-by-numdb): Ditto.
4864         (elmo-folder-info-make-hashtb): Ditto.
4865
4866         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4867
4868         * elmo-map.el (elmo-folder-pack-number): Ditto.
4869
4870 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4871
4872         * elmo-version.el (elmo-version): Up to 2.9.10.
4873
4874         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4875
4876         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4877
4878 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4879
4880         * elmo-utils.el (elmo-make-directory): Add option.
4881         Default file mode is 700.
4882
4883 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4884
4885         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4886
4887 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4888
4889         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4890         mime-charset.
4891
4892         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4893         and "smaller".
4894
4895 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4896
4897         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4898         (elmo-shimbun-folder-entity-hash): New function.
4899         (elmo-shimbun-folder-shimbun-header): Ditto.
4900         (elmo-shimbun-entity-to-header): Ditto.
4901         (elmo-shimbun-msgdb-to-headers): Removed.
4902         (elmo-shimbun-folder-setup): Ditto.
4903         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4904         for hash key.
4905         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4906         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4907         Removed useless local bind.
4908         (elmo-folder-open-internal): Don't call
4909         `elmo-shimbun-folder-setup'.
4910         (elmo-folder-close-internal): Clear entity-hash slot.
4911         (elmo-folder-clear): Ditto.
4912         (elmo-shimbun-msgdb-create-entity): Use
4913         `elmo-shimbun-folder-shimbun-header'.
4914         (elmo-map-message-fetch): Ditto.
4915         (elmo-shimbun-update-overview): Use overview entity instead of
4916         shimbun header to lookup id by references.
4917         (elmo-map-folder-list-message-locations): Use not only headers but
4918         also overviews to list locations.
4919
4920 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4921
4922         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4923         msgdb path.
4924
4925         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4926
4927 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4928
4929         * elmo-util.el (elmo-read-search-condition-internal): Give default
4930         value for date.
4931
4932 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4933
4934         * elmo-util.el (elmo-condition-parse-search-value): Accept
4935         YYYY-MM-DD format to search.
4936         * elmo-date.el (elmo-date-get-datevec): Likewise.
4937
4938 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4939
4940         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4941         debugging code.
4942
4943 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4944
4945         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4946         from t.
4947
4948         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4949
4950         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4951         case from `elmo-folder-exists-p'.
4952         (elmo-folder-exists-p): Removed.
4953         (elmo-folder-creatable-p) Ditto.
4954
4955         * elmo-net.el (elmo-folder-create): Defined.
4956         (elmo-folder-create-unplugged): New function.
4957         (elmo-folder-exists-p): Changed default value to nil from t.
4958
4959         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4960         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4961
4962         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4963         `elmo-create-folder-dop' and append queue
4964         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4965         (elmo-folder-create-dop-delayed): New function.
4966
4967         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4968
4969         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4970
4971         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4972         (elmo-folder-writable-p) : Ditto.
4973
4974         * elmo-version.el (elmo-version): Up to 2.9.9.
4975
4976 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4977
4978         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4979         `elmo-message-use-cache-p' returns nil.
4980         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4981         (ignore cache file and refer the substance in local folders)
4982
4983 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4984
4985         * elmo-version.el (elmo-version): Up to 2.9.8.
4986
4987 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4988
4989         * elmo-version.el (elmo-version): Up to 2.9.7.
4990
4991         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4992
4993 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4994
4995         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4996
4997 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4998
4999         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5000         from --early.
5001         (elmo-map-folder-list-message-locations): Reverse location list.
5002
5003 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5004
5005         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5006
5007 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5008
5009         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5010         as a key.
5011         (elmo-nntp-folder-list-subfolders): Follow the change above.
5012
5013 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5014
5015         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5016         name if authentication type is specified.
5017
5018 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5019
5020         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5021         variable.
5022         (elmo-default-nntp-stream-type): Ditto.
5023         (elmo-default-pop3-stream-type): Ditto.
5024
5025 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5026
5027         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5028
5029 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5030
5031         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5032         elmo-vars.el.
5033         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5034
5035         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5036         (elmo-maildir-folder-path): Ditto.
5037         (elmo-maildir-list): Ditto (abolished).
5038
5039 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5040
5041         * elmo-version.el (elmo-version): Up to 2.9.6.
5042
5043 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5044
5045         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5046         (elmo-maildir-folder-path): Ditto.
5047         (elmo-msgdb-directory): Ditto.
5048         (elmo-passwd-life-time): Ditto.
5049         (elmo-msgdb-extra-fields): Ditto.
5050         (elmo-enable-disconnected-operation): Ditto.
5051
5052 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5053
5054         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5055         other choices.
5056         (elmo-pop3-default-authenticate-type): Ditto.
5057
5058 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5059
5060         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5061         choices for custom.
5062         (elmo-pop3-default-authenticate-type): Ditto.
5063
5064 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5065
5066         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5067         mailbox to new-folder.
5068
5069 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5070
5071         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5072         less than new, set new as unread.
5073
5074         * elmo-util.el (elmo-string): Don't put text-property if nil.
5075
5076 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5077
5078         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5079         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5080
5081 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5082
5083         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5084         is nil on `completing-read'.
5085
5086 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5087
5088         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5089         for namespace part.
5090         (elmo-imap4-parse-namespace-subr): Ditto.
5091         (elmo-folder-list-subfolders): Append a delimiter when the specified
5092         folder path is a root with namespace and does not end with delimiter.
5093
5094 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5095
5096         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5097         was used.
5098
5099 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5100
5101         * elmo-util.el (elmo-save-buffer): The first argument of message
5102         is a format control string.
5103
5104 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5105
5106         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5107         `elmo-folder-diff').
5108         (elmo-diff-unread): Likewise.
5109
5110 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5111
5112         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5113         is t on `completing-read'.
5114
5115 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5116
5117         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5118         method of target folder with self mark-alist if MARK-ALIST is nil.
5119
5120 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5121
5122         * elmo-version.el (elmo-version): Up to 2.9.5.
5123
5124 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5125
5126         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5127         (elmo-dop-merge-funcs): Remove.
5128
5129 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5130
5131         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5132         Return t if PATH is directory, too.
5133         Use `dolist' instead of while loop.
5134
5135 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5136
5137         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5138         is deleted.
5139
5140 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5141
5142         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5143         return value to t.
5144         (elmo-folder-list-messages-unplugged): Return t if
5145         elmo-enable-disconnected-operation is nil.
5146
5147         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5148         `elmo-folder-list-messages-internal'.
5149
5150 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5151
5152         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5153         Change to looking-at `[23][0-9]+'.
5154         (elmo-network-initialize-session): Use 'error-msg'
5155         * elmo-net.el (elmo-network-open-session): Set unplugged
5156         if elmo-network-initialize-session returns 'elmo-open-err.
5157
5158 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5159
5160         * elmo-version.el (elmo-version): Up to 2.9.4.
5161
5162 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5163
5164         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5165         `elmo-folder-list-messages-internal'.
5166
5167 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5168
5169         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5170         (elmo-message-match-condition): New method.
5171         (elmo-folder-search-fast): New inline function.
5172         (elmo-msgdb-search): Removed.
5173
5174         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5175         target folder if it is unplugged.
5176         (elmo-folder-list-messages-internal): Return t if target folder is
5177         unplugged and itself is persistent; In this case, use list be
5178         searched already.
5179
5180         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5181         (elmo-msgdb-search-internal-primitive): Ditto.
5182         (elmo-msgdb-match-condition): New function.
5183         (elmo-msgdb-match-condition-primitive): Ditto.
5184
5185         * elmo-util.el (elmo-filter-condition-p): New macro.
5186
5187         * elmo-cache.el (elmo-folder-search): Removed.
5188
5189         * elmo-localdir.el (elmo-folder-search): Ditto.
5190
5191         * elmo-maildir.el (elmo-folder-search): Ditto.
5192
5193         * elmo-mark.el (elmo-folder-search): Ditto.
5194
5195         * elmo-nmz.el (elmo-folder-search): Ditto.
5196
5197         * elmo-sendlog.el (elmo-folder-search): Ditto.
5198
5199         * elmo-shimbun.el (elmo-folder-search): Ditto.
5200
5201         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5202         if folder is unplugged.
5203
5204         * elmo-nntp.el (elmo-folder-search): Likewise.
5205         (elmo-nntp-search-internal): New function.
5206
5207         * elmo-version.el (elmo-version): Up to 2.9.3.
5208
5209 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5210
5211         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5212
5213 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5214
5215         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5216
5217 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5218
5219         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5220
5221 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5222
5223         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5224         (elmo-map-folder-list-message-locations): Do drive letter conversion
5225         on Windows environment.
5226         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5227         (elmo-map-message-fetch): Ditto.
5228
5229 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5230
5231         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5232         (elmo-network-initialize-session): Ditto.
5233
5234 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5235
5236         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5237
5238         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5239
5240         * elmo-util.el (elmo-progress-clear): Ditto.
5241
5242         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5243         `DD-Mon-YYYY' type date.
5244
5245 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5246
5247         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5248         `elmo-date-make-sortable-string' instead of
5249         `timezone-make-date-sortable'.
5250
5251         * elmo-date.el (elmo-date-make-sortable-string): Use
5252         `timezone-make-time-string'.
5253
5254 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5255
5256         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5257
5258         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5259         `since'; Fix timezone.
5260
5261         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5262
5263         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5264
5265 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5266
5267         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5268
5269 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5270
5271         * elmo.el (elmo-generic-folder-append-messages): Make
5272         fetch-strategy with `use-cache' as 'maybe. Check return value of
5273         `elmo-message-fetch'.
5274         (elmo-message-fetch): Return return value of
5275         `elmo-message-fetch-with-cache-process'.
5276         (elmo-message-fetch-with-cache-process): Return non-nil if
5277         fetching was succeed. Load cache when fetching was failed and
5278         fetch-strategy-use-cache is 'maybe.
5279
5280         * elmo-util.el (elmo-file-cache-load): New function.
5281
5282         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5283         defun.
5284
5285         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5286         non-nil if fetching was succeed.
5287
5288         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5289
5290         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5291
5292         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5293         (elmo-message-fetch-with-cache-process): Likwise.
5294
5295         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5296
5297         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5298
5299         * elmo-version.el (elmo-version): Up to 2.9.2.
5300
5301 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5302
5303         * elmo.el (elmo-folder-delete): Delete msgdb path.
5304
5305         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5306
5307         * elmo-maildir.el (elmo-folder-delete): Ditto.
5308
5309         * elmo-localdir.el (elmo-folder-delete): Ditto.
5310
5311         * elmo-imap4.el (elmo-folder-delete): Ditto.
5312
5313 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5314
5315         * elmo.el (luna-define-class): Added `biff' slot.
5316
5317         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5318         (elmo-pop3-debug-inhibit-logging): Abolished.
5319         (elmo-network-close-session): Eliminated needless let.
5320         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5321         (elmo-pop3-send-command): Added `no-log' argument.
5322         (elmo-pop3-process-filter): Use `with-current-buffer'.
5323         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5324         if login failure.
5325         (elmo-pop3-auth-apop): Likewise.
5326         (elmo-network-authenticate-session): Likewise.
5327
5328         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5329         if biff folder.
5330
5331         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5332         string to determine protocol.
5333         (elmo-network-session-name-prefix): Abolished.
5334         (elmo-network-session-cache-key): Follow the change above.
5335         (elmo-network-open-session): Ditto.
5336
5337         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5338         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5339
5340         * elmo-version.el (elmo-version): Up to 2.9.1.
5341
5342         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5343         unmatch condition checking.
5344
5345         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5346         condition.
5347
5348 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5349
5350         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5351
5352 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5353
5354         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5355         test for while loop to execute at least one SEARCH command.
5356
5357 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5358
5359         * elmo-version.el (elmo-version): Up to 2.9.0.
5360
5361 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5362
5363         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5364         (elmo-archive-folder-path): Define.
5365         (elmo-folder-initialize): Setup `dir-name' slot.
5366         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5367         Use `dir-name' as prefix of each subfolders.
5368         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5369
5370 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5371
5372         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5373         (elmo-pipe-folder-list-target-messages): New internal function.
5374         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5375         `killed-list'.
5376         (elmo-pipe-folder-copied-list-load): New function.
5377         (elmo-pipe-folder-copied-list-save): Ditto.
5378         (elmo-folder-open-internal): Follow the change above.
5379         (elmo-folder-status): Fixed for copy.
5380
5381 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5382
5383         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5384
5385 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5386
5387         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5388         elmo-copy-file instead of elmo-add-name-to-file.
5389
5390         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5391
5392         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5393         "file://..." index.
5394
5395         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5396         of accept-process-output as 1.
5397         (elmo-pop3-read-contents): Ditto.
5398         (elmo-pop3-read-body): Ditto.
5399
5400 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5401
5402         * elmo-version.el (product-version-as-string): Remove define.
5403
5404 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5405
5406         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5407         (elmo-imap4-copy-messages): Chop number set using
5408         `elmo-imap4-number-set-chop-length'.
5409         (elmo-imap4-set-flag): Ditto.
5410         (elmo-imap4-search-internal-primitive): Ditto.
5411
5412 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5413
5414         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5415         `elmo-folder-make-temp-dir'
5416
5417         * elmo-vars.el (elmo-cache-directory): New variable.
5418         (elmo-cache-dir): Abolished.
5419         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5420
5421         * elmo-version.el (elmo-version): Up to 2.7.7.
5422
5423 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5424
5425         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5426         defcustom; Set default value as t.
5427
5428 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5429
5430         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5431         (ldap-search-program-arguments): Changed default value.
5432         (ldap-search-basic): Accept exit status 4.
5433         (ldap/field-body): Parse options.
5434         (ldap/collect-field): Ditto.
5435         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5436
5437         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5438         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5439         (elmo-imap4-accept-ok): Ditto.
5440         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5441         'notify-bye, only BYE error is reported.
5442         (elmo-folder-exists-p-plugged): Set no-error argument of
5443         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5444
5445         * elmo.el (elmo-imap4-bye-error): Changed message.
5446
5447         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5448         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5449         queues (It causes infinite loop).
5450
5451 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5452
5453         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5454         (RECENT UNSEEN MESSAGES) extension.
5455
5456 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5457
5458         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5459         Check number of overview fields.
5460
5461 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5462
5463         * elmo.el (elmo-folder-confirm-appends): Changed message.
5464         (elmo-folder-confirm-appends): Ditto.
5465
5466         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5467         `with-temp-buffer'.
5468         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5469
5470 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5471
5472         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5473         of elmo-folder-update-threshold is nil, which can be set by
5474         wl-summary-update-confirm-threshold.
5475
5476 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5477
5478         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5479         (elmo-nmz-index-alias-alist): Ditto.
5480         (elmo-map-folder-list-message-locations): Follow the change above.
5481
5482 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5483
5484         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5485
5486         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5487
5488         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5489
5490         * elmo-util.el (elmo-read): Ditto.
5491         (elmo-display-error): Ditto.
5492
5493         * elmo-vars.el (elmo-date-match): Ditto.
5494
5495         * pldap.el (ldap-coding-system): Ditto.
5496
5497         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5498         `elmo-inhibit-number-mapping' as nil.
5499
5500 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5501
5502         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5503         space delimiter for list response.
5504
5505 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5506
5507         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5508
5509 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5510
5511         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5512         (elmo-map-message-fetch): Fix.
5513         * elmo-map.el (elmo-folder-status): Fix for killed.
5514
5515 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5516
5517         * elmo-sendlog.el: New file.
5518         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5519
5520 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5521
5522         * acap.el (acap-logging-out): New buffer local variable.
5523         (acap-close): Set it.
5524         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5525         an error.
5526
5527 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5528
5529         * acap.el (acap-response-bye-p): New function.
5530         (acap-response-bye-message): Ditto.
5531         (acap-wait-for-response): If bye response is received, cause an error.
5532         (acap-parse-response): Make bye response when 'Bye' is received.
5533
5534 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5535
5536         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5537
5538 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5539
5540         * elmo-util.el (elmo-copy-file): Added argument
5541         `ok-if-already-exists'.
5542         (elmo-copy-file): Fixed typo.
5543
5544 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5545
5546         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5547
5548 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5549
5550         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5551
5552 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5553
5554         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5555         to killed-list.
5556
5557 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5558
5559         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5560         (elmo-folder-initialize): Fix for `copy'.
5561         (elmo-pipe-drain): Ditto.
5562         (elmo-folder-open-internal): Ditto.
5563         (elmo-folder-newsgroups): Fix.
5564
5565 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5566
5567         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5568         for each message.
5569
5570         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5571         recent value is returned from imap folder.
5572
5573         * elmo.el (elmo-folder-newsgroups): New generic function.
5574
5575         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5576         (elmo-folder-initialize): Set it.
5577         (elmo-folder-expand-msgdb-path): Use it.
5578         (elmo-folder-newsgroups): Define.
5579
5580         * elmo-filter.el (elmo-folder-newsgroups): Define.
5581
5582         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5583
5584         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5585
5586         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5587
5588 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5589
5590         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5591         user option.
5592         (elmo-shimbun-header-extra-field): New inline function.
5593         (elmo-shimbun-header-set-extra-field): Ditto.
5594         (elmo-shimbun-folder-header-hash-setup): Ditto.
5595         (elmo-shimbun-update-overview): Ditto.
5596         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5597         (elmo-shimbun-folder-setup): Use
5598         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5599         (elmo-shimbun-get-headers): Ditto.
5600         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5601         Insert `X-Shimbun-Id:' header if extra field is set.
5602         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5603         field's value instead of `shimbun-header-id'.
5604
5605         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5606         inline function.
5607         (elmo-msgdb-overview-entity-set-date): Ditto.
5608         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5609
5610 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5611
5612         * mmimap.el (mmimap-entity-section): Changed body node number from
5613         "0" to "1".
5614
5615 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5616
5617         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5618         `elmo-folder-delete-messages'.
5619
5620         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5621         (elmo-folder-initialize): Changed to expand alias into index path.
5622
5623         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5624         `elmo-mime-insert-header-from-buffer' with 6th arg
5625         `sorted-fields'.
5626
5627 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5628
5629         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5630
5631         * elmo.el (elmo-diff-new): New inline function.
5632         (elmo-diff-unread): Ditto.
5633         (elmo-diff-all): Ditto.
5634
5635         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5636         value from responseb.
5637         (elmo-imap4-folder-diff-plugged): Ditto.
5638         (elmo-imap4-server-diff-async): Added recent argument.
5639         (elmo-server-diff-async): Ditto.
5640         (elmo-imap4-folder-diff-plugged): Ditto.
5641
5642         * elmo-version.el (elmo-version): Up to 2.7.6.
5643
5644 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5645
5646         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5647         in quoted-stirng.
5648
5649 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5650
5651         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5652
5653         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5654
5655         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5656
5657         * elmo-multi.el (elmo-folder-initialize): Ditto.
5658
5659         * elmo-util.el (elmo-parse-token): New function.
5660         (elmo-parse-prefixed-element): Ditto.
5661
5662 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5663
5664         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5665         delete process.
5666         (elmo-imap4-accept-ok): Ditto.
5667
5668 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5669
5670         * mmimap.el (mime-imap-entity-header-string): Don't check first
5671         element of node-id is `0' (Follow last change).
5672
5673 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5674
5675         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5676         assigned irregular node-id to nested multipart section.
5677         (initialize-instance): Followed above change.
5678
5679 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5680
5681         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5682         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5683         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5684         `elmo-shimbun-get-headers');
5685         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5686         visible article on summary exists in headers).
5687         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5688
5689 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5690
5691         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5692         definition.
5693
5694 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5695
5696         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5697
5698 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5699
5700         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5701         header separator into loop condition.
5702
5703 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5704
5705         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5706         Return duplicate folder if it has subfolder.
5707
5708 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5709
5710         * elmo.el (elmo-make-folder): Add folder name error check.
5711
5712         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5713         (elmo-nntp-encode-group-string): New inline function.
5714         (elmo-nntp-decode-group-string): Ditto.
5715         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5716         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5717         Use `not' instead of `null';
5718         Use elmo-nntp-decode-group-string.
5719
5720         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5721
5722         * elmo-version.el (elmo-version): Up to 2.7.5.
5723
5724 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5725
5726         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5727         Hide progress gauge if `elmo-folder-move-messages' exits
5728         nonlocally.
5729
5730 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5731
5732         * elmo-imap4.el (elmo-folder-initialize): Use
5733         `elmo-imap4-encode-folder-string' for folder name.
5734
5735 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5736
5737         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5738         `done'.
5739
5740 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5741
5742         * elmo-util.el (elmo-progress-counter-alist): New internal
5743         variable.
5744         (elmo-progress-counter-value): New macro.
5745         (elmo-progress-counter-all-value): Ditto.
5746         (elmo-progress-counter-format): Ditto.
5747         (elmo-progress-counter-set-value): Ditto.
5748         (elmo-progress-set): New function.
5749         (elmo-progress-clear): Ditto.
5750         (elmo-progress-notify): Ditto.
5751
5752         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5753         counter.
5754
5755         * elmo.el (elmo-generic-folder-append-messages): Call
5756         `elmo-progress-notify'.
5757         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5758
5759         * elmo-archive.el (elmo-folder-append-messages): Call
5760         `elmo-progress-notify'.
5761
5762         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5763
5764         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5765
5766         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5767
5768 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5769
5770         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5771         'Create'.
5772         (elmo-message-encache-dop): Added argument `read'.
5773
5774         * elmo-shimbun.el (elmo-message-encache): Ditto.
5775
5776         * elmo-net.el (elmo-message-encache): Ditto.
5777
5778         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5779         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5780         elmo-imap4-seen-messages.
5781         (elmo-folder-msgdb-create-plugged): Initialize
5782         elmo-imap4-seen-messages;
5783         Set seen mark on elmo-imap4-seen-messages.
5784
5785         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5786
5787         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5788         elmo-folder-append-buffer.
5789         (elmo-folder-encache): Added optional argument `read'.
5790         (elmo-message-encache): Ditto.
5791
5792         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5793
5794         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5795
5796         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5797         if append buffer content succeds.
5798
5799 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5800
5801         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5802         elmo-display-progress.
5803
5804         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5805         Set 4th argument of mime-display-message.
5806         (elmo-mime-display-as-is): Ditto.
5807
5808 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5809
5810         * elmo-nmz.el (toplevel): Require 'mime-edit.
5811         (elmo-nmz-content-type-alist): Abolished.
5812         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5813         content is not a message.
5814         (elmo-map-message-fetch): Changed behavior exept for message content;
5815         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5816         content-type, Add From: and Subject: field.
5817
5818 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5819
5820         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5821         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5822         not a message.
5823
5824 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5825
5826         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5827         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5828
5829         * elmo-archive.el (elmo-folder-writable-p): Defined.
5830
5831         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5832
5833         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5834
5835         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5836
5837         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5838
5839         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5840
5841         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5842
5843         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5844
5845         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5846
5847 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5848
5849         * elmo-util.el (elmo-address-quote-specials): New function;
5850         Renamed from `wl-address-quote-specials'.
5851
5852 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5853
5854         * elmo-version.el (elmo-version): Up to 2.7.4.
5855
5856 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5857
5858         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5859
5860 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5861
5862         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5863         both compile-time and run-time to avoid byte-compile warning.
5864
5865 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5866
5867         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5868
5869 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5870
5871         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5872         option.
5873         (elmo-mime-display-as-is-internal): Use it.
5874
5875         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5876         if `read-passwd' is not defined.
5877
5878 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5879
5880         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5881         by original number.
5882         (elmo-folder-status): Call `elmo-folder-open-internal';
5883         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5884         (elmo-folder-close-internal): Set location-alist as nil.
5885         (elmo-folder-clear): Define.
5886         (elmo-folder-check): Don't set location-alist as nil.
5887
5888         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5889
5890 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5891
5892         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5893         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5894
5895         * mmimap.el (mime-imap-entity::requested): New slot.
5896         (mime-imap-location-fetch-entity-p): New generic function.
5897         (mime-decode-parameters): Define using `defun-maybe'.
5898         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5899         content-type structure.
5900         (mime-entity-body): Return empty body if
5901         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5902
5903         * elmo.el (elmo-message-displaying): New variable.
5904
5905         * elmo-mime.el (elmo-mime-message-display): Bind
5906         elmo-message-displaying as t.
5907
5908         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5909
5910 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5911
5912         * acap.el (acap-open): erase buffer before starting network process.
5913         (acap-store): Rewrite.
5914
5915 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5916
5917         * elmo-imap4.el (elmo-imap4-default-mailbox,
5918         elmo-imap4-default-server
5919         elmo-imap4-default-authenticate-type,
5920         elmo-imap4-default-user,
5921         elmo-imap4-default-port,
5922         elmo-imap4-default-stream-type,
5923         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5924
5925         * elmo-pop3.el (elmo-pop3-default-user,
5926         elmo-pop3-default-server,
5927         elmo-pop3-default-authenticate-type,
5928         elmo-pop3-default-port,
5929         elmo-pop3-default-stream-type,
5930         elmo-pop3-stream-type-alist): Ditto.
5931
5932         * elmo-nntp.el (elmo-nntp-default-server,
5933         elmo-nntp-default-user,
5934         elmo-nntp-default-port,
5935         elmo-nntp-default-stream-type,
5936         elmo-nntp-stream-type-alist): Ditto.
5937
5938         * elmo-vars.el: Follow changes above.
5939         (elmo-setting): New custom group; added 'elmo-setting group to
5940         above variables.
5941
5942         * elmo-version.el (elmo-version): Up to 2.7.3.
5943
5944         * acap.el (acap-parse-response): Don't delete process when BYE
5945         response (It causes hang-up on slow network environment).
5946         (toplevel): Added comment.
5947
5948 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5949
5950         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5951
5952         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5953         parsing NIL.
5954         (acap-parse-return-metadata): Ditto.
5955
5956         * slp.el: New file.
5957         (toplevel): Fixed typo.
5958
5959         * acap.el: New file.
5960         (acap-network-stream-open): Show "Connecting..." message.
5961         (acap-parse-response): Fixed problem for BYE untagged response.
5962         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5963         (toplevel): Added tiny comments.
5964
5965 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5966
5967         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5968         space delimiter for uidl response.
5969
5970 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5971
5972         * elmo-vars.el (elmo-use-semi): Eliminated.
5973
5974         * elmo-util.el (elmo-string-assoc-all): New function.
5975
5976 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5977
5978         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5979         property 'mime-preview-situation for `mime-preview-quit'.
5980
5981 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5982
5983         * elmo.el (elmo-message-fetch-with-cache-process): Call
5984         elmo-message-fetch-internal instead of causing an error when fetch
5985         strategy is 'entire but only 'section cache is available.
5986
5987 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5988
5989         * elmo-version.el (elmo-version): Up to 2.7.2.
5990
5991         * elmo.el (elmo-generic-folder-append-messages): Make
5992         fetch-strategy with `use-cache'.
5993
5994         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5995         (elmo-dop-queue-method-name): New macro.
5996
5997 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5998
5999         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6000         unbalanced parenthesis.
6001
6002 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6003
6004         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6005
6006 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6007
6008         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6009         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6010
6011 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6012
6013         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6014         local variables.
6015
6016 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6017
6018         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6019         (elmo-message-use-cache-p): Define.
6020         (elmo-folder-msgdb-create): Treat cache.
6021
6022 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6023
6024         * elmo-nntp.el (elmo-network-initialize-session): Call
6025         `elmo-nntp-send-mode-reader'.
6026         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6027
6028 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6029
6030         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6031         alist.
6032         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6033         assoc.
6034
6035         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6036         for `elmo-plugged-p'.
6037         (elmo-open-network-stream): Fixed stream-type argument.
6038
6039 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6040
6041         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6042         unknown archive type is specified.
6043
6044 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6045
6046         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6047
6048         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6049         while loading msgdb.
6050
6051         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6052         (elmo-folder-open-internal): Rewrite.
6053
6054 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6055
6056         * elmo-mime.el (elmo-mime-display-as-is-internal):
6057         Adjust buffer-multibyte status.
6058
6059 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6060
6061         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6062         of elmo-condition-find-key.
6063
6064         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6065         (elmo-condition-in-msgdb-p): Ditto.
6066         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6067         argument.
6068
6069 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6070
6071         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6072
6073 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6074
6075         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6076         label for elmo-display-progress.
6077
6078 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6079
6080         * elmo.el (elmo-folder-clear): New method.
6081         (elmo-folder-clear): Define.
6082         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6083
6084         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6085         (elmo-folder-clear): Define.
6086
6087         * elmo-map.el (elmo-folder-clear): Define.
6088
6089         * elmo-version.el (elmo-version): Up to 2.7.1.
6090
6091 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6092
6093         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6094         updates.
6095
6096 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6097
6098         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6099         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6100
6101 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6102
6103         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6104
6105         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6106         and re-written.
6107
6108         * elmo-imap4.el (elmo-folder-initialize): Use
6109         elmo-get-network-stream-type.
6110
6111         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6112
6113         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6114
6115 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6116
6117         * elmo.el (elmo-message-encache): Set unread argument for
6118         elmo-message-fetch.
6119
6120         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6121
6122         * elmo.el (elmo-net-port-info): New method.
6123
6124         * elmo-shimbun.el (elmo-net-port-info): Define.
6125         (elmo-message-encache): Ditto.
6126
6127         * elmo-net.el (elmo-net-port-info): Define as method.
6128
6129         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6130         unplugged status when elmo-enable-disconnected-operation is t.
6131
6132         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6133         of spool folder before checking new number.
6134
6135 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6136
6137         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6138         (elmo-network-setup-session): Ditto.
6139         (elmo-message-fetch-plugged): Ditto.
6140         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6141         (elmo-network-initialize-session): Ditto.
6142         (elmo-pop3-read-response): Abolish 3rd argument.
6143         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6144         (elmo-pop3-read-contents): Ditto.
6145         (elmo-pop3-read-body): Ditto.
6146         (elmo-folder-status): Call elmo-folder-close.
6147         (elmo-pop3-lock): Abolish.
6148         (elmo-pop3-unlock): Ditto.
6149         (elmo-pop3-locked-p): Ditto.
6150         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6151
6152 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6153
6154         * elmo-version.el (elmo-version): Up to 2.7.0.
6155
6156         * elmo-pop3.el (elmo-pop3-debug): New variable.
6157         (elmo-pop3-debug-inhibit-logging): Ditto.
6158         (elmo-pop3-debug): New function.
6159         (elmo-pop3-send-command): Call elmo-pop3-debug.
6160         (elmo-pop3-read-response): Added keep-lock optional argument;
6161         Don't unlock if keep-lock is non-nil.
6162         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6163         (elmo-network-authenticate-session): Bind
6164         elmo-pop3-debug-inhibit-logging as t.
6165         (elmo-network-setup-session): Call elmo-pop3-read-response with
6166         keep-lock argument.
6167         (elmo-pop3-read-msg): Ditto.
6168         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6169         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6170         (elmo-network-initialize-session): Call elmo-pop3-lock.
6171         (elmo-folder-close-internal): Don't clear location-alist slot.
6172         (elmo-folder-check): Clear location-alist slot.
6173
6174 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6175
6176         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6177         (elmo-pop3-send-command): Call elmo-pop3-lock.
6178         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6179         (elmo-pop3-read-contents): Ditto.
6180         (elmo-pop3-lock): New function.
6181         (elmo-pop3-unlock): Ditto.
6182         (elmo-pop3-locked-p): Ditto.
6183         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6184         returns t.
6185
6186 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6187
6188         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6189
6190         * elmo-util.el (elmo-file-field-primitive-condition-match):
6191         New inline function (Don't fetch file content if "first" or "last").
6192         (elmo-file-field-condition-match): Use
6193         elmo-file-field-primitive-condition-match.
6194
6195         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6196         "first".
6197
6198         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6199         (elmo-message-fetch-plugged): Fixed.
6200
6201         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6202
6203 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6204
6205         * elmo.el (elmo-folder-move-messages): Bind
6206         elmo-inhibit-display-retrieval-progress as t while moving messages.
6207
6208         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6209         New variable.
6210         (elmo-inhibit-display-retrieval-progress): Ditto.
6211
6212         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6213         for retrieval progress;
6214         Don't display progress when total buffer size is smaller than
6215         elmo-display-retrieval-progress-threshold.
6216         (elmo-message-fetch-plugged): Don't display progress when
6217         elmo-inhibit-display-retrieval-progress is non-nil.
6218
6219         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6220         for retrieval progress;
6221         Don't display progress when literal size is smaller than
6222         elmo-display-retrieval-progress-threshold.
6223         (elmo-imap4-message-fetch): Don't display progress when
6224         elmo-inhibit-display-retrieval-progress is non-nil.
6225
6226 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6227
6228         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6229         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6230         (elmo-imap4-message-fetch): Likewise.
6231
6232         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6233         (elmo-shimbun-index-range-alist): Ditto.
6234         (elmo-shimbun-use-entire-index): Abolish.
6235         (shimbun-mua-use-entire-index): Ditto.
6236         (elmo-shimbun-folder): Added new slot `range'.
6237         (elmo-folder-initialize): Setup slot `range'.
6238
6239 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6240
6241         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6242         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6243         (elmo-shimbun-get-headers): Use return value of
6244         `shimbun-article-expiration-days'.
6245         (elmo-folder-close-internal): Clean up last-check slot.
6246
6247         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6248         (elmo-pop3-total-size): New variable.
6249         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6250
6251         * elmo.el (elmo-folder-reserve-status-p): New method.
6252
6253         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6254         (elmo-shimbun-use-entire-index): New user option.
6255         (shimbun-elmo-mua): New class.
6256         (shimbun-mua-search-id): Define.
6257         (shimbun-mua-use-entire-index): Ditto.
6258         (elmo-shimbun-folder:last-check): New slot.
6259         (elmo-shimbun-headers-cache-header-list): Abolish.
6260         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6261         (elmo-shimbun-headers-cache-header-hash): Ditto.
6262         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6263         (elmo-shimbun-headers-cache-last-check): Ditto.
6264         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6265         (elmo-shimbun-headers-check-p): Rewrite.
6266         (elmo-shimbun-msgdb-to-headers): New function.
6267         (elmo-shimbun-get-headers): Rewrite.
6268         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6269         (elmo-folder-open-internal): Get headers only if
6270         `elmo-shimbun-headers-check-p' is non-nil.
6271         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6272         is non-nil.
6273         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6274         (elmo-quit): Removed.
6275
6276         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6277         function.
6278         (elmo-msgdb-overview-entity-set-extra): Ditto.
6279         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6280
6281         * elmo-map.el (elmo-folder-status): Don't call
6282         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6283         is non-nil.
6284
6285 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6286
6287         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6288         of `elmo-msgdb-search-internal-primitive' when condition's car is
6289         `and' or `or'.
6290
6291 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6292
6293         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6294
6295 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6296
6297         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6298         call `elmo-pipe-drain'.
6299
6300 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6301
6302         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6303         typo. (elmo-cache-folder -> elmo-mark-folder)
6304
6305 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6306
6307         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6308         `elmo-message-fetch'.
6309
6310 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6311
6312         * elmo-net.el (elmo-message-encache): Fixed typo.
6313         (elmo-message-fetch-unplugged): Changed call
6314         `elmo-message-fetch-internal' without argument `outbuf'.
6315
6316 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6317
6318         * elmo.el (elmo-message-encache): Define as generic function.
6319         (elmo-message-fetch-field): New generic function.
6320         (elmo-message-fetch-with-cache-process): Cause an error when
6321         fetch strategy is 'entire but only 'section cache is available.
6322         (toplevel): Fixed nmz folder definition.
6323
6324         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6325         (elmo-msgdb-resume-list-filename): Ditto.
6326         (elmo-queue-filename): Ditto.
6327         (elmo-enable-disconnected-operation): Changed default value to t.
6328
6329         * elmo-util.el (elmo-cache-path-section-p): New function.
6330         (elmo-file-cache-get): Use it.
6331         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6332         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6333         (elmo-dop-queue-save): Ditto.
6334
6335         * elmo-net.el (elmo-folder-status-unplugged): Call
6336         elmo-folder-status-dop.
6337         (elmo-folder-list-messages-unplugged): Implemented.
6338         (elmo-folder-delete-messages-unplugged): Define.
6339         (elmo-folder-msgdb-create): Define.
6340         (elmo-folder-msgdb-create-unplugged): Define.
6341         (elmo-folder-mark-as-read-unplugged): Ditto.
6342         (elmo-folder-unmark-read-unplugged): Ditto.
6343         (elmo-folder-mark-as-important-unplugged): Ditto.
6344         (elmo-folder-unmark-important-unplugged): Ditto.
6345         (elmo-message-encache): Ditto.
6346
6347         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6348         (elmo-dop-queue-save): Ditto.
6349
6350         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6351         `elmo-folder-msgdb-create'.
6352         (elmo-folder-append-buffer): Implemented unplugged operation.
6353         (elmo-folder-append-messages): Call parent method in unplugged status.
6354         (elmo-message-fetch-unplugged): Removed definition.
6355         (elmo-message-fetch-field): Implemented.
6356
6357         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6358         (elmo-dop-folder): Removed variable definition.
6359         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6360         (elmo-dop-queue-flush): Implemented.
6361         (elmo-dop-queue-merge): Removed definition (TODO).
6362         (elmo-dop-spool-folder): New function.
6363         (elmo-dop-spool-folder-append-buffer): Ditto.
6364         (elmo-dop-spool-folder-list-messages): Ditto.
6365         (elmo-dop-list-deleting-messages): Ditto.
6366         (elmo-folder-append-buffer-dop): Ditto.
6367         (elmo-folder-delete-messages-dop): Ditto.
6368         (elmo-message-encache-dop): New inline function.
6369         (elmo-create-folder-dop): Ditto.
6370         (elmo-folder-mark-as-read-dop): Ditto.
6371         (elmo-folder-unmark-read-dop): Ditto.
6372         (elmo-folder-mark-as-important-dop): Ditto.
6373         (elmo-folder-unmark-important-dop): Ditto.
6374         (elmo-folder-status-dop): Fixed.
6375         (elmo-folder-append-buffer-dop-delayed): New function.
6376         (elmo-folder-delete-messages-dop-delayed): Ditto.
6377         (elmo-dop-msgdb): Ditto.
6378
6379 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6380
6381         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6382
6383 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6384
6385         * elmo.el (elmo-folder-move-messages): Fixed problem when
6386         `dst-folder' is 'null.
6387
6388 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6389
6390         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6391         instead of current mark.
6392
6393         * elmo-multi.el (elmo-folder-list-importants-internal): No
6394         operation if importants is not list.
6395
6396         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6397         Return t if importants is not list.
6398
6399         * elmo-map.el (elmo-map-folder-list-importants): Define.
6400         (elmo-folder-list-importants-internal): Check return value of
6401         `elmo-map-folder-list-importants-internal'.
6402
6403         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6404
6405         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6406
6407         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6408
6409         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6410
6411 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6412
6413         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6414         (Patch is provided by <kita@coe.nttdata.co.jp>).
6415
6416 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6417
6418         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6419         mark folder.
6420
6421 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6422
6423         * elmo.el (elmo-message-fetch): Define.
6424         (elmo-message-fetch-with-cache-process): New generic method.
6425         (elmo-message-fetch-internal): New generic method.
6426         (elmo-folder-synchronize):
6427
6428         * elmo-archive.el (elmo-message-fetch-internal): Define.
6429         (elmo-message-fetch): Eliminated.
6430
6431         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6432         (elmo-message-fetch): Eliminated.
6433
6434         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6435         argument OUTBUF.
6436         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6437
6438         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6439         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6440
6441         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6442         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6443
6444         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6445
6446         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6447
6448         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6449
6450         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6451         (elmo-message-fetch-unplugged): New generic method.
6452         (elmo-message-fetch-internal): Remove cache process (Renamed from
6453         `elmo-message-fetch').
6454
6455         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6456         (elmo-message-fetch): Eliminated.
6457         (elmo-message-fetch-unplugged): Ditto.
6458
6459         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6460
6461 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6462
6463         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6464         of `to-be-deleted' from number-alist to number-list.
6465
6466 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6467
6468         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6469         (elmo-folder-mark-as-important): Ditto.
6470
6471 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6472
6473         * elmo.el (elmo-folder): Added process-duplicates slot.
6474
6475         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6476         (elmo-folder-unmark-read): Ditto.
6477         (elmo-folder-unmark-important): Ditto.
6478         (elmo-folder-mark-as-important): Ditto.
6479
6480         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6481         duplicated message processing.
6482
6483         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6484
6485 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6486
6487         * elmo-util.el (elmo-list-subdirectories-1): New function.
6488         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6489         (elmo-mapcar-list-of-list): New function.
6490
6491         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6492         `elmo-mapcar-list-of-list' instead of `mapcar'.
6493
6494         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6495
6496         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6497         `elmo-have-link-count'. Return the fully qualified folder name.
6498
6499 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6500
6501         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6502         (elmo-shimbun-headers-cache): New internal variable.
6503         (elmo-shimbun-headers-cache-header-list): New inline function.
6504         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6505         (elmo-shimbun-headers-cache-header-hash): Ditto.
6506         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6507         (elmo-shimbun-headers-cache-last-check): Ditto.
6508         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6509         (elmo-shimbun-lapse-seconds): Ditto.
6510         (elmo-shimbun-headers-cache-check-p): Ditto.
6511         (elmo-shimbun-get-headers): New function.
6512         (elmo-folder-open-internal): Call it.
6513         (elmo-quit): Define (Clear headers-cache).
6514
6515 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6516
6517         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6518
6519         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6520         (elmo-msgdb-flist-save): Ditto.
6521
6522         * elmo-shimbun.el (elmo-folder-list-subfolders):
6523         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6524         (elmo-folder-exists-p): Ditto.
6525
6526         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6527         argument for `shimbun-header-insert'.
6528
6529 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6530
6531         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6532         at first time.
6533
6534         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6535         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6536
6537 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6538
6539         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6540         (elmo-folder-plugged-p): Define.
6541         (elmo-folder-set-plugged): Ditto.
6542         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6543         (elmo-folder-list-messages-internal): Return t if unplugged.
6544         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6545
6546         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6547         when elmo-folder-list-messages-internal method of children returns t.
6548
6549         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6550         pair is nil.
6551         (elmo-folder-open-internal): Don't update if unplugged status.
6552
6553 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6554
6555         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6556         new message.
6557
6558 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6559
6560         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6561
6562         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6563         saving.
6564
6565 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6566
6567         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6568
6569         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6570         (elmo-folder-open-internal): Set up headers slot.
6571         (elmo-folder-check): Call elmo-folder-close-internal and
6572         elmo-folder-open-internal.
6573         (elmo-folder-close-internal): Clean up headers slot.
6574
6575 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6576
6577         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6578         exactly folder list.
6579         (elmo-folder-append-messages): Fixed append archive with prefix.
6580
6581         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6582         make temp files with start-number.
6583
6584         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6585
6586 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6587
6588         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6589         argument `visible-only'.
6590         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6591         instead of `if'.
6592
6593         * elmo-pop3.el (elmo-folder-open-internal): Check
6594         `elmo-inhibit-number-mapping' is non-nil.
6595
6596         * elmo-pipe.el (elmo-folder-status): Fixed.
6597
6598 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6599
6600         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6601
6602         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6603         (elmo-folder-open-internal): Setup `header-hash' slot.
6604         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6605         information.
6606         (elmo-map-message-fetch): Ditto.
6607
6608 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6609
6610         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6611         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6612         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6613         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6614
6615         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6616
6617 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6618
6619         * sb-airs.el: Added footer.
6620
6621         * shimbun.el (shimbun-article): Define as luna-method.
6622
6623         * sb-tcup.el: New file.
6624
6625         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6626         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6627
6628 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6629
6630         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6631         (shimbun-get-headers): Ditto.
6632
6633         * elmo.el: Moved obsolete variable definitions from
6634         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6635
6636         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6637         groups.
6638
6639         * shimbun.el: New file.
6640
6641         * elmo-shimbun.el: New file.
6642
6643         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6644         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6645         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6646         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6647
6648 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6649
6650         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6651         hierarchy is t.
6652
6653 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6654
6655         * elmo.el (elmo-folder-msgdb): Define as macro.
6656         (elmo-folder-open): Added argument `load-msgdb'.
6657         (elmo-generic-folder-open): Ditto.
6658         (elmo-folder-encache): New function.
6659
6660         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6661
6662         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6663
6664         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6665         Eliminated argument FOLDER and added argument MSGDB.
6666         (elmo-dop-queue-load): Moved from elmo-dop.el.
6667         (elmo-dop-queue-save): Ditto.
6668
6669         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6670
6671         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6672
6673         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6674         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6675         (elmo-filter-folder-list-importants-internal): Ditto.
6676
6677         * elmo-map.el (elmo-folder-pack-number): Ditto.
6678
6679         * elmo-mime.el (elmo-mime-message-display): Ditto.
6680
6681         * elmo.el (elmo-generic-folder-commit): Ditto.
6682         (elmo-folder-list-unreads): Ditto.
6683         (elmo-folder-list-importants): Ditto.
6684         (elmo-generic-folder-commit): Ditto.
6685         (elmo-message-set-mark): Ditto.
6686         (elmo-generic-folder-append-msgdb): Ditto.
6687         (elmo-folder-synchronize): Ditto.
6688         (elmo-folder-messages): Ditto.
6689         (elmo-init): Call elmo-dop-queue-load.
6690         (elmo-folder-list-messages): Ditto.
6691
6692         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6693         (elmo-nntp-folder-process-crosspost): Ditto.
6694         (elmo-folder-list-unreads-internal): Ditto.
6695
6696         * elmo-dop.el: Removed old functions.
6697
6698 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6699
6700         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6701         `folder' to `msgdb'.
6702
6703 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6704
6705         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6706         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6707
6708         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6709         case-fold-search.
6710
6711 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6712
6713         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6714         defined.
6715
6716         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6717         (mmimap-parse-parameters-from-list): Define as alias for
6718         `mime-decode-parameter-plist' if it is defined as function.
6719         (mmimap-make-mime-entity): Added argument `number'.
6720         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6721         as 0.
6722         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6723
6724         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6725
6726         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6727
6728         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6729
6730 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6731
6732         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6733
6734         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6735         when elmo-imap4-default-authenticate-type is nil.
6736         (elmo-folder-list-subfolders): Ditto
6737         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6738         (elmo-imap4-fetch-callback-1-subr): Renamed from
6739         `elmo-imap4-fetch-callback-1' and define as inline function.
6740         (elmo-imap4-fetch-callback-1):
6741         Renamed from `elmo-imap4-fetch-callback'.
6742         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6743
6744         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6745         msgdb path (To keep compatibility with main trunk).
6746
6747         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6748
6749         * elmo-util.el (elmo-make-file-cache): Moved position of
6750         some macros.
6751
6752         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6753         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6754         instead of `elmo-pop3-inhibit-uidl'.
6755         (elmo-folder-exists-p): Ditto.
6756         (elmo-pop3-folder-list-messages): Ditto.
6757
6758         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6759         instead of `elmo-pop3-inhibit-uidl'.
6760         (elmo-folder-status): Ditto.
6761
6762         * elmo-dop.el (elmo-dop-folder): New variable.
6763         (elmo-dop-lock-message): Eliminated.
6764         (elmo-dop-unlock-message): Ditto.
6765         (elmo-dop-lock-list-load): Ditto.
6766         (elmo-dop-lock-list-save): Ditto.
6767         (elmo-dop-delete-folder): Ditto.
6768         (elmo-dop-rename-folder): Ditto.
6769
6770         * elmo.el: Removed incomplete commentary.
6771
6772 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6773
6774         * elmo.el (toplevel): Require 'elmo-version first;
6775         for little `recursive-load-depth' settings.
6776         Fix "ends here" comment.
6777
6778 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6779
6780         * elmo-util.el (toplevel): Require 'poem;
6781         Some functions are moved from elmo-cache.el.
6782
6783         * elmo-net.el (toplevel): Require 'elmo-cache.
6784
6785         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6786
6787         * elmo.el (toplevel): Ditto.
6788
6789         * elmo-cache.el: Rewrite with luna;
6790         Some functions are moved to elmo-util.el.
6791
6792         * elmo-internal.el (elmo-internal-folder-list): New variable.
6793         (elmo-internal-folder-initialize): Rewrite.
6794         (elmo-folder-list-subfolders): Ditto.
6795
6796         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6797         (elmo-cache-collect-sub-directories): Ditto.
6798
6799 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6800
6801         * elmo-version.el (elmo-version): Up to 2.5.8.
6802
6803         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6804
6805         * elmo-util.el (elmo-list-insert): New function.
6806
6807 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6808
6809         * elmo.el (elmo-init): New function.
6810         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6811
6812         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6813         (Renamed from `elmo-localdir-header-chop-length').
6814
6815         * elmo-pop3.el (elmo-pop3-use-cache,
6816         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6817
6818         * elmo-nntp.el (elmo-message-fetch): Define.
6819         (elmo-message-fetch-unplugged): Ditto.
6820         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6821         (elmo-nntp-use-cache): Ditto.
6822         (elmo-nntp-max-number-precedes-list-active): Ditto.
6823
6824         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6825
6826         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6827         `elmo-msgdb-insert-file-header'.
6828         Use `elmo-msgdb-file-header-chop-length'.
6829
6830         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6831         `elmo-vars.el'.
6832
6833         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6834         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6835         `elmo-msgdb-insert-file-header'.
6836
6837         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6838         Use new variable;
6839         Define obsolete variables with `elmo-define-obsolete-variable',
6840
6841         * elmo-util.el (elmo-warning-buffer-name): New constant.
6842         (elmo-warning): New function.
6843         (elmo-obsolete-variable-alist): New variable.
6844         (elmo-obsolete-variable-show-warnings): New variable.
6845         (elmo-define-obsolete-variable): New function.
6846         (elmo-resque-obsolete-variable): Ditto.
6847         (elmo-resque-obsolete-variables): Ditto.
6848
6849 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6850
6851         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6852         Eliminated.
6853
6854         * elmo-pop3.el, elmo-nntp.el: Use custom.
6855
6856 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6857
6858         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6859         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6860
6861 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6862
6863         * Luna-fy Kenichi OKADA's following changes.
6864         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6865         `nohide'.
6866         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6867
6868 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6869
6870         * elmo-util.el (elmo-display-progress): Prefer
6871         `progress-feedback-with-label' to `lprogress-display'.
6872
6873 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6874
6875         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6876
6877 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6878
6879         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6880         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6881         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6882         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6883         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6884         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6885         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6886         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6887         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6888         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6889         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6890         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6891         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6892
6893 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6894
6895         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6896         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6897
6898 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6899
6900         * elmo.el (elmo-folder-process-crosspost): New generic method.
6901         (elmo-folder-writable-p): Ditto.
6902         (elmo-folder-message-appendable-p): Eliminated.
6903         (elmo-generic-folder-append-msgdb): Rewrite.
6904         (elmo-newsgroups-hashtb): New internal variable.
6905         (elmo-crosspost-message-set): Eliminated.
6906         (elmo-crosspost-message-delete): Ditto.
6907         (elmo-setup-subscribed-newsgroups): New function.
6908         (elmo-crosspost-message-alist-modified): New internal variable.
6909         (elmo-crosspost-message-alist-load): New function (Renamed from
6910         `wl-crosspost-alist-load').
6911         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6912         `wl-crosspost-alist-save').
6913
6914         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6915
6916         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6917         `unreads'.
6918         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6919         elmo-newsgroups-hashtb).
6920         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6921         `elmo-nntp-folder-update-crosspost-message-alist'.
6922         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6923         `elmo-nntp-groups-hashtb'.
6924         (elmo-nntp-make-groups-hashtb): Eliminated.
6925         (elmo-nntp-parse-newsgroups): New function (Renamed from
6926         `wl-parse-newsgroups').
6927         (elmo-folder-creatable-p, elmo-folder-writable-p,
6928         elmo-folder-close-internal, elmo-folder-mark-as-read,
6929         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6930         Define.
6931         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6932
6933         * elmo-net.el (elmo-message-fetch): Check buffer size.
6934
6935         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6936
6937         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6938
6939         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6940         before `close' command.
6941
6942         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6943         `mark-alist' (All other related portions are changed).
6944
6945 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6946
6947         * elmo-util.el (elmo-create-hash-size): Eliminated.
6948         (elmo-make-hash) Make a hash with `one less than a power of two'
6949         length.
6950
6951         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6952         (elmo-hash-maximum-size): Changed value.
6953
6954 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6955
6956         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6957         (elmo-mime-message-display-as-is): Ditto.
6958
6959 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6960
6961         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6962         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6963
6964 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6965
6966         * elmo-mark.el: New file.
6967
6968         * elmo-internal.el: Rewrite (Almost empty).
6969
6970 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6971
6972         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6973         (mime-imap-entity-header-string): Ditto.
6974         (mmimap-entity-section): Rewrite.
6975
6976 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6977
6978         * elmo-nmz.el: New file.
6979
6980         * elmo-pipe.el: Rewrite with luna.
6981
6982 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6983
6984         * elmo-archive.el: Rewrite with luna.
6985
6986         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6987         (elmo-folder-list-importants-internal): Ditto.
6988
6989 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6990
6991         * elmo-archive.el (elmo-archive-version): Abolish.
6992         (toplevel) Removed `boso' comment.
6993
6994 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6995
6996         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6997         elmo-msgdb-add-msgs-to-seen-list-subr;
6998         Changed argument seen-marks to unread-marks.
6999
7000         * elmo-nntp.el: Rewrite with luna.
7001
7002 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7003
7004         * elmo-filter.el: Rewrite with luna.
7005
7006 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7007
7008         * elmo-pop3.el: Rewrite with luna.
7009
7010 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7011
7012         * elmo-multi.el: Rewrite with luna.
7013
7014         * elmo-vars.el (elmo-use-killed-list): Abolish.
7015         All other related portions are changed.
7016         (elmo-filename-replace-string-alist): Renamed from
7017         elmo-msgid-replace-string-alist.
7018
7019 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7020
7021         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7022
7023         * elmo-map.el: New file.
7024         * elmo-maildir.el: Rewrite with luna.
7025
7026 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7027
7028         * elmo.el: Changed meaning of `elmo-folder-commit'.
7029         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7030
7031 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7032
7033         * elmo.el (elmo-folder-append-buffer): New function.
7034         (Renamed from `elmo-append-msg')
7035
7036 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7037
7038         * elmo-mime.el: New file.
7039
7040 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7041
7042         * elmo-cache.el: Rewrite.
7043
7044 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7045
7046         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7047
7048 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7049
7050         * elmo-vars.el (elmo): New group.
7051         (elmo-strict-diff-folder-regexp): New variable.
7052
7053         * elmo-util.el (elmo-call-func): Abolish.
7054         (elmo-folder-get-type): Ditto.
7055         (elmo-*-get-spec): Ditto.
7056         (elmo-*-spec-*): Ditto.
7057         (elmo-imap4-identical-name-space-p): Ditto.
7058         (elmo-folder-identical-system-p): Ditto.
7059         (elmo-folder-direct-copy-alist): Ditto.
7060         (elmo-folder-direct-copy-p): Ditto.
7061
7062         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7063         (elmo-folder-initialize): Define.
7064         (elmo-folder-get-primitive-list): Ditto.
7065
7066         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7067         (elmo-folder-initialize): Define.
7068         Renamed `elmo-network-session-host-internal' to
7069         `elmo-network-session-server-internal'.
7070
7071         * elmo-multi.el (elmo-multi-folder): New luna class.
7072         (elmo-folder-initialize): Define.
7073         (elmo-folder-get-primitive-list): Ditto.
7074         (elmo-folder-contains-type): Ditto.
7075         (elmo-message-use-cache-p): Ditto.
7076
7077         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7078         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7079
7080         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7081         (elmo-folder-initialize): Define.
7082
7083         * elmo-filter.el (elmo-filter-folder): New luna class.
7084         (elmo-folder-initialize): Define.
7085         (elmo-folder-get-primitive-list): Ditto.
7086         (elmo-folder-contains-type): Ditto.
7087
7088 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7089
7090         * elmo-imap4.el: Rewrite with luna.
7091
7092         * mmimap.el: New file.
7093
7094         * mmelmo.el, mmelmo-imap4.el: Removed.
7095
7096         * elmo-net.el: Ditto.
7097
7098         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7099         (elmo-folder-initialize): Define.
7100
7101         * elmo-archive.el (elmo-archive-folder): New luna class.
7102         (elmo-folder-initialize): Define.
7103
7104         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7105         `elmo-folder-msgdb-path'.
7106         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7107         `elmo-make-folder'.
7108
7109 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7110
7111         * elmo.el: New file.
7112
7113         * elmo2.el: Renamed to elmo.el.
7114
7115 \f
7116 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7117
7118         * elmo-cache.el (elmo-cache-expire-by-size): Count
7119         a disk usage for a cache file entry in KB even when
7120         its kind is a directory.
7121
7122 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7123
7124         * elmo-version.el (elmo-version): Up to 2.5.7.
7125
7126 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7127
7128         * elmo-version.el (elmo-version): Up to 2.5.6.
7129
7130 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7131
7132         * elmo-version.el (elmo-version): Up to 2.5.5.
7133
7134 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7135
7136         * elmo-imap4.el (elmo-network-authenticate-session):
7137         Fixed a logic for response checking.
7138
7139 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7140
7141         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7142         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7143         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7144         `sasl-mechanisms'.
7145
7146         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7147         for `starttls-open-stream' and `starttls-negotiate'.
7148
7149         * elmo-nntp.el: Remove autoload settings for
7150         `starttls-open-stream' and `starttls-negotiate'.
7151
7152         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7153         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7154         `luna-define-class' with `eval-and-compile'.
7155
7156 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7157
7158         * elmo-util.el (elmo-read-search-condition-internal):
7159         Require an element of table for searching field.
7160
7161 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7162
7163         * elmo-version.el (elmo-version): Up to 2.5.4.
7164
7165 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7166
7167         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7168
7169 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7170
7171         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7172
7173 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7174
7175         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7176         before greeting.
7177
7178 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7179
7180         * elmo-imap4.el (elmo-imap4-delete-folder):
7181         Send "close" before "delete" (Use commented out line).
7182         (elmo-imap4-rename-folder): Ditto.
7183
7184         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7185         folder string itself.
7186         (elmo-dop-list-deleted): New function.
7187         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7188         killed.
7189
7190         * elmo-util.el (elmo-string-rassoc-all): New function.
7191
7192 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7193
7194         * elmo-version.el (elmo-version): Up to 2.5.3.
7195
7196         * elmo-net.el (elmo-network-get-session): Changed logic for
7197         checking process status.
7198
7199         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7200         process is nil;
7201         Changed logic for checking process status.
7202
7203 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7204
7205         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7206         before greeting.
7207         (elmo-network-setup-session): Set UIDL hash size according to
7208         the length of list response.
7209         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7210         according to the length of list response;
7211         Return the length of list response.
7212         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7213
7214 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7215
7216         * elmo-imap4.el (toplevel): Require 'ssl.
7217         Add autoload 'starttls.
7218         * elmo-pop3.el (toplevel): Ditto.
7219         * elmo-nntp.el (toplevel): Ditto.
7220
7221 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7222
7223         * elmo-imap4.el (toplevel): defun at compile time.
7224         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7225         sasl-next-step, sasl-step-data, sasl-step-set-data.
7226         * elmo-pop3.el (toplevel): Ditto.
7227
7228 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7229
7230         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7231
7232 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7233
7234         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7235         if error.
7236         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7237         and `elmo-pop-auth-apop'.
7238
7239 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7240
7241         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7242
7243 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7244
7245         * elmo-pop3.el (elmo-network-authenticate-session): Split
7246         encoded response value.
7247
7248 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7249
7250         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7251         `elmo-pop3-force-login'.
7252         Redefine `sasl-mechanisms'.
7253         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7254
7255 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7256
7257         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7258         Delete `elmo-imap4-authenticator-alist'.
7259         (elmo-imap4-auth-cram-md5): Delete.
7260         (elmo-imap4-auth-digest-md5): Delete.
7261
7262 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7263
7264         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7265         (elmo-pop3-auth-scram-md5): Ditto.
7266         (elmo-pop3-auth-cram-md5): Ditto.
7267
7268 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7269
7270         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7271         Delete `elmo-pop3-authenticator-alist'.
7272
7273 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7274
7275         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7276         new SASL API.
7277         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7278
7279 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7280
7281         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7282
7283 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7284
7285         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7286         Fixed problem when `elmo-pop3-use-uidl' is nil.
7287         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7288
7289 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7290
7291         * elmo-version.el (elmo-version): Up to 2.5.2.
7292
7293 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7294
7295         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7296         New function.
7297         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7298         (elmo-pop3-msgdb-create-as-numlist): Use it.
7299
7300         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7301         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7302
7303         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7304         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7305
7306 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7307
7308         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7309         when elmo-mark-as-read is called with second argument nil.
7310
7311 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7312
7313         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7314         Moved to elmo-util.el.
7315
7316         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7317         Moved from elmo-pipe.el
7318
7319         * elmo-archive.el (elmo-archive-call-process): Enclose with
7320         static-if.
7321
7322         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7323         "RFC822" (because RFC822.PEEK is obsolete).
7324         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7325
7326 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7327
7328         * elmo-archive.el (elmo-archive-call-process): Don't check for
7329         the exit status when Nemacs is running.
7330
7331 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7332
7333         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7334         'plain.
7335
7336         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7337         (elmo-pop3-get-spec): Set default of auth to 'user.
7338
7339         * elmo-imap4.el (elmo-imap4-session-check):
7340         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7341         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7342         (elmo-imap4-auth-login): New function; Revival.
7343         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7344         `elmo-imap4-auth-login'.
7345
7346 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7347
7348         * elmo2.el (toplevel): Move `product-provide' declare.
7349         * mmelmo.el (toplevel): Ditto.
7350
7351 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7352
7353         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7354
7355 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7356
7357         * elmo-util.el (elmo-folder-get-store-type): New function.
7358         (elmo-folder-direct-copy-p): Use it.
7359
7360 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7361
7362         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7363         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7364         and result of `elmo-imap4-use-flag-p'.
7365         (elmo-imap4-fetch-callback-1): Set mark according to
7366         the result of `elmo-imap4-use-flag-p'.
7367
7368 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7369
7370         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7371         (elmo-generic-list-folder-unread): Ditto.
7372         (elmo-folder-get-info): Ditto.
7373         (elmo-folder-set-info-max-by-numdb): Ditto.
7374         (elmo-folder-get-info-max): Ditto.
7375         (elmo-folder-get-info-length): Ditto.
7376         (elmo-folder-get-info-unread): Ditto.
7377         (elmo-folder-info-make-hashtb): Ditto.
7378
7379         * elmo2.el: Removed above functions.
7380
7381 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7382
7383         * elmo-imap4.el (toplevel): Require 'ssl.
7384         Add autoload 'starttls.
7385         * elmo-pop3.el (toplevel): Ditto.
7386         * elmo-nntp.el (toplevel): Ditto.
7387
7388 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7389
7390         * elmo-imap4.el (toplevel): defun at compile time.
7391         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7392         sasl-next-step, sasl-step-data, sasl-step-set-data.
7393         * elmo-pop3.el (toplevel): Ditto.
7394
7395 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7396
7397         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7398
7399 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7400
7401         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7402         if error.
7403         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7404         and `elmo-pop-auth-apop'.
7405
7406 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7407
7408         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7409
7410 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7411
7412         * elmo-pop3.el (elmo-network-authenticate-session): Split
7413         encoded response value.
7414
7415 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7416
7417         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7418         `elmo-pop3-force-login'.
7419         Redefine `sasl-mechanisms'.
7420         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7421
7422 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7423
7424         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7425         Delete `elmo-imap4-authenticator-alist'.
7426         (elmo-imap4-auth-cram-md5): Delete.
7427         (elmo-imap4-auth-digest-md5): Delete.
7428
7429 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7430
7431         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7432         (elmo-pop3-auth-scram-md5): Ditto.
7433         (elmo-pop3-auth-cram-md5): Ditto.
7434
7435 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7436
7437         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7438         Delete `elmo-pop3-authenticator-alist'.
7439
7440 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7441
7442         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7443         new SASL API.
7444         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7445
7446 \f
7447 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7448
7449         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7450
7451 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7452
7453         * elmo-nntp.el (elmo-nntp-get-folders-info):
7454         Fixed problem when '\' character is contained in user-id.
7455         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7456
7457 \f
7458 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7459
7460         * elmo-imap4.el (elmo-imap4-delete-folder):
7461         Send "close" before "delete" (Use commented out line).
7462         (elmo-imap4-rename-folder): Ditto.
7463
7464         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7465         folder string itself.
7466         (elmo-dop-list-deleted): New function.
7467         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7468         killed.
7469
7470         * elmo-util.el (elmo-string-rassoc-all): New function.
7471
7472         * elmo-version.el (elmo-version): Up to 2.5.1.
7473
7474 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7475
7476         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7477
7478         * elmo-internal.el (elmo-internal-search): Fix last change.
7479
7480 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7481
7482         * elmo-internal.el (elmo-internal-search): Rewrite.
7483         (Fixed problem which is pointed out by Akihiro MOTOKI
7484         <motoki@da.jp.nec.com>)
7485
7486         * elmo-version.el (elmo-version): Up to 2.5.0.
7487
7488 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7489
7490         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7491
7492 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7493
7494         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7495         non-nil, make hierarchy.
7496
7497 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7498
7499         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7500         `elmo-pop3-use-uidl' must be bound to nil.
7501         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7502
7503 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7504
7505         * elmo-util.el (elmo-copy-file): Don't cause an error after
7506         `add-name-to-file' failed.
7507
7508         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7509         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7510
7511 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7512
7513         * elmo-version.el (elmo-version): Up to 2.3.93.
7514
7515 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7516
7517         * elmo-util.el (elmo-flatten): New function.
7518
7519 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7520
7521         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7522         sync Author header.
7523         * elmo-cache.el (toplevel): Ditto.
7524         * elmo-database.el (toplevel): Ditto.
7525         * elmo-date.el (toplevel): Ditto.
7526         * elmo-dop.el (toplevel): Ditto.
7527         * elmo-filter.el (toplevel): Ditto.
7528         * elmo-imap4.el (toplevel): Ditto.
7529         * elmo-internal.el (toplevel): Ditto.
7530         * elmo-localdir.el (toplevel): Ditto.
7531         * elmo-localnews.el (toplevel): Ditto.
7532         * elmo-maildir.el (toplevel): Ditto.
7533         * elmo-msgdb.el (toplevel): Ditto.
7534         * elmo-multi.el (toplevel): Ditto.
7535         * elmo-net.el (toplevel): Ditto.
7536         * elmo-nntp.el (toplevel): Ditto.
7537         * elmo-pipe.el (toplevel): Ditto.
7538         * elmo-pop3.el (toplevel): Ditto.
7539         * elmo-util.el (toplevel): Ditto.
7540         * elmo-vars.el (toplevel): Ditto.
7541         * elmo2.el (toplevel): Ditto.
7542         * mmelmo-imap4.el (toplevel): Ditto.
7543         * mmelmo.el (toplevel): Ditto.
7544
7545         * elmo-version.el (elmo-version): Move to top.
7546
7547         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7548         * elmo-imap4.el (toplevel): Ditto.
7549         * elmo-localdir.el (toplevel): Ditto.
7550         * elmo-msgdb.el (toplevel): Ditto.
7551         * elmo-nntp.el (toplevel): Ditto.
7552         * elmo-pop3.el (toplevel): Ditto.
7553         * elmo-version.el (toplevel): Ditto.
7554
7555         * elmo-localnews.el (toplevel): Added Keyword header.
7556
7557 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7558
7559         * elmo-version.el (product-version-as-string): Defined using
7560         `defun-maybe'.
7561         (toplevel): Use it.
7562
7563         * elmo-localdir.el (toplevel): Updated copyright notice.
7564         * elmo-version.el (toplevel): Ditto.
7565         * elmo-msgdb.el (toplevel): Ditto.
7566         * elmo-imap4.el (toplevel): Ditto.
7567         * elmo-nntp.el (toplevel): Ditto.
7568         * elmo-pop3.el (toplevel): Ditto.
7569
7570 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7571
7572         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7573         messages.
7574
7575         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7576         parameter value (It sometimes contains raw kanji).
7577
7578 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7579
7580         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7581         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7582
7583 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7584
7585         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7586
7587 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7588
7589         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7590         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7591
7592 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7593
7594         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7595         value if selecting folder succceeded.
7596         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7597
7598 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7599
7600         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7601         representation.
7602
7603         * elmo-util.el (elmo-string-matched-member): New function.
7604
7605 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7606
7607         * elmo-util.el (elmo-unintern): New macro.
7608         (elmo-number-set-member): Fixed docstring.
7609
7610         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7611         tag token.
7612
7613 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7614
7615         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7616         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7617
7618 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7619
7620         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7621         `no-error'.
7622         Added docstring.
7623         Return non-nil if selecting folder succeeded.
7624         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7625
7626 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7627
7628         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7629         `file-name-completion' returns t.
7630         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7631         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7632         directory if it does not exist.
7633         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7634         for iteration.
7635
7636 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7637
7638         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7639         enclosure (It's harmful in unplugged status).
7640
7641         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7642
7643         * mmelmo-1.el: Removed.
7644
7645         * mmelmo-2.el: Ditto.
7646
7647         * mmelmo-imap4-1.el: Ditto.
7648
7649         * mmelmo-imap4-2.el: Ditto.
7650
7651         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7652
7653         * mmelmo.el: Merged mmelmo-2.el.
7654
7655         * elmo-version.el (elmo-version): Up to 2.3.92.
7656
7657 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7658
7659         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7660         elmo-update-number): Remove last period in "...done." message.
7661         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7662         Ditto.
7663         * elmo-cache.el (elmo-cache-expire-by-size,
7664         elmo-cache-get-sorted-cache-file-list,
7665         elmo-cache-msgdb-create-as-numlist): Ditto.
7666         * elmo-dop.el (elmo-dop-save-pending-messages,
7667         (elmo-dop-flush-pending-append-operations): Ditto.
7668         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7669         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7670         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7671         (elmo-localdir-pack-number): Ditto.
7672         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7673         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7674         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7675         mime-write-entity-content): Ditto.
7676         * pldap.el (ldap-search-basic): Ditto.
7677
7678 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7679
7680         * elmo-version.el (elmo-version): Up to 2.3.91.
7681
7682         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7683         Only when filter is 'last'.
7684
7685         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7686         (elmo-condition-parse-search-value): Use it.
7687         (elmo-read-search-condition-internal): Quote value only when
7688         it is not an atom.
7689
7690 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7691
7692         * elmo2.el (elmo-generic-folder-diff): Fix.
7693
7694 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7695
7696         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7697         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7698         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7699         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7700         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7701         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7702
7703 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7704
7705         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7706         extra-fields.
7707
7708 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7709
7710         * elmo-version.el (elmo-version): Up to 2.3.90.
7711
7712         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7713         (elmo-imap4-list-folder-important): Ditto.
7714
7715 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7716
7717         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7718
7719 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7720
7721         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7722
7723 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7724
7725         * elmo-nntp.el (elmo-network-initialize-session):
7726         Add starttls negotiation.
7727
7728 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7729
7730         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7731         response.
7732         (elmo-network-setup-session): Define.
7733         Call `elmo-nntp-send-mode-reader' when session opened.
7734
7735 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7736
7737         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7738
7739 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7740
7741         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7742         an invalid SPACE character ahead of `SEARCH' command.  Move
7743         a valid SPACE character following `SEARCH' from conditional
7744         `format' arguments to control-strings.
7745
7746 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7747
7748         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7749         was succeeded.
7750
7751         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7752
7753 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7754
7755         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7756         `w32-get-true-file-link-count' as t.
7757
7758         * elmo-imap4.el (elmo-imap4-read): Abolished.
7759         (Renamed to `elmo-read' and moved to elmo-util.el)
7760         All other related portions are changed.
7761
7762         * elmo-util.el (elmo-read): New function.
7763         (elmo-condition-parse-search-value): Use it.
7764
7765 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7766
7767         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7768
7769         * elmo-nntp.el (elmo-nntp-session): Define.
7770         (elmo-nntp-setting): Abolished.
7771         All other related portions are changed.
7772         (elmo-nntp-get-server-command): Changed argument.
7773         (elmo-nntp-set-server-command): Ditto.
7774         (elmo-nntp-xover-p): Ditto.
7775         (elmo-nntp-set-xover): Ditto.
7776         (elmo-nntp-listgroup-p): Ditto.
7777         (elmo-nntp-set-listgroup): Ditto.
7778         (elmo-nntp-list-active-p): Ditto.
7779         (elmo-nntp-set-list-active): Ditto.
7780         (elmo-nntp-xhdr-p): Ditto.
7781         (elmo-nntp-set-xhdr): Ditto.
7782         (elmo-nntp-flush-connection): Abolished.
7783         (elmo-nntp-get-connection): Abolished.
7784         (elmo-nntp-get-session): New function.
7785         (elmo-network-initialize-session): Defined.
7786         (elmo-network-authenticate-session): Ditto.
7787         (elmo-nntp-send-mode-reader): Changed argument.
7788         (elmo-nntp-send-command): Changed argument.
7789         All other related portions are changed.
7790         (elmo-nntp-read-response): Ditto.
7791         (elmo-nntp-read-raw-response): Ditto.
7792         (elmo-nntp-read-contents): Ditto.
7793         (elmo-nntp-read-body): Ditto.
7794         (elmo-nntp-goto-folder): Abolished.
7795         (elmo-nntp-select-group): New function.
7796         All other related portions are changed.
7797         (This function substitutes `elmo-nntp-goto-folder')
7798         (elmo-nntp-msgdb-create-by-header): Rewrite.
7799         (elmo-nntp-get-overview): Eliminated.
7800         (elmo-nntp-get-message): Ditto.
7801         (elmo-nntp-open-connection) Abolished.
7802         (elmo-nntp-read-msg): Rewrite.
7803         (elmo-nntp-post): Ditto.
7804         (elmo-nntp-send-data): Abolished.
7805         (elmo-nntp-send-buffer): New function.
7806         (elmo-nntp-send-data-line): Define as inline function.
7807         (elmo-nntp-get-folders-info-prepare): Use session as key.
7808         (elmo-nntp-groups-read-response): Changed argument.
7809         (elmo-nntp-retrieve-headers): Ditto.
7810         (elmo-nntp-msgdb-create-message): Ditto.
7811
7812         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7813         when searching by 'since' or 'before'.
7814
7815 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7816
7817         * elmo-version.el (toplevel): Use product-version-as-string for set
7818         verstion-string, if defined.
7819
7820 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7821
7822         * elmo-util.el: Doc fixes.
7823
7824 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7825
7826         * elmo-archive.el (toplevel): Use product-provide.
7827         * elmo-cache.el (toplevel): Ditto.
7828         * elmo-database.el (toplevel): Ditto.
7829         * elmo-date.el (toplevel): Ditto.
7830         * elmo-dop.el (toplevel): Ditto.
7831         * elmo-filter.el (toplevel): Ditto.
7832         * elmo-imap4.el (toplevel): Ditto.
7833         * elmo-internal.el (toplevel): Ditto.
7834         * elmo-localdir.el (toplevel): Ditto.
7835         * elmo-localnews.el (toplevel): Ditto.
7836         * elmo-maildir.el (toplevel): Ditto.
7837         * elmo-msgdb.el (toplevel): Ditto.
7838         * elmo-multi.el (toplevel): Ditto.
7839         * elmo-net.el (toplevel): Ditto.
7840         * elmo-nntp.el (toplevel): Ditto.
7841         * elmo-pipe.el (toplevel): Ditto.
7842         * elmo-pop3.el (toplevel): Ditto.
7843         * elmo-util.el (toplevel): Ditto.
7844         * elmo-vars.el (toplevel): Ditto.
7845         * elmo2.el (toplevel): Ditto.
7846         * mmelmo-1.el (toplevel): Ditto.
7847         * mmelmo-2.el (toplevel): Ditto.
7848         * mmelmo-imap4-1.el (toplevel): Ditto.
7849         * mmelmo-imap4-2.el (toplevel): Ditto.
7850         * mmelmo-imap4.el (toplevel): Ditto.
7851         * mmelmo.el (toplevel): Ditto.
7852
7853 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7854
7855         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7856         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7857
7858 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7859
7860         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7861         before splitting.
7862         (elmo-multi-split-number-alist): Ditto.
7863
7864 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7865
7866         * elmo-version.el: New file.  Use product.el.
7867         * elmo2.el: Add (require 'elmo-version).
7868         * elmo-vars.el (elmo-appname, elmo-version): Move to
7869         elmo-version.el
7870
7871 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7872
7873         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7874         `elmo-msgdb-expand-path'.
7875         (elmo-msgdb-load): Ditto.
7876         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7877         (elmo-generic-list-folder-unread): Rewrite.
7878         (elmo-generic-list-folder-important): Changed argument.
7879         (elmo-list-folder-unread): Ditto.
7880         (elmo-list-folder-important): Ditto.
7881         (elmo-folder-diff): Rewrite.
7882         (elmo-generic-folder-diff): New function.
7883         (elmo-multi-get-number-alist-list): Abolished
7884         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7885         (elmo-multi-folder-diff): Moved to elmo-multi.el
7886         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7887
7888         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7889         `elmo-msgdb-expand-path'.
7890         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7891         (elmo-pop3-read-msg): Ditto.
7892         (elmo-pop3-delete-msgs): Ditto.
7893         (elmo-pop3-folder-diff): New alias.
7894
7895         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7896         `elmo-msgdb-expand-path'.
7897         (elmo-pipe-list-folder-unread): Changed arguments.
7898         (elmo-pipe-list-folder-important): Ditto.
7899         (elmo-pipe-folder-diff): New alias.
7900
7901         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7902         `elmo-msgdb-expand-path'.
7903         (elmo-nntp-max-of-folder): Ditto.
7904         (elmo-nntp-msgdb-create): Ditto.
7905         (elmo-nntp-delete-msgs): Ditto.
7906         (elmo-nntp-folder-diff): New alias.
7907
7908         * elmo-multi.el (elmo-multi-folder-diff): New function.
7909         (elmo-multi-split-mark-alist): Ditto.
7910         (elmo-multi-split-number-alist): Ditto.
7911         (elmo-multi-mark-alist-list): Abolished (Renamed to
7912         elmo-multi-split-mark-alist).
7913         (elmo-multi-list-folder-unread): Rewrite.
7914         (elmo-multi-list-folder-important): Ditto.
7915         (elmo-multi-list-folder): Set `spec' as 1st argument for
7916         `elmo-msgdb-expand-path'.
7917         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7918         instead of `elmo-multi-get-number-alist-list'.
7919
7920         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7921         If 1st argument is not string, treat as spec.
7922         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7923         `elmo-msgdb-expand-path'.
7924         (elmo-msgdb-flist-load): Ditto.
7925         (elmo-msgdb-flist-save): Ditto.
7926         (elmo-msgdb-delete-path): Ditto.
7927         (elmo-msgdb-rename-path): Ditto.
7928
7929         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7930         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7931         (elmo-maildir-delete-mark-msgs): Ditto.
7932         (elmo-maildir-msgdb-create): Ditto.
7933         (elmo-maildir-read-msg): Ditto.
7934         (elmo-maildir-delete-msgs): Ditto.
7935         (elmo-maildir-list-folder-subr): Ditto.
7936         (elmo-maildir-search): Ditto.
7937         (elmo-maildir-get-msg-filename): Ditto.
7938         (elmo-maildir-pack-number): Ditto.
7939         (elmo-maildir-folder-diff): New alias.
7940
7941         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7942
7943         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7944         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7945         (elmo-localdir-folder-diff): New alias.
7946
7947         * elmo-internal.el (elmo-internal-list-folder-subr):
7948         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7949         (elmo-internal-list-folder-by-location): Ditto.
7950         (elmo-internal-msgdb-create): Ditto.
7951         (elmo-internal-delete-msgs): Ditto.
7952         (elmo-internal-read-msg): Ditto.
7953         (elmo-internal-folder-diff): New alias.
7954
7955         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7956         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7957         `elmo-msgdb-expand-path'.
7958         (elmo-imap4-list-folder-unread): Changed arguments.
7959         (elmo-imap4-list-folder-important): Ditto.
7960
7961         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7962         (elmo-filter-list-folder-important): Ditto.
7963         (elmo-filter-folder-diff): New function.
7964
7965         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7966
7967         * elmo-cache.el (elmo-cache-list-folder):
7968         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7969         (elmo-cache-copy-msgs): Ditto.
7970         (elmo-cache-folder-diff): New alias.
7971
7972         * elmo-archive.el (elmo-archive-list-folder-subr):
7973         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7974         (elmo-archive-get-archive-name): Ditto.
7975         (elmo-archive-create-file): Ditto.
7976         (elmo-archive-append-msg): Ditto.
7977         (elmo-archive-copy-msgs): Ditto.
7978         (elmo-archive-copy-msgs-froms): Ditto.
7979         (elmo-archive-get-msg-filename): Ditto.
7980         (elmo-archive-folder-diff): New alias.
7981
7982 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7983
7984         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7985         (elmo-pop3-stream-type-alist): New variable.
7986         (elmo-nntp-stream-type-alist): New variable.
7987
7988         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7989         (elmo-kill-buffer): Ditto.
7990         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7991         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7992         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7993         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7994         (elmo-imap4-get-spec): Take into account
7995         `elmo-imap4-stream-type-alist'.
7996
7997 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7998
7999         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8000         (elmo-nntp-list-folders-get-cache): Ditto.
8001
8002 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8003
8004         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8005         character before 'uid'.
8006
8007 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8008
8009         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8010
8011         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8012
8013         * elmo-util.el (elmo-number-set-member): New function.
8014         (elmo-number-set-append-list): Ditto.
8015         (elmo-number-set-append): Ditto.
8016
8017         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8018         Use `elmo-number-set-member'.
8019         (elmo-living-messages): Ditto.
8020         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8021         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8022
8023         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8024         (elmo-imap4-add-to-cont-list): Abolished.
8025         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8026         instead of elmo-imap4-add-to-cont-list.
8027
8028         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8029         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8030
8031         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8032
8033 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8034
8035         * elmo-util.el (elmo-condition-parse-search-value):
8036         Fixed date parsing.
8037
8038 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8039
8040         * elmo-util.el (elmo-condition-find-key-internal): New function.
8041         (elmo-condition-find-key): Ditto.
8042
8043         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8044         (elmo-msgdb-search-internal): Ditto.
8045         (elmo-msgdb-search): Ditto.
8046
8047 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8048
8049         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8050         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8051
8052         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8053         (elmo-nntp-search-primitive): Fixed problem when condition is
8054         'unmatch'.
8055
8056         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8057
8058         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8059         (elmo-nntp-xhdr-p): New macro.
8060         (elmo-nntp-set-xhdr): Ditto.
8061         (elmo-nntp-parse-xhdr-response): New function.
8062         (elmo-nntp-retrieve-field): Ditto.
8063         (elmo-nntp-search-primitive): Ditto.
8064         (elmo-nntp-search): Implemented.
8065
8066         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8067
8068         * elmo-archive.el (elmo-archive-search): Set all number list to
8069         `elmo-archive-field-condition-match'
8070
8071         * elmo-localdir.el (elmo-localdir-search): Likewise.
8072
8073         * elmo-maildir.el (elmo-maildir-search): Likewise.
8074
8075 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8076
8077         * elmo-msgdb.el (elmo-living-messages): New function.
8078         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8079         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8080         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8081         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8082         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8083         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8084         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8085         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8086         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8087         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8088         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8089
8090 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8091
8092         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8093
8094         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8095
8096         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8097
8098         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8099         arguments for `SEARCH' command.
8100         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8101         All other related portions are changed.
8102
8103         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8104
8105         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8106         (elmo-list-folder-unread): Rewrite.
8107         (elmo-list-folder-important): Ditto.
8108
8109         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8110         (elmo-condition-parse-error): New inline function.
8111         (elmo-read-search-condition): New function.
8112         (elmo-read-search-condition-internal): Ditto.
8113         (elmo-parse-search-condition): Rewrite.
8114         (elmo-condition-parse): New function.
8115         (elmo-condition-parse-or-expr): Ditto.
8116         (elmo-condition-parse-and-expr): Ditto.
8117         (elmo-condition-parse-primitive): Ditto.
8118         (elmo-condition-parse-search-value): Ditto.
8119         (elmo-buffer-field-primitive-condition-match): Ditto.
8120         (elmo-buffer-field-condition-match): Rewrite.
8121         (elmo-file-field-condition-match): Ditto.
8122
8123         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8124         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8125
8126         * elmo-internal.el (elmo-internal-search): Set `number' and
8127         `number-list' argument of `elmo-file-field-condition-match'.
8128
8129         * elmo-maildir.el (elmo-maildir-search): Ditto.
8130
8131         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8132         `msgdb' as argument instead of `mark-alist'.
8133         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8134         `overview'.
8135
8136         * elmo-multi.el: Likewise.
8137
8138         * elmo-pipe.el: Likewise.
8139
8140         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8141         (elmo-imap4-search-internal): Rewrite.
8142         (elmo-imap4-search): Ditto.
8143
8144         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8145         (elmo-filter-list-folder-unread): Ditto.
8146         (elmo-filter-list-folder-important): Ditto.
8147         (elmo-filter-search): Rewrite.
8148
8149         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8150         `number-list' argument of `elmo-file-field-condition-match'.
8151         (elmo-cache-search): Ditto.
8152
8153         * elmo-localdir.el: Likewise.
8154
8155         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8156         number-list and pass it to `elmo-buffer-field-condition-match'.
8157         (elmo-archive-field-condition-match): Pass `number-list' to
8158         `elmo-archive-field-condition-match'
8159
8160 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8161
8162         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8163         `listgroup'.
8164
8165         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8166         (elmo-folder-diff-async-callback-data): Ditto.
8167         (elmo-folder-diff-async): New function.
8168
8169         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8170         (elmo-network-session-cache-key): Use it as a prefix of the session
8171         name.
8172         (elmo-network-open-session): Ditto.
8173
8174         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8175         (elmo-imap4-status-callback-data): Ditto.
8176         (elmo-imap4-server-diff-async-callback): New variable.
8177         (elmo-imap4-server-diff-async-callback-data): Ditto.
8178         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8179         `elmo-imap4-status-callback-data'.
8180         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8181         `elmo-imap4-status-callback-data' as nil.
8182         (elmo-imap4-server-diff): Ditto.
8183         (elmo-imap4-server-diff-async-callback-1): New function.
8184         (elmo-imap4-server-diff-async): Ditto.
8185         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8186
8187 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8188
8189         * elmo-util.el (elmo-list-delete): Doc fix.
8190         (elmo-delete-lists): Abolish.
8191         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8192         instead of `elmo-delete-lists'.
8193
8194 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8195
8196         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8197         before `sort'.
8198
8199 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8200
8201         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8202         `elmo-imap4-literal-subr'.
8203         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8204         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8205
8206 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8207
8208         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8209         (elmo-archive-list-folder): Fix.
8210         (elmo-archive-max-of-folder): Fix.
8211
8212 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8213
8214         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8215          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8216         (elmo-localdir-append-msg): Ditto.
8217         (elmo-localdir-list-folder): Fix for `nonsort'.
8218         (elmo-localdir-list-folder-subr): Fix for `killed'.
8219         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8220         (elmo-maildir-list-folder-subr): Ditto.
8221         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8222         (elmo-archive-list-folder-subr): Ditto.
8223         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8224         (elmo-internal-list-folder-subr): Ditto.
8225
8226 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8227
8228         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8229
8230 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8231
8232         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8233
8234 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8235
8236         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8237         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8238
8239         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8240         before greeting.
8241         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8242         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8243
8244 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8245
8246         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8247
8248         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8249         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8250         before STORE command.
8251
8252 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8253
8254         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8255
8256         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8257         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8258         of `response'.
8259         (elmo-imap4-list-folders): Removed unused local variable.
8260         (elmo-network-initialize-session): Ditto.
8261         (elmo-imap4-delete-msg-by-id): Ditto.
8262         (elmo-imap4-parse-fetch): Ditto.
8263         (elmo-imap4-copy-msgs): Ditto.
8264         Use `dst-spec' instead of `dst-folder'.
8265         (elmo-network-authenticate-session): Check authenticate type `plain'.
8266
8267 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8268
8269         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8270         garbage checking.
8271         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8272         `elmo-imap4-response-value'.
8273         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8274
8275 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8276
8277         * elmo-imap4.el (elmo-imap4-send-command):
8278         Cause elmo-imap4-bye-error when current response is BYE.
8279         (elmo-imap4-arrival-filter): Changed greeting response value.
8280
8281         * elmo2.el (elmo-imap4-bye-error): Define.
8282
8283         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8284         (elmo-imap4-server-diff): Ditto.
8285         (elmo-imap4-response-bye-p): New macro.
8286         (elmo-imap4-response-error-text): Get text from BYE response.
8287         (elmo-imap4-read-response): Return if BYE response.
8288         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8289         (elmo-imap4-folder-exists-p): Ditto.
8290         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8291         (elmo-imap4-parse-bye): New function.
8292         (elmo-imap4-parse-response): Remove needless let.
8293         Call `elmo-imap4-parse-bye'.
8294
8295 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8296
8297         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8298         the mailbox does not exist.
8299         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8300
8301 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8302
8303         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8304
8305 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8306
8307         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8308
8309         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8310         (elmo-network-initialize-session-buffer): Defined.
8311
8312         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8313         Abolished.
8314         (mmelmo-imap4-get-mime-entity): Rewrite.
8315
8316         * elmo2.el (elmo-error): Capitalize error message.
8317
8318         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8319         (elmo-network-session-buffer): New macro.
8320         (elmo-network-open-session): Use it.
8321
8322         * elmo-imap4.el: Rewrite.
8323
8324 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8325
8326         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8327
8328 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8329
8330         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8331         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8332         (elmo-imap4-create-msgdb-from-overview-string): Use
8333         `elmo-msgdb-create-overview-from-buffer'.
8334
8335 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8336
8337         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8338         (elmo-imap4-default-hierarchy-delimiter): New variable.
8339         (elmo-imap4-list-folders): Use it.
8340
8341 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8342
8343         * elmo-net.el (elmo-network-open-session): Add user and
8344         stream-type for process-buffer name.
8345
8346         * elmo-pop3.el (elmo-network-initialize-session): Call
8347         buffer-disable-undo.
8348
8349         * elmo-imap4.el (elmo-network-initialize-session):
8350         Set current-buffer as an argument for `buffer-disable-undo'.
8351
8352         * elmo-pop3.el (elmo-network-close-session): Don't use
8353         `process-live-p'.
8354
8355         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8356         Set default as 'user.
8357
8358         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8359
8360         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8361         and `elmo-imap4-flush-connection'.
8362
8363         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8364         (elmo-pop3-get-spec): Assume auth as symbol.
8365         (elmo-open-network-stream): Moved to `elmo-net'.
8366
8367         * elmo-pop3.el (toplevel): Require 'elmo-net.
8368         Define `sasl-cram-md5' to silence byte compilier.
8369         (elmo-pop3-connection-cache) Abolished.
8370         (elmo-pop3-authenticator-alist) New variable.
8371         (elmo-pop3-session): Define.
8372         (elmo-pop3-connection-get-process): Abolished.
8373         (elmo-pop3-connection-get-buffer): Ditto.
8374         (elmo-pop3-close-connection): Ditto.
8375         (elmo-pop3-flush-connection): Ditto.
8376         (elmo-pop3-get-connection): Ditto.
8377         (elmo-pop3-get-session): New function.
8378         (Replacement for `elmo-pop3-get-connection').
8379         All other related modules are changed.
8380         (elmo-network-close-session): Define.
8381         (elmo-pop3-send-command): Abolished argument `buffer'.
8382         All other related modules are changed.
8383         (elmo-pop3-read-response): Likewise.
8384         (elmo-pop3-open-connection): Abolished.
8385         (elmo-pop3-auth-user): New function.
8386         (elmo-pop3-auth-apop): Ditto.
8387         (elmo-pop3-auth-cram-md5): Ditto.
8388         (elmo-pop3-auth-scram-md5): Ditto.
8389         (elmo-pop3-auth-digest-md5): Ditto.
8390         (elmo-network-initialize-session): Define.
8391         (elmo-network-authenticate-session): Ditto.
8392         (elmo-network-setup-session): Ditto.
8393
8394         * elmo-imap4.el (toplevel): Require 'elmo-net.
8395         (elmo-imap4-session): Define.
8396         (elmo-imap4-connection-cache): Abolished.
8397         (elmo-imap4-password-key): Ditto.
8398         (elmo-imap4-flush-connection): Ditto.
8399         (elmo-imap4-get-connection): Ditto.
8400         All other related modules are changed.
8401         (elmo-imap4-get-session): New function
8402         (Replacement for `elmo-imap4-get-connection').
8403         (elmo-imap4-read-response): Abolished argument `buffer'.
8404         All other related modules are changed.
8405         (elmo-imap4-send-command): Likewise.
8406         (elmo-imap4-select-folder): Abolished.
8407         All other related modules are changed.
8408         (elmo-imap4-select-mailbox): New function.
8409         (Replacement for `elmo-imap4-select-folder').
8410         (elmo-imap4-auth-login): Simplify.
8411         (Assume current buffer as process buffer)
8412         (elmo-imap4-auth-cram-md5): Ditto.
8413         (elmo-imap4-auth-digest-md5): Ditto.
8414         (elmo-imap4-login): Ditto.
8415         (elmo-imap4-open-connection): Abolished.
8416         (elmo-imap4-open-connection-1): Abolished.
8417         (elmo-network-initialize-sessoin): Define.
8418         (elmo-network-authenticate-session): Ditto.
8419         (elmo-network-setup-session): Ditto.
8420
8421         * elmo-net.el: New module.
8422
8423 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8424
8425         * elmo-util.el (elmo-define-error): New function.
8426
8427         * elmo2.el (elmo-error): Define.
8428         (elmo-open-error): Define.
8429         (elmo-authenticate-error): Define.
8430
8431         * elmo-imap4.el (elmo-imap4-error): Abolish.
8432         (elmo-imap4-error-type): Abolish.
8433         (elmo-imap4-error-process): Abolish.
8434         (elmo-imap4-error-message): Abolish
8435         (elmo-imap4-list-folders): Don't quote lambda.
8436         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8437         (elmo-imap4-parse-namespace): Ditto.
8438         (elmo-imap4-open-connection): Rewrite.
8439         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8440         (elmo-imap4-get-connection): Abolish local variable `result'.
8441
8442 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8443
8444         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8445         wrong-type-argument error when auth is nil.
8446
8447 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8448
8449         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8450         (elmo-default-nntp-stream-type): Ditto.
8451         (elmo-default-pop3-stream-type): Ditto.
8452         (elmo-network-stream-type-alist): Ditto.
8453         (elmo-default-imap4-ssl): Abolished.
8454         (elmo-default-nntp-ssl): Ditto.
8455         (elmo-default-pop3-ssl): Ditto.
8456
8457         * elmo-util.el: (toplevel): Removed needless requires.
8458         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8459         (elmo-open-network-stream): Open network stream according to
8460         the value of `elmo-network-stream-type-alist'.
8461         (elmo-get-network-stream-type): New function.
8462         (elmo-network-stream-type-spec-string): New macro.
8463         (elmo-network-stream-type-symbol): Ditto.
8464         (elmo-network-stream-type-function): Ditto.
8465
8466         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8467         network-stream-type. All other related portions are changed.
8468         (elmo-pop3-open-connection): Ditto.
8469
8470         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8471         network-stream-type. All other related portions are changed.
8472
8473         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8474         network-stream-type.All other related portions are changed.
8475         (elmo-imap4-error): New macro.
8476         (elmo-imap4-error-type): Ditto.
8477         (elmo-imap4-error-process): Ditto.
8478         (elmo-imap4-error-message): Ditto.
8479         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8480         (elmo-imap4-auth-cram-md5): Ditto.
8481         (elmo-imap4-auth-digest-md5): Ditto.
8482         (elmo-imap4-login): Ditto.
8483         (elmo-imap4-open-connection): Remove password entry if authentication
8484         was in vain.
8485         (elmo-imap4-user-at-host): Abolished.
8486         (elmo-imap4-password-key): New buffer local variable.
8487         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8488         using protocol, port, auth and stream-type.
8489
8490         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8491
8492 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8493
8494         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8495
8496         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8497
8498         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8499         (elmo-imap4-authenticator-alist): New variable.
8500         (elmo-imap4-open-connection-1): Rename from
8501         elmo-imap4-open-connection.
8502         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8503         only wraps elmo-imap4-open-connection-1.
8504         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8505         user-at-host.
8506         (elmo-imap4-auth-login): New function.
8507         (elmo-imap4-auth-cram-md5): New function.
8508         (elmo-imap4-auth-digest-md5): New function.
8509         (elmo-imap4-login): New function.
8510
8511 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8512
8513         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8514         function `error'.
8515
8516 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8517
8518         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8519
8520 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8521
8522         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8523
8524 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8525
8526         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8527         for server responses, quote `*' regardless of where it appears.
8528
8529 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8530
8531         * elmo-maildir.el (elmo-maildir-commit): New alias.
8532
8533 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8534
8535         * elmo-util.el (elmo-display-progress):
8536                 Use `progress-feedback-with-label'.
8537
8538 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8539
8540         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8541         (elmo-imap4-non-atom-char-regex): Ditto.
8542         (elmo-imap4-non-text-char-regex): Ditto.
8543         (elmo-imap4-literal-threshold): Ditto.
8544         (elmo-imap4-atom-p): New function.
8545         (elmo-imap4-quotable-p): Ditto.
8546         (elmo-imap4-nil): Ditto.
8547         (elmo-imap4-atom): Ditto.
8548         (elmo-imap4-quoted): Ditto.
8549         (elmo-imap4-literal-subr): Ditto.
8550         (elmo-imap4-literal): Ditto.
8551         (elmo-imap4-buffer-literal): Ditto.
8552         (elmo-imap4-string-subr): Ditto.
8553         (elmo-imap4-string): Ditto.
8554         (elmo-imap4-buffer-string): Ditto.
8555         (elmo-imap4-astring-subr): Ditto.
8556         (elmo-imap4-astring): Ditto.
8557         (elmo-imap4-buffer-astring): Ditto.
8558         (elmo-imap4-nstring): Ditto.
8559         (elmo-imap4-buffer-nstring): Ditto.
8560         (elmo-imap4-mailbox): New alias.
8561         (elmo-imap4-field-body): Ditto.
8562         (elmo-imap4-userid): Ditto.
8563         (elmo-imap4-password): Ditto.
8564         (elmo-imap4-format-quoted): New function.
8565         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8566         arguments and handle "atom", "quoted" and "literal" string here.
8567         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8568         `elmo-imap4-send-command'.
8569         (elmo-imap4-folder-exists-p): Likewise.
8570         (elmo-imap4-create-folder): Likewise.
8571         (elmo-imap4-delete-folder): Likewise.
8572         (elmo-imap4-rename-folder): Likewise.
8573         (elmo-imap4-max-of-folder): Likewise.
8574         (elmo-imap4-check-validity): Likewise.
8575         (elmo-imap4-sync-validity): Likewise.
8576         (elmo-imap4-server-diff): Likewise.
8577         (elmo-imap4-select-folder): Likewise.
8578         (elmo-imap4-copy-msgs): Likewise.
8579         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8580         (elmo-imap4-mark-set-on-msgs): Likewise.
8581         (elmo-imap4-read-part): Likewise.
8582         (elmo-imap4-read-msg): Likewise.
8583         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8584         `elmo-imap4-password' for `elmo-imap4-send-command'.
8585         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8586         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8587         `elmo-imap4-buffer-literal'.
8588         (elmo-imap4-append-msg): Likewise.
8589
8590         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8591         `delete' for removing dead connection from the connection cache.
8592         Move deletion of the process buffer after that.
8593         (elmo-imap4-list): Change `defsubst' to `defun'.
8594         (elmo-imap4-commit): Make error message verbose.
8595         (elmo-imap4-search): Ditto.
8596         (elmo-imap4-list): Ditto.
8597         (elmo-imap4-select-folder): Ditto.
8598         (elmo-imap4-copy-msgs): Ditto.
8599         (elmo-imap4-delete-msg-by-id): Ditto.
8600         (elmo-imap4-append-msg-by-id): Ditto.
8601         (elmo-imap4-append-msg): Ditto.
8602
8603 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8604
8605         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8606         when dired is used on XEmacs.
8607
8608 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8609
8610         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8611         instead of `append'.
8612         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8613         `elmo-plugged-p' directly.
8614         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8615         of `elmo-plugged-p' directly.
8616
8617         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8618         Eliminate unused variable.  Use `memq' for checking a process status.
8619         Use `cons' instead of `append' for updating the connection cache.
8620         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8621         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8622
8623 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8624
8625         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8626         `elmo-imap4-read-point' exactly.
8627
8628         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8629         the local variable `folder' to `mailbox'.
8630         Rename the argument `fld' to `folder'.
8631
8632 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8633
8634         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8635         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8636
8637 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8638
8639         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8640         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8641         (elmo-pop3-uidl-number-hash): Ditto.
8642         (elmo-pop3-size-hash): Ditto.
8643         (elmo-pop3-uidl-done): Ditto.
8644         (elmo-pop3-list-done): Ditto.
8645         (elmo-pop3-connection-get-process): New defmacro.
8646         (elmo-pop3-connection-get-buffer): Ditto.
8647         (elmo-pop3-close-connection): Delete buffer and process.
8648         (elmo-pop3-flush-connection): Don't delete buffer and process.
8649         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8650         Setup UIDL and size hash.
8651         (elmo-pop3-send-command-no-erase): Deleted
8652         (elmo-pop3-send-command): Added optional argument `no-erase'.
8653         (elmo-pop3-parse-uidl-response): New function.
8654         (elmo-pop3-parse-list-response): Set size hash.
8655         (elmo-pop3-list-location): New function.
8656         (elmo-pop3-list-by-uidl-subr): Ditto.
8657         (elmo-pop3-list-by-list): Ditto.
8658         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8659         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8660         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8661         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8662         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8663         Use uidl.
8664         (elmo-pop3-uidl-to-number): New function.
8665         (elmo-pop3-number-to-uidl): Ditto.
8666         (elmo-pop3-number-to-size): Ditto.
8667         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8668         Set number by use of uidl.
8669         (elmo-pop3-msgdb-create-message): Likewise.
8670         Set size, loc-alist in msgdb.
8671         (elmo-pop3-read-msg): Set number by use of uidl.
8672         Added optional argument `msgdb'.
8673         (elmo-pop3-delete-msg): Ditto.
8674         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8675         (elmo-pop3-commit): Close connection.
8676
8677         * elmo-pipe.el (elmo-pipe-max-of-folder):
8678         Bind `elmo-pop3-use-uidl' as nil.
8679         (elmo-pipe-drain): Ditto.
8680         Call `elmo-commit'.
8681
8682         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8683         (elmo-msgdb-overview-entity-set-size): New defsubst.
8684
8685 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8686
8687         * elmo-vars.el (elmo-use-killed-list): New variable
8688         (Renamed from `elmo-nntp-use-killed-list').
8689         (elmo-nntp-use-killed-list): Eliminated.
8690
8691         * elmo-msgdb.el (elmo-msgdb-expand-path):
8692         Changed expanding msgdb path for elmo-multi.
8693
8694         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8695         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8696         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8697         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8698         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8699         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8700         (toplevel): Deleted time-stamp line.
8701
8702         * elmo2.el (elmo-clear-killed ): Defined as function
8703         (Abolished defining as a backend function).
8704         All other related modules are changed.
8705
8706 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8707
8708         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8709
8710 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8711
8712         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8713
8714 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8715
8716         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8717
8718 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8719
8720         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8721         asynchronous folder check.
8722
8723         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8724
8725         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8726         `elmo-nntp-use-killed-list'.
8727         (elmo-nntp-list-folder): Use killed list.
8728         (elmo-nntp-max-of-folder): Ditto.
8729         (elmo-nntp-msgdb-create): Set killed list.
8730
8731         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8732
8733         * elmo2.el (elmo-clear-killed): New backend function.
8734         All other related modules are changed.
8735
8736 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8737
8738         * elmo-util.el (elmo-imap4-spec-folder): Use
8739         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8740         All callers changed.
8741
8742 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8743
8744         * mmelmo-2.el (initialize-instance):
8745         Use `mime-buffer-entity-buffer-internal' instead of
8746         `mime-entity-buffer'.
8747
8748         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8749         (mime-entity-body): Implemented.
8750         (mime-goto-header-start-point): Deleted.
8751         (mime-goto-body-end-point): Ditto.
8752         (mime-entity-point-min): Ditto.
8753         (mime-entity-point-max): Ditto.
8754         (mime-entity-children): Ditto.
8755         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8756         instead of `mime-entity-buffer'.
8757         (mime-entity-header-buffer): Ditto.
8758         (mime-entity-body-buffer): Ditto.
8759         (mime-write-entity-content): Ditto.
8760
8761         * pldap.el (ldap-static-if): New macro.
8762         (toplevel): Use it instead of `static-if'.
8763
8764 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8765
8766         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8767         included in `attrs' argument.
8768
8769 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8770
8771         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8772
8773         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8774         (ldap-ldif-safe-init-char-regexp): Ditto.
8775         (ldap-ldif-safe-string-regexp): Ditto.
8776         (ldap/ldif-safe-string-p): New macro.
8777         (ldap/ldif-insert-field): Ditto.
8778         (ldap-modify): Use it.
8779         (ldap-add): Ditto.
8780         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8781         (ldap-decode-attribute): Decode only when `attr' is consp.
8782         (ldap-delete): Bind `ret'.
8783         (toplevel): Require 'cl at compile time.
8784         Removed (require 'poe) and (require 'std11).
8785         (pldap-version): Eliminated.
8786         (ldap-search-basic): Removed auth and dn binding.
8787         (ldap-ldif-field-name-regexp): New constant.
8788         (ldap-ldif-field-head-regexp): Ditto.
8789         (ldap-ldif-next-field-head-regexp): Ditto.
8790         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8791         (ldap/field-end): New function.
8792         (ldap/field-body): Use it.
8793         (ldap/collect-field): Ditto.
8794         (ldap-search-basic): Use `ldap/field-body'.
8795
8796 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8797
8798         * pldap.el (ldap-default-attribute-encoder): New user option.
8799         (ldap/field-body): Decode base64 string.
8800         (ldap/collect-field): Ditto.
8801         (ldap-encode-attribute): New function.
8802         (ldap-add-entries): Use it.
8803         (ldap-modify-entries): Ditto.
8804         (ldap-search-entries): Enclosed decoding function with
8805         `with-temp-buffer' and set as unibyte.
8806         (ldap-search-basic): Set process buffer as unibyte.
8807
8808         * elmo-util.el (elmo-folder-identical-system-p):
8809         Eliminated name space checking.
8810
8811         * pldap.el: New module.
8812         toplevel: Changed condition to detect built-in ldap feature.
8813         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8814         (ldap-add): Added error handling.
8815         (ldap-modify): Ditto.
8816         (ldap-delete): Ditto.
8817
8818 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8819
8820         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8821         Initialize local variables with `let'.  Inline a temporary
8822         variable for the progress percentage.  Sort `setq' to reduce
8823         function call in the while-loop.
8824
8825         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8826         into the conditional branch.
8827
8828 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8829
8830         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8831         Move a conditional out of the while-loop.
8832
8833 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8834
8835         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8836         elmo-msgdb-overview-get-entity-by-number.
8837         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8838         throw.
8839
8840 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8841
8842         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8843         the local variable for a packed number self descriptively.
8844
8845 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8846
8847         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8848         * elmo-localdir.el (elmo-localdir-pack-number): Use
8849         `elmo-msgdb-overview-get-entity' instead of
8850         `elmo-msgdb-overview-get-entity-by-number'.
8851         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8852         (elmo-msgdb-search-overview-entity): Removed.
8853         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8854         by message-id or number.
8855         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8856         instead of `elmo-msgdb-overview-get-entity-by-number'.
8857
8858 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8859
8860         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8861         non-nil, use hash table for overview.
8862         (elmo-hash-maximum-size): New variable.
8863         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8864         (elmo-msgdb-make-overview-hashtb): New function.
8865         (elmo-msgdb-clear-overview-hashtb): New function.
8866         (elmo-clear-hash-val): New macro.
8867         All other related modules are changed.
8868
8869 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8870
8871         * elmo2.el (elmo-move-msgs): If there's other message with
8872         same message-id, don't use cache.
8873
8874 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8875
8876         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8877         number is already packed.
8878
8879 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8880
8881         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8882
8883 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8884
8885         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8886         All other related modules are changed.
8887
8888 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8889
8890         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8891         of refiling failure on Maildir.
8892
8893 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8894
8895         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8896         decoded mime-charset with cache.
8897         (elmo-msgdb-overview-entity-get-from): Ditto.
8898         (elmo-msgdb-overview-entity-get-subject): Ditto.
8899         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8900
8901 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8902
8903         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8904         (elmo-remove-passwd): Fill password with 0 before erase.
8905         * elmo-vars.el (elmo-passwd-life-time): New variable.
8906
8907 \f
8908 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8909
8910         * elmo-cache.el (elmo-buffer-cache-add):
8911         Set message cache buffer as unibyte.
8912
8913 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8914
8915         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8916         become nil.
8917
8918 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8919
8920         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8921         when display is finished.
8922         (elmo-nntp-msgdb-create): Ditto.
8923         (elmo-nntp-groups-read-response): Ditto.
8924         (elmo-nntp-retrieve-headers): Ditto.
8925         (elmo-nntp-msgdb-create-message): Ditto.
8926         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8927         (elmo-pop3-msgdb-create-message): Ditto.
8928
8929 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8930
8931         * elmo-maildir.el (elmo-maildir-msgdb-create):
8932         Use `elmo-msgdb-sort-by-date'.
8933
8934 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8935
8936         * elmo2.el (elmo-read-msg-no-cache):
8937         Eliminated arguments after `outbuf'.
8938         Don't use cache even if it exists.
8939         (elmo-read-msg): Don't pass arguments after `outbuf' to
8940         `elmo-read-msg-no-cache'.
8941
8942 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8943
8944         * elmo-archive.el (elmo-archive-list-folders):
8945         Use `file-name-directory' if base folder does not exist.
8946
8947 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8948
8949         * elmo-archive.el (elmo-archive-list-folders): Don't use
8950         `file-name-directory'.
8951
8952 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8953
8954         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8955         If `force' is non-nil, try flushing all operation queues.
8956
8957 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8958
8959         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8960         as-binary-process.
8961
8962 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8963
8964         * elmo-util.el (elmo-display-progress): Fixed.
8965
8966 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8967
8968         * elmo-util.el (elmo-display-progress): New function.
8969         All other related modules are changed.