2fd5cb41895b3c7a63fee2e40a90ad05da754fe2
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
4         (elmo-folder-initialize): Use it.
5         (elmo-global-flag-replace-referrer): New function.
6
7         * elmo.el (toplevel): Added autoload setting for
8         `elmo-global-flag-replace-referrer'.
9         (elmo-folder-rename): Rewrite the last change use
10         `elmo-global-flag-replace-referrer'.
11
12         * elmo-pipe.el (elmo-folder-rename): Call
13         `elmo-global-flag-replace-referrer'.
14
15 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
16
17         * elmo.el (elmo-folder-rename): Set meta data for global flags
18         follow the rename.
19
20 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
21
22         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
23         as 'not-loaded.
24         (elmo-folder-close): Ditto.
25         (elmo-filter-folder-number-list-loaded-p): New function.
26         (elmo-filter-folder-number-list): Check whether loaded or not.
27         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
28         of `elmo-filter-folder-number-list-internal'.
29         (elmo-folder-delete-messages): Ditto.
30         (elmo-folder-length): Check whether number-list is loaded or not.
31
32 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
33
34         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
35         field `real field' into each element of list.
36         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
37         (elmo-msgdb-message-entity-field): Ditto.
38         (modb-entity-ml-info-real-fields): New function.
39
40         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
41
42         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
43         `elmo-msgdb-extra-fields'.
44
45 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
46
47         * elmo-util.el (elmo-passwd-alist-load): Move point to min
48         position before read.
49
50 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
51
52         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
53         (elmo-global-flags-initialize): Ditto.
54
55 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
56
57         * elmo-archive.el (toplevel): Don't require emu, std11
58         and elmo-localdir.
59
60         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
61         definition.
62
63 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
64
65         * elmo.el (elmo-folder-confirm-appends): Display folder name.
66
67 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
68
69         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
70         literals.
71
72 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
73
74         * elmo-maildir.el (elmo-maildir-list-location): Reduce
75         `elmo-get-last-modification-time' call.
76
77 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
78
79         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
80         expression.
81         (elmo-maildir-set-mark): Ditto.
82         (elmo-maildir-delete-mark): Ditto.
83
84 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
85
86         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
87         optional argument `separators'.
88
89 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
90
91         * elmo.el (cache-changed): Abolish.
92         (status-changed): New signal.
93         (elmo-message-killed-p): New generic function and define for
94         elmo-folder.
95         (elmo-folder-recover-messages): Ditto.
96         (elmo-message-set-cached): Emit signal `status-changed' instead of
97         `cache-changed'.
98         (elmo-message-status): New macro.
99         (elmo-message-status-folder): Ditto.
100         (elmo-message-status-number): Ditto.
101         (elmo-message-status-set-flags): Ditto.
102         (elmo-message-status-set-killed): Ditto.
103         (elmo-message-status-flags): New function.
104         (elmo-message-status-cached-p): Ditto.
105         (elmo-message-status-killed-p): Ditto.
106
107         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
108         `status-changed' instead of `cache-changed'.
109         (elmo-folder-recover-messages): Define.
110         (elmo-message-killed-p): Ditto.
111
112         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
113         `status-changed' instead of `cache-changed'.
114
115         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
116         (elmo-message-killed-p): Define.
117         (elmo-folder-recover-messages): Ditto.
118
119         * elmo-version.el (elmo-version): Up to 2.15.3.
120
121 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
122
123         * elmo-signal.el (elmo-signal-bindings): Use cons to append
124         element into list.
125         (elmo-define-signal-handler): Add docstring.
126         (elmo-define-signal-filter): Ditto.
127
128         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
129
130 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
131
132         * elmo-util.el (elmo-flatten): Don't use recursive call.
133
134         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
135         assignment.
136         (elmo-folder-message-make-temp-files): Use `number-to-string'
137         instead of `int-to-string'.
138
139 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
140
141         * elmo-search.el (elmo-folder-delete-messages): Define.
142
143 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
144
145         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
146         customization type.
147         (elmo-mailing-list-count-spec-list): Ditto.
148
149         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
150         for `list-id'.
151
152 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
153
154         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
155         handling.
156
157 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
158
159         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
160         (elmo-mailing-list-count-spec-list): Ditto.
161
162         * elmo-util.el (elmo-map-until-success): New function.
163         (elmo-string-match-substring): Ditto.
164         (elmo-find-list-match-value): Ditto.
165
166         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
167         Removed.
168         (modb-entity-extract-ml-info-from-subject): Ditto.
169         (modb-entity-extract-ml-info-from-return-path): Ditto.
170         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
171         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
172         (modb-entity-extract-ml-info-from-mailman): Ditto.
173         (modb-entity-extract-mailing-list-info-functions): Ditto.
174         (modb-entity-extract-mailing-list-info): Rewrite with
175         `elmo-find-list-match-value'.
176
177 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
178
179         * elmo-net.el (elmo-network-session-retry-count): New user option.
180         (elmo-network-session-buffer-name): New internal function.
181         (elmo-network-session-buffer-create): Ditto.
182         (elmo-network-open-session): Retry open network session
183         `elmo-network-session-retry-count' times.
184
185 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
186
187         * elmo-util.el (elmo-list-filter): Rewritten.
188
189 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elmo-util.el (elmo-string-member): Allow symbol element in list.
192
193 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
194
195         * elmo-search.el (elmo-make-search-engine): Use prefix
196         `elmo-search-' for require symbol instead of `else-'.
197         (elmo-search-engine-extprog): New class.
198         (elmo-search-engine-do-search): Remove nil from argument
199         list. Added argument pattern to evaluate element as function.
200         (elmo-search-engine-local-file): Derived from
201         `elmo-search-engine-extprog'.
202         (elmo-search-engine-create-message-entity): Check existance of file.
203         (elmo-search-engine-fetch-message): Ditto.
204         (elmo-search-namazu-index): Follow the API change.
205         (elmo-search-grep-target): Ditto.
206
207 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
208
209         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
210         characters of working buffer.
211
212         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
213         Does not bind `default-mime-charset'.
214         (elmo-msgdb-create-message-entity-from-buffer): Removed
215         unnecessary local bind.
216
217         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
218         function.
219         (modb-entity-extract-mailing-list-info-functions): Added it.
220
221 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
222
223         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
224         when number and message-id are non-nil.
225
226         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
227
228         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
229         conditional steatment.
230         (elmo-pop3-auth-apop): Likewise.
231         (elmo-network-authenticate-session): Likewise.
232
233 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
234
235         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
236         symbol `fill-column'.
237         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
238         decode field value.
239
240         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
241         (elmo-decoded-field-body): Ditto.
242
243 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
244
245         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
246         `tokens' to `params'.
247
248 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
249
250         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
251         working buffer.
252
253 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
254
255         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
256         decide index.
257
258 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
259
260         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
261         Set default value as nil.
262         (toplevel): Register search engines by
263         `elmo-search-register-engine' if there are not defined.
264
265         * elmo.el (autoload): Added autoload setting for
266         `elmo-search-register-engine'.
267
268 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
269
270         * elmo.el (toplevel): `[' is redefined as the prefix of the search
271         folder instead of nmz folder.
272         (elmo-nmz-default-index-path): Added obsolete variable setting.
273         (elmo-nmz-index-alias-alist): Ditto.
274         (elmo-nmz-use-drive-letter): Ditto.
275
276         * elmo-search.el (elmo-search-register-engine): New function.
277
278         * elmo-nmz.el: Removed.
279
280         * elmo-version.el (elmo-version): Up to 2.15.2.
281
282 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
283
284         * elmo-search.el: New file.
285
286 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
287
288         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
289         condition `larger' and `smaller'.
290
291 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
292
293         * elmo-util.el (elmo-safe-filename): Rewrite to replace
294         `"' (double quote) into "_Q_".
295
296 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
297
298         * elmo-net.el (elmo-net-quote-chars): Abolish.
299         (elmo-net-format-quoted): Ditto.
300
301 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
302
303         * elmo.el (elmo-get-folder-function): New variable.
304         (elmo-get-folder): New function.
305         (elmo-folder-rename): Call `elmo-make-folder' with specified
306         mime-charset.
307
308         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
309         `elmo-make-folder'.
310         (elmo-split-subr): Ditto.
311
312         * elmo-multi.el (elmo-folder-initialize): Ditto.
313
314         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
315
316         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
317         (elmo-flag-get-folder): Ditto.
318
319         * elmo-filter.el (elmo-folder-initialize): Ditto.
320
321         * elmo-access.el (elmo-folder-initialize): Ditto.
322         (elmo-access-folder-update-children): Ditto.
323
324         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
325         (elmo-dop-queue-flush): Ditto.
326         (elmo-folder-append-buffer-dop-delayed): Ditto.
327         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
328         mime-charset.
329
330         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
331         instead of `elmo-make-folder'.
332         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
333         destination folder instead of send `elmo-folder-rename-internal'.
334
335         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
336         slot of subfolder instead of create it.
337
338 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
339
340         * elmo-util.el (elmo-collect-separators): New function.
341         (elmo-collect-separators-internal): Ditto.
342         (elmo-collect-trail-separators): Ditto.
343         (elmo-parse-separated-tokens): Ditto.
344         (elmo-parse-separated-tokens-internal): Ditto.
345         (elmo-quote-syntactical-element): Ditto.
346
347         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
348         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
349
350         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
351         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
352         (elmo-nntp-folder-list-subfolders): Quote a user name.
353
354         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
355         (elmo-net-parse-network): Abolish.
356         (elmo-net-folder-set-parameters): New function.
357         (elmo-folder-initialize): Follow the above change.
358
359         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
360         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
361         (elmo-folder-list-subfolders): Use
362         `elmo-quote-syntactical-element' instead of
363         `elmo-net-format-quoted' to quote mailbox and user name.
364
365 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
366
367         * elmo-util.el (elmo-token-valid-p): New function.
368         (elmo-parse-token): Add optional argument `requirement'.
369         (elmo-parse-prefixed-element): Likewise.
370
371         * elmo-net.el (elmo-net-quote-chars): Renamed from
372         `elmo-net-quote-chars-regexp'.
373         (elmo-net-format-quoted): Add optional argument `extra-chars'.
374
375         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
376         by info document. Check token `uidl' is started an alphabet.
377
378         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
379         by info document. Check token `user' is started an alphabet.
380
381         * elmo-imap4.el (elmo-folder-initialize): Ditto.
382         (elmo-folder-list-subfolders): Quote user.
383
384 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
385
386         * elmo-util.el (elmo-quoted-specials-list): New constant.
387         (elmo-quoted-token): New function.
388
389         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
390         (elmo-net-format-quoted): New function.
391         (elmo-net-parse-network): Ditto.
392         (elmo-folder-initialize): Use it.
393
394         * elmo-nntp.el (elmo-folder-initialize): Use
395         `elmo-net-parse-network' to parse network specification instead of
396         `elmo-folder-initialize#elmo-net'.
397
398         * elmo-pop3.el (elmo-folder-initialize): Ditto.
399
400         * elmo-imap4.el (elmo-folder-initialize): Ditto.
401         (elmo-folder-list-subfolders): Quote folder name by
402         `elmo-net-format-quoted'.
403
404 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
405
406         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
407         (elmo-folder-search): Use it.
408
409 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
410
411         * modb-standard.el (modb-standard-loaded-message-id): Use
412         `elmo-msgdb-message-entity-field'.
413
414 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
415
416         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
417         without filename.
418
419 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
420
421         * elmo-util.el (elmo-set-auto-coding): New function.
422         (elmo-object-load): Use it.
423
424 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
425
426         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
427         (elmo-time<): Define as alias of `elmo-time-less-p'.
428         (elmo-time-to-datevec): New function.
429
430         * elmo-date.el (elmo-time-to-days): New function.
431
432 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
433
434         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
435         is not cons cell.
436
437 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
438
439         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
440         parenthesis.
441
442         * elmo-util.el (elmo-map-recursive): New function.
443
444         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
445         (modb-entity-encode-string-recursive): Ditto.
446
447 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
448
449         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
450         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
451         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
452         compare sequence number when last modified time is nil.
453
454 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
455
456         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
457
458         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
459
460 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
461
462         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
463         modification time of the file.
464
465 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
466
467         * elmo-util.el (elmo-condition-optimize): Discriminated against
468         preserved fields, extra fields and the other weight.
469
470 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
471
472         * modb-entity.el (initialize-instance): Define.
473         (modb-entity-handler-mime-charset): New internal function.
474         (modb-standard-entity-set-field): Use it.
475         (elmo-msgdb-message-entity-field): Ditto.
476         (elmo-msgdb-message-entity-field): Ditto.
477
478         * modb.el (elmo-msgdb-match-condition): Rewrite with
479         `elmo-condition-match'.
480         (elmo-msgdb-match-condition-primitive): New function.
481
482         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
483         arguments `flags' and `numbers'.
484         (elmo-msgdb-match-condition-primitive): Abolished (merged to
485         `elmo-msgdb-message-match-condition').
486         (modb-buffer-entity-handler): New class.
487
488         * elmo.el (elmo-folder-search): Optimize condition to use
489         `elmo-condition-optimize'.
490         (elmo-message-buffer-match-condition): New function.
491         (elmo-message-match-condition): Use
492         `elmo-message-buffer-match-condition' instead of
493         `elmo-buffer-field-condition-match'.
494
495         * elmo-util.el (elmo-condition-match): New function.
496         (elmo-condition-optimize): Ditto.
497         (elmo-buffer-field-primitive-condition-match): Abolish.
498         (elmo-buffer-field-condition-match): Ditto.
499
500         * elmo-archive.el (elmo-archive-field-condition-match): Use
501         `elmo-message-buffer-match-condition' instead of
502         `elmo-buffer-field-condition-match'.
503
504 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
505
506         * elmo-flag.el (elmo-global-flags-initialize): Check the
507         existence of the flag directory.
508
509 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
510
511         * elmo-access.el (elmo-folder-initialize): Call
512         `elmo-multi-connect-signals'.
513
514         * elmo-pipe.el (elmo-folder-close): Define.
515
516         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
517         children folders.
518
519         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
520         with target folder.
521
522         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
523         `number'.
524
525         * elmo-multi.el (elmo-message-entity): Don't use return value of
526         `elmo-message-entity-set-number'.
527
528 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
529
530         * modb.el (modb-generic): Added slot `mime-charset'.
531
532         * modb-standard.el (modb-standard): Added slot `overview-handler'.
533         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
534         and `modb-entity-handler-dump-parameters'.
535         (modb-standard-default-entity-handler): Abolish.
536         (elmo-msgdb-message-entity-handler): Save created handler by
537         instance slot.
538
539         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
540         (modb-entity-handler-list-parameters): New method.
541         (modb-entity-handler-equal-p): New function.
542         (modb-entity-handler-dump-parameters): Ditto.
543         (modb-entity-parse-address-string): Encode return value.
544         (modb-entity-make-address-string): Decode argument value.
545         (modb-entity-decode-string-recursive): New function.
546         (modb-entity-encode-string-recursive): Ditto.
547         (modb-standard-entity-normalizer): Set to encode field value.
548         (modb-standard-entity-specializer): Follow the above change.
549         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
550         mime-charset of handler.
551         (elmo-msgdb-message-entity-field): Ditto.
552         (elmo-msgdb-copy-message-entity): Fixed reference to internal
553         structure.
554         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
555
556         * elmo.el (elmo-folder): Added slot `mime-charset'.
557         (elmo-make-folder): Added argument `mime-charset'.
558         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
559         `mime-charest'.
560
561         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
562         (elmo-make-msgdb): Likewise.
563
564         * elmo-internal.el (elmo-internal-folder-initialize): Call
565         `luna-make-entity' with :mime-charset parameter.
566
567 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
568
569         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
570         encoded words in `from' and `subject' field.
571
572 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
573
574         * modb.el (elmo-msgdb-message-field): Add argument `type'.
575         (elmo-msgdb-match-condition): Get handler from entity instead of
576         msgdb.
577
578         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
579         (modb-standard-load-entity): Treat new file format.
580         (modb-standard-save-entity-1): Save as new file format.
581         (modb-standard-save-entity): Split messages into section here.
582         (elmo-msgdb-message-field): Follow the API change.
583         (modb-standard-default-entity-handler): New internal variable.
584         (elmo-msgdb-message-entity-handler): Define.
585
586         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
587         to `elmo-vars.el'.
588         (modb-entity-field-extractor-alist): New user option.
589         (elmo-msgdb-message-entity-field): Removed argument `decode' and
590         added argument `type'.
591         (elmo-msgdb-copy-message-entity): Add optional argument
592         `make-handler'.
593         (modb-set-field-converter): New function.
594         (modb-convert-field-value): Ditto.
595         (modb-entity-string-decoder): Ditto.
596         (modb-entity-string-encoder): Ditto.
597         (modb-entity-parse-date-string): Ditto.
598         (modb-entity-make-date-string): Ditto.
599         (modb-entity-mime-decoder): Ditto.
600         (modb-entity-mime-encoder): Ditto.
601         (modb-entity-address-list-decoder): Ditto.
602         (modb-entity-address-list-encoder): Ditto.
603         (modb-entity-parse-address-string): Ditto.
604         (modb-entity-make-address-string): Ditto.
605         (modb-entity-create-field-indices): Ditto.
606         (modb-legacy-entity-field-slots): New constant.
607         (modb-legacy-entity-field-indices): Ditto.
608         (modb-legacy-entity-normalizer): New variable.
609         (modb-legacy-entity-specializer): Ditto.
610         (modb-legacy-entity-field-index): New macro.
611         (modb-legacy-entity-set-field): New function.
612         (modb-legacy-make-message-entity): Rewrite.
613         (elmo-msgdb-create-message-entity-from-buffer): Use
614         `elmo-msgdb-get-references-from-buffer'. Use
615         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
616         Use `modb-legacy-entity-set-field' instead of
617         `elmo-msgdb-message-entity-set-field'.
618         (elmo-msgdb-message-entity-field): Rewrite.
619         (elmo-msgdb-message-entity-set-field): Ditto.
620         (elmo-msgdb-copy-message-entity): Make new entity by
621         `make-handler' if it specified.
622         (elmo-msgdb-message-match-condition): Define a method of
623         `modb-entity-handler' and follow the API change.
624         (modb-standard-entity-handler): New class.
625         (modb-entity-extract-ml-info-from-x-sequence): New function.
626         (modb-entity-extract-ml-info-from-subject): Ditto.
627         (modb-entity-extract-ml-info-from-return-path): Ditto.
628         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
629         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
630         (modb-entity-extract-mailing-list-info): Ditto.
631         (modb-entity-extract-mailing-list-info-functions): New variable.
632
633         * elmo.el (elmo-message-field): Add optional argument `type'.
634
635         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
636         from `modb-entity.el'.
637
638         * elmo-util.el (elmo-object-load): Decode by coding-system from
639         `set-auto-coding-function'.
640         (elmo-object-save): Use `detect-mime-charset-region' and add
641         coding cookie if encode.
642         (elmo-msgdb-get-references-from-buffer): New function.
643         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
644
645         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
646
647         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
648         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
649         instead of `shimbun-make-header' and follow the API change.
650         (elmo-shimbun-update-overview): Follow the API change.
651         (elmo-map-folder-list-message-locations): Ditto.
652
653         * elmo-pipe.el (elmo-message-field): Ditto.
654
655         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
656         Ditto.
657
658         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
659
660         * elmo-multi.el (elmo-message-field): Ditto.
661
662         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
663         (elmo-msgdb-sort-by-date): Ditto.
664         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
665         `elmo-message-entity-field'.
666         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
667         change.
668         (elmo-msgdb-overview-entity-get-from): Ditto.
669         (elmo-msgdb-overview-entity-get-subject): Ditto.
670         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
671         (elmo-msgdb-overview-entity-get-date): Ditto.
672         (elmo-msgdb-overview-entity-get-to): Ditto.
673         (elmo-msgdb-overview-entity-get-cc): Ditto.
674
675         * elmo-mime.el (elmo-message-mime-entity): Ditto.
676         (elmo-mime-collect-message/partial-pieces): Ditto.
677
678         * elmo-filter.el (elmo-message-field): Ditto.
679
680         * elmo-date.el (elmo-datevec-to-time): New function.
681         (elmo-time-parse-date-string): Ditto.
682         (elmo-time-make-date-string): Ditto.
683         (elmo-time<): Ditto.
684
685         * elmo-version.el (elmo-version): Up to 2.15.1.
686
687 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
688
689         * elmo-flag.el (elmo-global-flags-initialize): Don't include
690         member of elmo-local-flags.
691
692 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
693
694         * elmo-version.el (elmo-version): Up to 2.15.0.
695
696 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
697
698         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
699         `ignore-msgdb' is non-nil.
700
701 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
702
703         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
704         (elmo-condition-in-msgdb-p): Ditto.
705         (elmo-file-field-primitive-condition-match): Ditto.
706         (elmo-file-field-condition-match): Ditto.
707
708         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
709
710 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
711
712         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
713         subdirectories here.
714         (elmo-global-flags-initialize): New function.
715
716         * elmo.el (toplevel): Added autoload setting for
717         `elmo-global-flags-initialize'.
718
719 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
720
721         * elmo.el (message-number-changed): Define new signal.
722         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
723         message-number-changed signal.
724         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
725         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
726         Respect `elmo-pack-number-check-strict'.
727
728 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
729
730         * elmo-signal.el (elmo-connect-signal): Document.
731         (elmo-emit-signal): Ditto.
732         (elmo-emit-signal): It should pass source argument to filter and
733         handler, not slot-source.
734
735 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
736
737         * modb.el (elmo-msgdb-update-entity): New API and define generic
738         implement.
739
740         * modb-standard.el (elmo-msgdb-update-entity): Define.
741
742         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
743         API and define generic implement.
744
745         * elmo.el (update-overview): New singnal.
746
747         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
748         `elmo-msgdb-update-entity' and emit signal `update-overview'.
749         (elmo-message-entity-parent): Define.
750
751         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
752         `update-overview'.
753
754         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
755
756         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
757
758 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
759
760         * elmo.el (elmo-folder-synchronize): Sort the return value of
761         `elmo-list-diff'.
762
763         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
764         list.
765
766 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
767
768         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
769         `default-enable-multibyte-characters'.
770         (elmo-object-load): Use `with-temp-buffer' instead of
771         `elmo-set-work-buf'.
772         (elmo-object-save): Ditto.
773         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
774         `elmo-set-work-buf'.
775         (elmo-decoded-field-body): Ditto.
776
777         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
778
779         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
780         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
781
782         * elmo-version.el (elmo-version): Up to 2.13.3.
783
784 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
785
786         * elmo-util.el (elmo-list-diff): Fix the last change.
787         Reverse order of result lists.
788
789 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
790
791         * modb-standard.el (elmo-msgdb-set-flag): Use
792         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
793         (elmo-msgdb-unset-flag): Ditto.
794
795         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
796         `elmo-list-diff'.
797
798         * elmo-util.el (elmo-list-diff): Rewrite.
799         (elmo-list-diff-nonsortable): New function.
800
801 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
802
803         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
804         `elmo-multibypte-buffer-name'.  All referers are updated.
805
806 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
807
808         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
809         (elmo-mime-entity-fragment-p): New function.
810         (mime-elmo-buffer-entity): Added slot `reassembled'.
811         (elmo-message-mime-entity): Added 4th argument `reassemble'.
812         (elmo-message-mime-entity-internal): New function (renamed from
813         `elmo-message-mime-entity').
814         (elmo-mime-inherit-field-list-from-enclosed): New constant.
815         (elmo-mime-make-reassembled-mime-entity): New function.
816         (elmo-message-reassembled-mime-entity): Ditto.
817         (elmo-mime-collect-message/partial-pieces): Ditto.
818
819 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
820
821         * elmo.el (elmo-message-fetch-string): Disable multibyte.
822
823         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
824         (elmo-with-enable-multibyte): New macro.
825
826         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
827
828 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
829
830         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
831         argument `number'.
832         (elmo-filter-connect-signals): Follow the above change.
833
834 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
835
836         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
837
838         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
839         that only the first flag is used.
840
841 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
842
843         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
844         if available.
845
846 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
847
848         * elmo-signal.el: New file.
849
850         * elmo.el (toplevel): Require elmo-signal.
851         (flag-changing, flag-changed, cache-changed): New signal.
852         (elmo-folder): Remove slog `handlers'.
853         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
854         `elmo-folder-notify-event'.
855         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
856         (elmo-folder-unset-flag): Ditto.
857         (elmo-event-handler): Abolish.
858         (elmo-event-handler-flag-changed): Ditto.
859         (elmo-event-handler-cache-changed): Ditto.
860         (elmo-folder-add-handler): Ditto.
861         (elmo-folder-remove-handler): Ditto.
862         (elmo-folder-notify-event): Ditto.
863
864         * elmo-pipe.el (toplevel): Require elmo-signal.
865         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
866         (elmo-pipe-connect-signals): New function.
867         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
868         (elmo-folder-set-flag): Ditto.
869         (elmo-folder-unset-flag): Ditto.
870         (elmo-message-set-cached): Ditto.
871
872         * elmo-multi.el (toplevel): Require elmo-signal.
873         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
874         (elmo-multi-connect-signals): New function.
875         (elmo-multi-map-numbers): Ditto.
876         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
877         (elmo-message-fetch): Ditto.
878         (elmo-folder-set-flag): Ditto.
879         (elmo-folder-unset-flag): Ditto.
880
881         * elmo-filter.el (toplevel): Require elmo-signal.
882         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
883         (elmo-filter-connect-signals): New function.
884         (elmo-filter-add-flag-count): Ditto.
885         (elmo-message-fetch): Does not call
886         `elmo-filter-folder-countup-message-flags' and
887         `elmo-folder-notify-event'.
888         (elmo-message-set-cached): Ditto.
889         (elmo-folder-set-flag): Ditto.
890         (elmo-folder-unset-flag): Ditto.
891
892         * elmo-version.el (elmo-version): Up to 2.13.2.
893
894 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
895
896         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
897         `flags'.
898
899 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
900
901         * elmo-filter.el (elmo-message-set-cached): Call
902         `elmo-folder-notify-event' with event `cache-changed'.
903
904         * elmo-multi.el (elmo-message-set-cached): Ditto.
905
906         * elmo-pipe.el (elmo-message-set-cached): Ditto.
907
908 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
909
910         * elmo.el (elmo-folder-encache): Abolish.
911
912 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
913
914         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
915         (elmo-folder-next-message-number-dop): Return appropriate negative
916         integer.
917
918 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
919
920         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
921         clearing pending operations.
922         (elmo-folder-next-message-number-dop): Return appropriate negative
923         integer.
924
925 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
926
927         * elmo.el (toplevel): Added autoload setting for `md5'.
928         (elmo-msgdb-path-encode-threshold): New user option.
929         (elmo-folder-msgdb-path): Encode msgdb path if its length is
930         longer than `elmo-msgdb-path-encode-threshold'.
931
932         * elmo-flag.el (elmo-global-mark-migrate): Use
933         `elmo-folder-expand-msgdb-path' instead of
934         `elmo-folder-msgdb-path'.
935
936 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
937
938         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
939         element of the difference is nil.
940
941 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
942
943         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
944         to the check logic of file systems which are weak in colon character.
945
946 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
947
948         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
949
950 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
951
952         * elmo-maildir.el (elmo-maildir-move-file): New function.
953         (elmo-folder-append-buffer): Use it.
954         (elmo-folder-append-messages): Ditto.
955         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
956
957         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
958         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
959
960         * elmo-maildir.el (elmo-maildir-separator): New user option.
961         (elmo-maildir-adjust-separator): New macro.
962         (elmo-maildir-list-location): Use it.
963         (elmo-maildir-update-current): Ditto.
964         (elmo-maildir-set-mark): Ditto.
965         (elmo-maildir-delete-mark): Ditto.
966         (These changes are based on Hiroya Murata's patch [wl: 13437])
967
968 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
969
970         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
971
972 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
973
974         * elmo-flag.el (elmo-flag-valid-p): Simplify.
975         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
976         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
977
978 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
979
980         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
981         Use `with-temp-buffer'.
982
983 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
984
985         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
986
987         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
988         `wl-read-search-condition').
989         (elmo-read-search-condition-internal): Likewise.
990
991         * elmo-flag.el (elmo-flag-char-regexp): New constant.
992         (elmo-flag-valid-p): New function.
993         (elmo-folder-initialize): Check flag name is valid.
994
995 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
996
997         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
998         delimiter to obtain root mailbox itself.
999
1000 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1001
1002         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1003         type mismatch.
1004
1005 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1006
1007         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1008         as t.
1009
1010 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1011
1012         * elmo-shimbun.el (toplevel): Require cl at compile.
1013
1014         * elmo-nntp.el (toplevel): Ditto.
1015
1016         * elmo-nmz.el (toplevel): Ditto.
1017
1018         * elmo-multi.el (toplevel): Ditto.
1019
1020         * elmo-file.el (toplevel): Ditto.
1021
1022         * elmo-dop.el (toplevel): Ditto.
1023
1024         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1025
1026 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1027
1028         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1029         as nil.
1030
1031         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1032         size of elmo-message-fetch-internal is 0 byte.
1033
1034 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1035
1036         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1037
1038 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1039
1040         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1041         always plugged.
1042
1043 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1044
1045         * elmo-maildir.el (elmo-map-message-fetch): Call
1046         `elmo-map-folder-set-flag'.
1047
1048         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1049         (elmo-message-fetch): Merge from
1050         `elmo-message-fetch-with-cache-process'.
1051
1052         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1053         (elmo-message-fetch): Define.
1054
1055         * elmo-nntp.el (elmo-message-fetch): Renamed from
1056         `elmo-message-fetch-with-cache-process'.
1057
1058         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1059         (elmo-message-fetch): Define.
1060
1061         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1062         search-key.
1063
1064         * elmo-shimbun.el (shimbun-mua-search-id): Use
1065         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1066         (elmo-shimbun-folder-shimbun-header): Ditto.
1067         (elmo-shimbun-get-headers): Ditto.
1068         (elmo-shimbun-update-overview): Ditto.
1069
1070         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1071
1072         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1073         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1074
1075 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1076
1077         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1078         message is cached.
1079         (elmo-message-fetch-string): Fixed argument.
1080
1081 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1082
1083         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1084         exchange order of arguments `section' and `unread'.
1085         (elmo-message-encache): Follow the API change.
1086         (elmo-message-match-condition): Ditto.
1087         (elmo-generic-folder-append-messages): Ditto.
1088         (elmo-message-fetch-string): New function.
1089
1090         * elmo-split.el (elmo-split-subr): Ditto.
1091
1092         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1093
1094         * elmo-pipe.el (elmo-message-fetch): Ditto.
1095
1096         * elmo-multi.el (elmo-message-fetch): Ditto.
1097
1098         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1099
1100         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1101
1102         * elmo-filter.el (elmo-message-fetch): Ditto.
1103
1104         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1105
1106         * elmo-imap4.el (mime-imap-location-section-body): Use
1107         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1108         follow the API change.
1109
1110 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1111
1112         * elmo-access.el: New file.
1113
1114         * elmo-null.el: Ditto.
1115
1116         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1117
1118 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1119
1120         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1121         (elmo-network-session): New attribute `last-accessed'.
1122         (elmo-network-get-session): Discard network cache if elapsed time
1123         since last-accessed is larger than elmo-network-session-idle-timeout.
1124
1125 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1126
1127         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1128         and added `number', `require-entireness'.
1129         (elmo-find-fetch-strategy): Rewrite.
1130         (elmo-message-fetch): Unset `unread' flag when argument unread is
1131         non-nil.
1132
1133         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1134
1135         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1136         (elmo-message-fetch): Notify event `flag-changed'.
1137
1138         * elmo-pipe.el: Likewise.
1139
1140         * elmo-mime.el (elmo-mime-entity): New class.
1141         (elmo-mime-entity-display-p): New generic function.
1142         (elmo-mime-entity-display): Ditto.
1143         (elmo-mime-entity-display-as-is): Ditto.
1144         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1145         elmo-mime-entity.
1146         (elmo-make-mime-message-location): Removed.
1147         (elmo-mime-message-display): Ditto.
1148         (elmo-mime-display-as-is): Ditto.
1149         (elmo-message-mime-entity): New function.
1150
1151         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1152
1153         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1154         change.
1155         (elmo-message-fetch): Re-count flagged message number and notify
1156         event `flag-changed'.
1157
1158         * elmo-version.el (elmo-version): Up to 2.13.1.
1159
1160 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1161
1162         * elmo-filter.el (elmo-message-field): Define.
1163         (elmo-message-set-field): Ditto.
1164
1165 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1166
1167         * elmo.el (elmo-message-set-cached): Call
1168         `elmo-folder-notify-event' with cache-changed.
1169         (elmo-event-handler-cache-changed): New generic function.
1170
1171 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1172
1173         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1174         instead of elmo-add-name-to-file.
1175         (elmo-folder-append-messages): Ditto.
1176
1177 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1178
1179         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1180
1181 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1182
1183         * elmo-version.el (elmo-version): Up to 2.13.0.
1184
1185         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1186         `auto'.
1187
1188         * modb-standard.el (modb-standard-economize-entity-size): Changed
1189         default value to `t'.
1190
1191         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1192         `standard'.
1193
1194         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1195         after parsing greeting string.
1196
1197 2004-11-23  Daishi Kato <daishi@axlight.com>
1198
1199         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1200         New user option.
1201         (elmo-spam-spamoracle-call): Use it.
1202
1203 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1204
1205         * elmo.el (elmo-message-accessible-p): Message in dop spool
1206         is accessible.
1207
1208 2004-11-23  Daishi Kato <daishi@axlight.com>
1209
1210         * elsp-spamoracle.el: New file.
1211
1212 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1213
1214         * elmo.el (elmo-message-flags-for-append): New function.
1215         (elmo-generic-folder-append-messages): Use it.
1216
1217         * elmo-split.el (elmo-split-subr): Ditto.
1218
1219         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1220         `flags' and use elmo-folder-append-buffer instead of
1221         write-region-as-binary.
1222         (elmo-dop-filter-pending-messages): New function.
1223         (elmo-folder-append-buffer-dop): Call
1224         elmo-dop-spool-folder-append-buffer with `flag'.
1225         (elmo-folder-set-flag-dop): Filter messages by
1226         elmo-dop-filter-pending-messages.
1227         (elmo-folder-unset-flag-dop): Ditto.
1228         (elmo-folder-append-buffer-dop-delayed): Use
1229         elmo-message-flags-for-append to get flags of the message and
1230         simplify.
1231
1232 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1233
1234         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1235
1236 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1237
1238         * elmo.el (elmo-folder): Added handlers slot.
1239         (elmo-event-handler): New class.
1240         (elmo-event-handler-flag-changed): New API.
1241         (elmo-folder-add-handler): New function.
1242         (elmo-folder-remove-handler): Ditto.
1243         (elmo-folder-notify-event): Ditto.
1244         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1245         `flag-changed'.
1246         (elmo-folder-unset-flag): Ditto.
1247
1248         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1249         (elmo-folder-unset-flag): Ditto.
1250
1251         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1252         (elmo-folder-unset-flag): Ditto.
1253
1254         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1255         (elmo-folder-unset-flag): Ditto.
1256
1257         * elmo-version.el (elmo-version): Up to 2.11.33.
1258
1259 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1260
1261         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1262
1263 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1264
1265         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1266
1267         * elmo-flag.el (elmo-folder-unset-flag): Define.
1268         (elmo-global-flag-detach): Do process when the flag is not target
1269         flag.
1270
1271 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1272
1273         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1274         variable.
1275         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1276
1277 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1278
1279         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1280         function.
1281         (elmo-folder-delete-messages): Detach messages before delete
1282         messages from target folder.
1283         (elmo-folder-detach-messages): Set updated number-list to slot.
1284
1285 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1286
1287         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1288
1289 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1290
1291         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1292
1293 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1294
1295         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1296         internal use only).
1297         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1298         not modified.
1299         (elmo-folder-delete-messages): Define.
1300         (elmo-folder-move-messages): Don't call
1301         `elmo-folder-detach-messages'.
1302         (elmo-folder-synchronize): Rewrite.
1303         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1304
1305         * elmo-util.el (elmo-last): New function.
1306         (elmo-set-list): Ditto.
1307         (elmo-number-set-delete-list): Ditto.
1308         (elmo-number-set-delete): Ditto.
1309
1310         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1311
1312         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1313         `elmo-folder-delete-messages' and don't delete location map.
1314         (elmo-folder-detach-messages): Define.
1315
1316         * elmo-imap4.el (elmo-folder-delete): Use
1317         `elmo-folder-delete-messages-internal' instead of
1318         `elmo-folder-delete-messages'.
1319
1320         * elmo-filter.el (elmo-folder-delete-messages): Call
1321         `elmo-folder-detach-messages'.
1322         (elmo-folder-detach-messages): Don't call
1323         `elmo-folder-detach-messages' for target folder.
1324
1325         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1326         message deletion is succeeded.
1327
1328         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1329
1330         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1331         from `elmo-folder-delete-messages'.
1332
1333         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1334
1335         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1336
1337         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1338
1339         * elmo-version.el (elmo-version): Up to 2.11.32.
1340
1341 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1342
1343         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1344         (elmo-global-flag-list): Added obsolete variable setting.
1345
1346         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1347
1348         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1349         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1350         `elmo-mime-display-header-analysis' is nil.
1351
1352         * elmo-flag.el (elmo-global-flags): Renamed from
1353         `elmo-global-flag-list' (All other related portions are changed).
1354         (elmo-local-flags): New variable.
1355         (elmo-local-flag-p): New function.
1356         (elmo-global-flag-set-internal): Cause an error when flag is not
1357         global.
1358
1359 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1360
1361         * elmo-util.el (elmo-concat-path): Treat empty path.
1362
1363 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1364
1365         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1366         field-or-fields).
1367         (elmo-split-address-match): Ditto.
1368         (elmo-split-equal): Ditto.
1369         (elmo-split-match): Ditto.
1370
1371 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1372
1373         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1374         (elmo-generic-folder-append-messages): If src message exists but
1375         has no flag, pass (read) for the FLAG argument of
1376         `elmo-folder-append-buffer'. Otherwise, pass nil.
1377
1378         * elmo-split.el (elmo-split-subr): Likewise.
1379
1380         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1381
1382         * elmo-multi.el (elmo-message-flags): Ditto.
1383
1384         * elmo-filter.el (elmo-message-flags): Ditto.
1385
1386         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1387         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1388         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1389         
1390 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1391
1392         * elmo-split.el (elmo-split-rule): Update comment.
1393         (elmo-split-address-equal): Allow 2nd argument to be a list.
1394         (elmo-split-address-match): Ditto.
1395         (elmo-split-equal): Ditto.
1396         (elmo-split-match): Ditto.
1397
1398 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1399
1400         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1401         (elmo-folder-append-msgdb): Don't treat `read'.
1402         (elmo-message-flags): Don't return `read'.
1403
1404         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1405         (elmo-folder-unset-read-delayed): Ditto.
1406
1407         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1408
1409 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1410
1411         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1412         deletion.
1413
1414 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1415
1416         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1417         header.
1418
1419 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1420
1421         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1422         here.
1423         (elmo-msgdb-save): Bind inhibit-quit.
1424         (modb-standard-message-entity): Ditto.
1425
1426 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1427
1428         * elmo-database.el: No need to require elmo-msgdb.
1429
1430 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1431
1432         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1433         instead of `elmo-list-subdirectories'.
1434
1435 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1436
1437         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1438         group entry.
1439         (elmo-folder-exists-p): "[" is empty.
1440         (elmo-folder-list-subfolders): Define.
1441         (elmo-folder-have-subfolder-p): Ditto.
1442
1443 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1444
1445         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1446
1447 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1448
1449         * elmo-filter.el (elmo-folder-local-p): Define.
1450
1451 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1452
1453         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1454         when entity is garbaged.
1455         (modb-standard-save-entity-1): Don't modify the original entity.
1456
1457 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1458
1459         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1460
1461 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1462
1463         * elmo.el (elmo-strict-folder-diff): Use
1464         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1465
1466 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1467
1468         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1469         (elmo-msgdb-message-number): Ditto.
1470         (elmo-msgdb-message-field): Ditto.
1471
1472         * modb-standard.el (modb-standard-economize-entity-size): New user
1473         option.
1474         (modb-standard-loaded-message-id): New inline function.
1475         (modb-standard-load-entity): Use it.
1476         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1477         throw message-id string away.
1478         (elmo-msgdb-flag-available-p): Define.
1479         (elmo-msgdb-message-number): Ditto.
1480         (elmo-msgdb-message-field): Ditto.
1481
1482         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1483         (suppoted -> supported).
1484         (modb-legacy-supported-flag-p): Ditto.
1485         (elmo-msgdb-set-flag): Ditto.
1486         (elmo-msgdb-unset-flag): Ditto.
1487         (elmo-msgdb-flag-available-p): Define.
1488
1489         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1490         is `t', treat it as legacy entity.
1491         
1492         * elmo.el (elmo-message-flag-available-p): New generic function.
1493         (elmo-message-number): Ditto.
1494         (elmo-message-field): Use `elmo-msgdb-message-field'.
1495
1496         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1497
1498         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1499         (elmo-message-number): Ditto.
1500
1501         * elmo-multi.el (elmo-message-number): Define.
1502         (elmo-message-flag-available-p): Ditto.
1503
1504         * elmo-filter.el (elmo-message-flag-available-p): Define.
1505         (elmo-message-number): Ditto.
1506
1507         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1508         (elmo-folder-initialize): Load `max-number'.
1509         (elmo-folder-commit): Save it.
1510         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1511         (elmo-global-flag-set-internal): Set up max-number slot.
1512
1513 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1514
1515         * elmo-version.el (elmo-version): Up to 2.11.31.
1516
1517 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1518
1519         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1520         unibyte string of the current buffer for the argument of `md5'
1521         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1522
1523 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1524
1525         * modb-legacy.el (modb-legacy-flag-list): New constant.
1526         (modb-legacy-suppoted-flag-p): New internal function.
1527         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1528         (elmo-msgdb-unset-flag): Ditto.
1529
1530 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1531
1532         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1533
1534         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1535         from msgdb.
1536
1537 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1538
1539         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1540         (follow the API change).
1541
1542         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1543
1544 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1545
1546         * modb-standard.el (modb-standard-digest-flags): Abolish.
1547         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1548
1549         * elmo-vars.el (elmo-digest-flags): New variable.
1550         (elmo-preserved-flags): Moved from elmo-flag.el.
1551
1552         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1553         (elmo-imap4-flag-to-imap-criteria): Ditto.
1554         (elmo-imap4-folder-list-flagged): Use it.
1555
1556         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1557
1558         * elmo.el (elmo-folder-count-flags): Changed return value.
1559
1560         * elmo-flag.el (elmo-preserved-flags): New variable.
1561         (elmo-get-global-flags): Use it.
1562
1563         * modb-standard.el (modb-standard-digest-flags): New variable.
1564         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1565         Changed behavior of `any'.
1566
1567         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1568         which are defined the Internet draft
1569         (draft-melnikov-imap-keywords-03.txt).
1570         (elmo-imap4-flags-to-imap): New function.
1571         (elmo-folder-append-buffer): Use it.
1572
1573         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1574         in the docstring.
1575
1576         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1577         avoid the bug of Emacs 21.3.
1578
1579 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1580
1581         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1582         function find-coding-system does not exist.
1583
1584 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1585
1586         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1587         parsing.
1588
1589 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1590
1591         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1592         response codes.
1593
1594 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1595
1596         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1597         (elmo-network-close-session): Follow the changes in
1598         `elmo-pop3-read-response'.
1599         (elmo-pop3-auth-user): Ditto.
1600         (elmo-pop3-auth-apop): Ditto.
1601         (elmo-network-initialize-session): Ditto.
1602         (elmo-network-authenticate-session): Ditto.
1603         (elmo-network-setup-session): Ditto.
1604         (elmo-folder-status): Ditto.
1605         (elmo-message-fetch-plugged): Ditto.
1606         (elmo-pop3-delete-msg): Ditto.
1607
1608 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1609
1610         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1611         on failure.
1612
1613 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1614
1615         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1616         style.
1617         (elmo-bind-directory): Ditto.
1618
1619 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1620
1621         * elmo.el (elmo-folder-append-messages): Note on return value.
1622         * elmo-archive.el (elmo-folder-append-messages): Don't return
1623         message numbers which could not be appended.
1624
1625 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1626
1627         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1628
1629 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1630
1631         * elmo-version.el (elmo-version): Up to 2.11.30.
1632
1633 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1634
1635         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1636         `mask'.
1637
1638         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1639
1640         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1641         (elmo-multi-split-numbers): Add elmo-folder object into each
1642         element of return value at first.
1643         (elmo-folder-delete-messages): Follow the above change.
1644         (elmo-folder-detach-messages): Ditto.
1645
1646         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1647         number which is synchronized in target folder.
1648
1649 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1650
1651         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1652         Change default value to symbol `all'.
1653         (elmo-map-message-fetch): Change condition to update overview
1654         follow the above.
1655
1656 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1657
1658         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1659         behavior to update overview.
1660         (elmo-shimbun-update-overview-folder-list): Note it.
1661
1662 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1663
1664         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1665         recursive call.
1666
1667 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1668
1669         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1670         buffer-disable-undo, it is unnecessary.
1671         (elmo-spam-register-good-messages): Ditto.
1672
1673         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1674         Ditto.
1675
1676         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1677
1678 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1679
1680         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1681         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1682         elmo-set-buffer-multibyte.
1683         (elmo-object-load): Ditto.
1684         (elmo-save-buffer): Ditto.
1685         (elmo-delete-char): Ditto.
1686         (elmo-file-field-primitive-condition-match): Ditto.
1687         (elmo-mime-string): Ditto.
1688
1689         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1690         (elmo-archive-field-condition-match): Ditto.
1691
1692         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1693
1694         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1695
1696         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1697         (elmo-nntp-msgdb-create-message): Ditto.
1698
1699         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1700
1701         * elmo.el (elmo-message-match-condition): Ditto.
1702         (elmo-message-match-condition): Ditto.
1703
1704         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1705         Ditto.
1706
1707         * elmo-version.el (elmo-version): Up to 2.11.29.
1708
1709         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1710         (elsp-header): New backend.
1711
1712         * elmo-util.el (elmo-decoded-field-body): New function.
1713
1714 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1715
1716         * elmo-version.el (elmo-version): Up to 2.11.28.
1717
1718 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1719
1720         * elmo-filter.el: Rewrite.
1721
1722         * elmo-version.el (elmo-version): Up to 2.11.27.
1723
1724 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1725
1726         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1727         msgdb path for the localdir folder with absolute path.
1728
1729         * utf7.el: Synch up with latest gnus/utf7.el;
1730         Modified for latest Emacs.
1731
1732 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1733
1734         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1735         shimbun backend couldn't open.
1736
1737 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1738
1739         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1740         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1741         when a destination folder is a filter folder.
1742
1743 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1744
1745         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1746         (elmo-generic-folder-append-messages): Call elmo-message-flags
1747         with argument `msgid'.
1748
1749         * elmo-split.el (elmo-split-subr): Ditto.
1750
1751         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1752
1753         * elmo-multi.el (elmo-message-flags): Ditto.
1754
1755 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1756
1757         * elmo.el (elmo-folder): Add new slot `flag-table'.
1758         (elmo-folder-flag-table): New API.
1759         (elmo-folder-close-flag-table): Ditto.
1760         (elmo-folder-preserve-flags): New function.
1761         (elmo-generic-folder-append-messages): Use
1762         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1763         Flag of a non-registered message, it sets to nil.
1764         Does not set flag to flag-table.
1765
1766         * elmo-maildir.el (elmo-folder-append-buffer): Use
1767         `elmo-folder-preserve-flags'.
1768         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1769         `elmo-folder-close-flag-table'.
1770
1771         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1772         (elmo-archive-folder-append-buffer): Use
1773         `elmo-folder-preserve-flags'.
1774
1775         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1776
1777         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1778
1779         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1780         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1781         `elmo-folder-close-flag-table'.
1782
1783         * elmo-version.el (elmo-version): Up to 2.11.26.
1784
1785 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1786
1787         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1788
1789         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1790         md5's 4th and 5th argument (non-existent in flim one).
1791
1792 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1793
1794         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1795         message, It sets to nil.
1796
1797 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1798
1799         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1800         list is non-nil.
1801
1802 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1803
1804         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1805
1806         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1807
1808         * elmo-util.el (elmo-uniq-sorted-list): New function.
1809         (elmo-make-number-list): Ditto.
1810         (elmo-number-set-to-number-list): Use elmo-make-number-list
1811         and don't use nreverse.
1812
1813 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1814
1815         * elmo-version.el (elmo-version): Up to 2.11.25.
1816
1817 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1818
1819         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1820         field not exists in message, Use md5 message digest of header.
1821
1822 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1823
1824         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1825         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1826         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1827         * elmo-split.el (elmo-split-subr): Check return value of
1828         elmo-folder-append-buffer.
1829
1830         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1831         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1832
1833         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1834         message-id.
1835
1836 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1837
1838         * elmo-split.el (elmo-split-subr): Append message with flag.
1839
1840         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1841         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1842         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1843
1844 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1845
1846         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1847         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1848         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1849
1850 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1851
1852         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1853         with a function call of `process-buffer'.  All callers are updated.
1854         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1855         Remove redundant `set-buffer' in a while loop.
1856
1857 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1858
1859         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1860         calls.
1861
1862 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1863
1864         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1865         elsp-spamfilter-register-buffer-internal with current buffer.
1866         (elmo-spam-register-spam-buffer): Ditto.
1867         (elmo-spam-register-good-buffer): Ditto.
1868
1869 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1870
1871         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1872         if it is not contained in the response(A workaround for courier-imap).
1873
1874 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1875
1876         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1877         parenthesis.
1878
1879 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1880
1881         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1882         range.
1883
1884 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1885
1886         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1887         of nconc.
1888
1889         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1890         argument handler.
1891         (elmo-msgdb-message-match-condition): Follow the change above.
1892
1893 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1894
1895         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1896         folder name.
1897
1898 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1899
1900         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1901
1902 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1903
1904         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1905
1906 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1907
1908         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1909         not found.
1910
1911 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1912
1913         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1914         value.
1915         (elmo-file-command-argument): Undo last change for cygwin.
1916         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1917         Don't return nil.
1918         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1919
1920 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1921
1922         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1923         value returned from elmo-file-find is nil.
1924
1925 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1926
1927         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1928         to elmo-vars.el.
1929
1930         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1931         instead of insert-file-contents-as-binary.
1932         (elmo-message-set-field): New generic function.
1933
1934         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1935         behavior change on `split-string'.
1936
1937         * elmo-file.el (elmo-file-find): New function.
1938         (elmo-file-command): New user option.
1939         (elmo-file-command-argument): Ditto.
1940         (elmo-file-fetch-max-size): Ditto.
1941         (elmo-file-detect-format): New function.
1942         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1943         Use elmo-file-detect-format.
1944         (elmo-map-folder-list-message-locations): Don't treat directories.
1945
1946 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1947
1948         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1949         (elmo-passwd-alist-clear): Shred password before clear.
1950         (elmo-remove-passwd): Remove all mached pair.
1951
1952 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1953
1954         * elmo.el (elmo-folder-synchronize): Fix description of the return
1955         value.
1956
1957 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1958
1959         * elmo.el (elmo-message-fetch-bodystructure): New method.
1960         (elmo-message-fetch-bodystructure): Define default.
1961
1962         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1963         elmo-message-fetch-bodystructure.
1964         (elmo-message-fetch-bodystructure): Define.
1965
1966         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1967
1968 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1969
1970         * elmo-filter.el (elmo-message-folder): Define.
1971
1972 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1973
1974         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1975         elmo-delete-cr-buffer.
1976
1977         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1978
1979         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1980
1981         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1982
1983         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1984         type seems to be a text.
1985
1986 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1987
1988         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1989         (elmo-spam-register-good-buffer): Ditto.
1990         (elmo-spam-spamassassin-register-messages): Ditto.
1991
1992         * elmo-util.el (elmo-string-member-ignore-case): Define with
1993         static-cond.
1994
1995 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1996
1997         * elmo.el (elmo-folder-type): Undo last change.
1998
1999         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2000
2001         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2002         warnings.
2003
2004         * elmo-file.el: New file.
2005         
2006         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2007
2008         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2009         variable.
2010         (elmo-spam-spamassassin-register-messages): New inline function.
2011         (elmo-spam-register-spam-messages): Define.
2012         (elmo-spam-register-good-messages): Ditto.
2013
2014         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2015         Fixed typo.
2016
2017         * elmo.el (toplevel): Added autoload setting for
2018         `elmo-get-global-flags'.
2019         (elmo-message-has-global-flag-p): New function.
2020         (elmo-message-set-global-flags): Ditto.
2021         (elmo-folder-type): Improvement for name: format.
2022
2023         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2024         availability of keyword flags.
2025         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2026         (elmo-folder-list-flagged-plugged): Renamed from
2027         elmo-folder-list-flagged-unplugged.
2028         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2029         accept any flag as keyword flag.
2030         (elmo-folder-set-flag-plugged): Accept keyword flags.
2031         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2032
2033         * elmo-flag.el (elmo-get-global-flags): New function.
2034
2035         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2036         folders.
2037
2038         * elmo-version.el (elmo-version): Up to 2.11.24.
2039
2040 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2041
2042         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2043         elmo-multiple-field-body instead of std11-field-body to check all
2044         headers.
2045
2046 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2047
2048         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2049         or "size".
2050
2051 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2052
2053         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2054         unintern is unbound.
2055
2056 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2057
2058         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2059         Protect from infinite loop.
2060
2061 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2062
2063         * elsp-bogofilter.el
2064         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2065         (elmo-spam-bogofilter-register-messages): New internal function.
2066         (elmo-spam-register-spam-messages): Define.
2067         (elmo-spam-register-good-messages): Ditto.
2068
2069 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2070
2071         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2072         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2073         (elmo-spam-bogofilter-call): Fixed the last change.
2074         (elmo-spam-bogofilter-arguments): Ditto.
2075
2076         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2077         Follow the options change of latest bogofilter.
2078
2079         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2080         (elmo-spam-bogofilter-good-switch): Ditto.
2081         (elmo-spam-bogofilter-arguments-alist): New user option.
2082         (elmo-spam-bogofilter-debug): Ditto.
2083         (elmo-spam-bogofilter-call): Renamed from
2084         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2085         is non-nil, insert output in buffer for debug.
2086         (elmo-spam-bogofilter-arguments): New macro.
2087         (elmo-spam-buffer-spam-p): Use it.
2088         (elsp-bogofilter-register-buffer): Ditto.
2089
2090 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2091
2092         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2093         regexp.
2094
2095 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2096
2097         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2098         value as "ruby".
2099         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2100         (elmo-spam-bsfilter-program): Set default value as full path for
2101         `bsfilter'.
2102         (elmo-spam-bsfilter-debug): New user option.
2103         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2104         non-nil, insert output in buffer for debug. Fix treating of
2105         argument.
2106
2107 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2108
2109         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2110         `elmo-maildir-flag-specs' element instead of one.
2111         (elmo-map-folder-unset-flag): Ditto.
2112         (Reported by Ken Makimura <macky@astem.or.jp>)
2113
2114         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2115         (elmo-folder-unset-flag-plugged): Ditto.
2116
2117 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2118
2119         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2120         to `reads' slot only if `in-msgdb' is nil.
2121
2122 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2123
2124         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2125         and complement argument list.
2126
2127 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2128
2129         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2130         instead of elmo-folder-list-flagged.
2131
2132 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2133
2134         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2135
2136         * elsp-bsfilter.el: New file.
2137
2138         * elmo-pipe.el (elmo-folder-list-unreads,
2139         elmo-folder-list-answereds,
2140         elmo-folder-list-importants,
2141         elmo-folder-flag-as-important,
2142         elmo-folder-unflag-important,
2143         elmo-folder-flag-as-read,
2144         elmo-folder-unflag-read,
2145         elmo-folder-flag-as-answered,
2146         elmo-folder-unflag-answered): Remove.
2147         (elmo-folder-set-flag): Define.
2148         (elmo-folder-unset-flag): Ditto.
2149
2150         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2151         (elmo-folder-set-flag): Define.
2152         (elmo-folder-unset-flag): Ditto.
2153         (elmo-folder-list-unreads): Remove.
2154         (elmo-folder-list-flagged): Define.
2155
2156         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2157         (elmo-folder-list-unreads,
2158         elmo-folder-list-importants,
2159         elmo-folder-list-answereds,
2160         elmo-folder-list-unreads-plugged,
2161         elmo-folder-list-importants-plugged,
2162         elmo-folder-list-answereds-plugged): Remove.
2163         (elmo-folder-list-flagged-plugged): New method.
2164         (elmo-folder-unflag-important,
2165         elmo-folder-flag-as-important,
2166         elmo-folder-unflag-read,
2167         elmo-folder-flag-as-read,
2168         elmo-folder-unflag-answered,
2169         elmo-folder-flag-as-answered,
2170         elmo-folder-flag-as-read-unplugged,
2171         elmo-folder-unflag-read-unplugged,
2172         elmo-folder-flag-as-important-unplugged,
2173         elmo-folder-unflag-important-unplugged,
2174         elmo-folder-flag-as-answered-unplugged,
2175         elmo-folder-unflag-answered-unplugged): Remove.
2176         (elmo-folder-set-flag): Define.
2177         (elmo-folder-unset-flag): Ditto.
2178         (elmo-folder-set-flag-unplugged): Ditto.
2179         (elmo-folder-unset-flag-unplugged): Ditto.
2180
2181         * elmo-multi.el (elmo-folder-list-unreads,
2182         elmo-folder-list-answereds,
2183         elmo-folder-list-importants,
2184         elmo-folder-flag-as-important,
2185         elmo-folder-unflag-important,
2186         elmo-folder-flag-as-read,
2187         elmo-folder-unflag-read,
2188         elmo-folder-flag-as-answered,
2189         elmo-folder-unflag-answered): Remove.
2190         (elmo-folder-set-flag): Define.
2191         (elmo-folder-unset-flag): Ditto.
2192
2193         * elmo-map.el (elmo-map-folder-unflag-important,
2194         elmo-map-folder-flag-as-important,
2195         elmo-map-folder-unflag-read,
2196         elmo-map-folder-flag-as-read,
2197         elmo-map-folder-unflag-answered,
2198         elmo-map-folder-flag-as-answered): Remove.
2199         (elmo-map-folder-set-flag): New method.
2200         (elmo-map-folder-unset-flag): Ditto.
2201         (elmo-map-folder-list-unreads,
2202         elmo-map-folder-list-importants,
2203         elmo-map-folder-list-answereds): Remove.
2204         (elmo-folder-list-flagged-internal): Define.
2205         (elmo-map-folder-list-flagged): New method.
2206
2207         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2208         (elmo-map-folder-list-unreads,
2209         elmo-map-folder-list-importants,
2210         elmo-map-folder-list-flagged): Remove.
2211         (elmo-map-folder-list-flagged): Define.
2212         (elmo-map-folder-flag-as-important,
2213         elmo-map-folder-unflag-important,
2214         elmo-map-folder-flag-as-read,
2215         elmo-map-folder-unflag-read,
2216         elmo-map-folder-flag-as-answered,
2217         elmo-map-folder-unflag-answered): Remove.
2218         (elmo-maildir-set-mark-messages): New internal function.
2219         (elmo-map-folder-set-flag): Define.
2220         (elmo-map-folder-unset-flag): Ditto.
2221
2222         * elmo.el (toplevel): Added autoload setting for
2223         `elmo-folder-list-global-flag-messages'.
2224         (elmo-folder-list-unreads,
2225         elmo-folder-list-importants,
2226         elmo-folder-list-answereds): Remove.
2227         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2228         Return a list whitch merged with messages have global flag.
2229         (elmo-folder-list-flagged-internal): New method.
2230         (elmo-folder-unflag-important,
2231         elmo-folder-flag-as-important,
2232         elmo-folder-unflag-read,
2233         elmo-folder-flag-as-read,
2234         elmo-folder-unflag-answered,
2235         elmo-folder-flag-as-answered): Remove.
2236         (elmo-folder-set-flag): New method.
2237         (elmo-folder-unset-flag): Ditto.
2238         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2239         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2240
2241         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2242         (elmo-folder-list-unreads-plugged,
2243         elmo-folder-list-importants-plugged,
2244         elmo-folder-list-answereds-plugged,
2245         elmo-folder-list-flagged-unplugged,
2246         elmo-folder-unflag-important-plugged,
2247         elmo-folder-flag-as-important-plugged,
2248         elmo-folder-unflag-read-plugged,
2249         elmo-folder-flag-as-read-plugged,
2250         elmo-folder-unflag-answered-plugged,
2251         elmo-folder-flag-as-answered-plugged): Remove.
2252         (elmo-folder-set-flag-plugged,
2253         elmo-folder-unset-flag-plugged): Define.
2254
2255         * elmo-flag.el (elmo-folder-initialize): Register to
2256         `elmo-global-flag-list' if flag is not global.
2257         (elmo-folder-append-messages): Set flag to source messages.
2258
2259         * elmo-filter.el (elmo-filter-folder-list-unreads,
2260         elmo-folder-list-unreads,
2261         elmo-filter-folder-list-importants,
2262         elmo-folder-list-importants,
2263         elmo-folder-flag-as-read,
2264         elmo-folder-unflag-read,
2265         elmo-folder-flag-as-important,
2266         elmo-folder-unflag-important,
2267         elmo-folder-flag-as-answered,
2268         elmo-folder-unflag-answered): Remove.
2269         (elmo-folder-set-flag): Define.
2270         (elmo-folder-unset-flag): Ditto.
2271
2272         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2273         elmo-folder-unflag-read-dop,
2274         elmo-folder-flag-as-important-dop,
2275         elmo-folder-unflag-important-dop,
2276         elmo-folder-flag-as-answered-dop,
2277         elmo-folder-unflag-answered-dop): Remove.
2278         (elmo-folder-set-flag-dop,
2279         elmo-folder-unset-flag-dop,
2280         elmo-folder-set-important-delayed,
2281         elmo-folder-unset-important-delayed,
2282         elmo-folder-set-read-delayed,
2283         elmo-folder-unset-read-delayed,
2284         elmo-folder-set-answered-delayed,
2285         elmo-folder-unset-answered-delayed): New function.
2286         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2287         (elmo-dop-queue-method-name-alist): Ditto.
2288
2289         * elmo-version.el (elmo-version): Up to 2.11.23.
2290
2291 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2292
2293         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2294
2295         * elsp-sa.el: New file.
2296
2297 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2298
2299         * modb-standard.el (modb-standard-message-entity): New function.
2300         (elmo-msgdb-message-entity): Use it.
2301
2302 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2303
2304         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2305         behavior when one-level is nil.
2306
2307         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2308
2309         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2310
2311 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2312
2313         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2314         get max number.
2315         (elmo-generic-folder-diff): Ditto.
2316
2317         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2318         (elmo-folder-update-number): Ditto.
2319
2320         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2321         (elmo-folder-next-message-number-dop): Ditto.
2322
2323 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2324
2325         * elmo-filter.el (elmo-folder-msgdb-create): Use
2326         `elmo-message-entity' and `elmo-message-flags' instead of
2327         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2328
2329 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2330
2331         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2332         `if-exists'.
2333
2334 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2335
2336         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2337
2338         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2339
2340         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2341
2342 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2343
2344         * elmo-version.el (elmo-version): Up to 2.11.22.
2345
2346 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2347
2348         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2349
2350 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2351
2352         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2353         if the message dose not exist.
2354
2355 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2356
2357         * elmo-version.el (elmo-version): Up to 2.11.21.
2358
2359 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2360
2361         * modb-standard.el (toplevel): Don't require mime.
2362
2363 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2364
2365         * elsp-bogofilter.el (toplevel): Don't require path-util.
2366         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2367         (elmo-spam-bogofilter-header): Abolish.
2368         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2369         (elmo-spam-bogofilter-args): New user option.
2370         (elsp-bogofilter-call-bogofilter): New internal function.
2371         (elmo-spam-buffer-spam-p): Use it.
2372         (elsp-bogofilter-register-buffer): Renamed from
2373         `elmo-spam-bogofilter-register-buffer';
2374         Use `elsp-bogofilter-call-bogofilter'.
2375         (elmo-spam-register-spam-buffer): Follow the change above.
2376         (elmo-spam-register-good-buffer): Ditto.
2377
2378 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2379
2380         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2381         message-id is nil do nothing.
2382
2383 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2384
2385         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2386         Revival.
2387         (elmo-imap4-session): Removed use-flag slot.
2388         (elmo-imap4-session-select-mailbox): Undo last change.
2389         (elmo-folder-use-flag-p): Use
2390         elmo-imap4-disuse-server-flag-mailbox-regexp.
2391
2392 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2393
2394         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2395         (elmo-imap4-session-select-mailbox): Set it up.
2396         (elmo-folder-use-flag-p): Return value of use-flag slot.
2397
2398 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2399
2400         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2401         message-id is nil.
2402         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2403
2404         * modb-entity.el (elmo-message-entity-handler): Likewise.
2405
2406 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2407
2408         * elmo.el (toplevel): Remove setting of autoloding for
2409         elmo-global-flag-initialize.
2410         (elmo-init): Don't call elmo-global-flag-initialize.
2411         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2412
2413         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2414         (elmo-global-mark-migrate): Don't call it.
2415         (elmo-global-mark-upgrade): Ditto.
2416
2417 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2418
2419         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2420         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2421
2422         * elmo-vars.el (elmo-init-hook): New user option.
2423
2424         * elmo.el (elmo-init): Run the elmo-init-hook.
2425
2426         * elmo-flag.el (elmo-global-mark-migrate): New function.
2427
2428 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2429
2430         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2431         Undo last change (move to elmo-msgdb-unset-flag).
2432         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2433         flag is unset.
2434
2435 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2436
2437         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2438         read flag is set.
2439         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2440         (elmo-msgdb-unset-flag): Ditto.
2441
2442 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2443
2444         * elmo-split.el (elmo-split): Return split message count.
2445
2446 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2447
2448         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2449         is nil.
2450
2451 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2452
2453         * elmo.el (elmo-folder-unflag-important): Call
2454         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2455         a symbol `always'.
2456
2457         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2458         before unset flag.
2459         (elmo-global-flag-detach): Delete the message from flag folder, if
2460         `delete-if-none' is a symbol `always'.
2461
2462 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2463
2464         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2465         `elmo-spam-spamfilter-decode-buffer'.
2466         (elsp-spamfilter-register-buffer-internal): New internal function.
2467         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2468         (elmo-spam-register-spam-buffer): Ditto.
2469         (elmo-spam-register-good-buffer): Ditto.
2470
2471         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2472         change.
2473         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2474         (elmo-spam-register-spam-buffer): Follow the API change.
2475         (elmo-spam-register-good-buffer): Ditto.
2476
2477         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2478         (elmo-split-spam-p): Added argument plist; Call
2479         `elmo-spam-buffer-spam-p' with new argument register.
2480
2481         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2482         `register'.
2483         (elmo-spam-message-spam-p): Ditto.
2484         (elmo-spam-register-spam-buffer): Added optional argument
2485         `restore'.
2486         (elmo-spam-register-good-buffer): Ditto.
2487         (elmo-spam-register-spam-messages): Ditto.
2488         (elmo-spam-register-good-messages): Ditto.
2489
2490 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2491
2492         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2493         register into good corpus.
2494         (elmo-spam-register-good-buffer): Fixed to register into bad
2495         corpus.
2496
2497 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2498
2499         * elmo-version.el (elmo-version): Up to 2.11.20.
2500
2501         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2502         change.
2503
2504         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2505         flag without depending on \Recent flag.
2506
2507 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2508
2509         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2510         (elmo-spam-modified-p): Defined.
2511         (elmo-spam-save-status): Set `modified' slot to nil.
2512         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2513         (elmo-spam-register-good-buffer): Ditto.
2514
2515         * elmo-spam.el (elmo-spam-modified-p): New API.
2516
2517 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2518
2519         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2520         duplicate definition.
2521
2522         * elmo-util.el (elmo-unfold-field-body): New function.
2523         (elmo-msgdb-get-message-id-from-buffer): Use it.
2524
2525         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2526         Fixed the last change; Use elmo-unfold-field-body.
2527
2528 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2529
2530         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2531         Unfold date value.
2532
2533 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2534
2535         * elmo-spam.el (elmo-spam-save-status): New API.
2536
2537         * elsp-spamfilter.el: New file.
2538
2539 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2540
2541         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2542
2543 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2544
2545         * elmo-split.el (elmo-split-spam-p): New function.
2546
2547         * elmo-spam.el: New file.
2548
2549         * elsp-bogofilter.el: Ditto.
2550
2551 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2552
2553         * elmo.el (elmo-folder-next-message-number): New API.
2554         (elmo-folder-next-message-number): Define.
2555         (elmo-message-field): Don't check folder length.
2556
2557         * elmo-net.el (elmo-folder-next-message-number): Define.
2558         (elmo-folder-next-message-number-unplugged): Define.
2559
2560         * elmo-map.el (elmo-folder-next-message-number): Define.
2561         (elmo-folder-delete-messages): Clear hash value.
2562
2563         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2564
2565         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2566         (elmo-folder-delete-messages-dop-delayed): Always return t.
2567
2568         * elmo-version.el (elmo-version): Up to 2.11.19.
2569
2570 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2571
2572         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2573         change.
2574
2575         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2576         identical cons cell into the mark-alist and the hash table.
2577
2578 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2579
2580         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2581         elmo-folder-list-messages with argument `visible-only' as t.
2582
2583         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2584         (elmo-folder-msgdb-create): Check the target folder.
2585
2586 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2587
2588         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2589         `permanentflag' instead of `flags'.
2590         (elmo-folder-open): Ditto.
2591         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2592         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2593         (elmo-folder-use-flag-p): Always return t.
2594         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2595         `permanentflags' does not exist.
2596         (elmo-folder-open): Ditto.
2597
2598 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2599
2600         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2601         is nil.
2602         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2603
2604         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2605         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2606         response.
2607         (elmo-folder-open): Ditto.
2608         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2609         slot of the session includes the flag.
2610         (elmo-imap4-session-flag-available-p): New function.
2611         (elmo-imap4-folder-list-flagged): Ditto.
2612         (elmo-folder-list-unreads-plugged): Use it.
2613         (elmo-folder-list-importants-plugged): Ditto.
2614         (elmo-folder-list-answereds-plugged): Ditto.
2615         (elmo-imap4-search-internal-primitive): Ditto.
2616         (elmo-imap4-folder-list-any-plugged,
2617         elmo-imap4-folder-list-digest-plugged): Abolish.
2618
2619         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2620         if numbers is nil.
2621
2622 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2623
2624         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2625
2626 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2627
2628         * elmo-util.el (elmo-get-hash-val): Simplify.
2629         (elmo-set-hash-val): Rewrite.
2630
2631 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2632
2633         * elmo.el (elmo-folder-list-messages): Append killed messages into
2634         result if `visible-only' is nil and `in-msgdb' is non-nil.
2635
2636         * elmo-util.el (elmo-uniq-list): Added optional argument
2637         `delete-function'.
2638
2639         * modb.el (elmo-msgdb-flag-count): New API.
2640
2641         * modb-standard.el (modb-standard): Added slot flag-count.
2642         (modb-standard-countup-flags): New function.
2643         (modb-standard-load-flag): Call it.
2644         (elmo-msgdb-append): Ditto.
2645         (elmo-msgdb-clear): Clear slot flag-count.
2646         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2647         (elmo-msgdb-unset-flag): Treat `all' flag and call
2648         modb-standard-countup-flags.
2649         (elmo-msgdb-flag-count): Define.
2650         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2651         (elmo-msgdb-delete-messages): Ditto.
2652
2653         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2654         (elmo-msgdb-flag-count): Define.
2655
2656         * elmo.el (elmo-folder-list-messages): Undo last change.
2657         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2658         (elmo-folder-kill-messages): Unset all flags to numbers.
2659
2660         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2661         elmo-folder-kill-messages.
2662
2663         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2664         (elmo-nntp-folder-delete-messages): Abolish.
2665
2666         * elmo-version.el (elmo-version): Up to 2.11.18.
2667
2668 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2669
2670         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2671         (elmo-folder-kill-messages-range): New function.
2672         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2673         instead of elmo-folder-kill-messages-before.
2674
2675 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2676
2677         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2678         elmo-imap4-current-msgdb to decide entity handler.
2679
2680 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2681
2682         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2683
2684         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2685         inline function.
2686         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2687         (elmo-msgdb-overview-entity-set-number,
2688         elmo-msgdb-overview-entity-get-references,
2689         elmo-msgdb-overview-entity-set-references,
2690         elmo-msgdb-overview-entity-get-from-no-decode,
2691         elmo-msgdb-overview-entity-get-from,
2692         elmo-msgdb-overview-entity-set-from,
2693         elmo-msgdb-overview-entity-get-subject,
2694         elmo-msgdb-overview-entity-get-subject-no-decode,
2695         elmo-msgdb-overview-entity-set-subject,
2696         elmo-msgdb-overview-entity-get-date,
2697         elmo-msgdb-overview-entity-set-date,
2698         elmo-msgdb-overview-entity-get-to,
2699         elmo-msgdb-overview-entity-get-cc,
2700         elmo-msgdb-overview-entity-get-size,
2701         elmo-msgdb-overview-entity-set-size,
2702         elmo-msgdb-overview-entity-get-extra,
2703         elmo-msgdb-overview-entity-set-extra,
2704         elmo-msgdb-overview-entity-get-extra-field,
2705         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2706         (elmo-msgdb-make-index): Use
2707         `elmo-msgdb-overview-entity-get-number-internal'.
2708         (elmo-msgdb-clear-index): Ditto.
2709         (elmo-msgdb-append-entity): Ditto;
2710         Use `elmo-msgdb-overview-entity-get-id-internal'.
2711
2712         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2713         elmo-msgdb-overview-entity-set-number,
2714         elmo-msgdb-overview-entity-get-references,
2715         elmo-msgdb-overview-entity-set-references,
2716         elmo-msgdb-overview-entity-get-from-no-decode,
2717         elmo-msgdb-overview-entity-get-from,
2718         elmo-msgdb-overview-entity-set-from,
2719         elmo-msgdb-overview-entity-get-subject,
2720         elmo-msgdb-overview-entity-get-subject-no-decode,
2721         elmo-msgdb-overview-entity-set-subject,
2722         elmo-msgdb-overview-entity-get-date,
2723         elmo-msgdb-overview-entity-set-date,
2724         elmo-msgdb-overview-entity-get-to,
2725         elmo-msgdb-overview-entity-get-cc,
2726         elmo-msgdb-overview-entity-get-size,
2727         elmo-msgdb-overview-entity-set-size,
2728         elmo-msgdb-overview-entity-get-extra,
2729         elmo-msgdb-overview-entity-set-extra,
2730         elmo-msgdb-overview-entity-get-extra-field,
2731         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2732         and rewrote for backward compatibility.
2733
2734 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2735
2736         * elmo.el (elmo-message-entity-number,
2737         elmo-message-entity-set-number,
2738         elmo-message-entity-field,
2739         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2740
2741         * elmo-msgdb.el (elmo-message-entity-number,
2742         elmo-message-entity-set-number,
2743         elmo-message-entity-field,
2744         elmo-message-entity-set-field): Moved from elmo.el.
2745
2746 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2747
2748         * elmo.el (toplevel): Changed definition orders.
2749
2750 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2751
2752         * modb.el (elmo-msgdb-search): New API .
2753         (elmo-msgdb-match-condition): Ditto.
2754
2755         * modb-standard.el (elmo-msgdb-search): Define.
2756
2757         * modb-legacy.el (elmo-msgdb-search): Ditto.
2758
2759         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2760         from elmo-msgdb-match-condition-internal.
2761
2762         * elmo.el (elmo-folder-search-fast): Abolish.
2763         (elmo-folder-search): Use elmo-msgdb-search and
2764         elmo-with-progress-display.
2765
2766         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2767         as msgdb API.
2768
2769         * elmo.el (elmo-folder): Remove slot message-modified and
2770         flag-modified.
2771         (elmo-folder-set-message-modified): Abolish.
2772         (elmo-generic-folder-commit): Follow the change above.
2773         (elmo-folder-synchronize): Ditto.
2774
2775         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2776
2777         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2778
2779         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2780
2781 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2782
2783         * modb-standard.el (modb-standard-make-message-entity,
2784         elmo-msgdb-make-message-entity,
2785         elmo-msgdb-create-message-entity-from-buffer,
2786         elmo-msgdb-message-entity-number,
2787         elmo-msgdb-message-entity-set-number,
2788         elmo-msgdb-message-entity-field,
2789         elmo-msgdb-message-entity-set-field,
2790         elmo-msgdb-copy-message-entity,
2791         elmo-msgdb-match-condition-internal): Remove.
2792
2793         * modb-entity.el: New file (again).
2794
2795         * modb.el (toplevel): Require modb-entity.
2796         (elmo-msgdb-message-entity-handler): New method.
2797
2798         * modb-standard.el (modb-standard-entity-id): Use
2799         elmo-message-entity-handler.
2800         (modb-standard-load-entity): Ditto.
2801         (elmo-msgdb-append-entity): Ditto.
2802         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2803
2804         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2805         elmo-msgdb-decoded-cache-hashtb,
2806         (modb-legacy-make-message-entity,
2807         elmo-msgdb-make-message-entity,
2808         elmo-msgdb-create-message-entity-from-buffer,
2809         elmo-msgdb-message-entity-number,
2810         elmo-msgdb-message-entity-set-number,
2811         elmo-msgdb-message-entity-field,
2812         elmo-msgdb-message-entity-set-field,
2813         elmo-msgdb-copy-message-entity,
2814         elmo-msgdb-match-condition-internal,
2815         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2816
2817         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2818         (elmo-message-entity-set-number): Ditto.
2819         (elmo-message-entity-field): Ditto.
2820         (elmo-message-entity-set-field): Ditto.
2821
2822         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2823
2824         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2825
2826         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2827
2828         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2829         (elmo-nntp-msgdb-create-message): Ditto.
2830
2831         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2832         (elmo-folder-msgdb-create): Add unread flag.
2833
2834         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2835
2836         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2837
2838         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2839
2840         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2841
2842         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2843         elmo-msgdb-messge-entity-handler.
2844         * elmo-version.el (elmo-version): Up to 2.11.17.
2845
2846 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2847
2848         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2849         change.
2850
2851 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2852
2853         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2854
2855         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2856         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2857         (elmo-msgdb-flag-table): Ditto.
2858         (elmo-msgdb-sort-by-date): Ditto.
2859
2860         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2861
2862         * modb-standard.el (toplevel): Require mime.
2863         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2864         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2865         elmo-msgdb-message-entity-number.
2866         (elmo-msgdb-append-entity): Ditto.
2867         (elmo-msgdb-create-message-entity-from-file): Remove.
2868         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2869         corresponds to the entity.
2870         (elmo-msgdb-message-entity-number): Do nothing currently.
2871         (elmo-msgdb-message-entity-field): Ditto.
2872         (elmo-msgdb-message-entity-set-field): Ditto.
2873         (elmo-msgdb-copy-message-entity): Ditto.
2874         (elmo-msgdb-match-condition-internal): Ditto.
2875
2876         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2877         elmo-util.el.
2878         (elmo-msgdb-create-message-entity-from-file): Remove.
2879
2880         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2881         modb-legacy.el.
2882         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2883
2884         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2885
2886 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2887
2888         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2889         (elmo-msgdb-message-entity-field): Ditto.
2890         (elmo-msgdb-message-entity-number): Ditto.
2891
2892 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2893
2894         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2895         Fixed how to set extra field into entity.
2896         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2897         symbol.
2898
2899         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2900         Fixed how to set extra field into entity.
2901         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2902         symbol.
2903
2904 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2905
2906         * modb.el (elmo-message-entity-db): New function.
2907         (elmo-msgdb-make-message-entity): New API.
2908         (elmo-msgdb-message-entity-number): Ditto.
2909         (elmo-msgdb-message-entity-set-number): Ditto.
2910         (elmo-msgdb-message-entity-field): Ditto.
2911         (elmo-msgdb-message-entity-set-field): Ditto.
2912         (elmo-msgdb-copy-message-entity): Ditto.
2913         (elmo-msgdb-create-message-entity-from-file): Ditto.
2914         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2915         (elmo-msgdb-match-condition-internal): Ditto.
2916
2917         * modb-standard.el (modb-legacy): Require modb-legacy.
2918         (modb-standard-make-message-entity): New inline function.
2919         (elmo-msgdb-make-message-entity): Define.
2920         (elmo-msgdb-create-message-entity-from-file): Ditto.
2921         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2922         (elmo-msgdb-message-entity-field): Ditto.
2923         (elmo-msgdb-message-entity-set-field): Ditto.
2924         (elmo-msgdb-copy-message-entity): Ditto.
2925         (elmo-msgdb-match-condition-internal): Ditto.
2926
2927         * modb-legacy.el: Don't require modb-entity.
2928         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2929         (elmo-msgdb-match-condition-primitive): Ditto.
2930         (elmo-msgdb-get-decoded-cache): Ditto.
2931         (elmo-msgdb-overview-entity-get-id): Ditto.
2932         (elmo-msgdb-overview-entity-get-number): Ditto.
2933         (elmo-msgdb-overview-entity-set-number): Ditto.
2934         (elmo-msgdb-overview-entity-get-references): Ditto.
2935         (elmo-msgdb-overview-entity-set-references): Ditto.
2936         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2937         (elmo-msgdb-overview-entity-get-from): Ditto.
2938         (elmo-msgdb-overview-entity-set-from): Ditto.
2939         (elmo-msgdb-overview-entity-get-subject): Ditto.
2940         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2941         (elmo-msgdb-overview-entity-set-subject): Ditto.
2942         (elmo-msgdb-overview-entity-get-date): Ditto.
2943         (elmo-msgdb-overview-entity-set-date): Ditto.
2944         (elmo-msgdb-overview-entity-get-to): Ditto.
2945         (elmo-msgdb-overview-entity-get-cc): Ditto.
2946         (elmo-msgdb-overview-entity-get-size): Ditto.
2947         (elmo-msgdb-overview-entity-set-size): Ditto.
2948         (elmo-msgdb-overview-entity-get-extra): Ditto.
2949         (elmo-msgdb-overview-entity-set-extra): Ditto.
2950         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2951         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2952         (elmo-msgdb-number-load): Ditto.
2953         (elmo-msgdb-overview-load): Ditto.
2954         (elmo-msgdb-mark-load): Ditto.
2955         (elmo-msgdb-number-save): Ditto.
2956         (elmo-msgdb-mark-save): Ditto.
2957         (elmo-msgdb-overview-save): Ditto.
2958         (modb-legacy-make-message-entity): New inline function.
2959         (elmo-msgdb-insert-file-header): Ditto.
2960         (elmo-msgdb-make-message-entity): Define.
2961         (elmo-msgdb-create-message-entity-from-file): Ditto.
2962         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2963         (elmo-msgdb-message-entity-number): Ditto.
2964         (elmo-msgdb-message-entity-set-number): Ditto.
2965         (elmo-msgdb-message-entity-field): Ditto.
2966         (elmo-msgdb-message-entity-set-field): Ditto.
2967         (elmo-msgdb-copy-message-entity): Ditto.
2968         (elmo-msgdb-match-condition-internal): Ditto.
2969
2970         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2971         (elmo-message-copy-entity): Rewrite.
2972         (elmo-message-entity-number): Ditto.
2973         (elmo-message-entity-set-number): Ditto.
2974         (elmo-message-entity-field): Use elmo-message-entity-db.
2975         (elmo-message-entity-set-field): Ditto.
2976         (elmo-message-field): Rewrite.
2977
2978         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2979         elmo-msgdb.el
2980         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2981
2982         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2983         elmo-message-entity-field.
2984         (elmo-shimbun-folder-shimbun-header): Ditto.
2985         (elmo-shimbun-entity-to-header): Ditto.
2986         (elmo-folder-msgdb-create): Ditto.
2987         (elmo-shimbun-msgdb-create-entity): Ditto;
2988         Use elmo-msgdb-create-message-entity-from-buffer.
2989         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2990         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2991
2992         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2993         elmo-msgdb-create-message-entity-from-file and 
2994         elmo-message-entity-field.
2995
2996         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2997         elmo-message-entity-number.
2998         (elmo-pop3-msgdb-create-message): Use
2999         elmo-msgdb-create-message-entity-from-buffer,
3000         elmo-message-entity-set-field, elmo-message-entity-number and
3001         elmo-message-entity-set-number.
3002
3003         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3004         the API change in elmo-msgdb-make-message-entity.
3005         (elmo-nntp-msgdb-create-message): Use
3006         elmo-msgdb-create-message-entity-from-buffer.
3007
3008         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3009         elmo-message-entity-field and
3010         elmo-msgdb-create-message-entity-from-file.
3011
3012         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3013         (elmo-msgdb-get-field): Abolish.
3014         (elmo-msgdb-get-number): Rewrite.
3015         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3016         (elmo-msgdb-flag-table): Ditto.
3017         (elmo-msgdb-get-last-message-id,
3018         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3019         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3020         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3021         (elmo-msgdb-create-overview-from-buffer,
3022         elmo-msgdb-overview-get-parent-entity): Abolish.
3023
3024         * elmo-mime.el (elmo-mime-display-as-is): Use
3025         elmo-message-entity-field.
3026
3027         * elmo-map.el (elmo-folder-pack-numbers): Use
3028         elmo-message-entity-set-number.
3029
3030         * elmo-maildir.el (elmo-folder-msgdb-create): 
3031         elmo-msgdb-create-message-entity-from-file instead of
3032         elmo-msgdb-create-overview-entity-from-file.
3033
3034         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3035         msgdb.
3036         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3037         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3038
3039         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3040         elmo-messge-entity-field and elmo-message-entity-number.
3041         (elmo-imap4-fetch-callback-1): Call
3042         elmo-msgdb-create-message-entity-from-buffer instead of
3043         elmo-msgdb-create-overview-from-buffer. 
3044         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3045         (elmo-find-fetch-strategy): Likewise.
3046
3047         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3048         elmo-localdir-msgdb-create-entity with argument msgdb.
3049
3050         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3051         and elmo-message-entity-set-number.
3052
3053         * elmo-cache.el (elmo-folder-msgdb-create): Use
3054         elmo-message-entity-field.
3055         (elmo-folder-msgdb-create): Call
3056         elmo-msgdb-create-message-entity-from-file instead of
3057         elmo-msgdb-create-overview-entity-from-file.
3058
3059         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3060         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3061         instead of elmo-msgdb-create-overview-from-buffer.
3062         (elmo-archive-msgdb-create-entity): Ditto.
3063         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3064         elmo-message-entity-field.
3065         (elmo-archive-parse-mmdf): Ditto.
3066
3067         * modb-entity.el: Removed.
3068
3069         * elmo-version.el (elmo-version): Up to 2.11.16.
3070
3071 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3072
3073         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3074         `is-local'.
3075         (elmo-folder-flag-as-answered): Ditto.
3076
3077 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3078
3079         * modb-standard.el: New file.
3080
3081         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3082         elmo-msgdb-convert-type is `sync'.
3083
3084         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3085         (elmo-msgdb-convert-type): New user option.
3086
3087         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3088         (elmo-load-msgdb): Auto detect saved type.
3089
3090         * elmo-version.el (elmo-version): Up to 2.11.15.
3091
3092 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3093
3094         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3095
3096         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3097         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3098         with argument `delete-if-none' when dst-folder is 'null.
3099
3100         * elmo-flag.el (elmo-folder-append-messages): Defined.
3101         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3102
3103 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3104
3105         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3106
3107 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3108
3109         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3110         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3111         (elmo-folder-commit): Ditto.
3112
3113 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3114
3115         * elmo-flag.el: New file.
3116
3117         * elmo-mark.el: Removed.
3118
3119         * modb-legacy.el (modb-legacy-new-mark,
3120         modb-legacy-unread-uncached-mark,
3121         modb-legacy-unread-cached-mark,
3122         modb-legacy-read-uncached-mark,
3123         modb-legacy-answered-cached-mark,
3124         modb-legacy-answered-uncached-mark,
3125         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3126         All other related portions are changed.
3127
3128         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3129         (elmo-folder-list-messages-with-global-mark): Abolish.
3130         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3131         (elmo-folder-flag-as-important): Ditto.
3132         (elmo-folder-unflag-read): Ditto.
3133         (elmo-folder-flag-as-read): Ditto.
3134         (elmo-folder-unflag-answered): Ditto.
3135         (elmo-folder-flag-as-answered): Ditto.
3136         (elmo-message-encache): Return the cache path.
3137         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3138         (elmo-message-set-flag): Transitional implementation.
3139         (elmo-message-unset-flag): Ditto.
3140         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3141         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3142         (elmo-init): Call elmo-global-flag-initialize.
3143         (toplevel): Added autoload settings for elmo-flag.
3144
3145         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3146
3147         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3148         (elmo-file-cache-delete): Don't treat global-mark.
3149
3150         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3151
3152         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3153
3154         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3155         `elmo-global-flags-set'.
3156
3157         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3158         `flag'.
3159         (elmo-folder-unflag-read): Ditto.
3160         (elmo-folder-unflag-important): Ditto.
3161         (elmo-folder-flag-as-important): Ditto.
3162         (elmo-folder-unflag-answered): Ditto.
3163         (elmo-folder-flag-as-answered): Ditto.
3164
3165         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3166         `elmo-global-flags-set'.
3167         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3168
3169         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3170
3171         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3172         `flag'.
3173         (elmo-folder-flag-as-important): Ditto.
3174         (elmo-folder-unflag-important): Ditto.
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
3181         * elmo-multi.el (elmo-folder-list-importants): Don't call
3182         elmo-folder-list-messages-with-global-mark.
3183         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3184         (elmo-folder-unflag-important): Ditto.
3185         (elmo-folder-flag-as-read): Ditto.
3186         (elmo-folder-unflag-read): Ditto.
3187         (elmo-folder-flag-as-answered): Ditto.
3188         (elmo-folder-unflag-answered): Ditto.
3189
3190         * elmo-msgdb.el (elmo-msgdb-new-mark,
3191         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3192         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3193         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3194         (Moved to modb-legacy.el).
3195         (elmo-flag-table-get): Treat important flag too.
3196
3197         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3198         `mark' to `flag'.
3199         (elmo-map-folder-flag-as-important): Ditto.
3200         (elmo-map-folder-unflag-read): Ditto.
3201         (elmo-map-folder-flag-as-read): Ditto.
3202         (elmo-map-folder-unflag-answered): Ditto.
3203         (elmo-map-folder-flag-as-answered): Ditto.
3204         (elmo-folder-unflag-important): Ditto.
3205         (elmo-folder-flag-as-important): Ditto.
3206         (elmo-folder-unflag-read): Ditto.
3207         (elmo-folder-flag-as-read): Ditto.
3208         (elmo-folder-unflag-answered): Ditto.
3209         (elmo-folder-flag-as-answered): Ditto.
3210
3211         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3212         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3213         `flag'.
3214         (elmo-map-folder-unflag-important): Ditto.
3215         (elmo-map-folder-flag-as-read): Ditto.
3216         (elmo-map-folder-unflag-read): Ditto.
3217         (elmo-map-folder-flag-as-answered): Ditto.
3218         (elmo-map-folder-unflag-answered): Ditto.
3219
3220         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3221         `elmo-global-flags-set'.
3222         (elmo-global-flags-set): Added autoload setting.
3223
3224         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3225         `flag'.
3226
3227         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3228         `elmo-msgdb-global-mark-set'.
3229         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3230         Call `elmo-global-flags-set'.
3231         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3232         `flag'.
3233         (elmo-folder-flag-as-important-plugged): Ditto.
3234         (elmo-folder-unflag-read-plugged): Ditto.
3235         (elmo-folder-flag-as-read-plugged): Ditto.
3236         (elmo-folder-unflag-answered-plugged): Ditto.
3237         (elmo-folder-flag-as-answered-plugged): Ditto.
3238         (elmo-global-flags-set): Added autoload setting.
3239
3240         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3241         `flag'.
3242         (elmo-folder-unflag-read): Ditto.
3243         (elmo-folder-flag-as-important): Ditto.
3244         (elmo-folder-unflag-important): Ditto.
3245         (elmo-folder-flag-as-answered): Ditto.
3246         (elmo-folder-unflag-answered): Ditto.
3247
3248         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3249         change of `mark'->`flag'.
3250         (elmo-dop-queue-method-name-alist): Ditto.
3251         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3252         (elmo-folder-unflag-read-dop): Ditto.
3253         (elmo-folder-flag-as-important-dop): Ditto.
3254         (elmo-folder-unflag-important-dop): Ditto.
3255         (elmo-folder-flag-as-answered-dop): Ditto.
3256         (elmo-folder-unflag-answered-dop): Ditto.
3257
3258         * elmo-cache.el (elmo-folder-msgdb-create): Call
3259         `elmo-global-flags-set'.
3260
3261         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3262         Call `elmo-global-flags-set'.
3263         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3264         elmo-archive-parse-mmdf with argument `folder'.
3265         (elmo-archive-parse-mmdf): Added argument `folder';
3266         Call `elmo-global-flags-set'.
3267
3268         * elmo-version.el (elmo-version): Up to 2.11.14.
3269
3270 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3271
3272         * modb.el (elmo-msgdb-length): Define.
3273
3274         * elmo.el (elmo-make-folder): Fixed.
3275         (elmo-generic-folder-append-messages): Follow the API change.
3276
3277         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3278         API change.
3279
3280 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3281
3282         * modb.el: New file.
3283
3284         * modb-entity.el: Ditto.
3285
3286         * modb-legacy.el: Ditto.
3287
3288         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3289         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3290         of `elmo-msgdb-overview-get-entity'.
3291         (elmo-msgdb-get-field): Ditto.
3292         (elmo-msgdb-merge): Moved to `elmo.el'.
3293         (elmo-msgdb-length): Removed; redefine as modb method.
3294         (elmo-msgdb-change-mark): Abolish.
3295         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3296         (elmo-msgdb-match-condition): Don't use mark.
3297         (elmo-msgdb-overview-get-entity): Abolish.
3298         Split modb part into `modb*.el'.
3299
3300         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3301
3302         * elmo-shimbun.el (shimbun-mua-search-id): Use
3303         `elmo-msgdb-message-entity' instead of
3304         `elmo-msgdb-overview-get-entity'.
3305         (elmo-shimbun-folder-shimbun-header): Ditto.
3306         (elmo-shimbun-get-headers): Ditto.
3307         (elmo-shimbun-update-overview): Ditto.
3308
3309         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3310
3311         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3312
3313         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3314         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3315
3316         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3317         `elmo-msgdb-mark-to-flags'.
3318
3319         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3320         `elmo-msgdb-set-path'.
3321
3322         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3323  
3324         * elmo-version.el (elmo-version): Up to 2.11.13.
3325
3326         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3327
3328         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3329         of mark.
3330
3331 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3332
3333         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3334         mismatch.
3335
3336 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3337
3338         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3339         instead of `elmo-msgdb-get-cached'.
3340         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3341
3342         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3343         (elmo-msgdb-set-cached): Ditto.
3344         (elmo-msgdb-set-flag): Rewrite.
3345         (elmo-msgdb-unset-flag): Ditto.
3346
3347         * elmo-msgdb.el: Rewrite with luna.
3348
3349         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3350         (elmo-folder-msgdb): Follow the change above.
3351         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3352         (elmo-folder-unmark-important): Follow the API change.
3353         (elmo-folder-mark-as-important): Ditto.
3354         (elmo-folder-unmark-read): Ditto.
3355         (elmo-folder-mark-as-read): Ditto.
3356         (elmo-folder-unmark-answered): Ditto.
3357         (elmo-folder-mark-as-answered): Ditto.
3358         (elmo-folder-clear): Likewise.
3359
3360         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3361         instead of `elmo-msgdb-load' (renamed).
3362
3363         * elmo-version.el (elmo-version): Up to 2.11.12.
3364
3365 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3366
3367         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3368         change.
3369         (elmo-message-mark): Abolish.
3370         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3371         instead of `elmo-msgdb-change-mark'.
3372
3373         * elmo-pipe.el (elmo-message-mark): Abolish.
3374
3375         * elmo-multi.el (elmo-message-mark): Ditto.
3376
3377         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3378         (elmo-msgdb-unread-uncached-mark): Ditto.
3379         (elmo-msgdb-unread-cached-mark): Ditto.
3380         (elmo-msgdb-read-uncached-mark): Ditto.
3381         (elmo-msgdb-answered-cached-mark): Ditto.
3382         (elmo-msgdb-answered-uncached-mark): Ditto.
3383         (elmo-msgdb-important-mark): Ditto.
3384         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3385         `use-cache'.
3386         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3387         `flags'.
3388         (elmo-flag-table-load): Changed flag to list of flag.
3389         (elmo-flag-table-set): If flags is nil, set read flag.
3390         (elmo-flag-table-get): Return derived flags from global mark,
3391         cache status and saved flags.
3392         (elmo-msgdb-flag-table): Follow the change above.
3393         (elmo-msgdb-out-of-date-messages): New function.
3394
3395         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3396
3397         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3398
3399         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3400
3401         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3402         (elmo-nntp-msgdb-create-message): Ditto.
3403
3404         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3405
3406         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3407         independent.
3408         (elmo-folder-msgdb-create): Follow the API change.
3409
3410         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3411         (elmo-folder-append-messages): Ditto.
3412
3413         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3414         (elmo-folder-append-buffer): Ditto.
3415
3416         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3417
3418         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3419
3420         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3421         (elmo-archive-parse-mmdf): Ditto.
3422
3423         * elmo-version.el (elmo-version): Up to 2.11.11.
3424
3425 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3426
3427         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3428         `elmo-msgdb-mark'.
3429
3430         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3431
3432         * elmo-pipe.el (elmo-message-flags): Defined.
3433
3434         * elmo-multi.el (elmo-message-flags): Ditto.
3435
3436 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3437
3438         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3439         `elmo-msgdb-delete-msgs'.
3440
3441         * elmo.el (elmo-folder-count-flags): Don't use
3442         `elmo-msgdb-get-mark-alist'.
3443         (elmo-folder-detach-messages): Follow the API change.
3444
3445         * elmo.el (elmo-folder-list-messages): Append killed messages into
3446         result if `visible-only' is nil.
3447
3448         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3449         canceled messages.
3450         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3451         (elmo-folder-update-number): Likewise.
3452
3453         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3454         (elmo-pop3-sort-msgdb-by-original-number): Use
3455         `elmo-msgdb-sort-entities'.
3456
3457         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3458         (elmo-msgdb-sort-by-date): Use it.
3459         (elmo-msgdb-overview-sort-by-date): Abolish.
3460
3461         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3462
3463         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3464         (elmo-msgdb-flags): New function.
3465         (elmo-msgdb-merge): Use elmo-msgdb-append.
3466
3467         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3468         change.
3469
3470         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3471
3472         * elmo-dop.el (elmo-folder-status-dop): Use
3473         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3474
3475 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3476
3477         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3478
3479         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3480
3481         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3482
3483         * elmo-util.el (elmo-with-progress-display): New macro.
3484
3485         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3486
3487 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3488
3489         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3490         `elmo-folder-list-message-entities' instead of
3491         `elmo-msgdb-get-overview'.
3492         (elmo-map-folder-list-message-locations): Ditto.
3493
3494         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3495         methods instead of treat directly).
3496         (elmo-msgdb-clear): Ditto.
3497         (elmo-msgdb-delete-msgs): Ditto.
3498         (elmo-msgdb-sort-by-date): Ditto.
3499
3500         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3501         local variables.
3502         (elmo-nntp-folder-msgdb-create): Follow the API change.
3503
3504         * elmo-version.el (elmo-version): Up to 2.11.10.
3505
3506 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3507
3508         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3509         (elmo-msgdb-flags-to-mark): Ditto.
3510         (elmo-msgdb-append-entity): Ditto.
3511
3512         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3513         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3514         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3515         (elmo-archive-parse-mmdf): Ditto.
3516
3517         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3518
3519         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3520
3521         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3522
3523         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3524
3525         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3526
3527         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3528
3529         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3530
3531         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3532
3533         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3534         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3535         to empty msgdb.
3536
3537         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3538         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3539         instead of directly construction.
3540         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3541         instead of construct msgdb.
3542
3543         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3544         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3545         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3546         instead of construct msgdb.
3547
3548 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3549
3550         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3551         when field is from or subject.
3552
3553 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3554
3555         * elmo-multi.el (elmo-message-entity-parent): Define.
3556         (elmo-folder-search): Rewrite.
3557
3558 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3559
3560         * elmo-multi.el (elmo-message-cached-p): Define.
3561
3562         * elmo.el (elmo-message-cached-p): New method.
3563         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3564         (elmo-message-flags): New method.
3565         (elmo-message-flagged-p): New function.
3566
3567         * elmo-version.el (elmo-version): Up to 2.11.9.
3568
3569 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3570
3571         * elmo-version.el (elmo-version): Up to 2.11.8.
3572
3573         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3574
3575         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3576
3577 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3578
3579         * elmo.el (elmo-folder-detach-messages): Undo last change.
3580
3581 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3582
3583         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3584
3585         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3586         only when src folder type is pop3.
3587
3588 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3589
3590         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3591         elmo-msgdb-overview-entity-get-number instead of
3592         elmo-message-entity-number.
3593
3594 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3595
3596         * elmo-version.el (elmo-version): Up to 2.11.7.
3597
3598 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3599
3600         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3601         function.
3602
3603         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3604         (elmo-msgdb-merge): New function.
3605         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3606         (elmo-msgdb-make-index): Rewrite.
3607
3608         * elmo-version.el (elmo-version): Up to 2.11.6.
3609
3610         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3611         use it as a the path for loading message entities.
3612
3613         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3614
3615 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3616
3617         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3618         message-modified slot of itself if it does not require target msgdb.
3619
3620         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3621         if folder length is zero.
3622         (elmo-mime-display-as-is): Ditto.
3623
3624         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3625
3626         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3627
3628 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3629
3630         * elmo.el (elmo-folder-set-message-modified): New method.
3631         (elmo-generic-folder-commit): Use it.
3632         (elmo-folder-synchronize): Ditto.
3633
3634         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3635         (elmo-folder-commit): Remove duplicate definition.
3636
3637 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3638
3639         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3640
3641 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3642
3643         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3644         (elmo-strict-folder-diff): Ditto.
3645         (elmo-folder-set-info-max-by-numdb): Simplify.
3646
3647         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3648         elmo-msgdb-list-messages.
3649
3650         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3651         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3652
3653 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3654
3655         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3656         visible-only is non-nil.
3657         (elmo-folder-confirm-appends): Changed message.
3658         (elmo-folder-synchronize): Added argument disable-killed.
3659
3660         * elmo-multi.el (elmo-folder-synchronize): Added argument
3661         disable-killed.
3662
3663         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3664
3665         * elmo-version.el (elmo-version): Up to 2.11.5.
3666
3667         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3668         elmo-list-filter.
3669
3670         * elmo-util.el (elmo-list-filter): Simplify.
3671
3672         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3673         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3674         (elmo-generic-folder-diff): Abolish argument.
3675         (elmo-msgdb-load): Don't use number-alist.
3676
3677         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3678
3679         * elmo-pipe.el (elmo-folder-diff): Ditto.
3680
3681         * elmo-nmz.el (elmo-folder-diff): Ditto.
3682
3683         * elmo-net.el (elmo-folder-diff): Ditto.
3684
3685         * elmo-maildir.el (elmo-folder-diff): Ditto.
3686
3687         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3688
3689         * elmo-multi.el (elmo-folder-diff): Ditto
3690         (elmo-multi-folder-diff): Rewrite.
3691
3692 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3693
3694         * elmo-pipe.el (elmo-folder-msgdb): Define.
3695
3696 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3697
3698         * elmo.el (elmo-message-set-cached): Define as a method.
3699
3700         * elmo-pipe.el (elmo-message-set-cached): Define.
3701         (elmo-find-fetch-strategy): Ditto.
3702
3703         * elmo-multi.el (elmo-message-set-cached): Define.
3704         (elmo-find-fetch-strategy): Rewrite.
3705
3706         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3707
3708         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3709
3710 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3711
3712         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3713         instead of number-alist.
3714
3715         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3716         mark nor message-id when msgdb of source folder is not loaded.
3717
3718         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3719
3720         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3721
3722 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3723
3724         * elmo.el (elmo-folder-length): Don't require msgdb.
3725
3726 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3727
3728         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3729         (elmo-message-field): Ditto.
3730
3731         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3732         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3733         slot.
3734         (elmo-map-folder-list-answereds): Define.
3735         (elmo-maildir-list-location): Treat 'R' info.
3736         (elmo-folder-msgdb-create): Treat flag-table.
3737         (elmo-folder-append-messages): Save flag-table.
3738
3739 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3740
3741         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3742         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3743
3744 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3745
3746         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3747
3748         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3749         'read when mark is null.
3750
3751 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3752
3753         * elmo-version.el (elmo-version): Up to 2.11.4.
3754
3755 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3756
3757         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3758         (elmo-folder-mark-as-answered): Ditto.
3759
3760 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3761
3762         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3763         (elmo-pop3-get-session): Make msgdb directory after session.
3764         (elmo-folder-exists-p): Check exactly at the first time even when the
3765         elmo-pop3-exists-exactly is nil.
3766
3767         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3768         (elmo-folder-list-messages): Define instead of
3769         elmo-folder-list-messages-internal.
3770         (elmo-folder-check): Check destination folder.
3771         (elmo-folder-synchronize): Drain the pipe.
3772
3773         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3774         when msgdb is not loaded.
3775
3776         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3777
3778         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3779         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3780         messages.
3781
3782         * elmo.el (elmo-folder-kill-messages-before): New function.
3783         (elmo-folder-kill-messages): Ditto.
3784         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3785
3786         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3787         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3788         killed not by synchronize (e.g. scoring).
3789
3790 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3791
3792         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3793         treated.
3794         (elmo-folder-search): Follow the change above.
3795
3796         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3797         into the candidates of search field.
3798
3799 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3800
3801         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3802         (elmo-msgdb-unset-flag): Ditto.
3803
3804         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3805
3806 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3807
3808         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3809         (elmo-folder-commit): Define.
3810         (elmo-folder-synchronize): Ditto.
3811         (elmo-folder-list-flagged): Ditto.
3812         (elmo-folder-commit): Ditto.
3813         (elmo-folder-length): Ditto.
3814         (elmo-folder-count-flags): Ditto.
3815         (elmo-message-mark): Ditto.
3816         (elmo-message-field): Ditto.
3817         (elmo-message-entity): Ditto.
3818         (elmo-message-folder): Ditto.
3819
3820 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3821
3822         * elmo.el (elmo-message-field): Define as a method.
3823
3824         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3825         (elmo-message-field): Define.
3826
3827         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3828         (elmo-folder-list-importants): Ditto.
3829         (elmo-folder-list-answereds): Ditto.
3830
3831         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3832         qualifier.
3833         (elmo-folder-mark-as-read): Ditto.
3834         (elmo-folder-unmark-read): Ditto.
3835         (elmo-folder-mark-as-answered): Ditto.
3836         (elmo-folder-unmark-answered): Ditto.
3837         (elmo-folder-list-flagged): Define.
3838         (elmo-folder-commit): Ditto.
3839         (elmo-folder-length): Ditto.
3840         (elmo-folder-count-flags): Ditto.
3841
3842 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3843
3844         * elmo.el (elmo-folder-detach-messages): New method.
3845         (elmo-folder-move-messages): Use it.
3846         (elmo-folder-synchronize): Ditto.
3847
3848         * elmo-multi.el (elmo-folder-detach-messages): Define.
3849
3850         * elmo.el (elmo-message-copy-entity): New function.
3851         (elmo-message-entity-set-number): Ditto.
3852         (elmo-message-mark): Define as method.
3853
3854         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3855         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3856         (elmo-message-entity): Fixed last change.
3857         (elmo-message-mark): Define.
3858         (elmo-folder-msgdb-create): Abolish.
3859         (elmo-multi-folder-append-msgdb): Ditto.
3860         (elmo-multi-folder-diff): Fixed.
3861         (elmo-multi-split-number-alist): Removed.
3862         (elmo-multi-split-mark-alist): Removed.
3863         (elmo-folder-list-messages): Define.
3864         (elmo-folder-list-messages-internal): Removed.
3865
3866         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3867         local file messages.
3868         (elmo-folder-msgdb-create): Fixed read mark.
3869
3870 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3871
3872         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3873         if mark is nil.
3874
3875 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3876
3877         * elmo.el (elmo-folder-list-message-entities): Define as inline
3878         function.
3879         (elmo-folder-messages): Abolish.
3880
3881         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3882         folder.
3883         (elmo-folder-synchronize): Define.
3884         (elmo-message-entity): Define.
3885
3886 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3887
3888         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3889         elmo-imap4-session-select-mailbox.
3890
3891         * elmo.el (elmo-folder-move-messages): Don't display any message.
3892
3893         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3894         parsing.
3895         (elmo-imap4-session-check): Don't wait CHECK response.
3896         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3897
3898 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3899
3900         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3901
3902 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3903
3904         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3905         API.
3906         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3907
3908
3909         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3910         (elmo-folder-list-message-entities): Added argument in-msgdb and
3911         numbers.
3912         (elmo-folder-synchronize): Define as a method.
3913
3914         * elmo-nntp.el (elmo-folder-initialize): Don't use
3915         elmo-nntp-default-user if zero-length username is specified
3916         explicitly.
3917
3918 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3919
3920         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3921         server name in case with username.
3922         (XXX: this is ad-hoc fix against username includes "@", it
3923         should be solved fundamentally)
3924
3925 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3926
3927         * elmo-nntp.el (elmo-nntp-debug): New function.
3928         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3929         (elmo-network-authenticate-session): Hide auth-info from the log.
3930
3931         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3932         user name if it is equal to elmo-nntp-default-user.
3933
3934 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3935
3936         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3937         instead of shimbun-server-internal;
3938         Use shimbun-current-group instead of shimbun-current-group-internal.
3939         (elmo-folder-plugged-p): Use shimbun-server instead of
3940         shimbun-server-internal.
3941         (elmo-folder-set-plugged): Ditto.
3942         (elmo-net-port-info): Ditto.
3943         (elmo-folder-check): Ditto.
3944         (elmo-folder-expand-msgdb-path): Ditto.
3945         (elmo-folder-list-subfolders): Ditto.
3946
3947 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3948
3949         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3950         Convert field-name to lower case.
3951         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3952
3953 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3954
3955         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3956         `message' and `error' take format string.
3957
3958 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3959
3960         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3961
3962 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3963
3964         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3965         recursive call (can't byte compile on emacs 20.7).
3966
3967 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3968
3969         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3970         (elmo-folder-list-message-entities): New API.
3971         (elmo-message-entity): Ditto.
3972         (elmo-message-entity-parent): Ditto.
3973         (elmo-folder-do-each-message-entity): Ditto.
3974         (elmo-message-entity-number): Ditto.
3975         (elmo-message-entity-field): Ditto.
3976         (elmo-message-entity-set-field): Ditto.
3977         (elmo-folder-count-flags): Ditto.
3978         (elmo-folder-length): Ditto.
3979
3980         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3981         not.
3982
3983         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3984         (elmo-msgdb-count-marks): Abolish.
3985         (elmo-msgdb-make-entity): Ditto.
3986         (elmo-msgdb-do-each-entity): Ditto.
3987         (elmo-msgdb-message-entity): New inline function.
3988         (elmo-msgdb-message-entity-field): Ditto.
3989         (elmo-msgdb-message-entity-set-field): Ditto.
3990         (elmo-msgdb-make-message-entity): New function.
3991
3992 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3993
3994         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3995         to flag. (All other related portions are changed.)
3996         (elmo-folder-msgdb-create): Likewise.
3997         (elmo-generic-folder-append-messages): Use flag-table instead of
3998         seen-list.
3999         (elmo-folder-move-messages): Removed redundant process.
4000         (elmo-folder-synchronize): Likewise.
4001
4002         * elmo-msgdb.el (elmo-flag-table-get): New function.
4003         (elmo-flag-table-save): Fixed.
4004         (elmo-msgdb-length): New inline function.
4005         (elmo-msgdb-flag-table): New function.
4006         (elmo-msgdb-mark): Add optional argument new.
4007         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4008         (elmo-msgdb-seen-list): Ditto.
4009         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4010
4011
4012 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4013
4014         * elmo.el (elmo-message-set-mark): Abolish.
4015         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4016         (All related portions are changed.)
4017
4018         * elmo-msgdb.el (toplevel): Added comment.
4019         (elmo-load-msgdb): Added 4th element `path'.
4020         (elmo-msgdb-append): Follow the change above.
4021         (elmo-msgdb-clear): Ditto.
4022         (elmo-msgdb-delete-msgs): Ditto.
4023         (elmo-msgdb-get-path): New inline function.
4024         (elmo-msgdb-set-path): Ditto.
4025         (elmo-flag-table-filename): New variable.
4026         (elmo-flag-table-load): New function.
4027         (elmo-flag-table-set): Ditto.
4028         (elmo-flag-table-save): Ditto.
4029         (elmo-msgdb-get-field-value): Abolish.
4030         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4031
4032 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4033
4034         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4035         the folder has been deleted successfully.
4036         * elmo-imap4.el (elmo-folder-delete): Ditto.
4037         * elmo-archive.el (elmo-folder-delete): Ditto.
4038         * elmo-localdir.el (elmo-folder-delete): Ditto.
4039         * elmo-maildir.el (elmo-folder-delete): Ditto.
4040
4041 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4042
4043         * elmo-util.el (elmo-string-member-ignore-case): New function.
4044         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4045         (elmo-imap4-fetch-callback-1-subr): Likewise.
4046
4047 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4048
4049         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4050         the case of the name attribute "\Noselect".
4051
4052 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4053
4054         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4055
4056         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4057         flist, is not always a member of onum-alist.
4058
4059 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4060
4061         * elmo-version.el (elmo-version): Up to 2.11.3.
4062
4063 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4064
4065         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4066         copied from localdir's one.
4067
4068         * elmo-pipe.el (elmo-folder-rename): New method, rename
4069         destination folder with leaving source folder as it is.
4070
4071 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4072
4073         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4074         replace-regexp.
4075
4076 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4077
4078         * elmo-version.el (elmo-version): Up to 2.11.2.
4079
4080 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4081
4082         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4083         shimbun-open in case of "@".
4084         (elmo-folder-open-internal): Cope with shimbun = nil case.
4085         (elmo-folder-plugged-p): Ditto.
4086         (elmo-folder-list-subfolders): Make list for "@/" group.
4087
4088 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4089
4090         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4091         mailbox (e.g. for %~/something).
4092
4093 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4094
4095         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4096         Replace nested conditional with guard clauses.
4097
4098 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4099
4100         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4101         error [wl:11327].
4102
4103         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4104         print-depth.
4105
4106 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4107
4108         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4109         Replace nested conditional with guard clauses.
4110
4111 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4112
4113         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4114         (elmo-passwd-alist-save): Ditto.
4115         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4116
4117 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4118
4119         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4120         dir-name only if it is absolute path.
4121         (TODO: distinguish +/something and +something)
4122
4123 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4124
4125         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4126         path for "+~/something".
4127
4128 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4129
4130         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4131         as non-directory, cause error before rename-file.
4132         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4133         apropriately, mimic localdir's one.
4134         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4135
4136 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4137
4138         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4139
4140 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4141
4142         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4143
4144         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4145         
4146         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4147         is included in the global-mark or not.
4148
4149 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4150
4151         * utf7.el (toplevel): Avoid error when the function
4152         find-coding-system does not exist.
4153
4154 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4155
4156         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4157         cache even if the folder is plugged.
4158         (elmo-nntp-search-primitive): Do nothing when body search is
4159         invoked (although it is not used by the change above).
4160         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4161
4162 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4163
4164         * elmo-version.el (elmo-version): Up to 2.11.1.
4165
4166 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4167
4168         * elmo-archive.el: Specify charset.
4169
4170 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4171
4172         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4173         process buffer lives or not.
4174
4175         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4176         while flushing queues (It causes infinite loop).
4177
4178 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4179
4180         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4181
4182 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4183
4184         * utf7.el (toplevel): Check the ucs features dynamically.
4185         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4186
4187         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4188         folder is creatabe or not if it already exists.
4189
4190 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4191
4192         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4193
4194         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4195
4196         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4197         (elmo-imap4-read-response): Take care of garbage response.
4198
4199 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4200
4201         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4202         just return nil instead of error.
4203
4204 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4205
4206         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4207         search-key is "body".
4208
4209 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4210
4211         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4212         of elmo-string-matched-assoc to use match-data.
4213         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4214
4215 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4216
4217         * elmo-split.el (elmo-split->): New function.
4218         (elmo-split-<): Ditto.
4219
4220 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4221
4222         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4223         workaround for invalid message-id.
4224
4225 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4226
4227         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4228         return normal pop3 session or pop3 biff session.
4229
4230 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4231
4232         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4233         info part to the cur files when the new files already have it.
4234         (Adviced by Jared Rhine <jared@wordzoo.com>)
4235
4236 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4237
4238         * elmo-split.el (elmo-split-default-action): New variable.
4239         (elmo-split-subr): Use it if all other conditions are passed.
4240         Extend `fname' and rename it as `action'. (implemented
4241         Teranishi-san's idea in [wl:10800])
4242
4243 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4244
4245         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4246         * elmo-util.el: Ditto.
4247
4248 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4249
4250         * elmo.el (elmo-message-accessible-p): Renamed from
4251         elmo-message-cached-p and rewritten.
4252
4253 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4254
4255         * elmo.el (elmo-folder-list-flagged): New generic function.
4256         (elmo-folder-list-importants): New implementation.
4257         (elmo-folder-list-answereds): Ditto.
4258         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4259         Added 'digest'.
4260         (elmo-message-cached-p): New function.
4261         (elmo-message-set-flag): Ditto (no content).
4262         (elmo-message-unset-flag): Ditto.
4263         (elmo-folder-list-messages-mark-match): Abolish.
4264
4265         * elmo-util.el (elmo-regexp-opt): New function.
4266
4267         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4268         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4269         Added 'digest'.
4270         (elmo-msgdb-list-flagged): New function.
4271
4272         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4273         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4274         Added 'digest'.
4275
4276         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4277
4278 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4279
4280         * elmo-version.el (elmo-version): Up to 2.11.0.
4281
4282 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4283
4284         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4285         `elmo-file-cache-exists-p'; use proper mark that depends on
4286         `use-cache'.
4287         (elmo-msgdb-unset-flag): Ditto.
4288         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4289
4290         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4291         with 4th argument `use-cache'.
4292
4293 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4294
4295         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4296         (elmo-folder-mark-as-important): Ditto.
4297         (elmo-folder-unmark-read): Ditto.
4298         (elmo-folder-mark-as-read): Ditto.
4299         (elmo-folder-unmark-answered): Ditto.
4300         (elmo-folder-mark-as-answered): Ditto.
4301
4302         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4303         message status.
4304         (elmo-msgdb-mark): Likewise.
4305         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4306         (elmo-msgdb-unset-flag): Likewise.
4307
4308         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4309
4310 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4311
4312         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4313         `last:' filter.
4314
4315 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4316
4317         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4318         set spool-length to 0.
4319
4320 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4321
4322         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4323         (elmo-dop-queue-flush): Fixed last change.
4324
4325 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4326
4327         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4328         if require-msgdb slot is nil.
4329         (elmo-folder-list-importants): Likewise.
4330
4331 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4332
4333         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4334         mark is changed.
4335
4336         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4337         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4338         is changed.
4339
4340 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4341
4342         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4343
4344 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4345
4346         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4347
4348         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4349
4350 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4351
4352         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4353         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4354
4355 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4356
4357         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4358         the problem reported by Sean Rima [wl-en:180].
4359
4360 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4361
4362         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4363
4364         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4365
4366         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4367
4368         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4369
4370         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4371
4372         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4373
4374         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4375
4376 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4377
4378         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4379         status number.
4380
4381 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4382
4383         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4384         (elmo-folder-mark-as-read): Follow the API change.
4385         (elmo-message-set-cached): New function.
4386
4387         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4388
4389         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4390
4391         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4392         (elmo-folder-mark-as-important): Ditto.
4393         (elmo-folder-unmark-read): Ditto.
4394         (elmo-folder-mark-as-read): Ditto.
4395         (elmo-folder-unmark-answered): Ditto.
4396         (elmo-folder-mark-as-answered): Ditto.
4397
4398         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4399         (elmo-folder-unmark-important): Ditto.
4400         (elmo-folder-mark-as-read): Ditto.
4401         (elmo-folder-unmark-read): Ditto.
4402         (elmo-folder-mark-as-answered): Ditto.
4403         (elmo-folder-unmark-answered): Ditto.
4404
4405         * elmo-mark.el (toplevel): Removed some mark method definitions.
4406
4407         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4408         (elmo-map-folder-mark-as-answered): Ditto.
4409         (elmo-folder-unmark-important): Add :before qualifier.
4410         (elmo-folder-mark-as-important): Ditto.
4411         (elmo-folder-unmark-read): Ditto.
4412         (elmo-folder-mark-as-read): Ditto.
4413         (elmo-folder-unmark-answered): Define.
4414         (elmo-folder-mark-as-answered): Ditto.
4415
4416         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4417         (elmo-map-folder-unmark-answered): Ditto.
4418
4419         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4420
4421         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4422         (elmo-folder-mark-as-important): Ditto.
4423         (elmo-folder-unmark-read): Ditto.
4424         (elmo-folder-mark-as-read): Ditto.
4425         (elmo-folder-unmark-answered): Ditto.
4426         (elmo-folder-mark-as-answered): Ditto.
4427
4428         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4429         `mark'; evaluate mark condition.
4430         (elmo-msgdb-match-condition-internal): New function.
4431         (elmo-msgdb-match-condition): Call it; changed argument.
4432
4433         * elmo.el (elmo-folder-search): Follow the API change on
4434         `elmo-msgdb-match-condition'.
4435
4436 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4437
4438         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4439         original mark is non-nil.
4440
4441 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4442
4443         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4444         (elmo-map-folder-list-answereds): New method.
4445         (elmo-folder-list-unreads): Add :around qualifier.
4446         (elmo-folder-list-importants): Ditto.
4447         (elmo-folder-list-answereds): Ditto.
4448
4449 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4450
4451         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4452
4453         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4454         method if msgdb is not required.
4455         (elmo-filter-folder-list-importants): Don't treat global-mark.
4456
4457         * elmo.el (elmo-folder-list-importants): Ditto.
4458
4459         * elmo-net.el (elmo-folder-list-importants): Ditto.
4460
4461         * elmo-map.el (elmo-folder-list-importants): Ditto.
4462
4463         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4464
4465         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4466         (elmo-imap4-folder-list-any-plugged): New function.
4467         (elmo-imap4-search-internal-primitive): Use it.
4468
4469         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4470         only when require-msgdb slot is non-nil.
4471         (elmo-folder-close): Clear target folder's msgdb.
4472
4473 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4474
4475         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4476         (elmo-pop3-msgdb-create-by-header): Ditto.
4477         (elmo-pop3-msgdb-create-message): Ditto.
4478
4479         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4480
4481         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4482
4483         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4484
4485         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4486         (elmo-folder-msgdb-create): Ditto.
4487         (elmo-nntp-folder-msgdb-create): Ditto.
4488         (elmo-nntp-msgdb-create-by-header): Ditto.
4489         (elmo-nntp-msgdb-create-message): Ditto.
4490         (elmo-folder-list-unreads): Define.
4491
4492         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4493         (elmo-folder-append-messages): Ditto.
4494         (elmo-folder-list-unreads): Define.
4495         (elmo-folder-list-importants): Ditto.
4496         (elmo-folder-list-answereds): Ditto.
4497
4498         * elmo-net.el (elmo-folder-list-unreads): Define.
4499         (elmo-folder-list-importants): Ditto.
4500         (elmo-folder-list-answereds): Ditto.
4501         (elmo-folder-list-answereds-plugged): Ditto.
4502         (elmo-folder-msgdb-create): Follow the API change.
4503         (elmo-folder-msgdb-create-unplugged): Ditto.
4504         (elmo-folder-unmark-answered): Define.
4505         (elmo-folder-mark-as-answered-unplugged): Ditto.
4506         (elmo-folder-unmark-answered-unplugged): Ditto.
4507
4508         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4509         (elmo-msgdb-unread-uncached-mark): Ditto.
4510         (elmo-msgdb-unread-cached-mark): Ditto.
4511         (elmo-msgdb-read-uncached-mark): Ditto.
4512         (elmo-msgdb-answered-cached-mark): Ditto.
4513         (elmo-msgdb-answered-uncached-mark): Ditto.
4514         (elmo-msgdb-important-mark): Ditto.
4515         (elmo-msgdb-set-mark): Rewrite.
4516         (elmo-msgdb-count-marks): Rewrite.
4517         (elmo-msgdb-mark-alist-set): Abolish.
4518         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4519         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4520
4521         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4522         (elmo-folder-close): Define.
4523         (elmo-folder-msgdb-create): Follow the API change.
4524         (elmo-folder-list-unreads): Rewrite.
4525         (elmo-folder-mark-as-important): Ditto.
4526         (elmo-folder-unmark-important): Ditto.
4527         (elmo-folder-mark-as-read): Ditto.
4528         (elmo-folder-unmark-read): Ditto.
4529         (elmo-folder-mark-as-answered): Define.
4530         (elmo-folder-unmark-answered): Ditto.
4531
4532         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4533         (elmo-folder-append-messages): Ditto.
4534
4535         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4536
4537         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4538         (elmo-folder-list-importants): Ditto.
4539
4540         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4541         (elmo-folder-append-messages): Ditto.
4542
4543         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4544         change.
4545         (elmo-folder-msgdb-create-plugged): Ditto.
4546         (elmo-folder-append-messages): Ditto.
4547         (elmo-folder-list-answereds-plugged): Define.
4548         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4549         (elmo-folder-unmark-answered-plugged): Define.
4550         (elmo-folder-mark-as-answered-plugged): Ditto.
4551         (elmo-folder-search-requires-msgdb-p): Ditto.
4552
4553         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4554         (elmo-folder-initialize): Set it.
4555         (elmo-folder-msgdb): Define.
4556         (elmo-folder-check): Call elmo-folder-synchronize.
4557         (elmo-folder-close): Define.
4558         (elmo-folder-commit): Ditto.
4559         (elmo-folder-msgdb-create): Rewrite.
4560         (elmo-folder-list-unreads): Ditto.
4561         (elmo-folder-list-importants): Ditto.
4562         (elmo-folder-mark-as-read): Ditto.
4563         (elmo-folder-unmark-read): Ditto.
4564         (elmo-folder-mark-as-important): Ditto.
4565         (elmo-folder-unmark-important): Ditto.
4566         (elmo-folder-mark-as-answered): Define.
4567         (elmo-folder-unmark-answered): Ditto.
4568
4569         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4570         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4571         (elmo-dop-queue-method-name-alist): Likewise.
4572         (elmo-folder-mark-as-answered-dop): New inline function.
4573         (elmo-folder-unmark-answered-dop): Ditto.
4574         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4575
4576         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4577         (elmo-folder-msgdb-create): Ditto.
4578         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4579         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4580         (elmo-archive-parse-mmdf): Ditto.
4581
4582         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4583         (elmo-folder-list-unreads-internal): Ditto.
4584
4585         * elmo.el (elmo-folder-msgdb): Define as generic function.
4586         (elmo-folder-list-messages): Added argument `in-msgdb'.
4587         (elmo-folder-list-unreads): Define as generic function.
4588         (elmo-folder-list-importants): Ditto.
4589         (elmo-folder-list-answereds): Ditto.
4590         (elmo-folder-list-messages-with-global-mark): New function.
4591         (elmo-folder-msgdb-create): Removed mark arguments.
4592         (elmo-folder-unmark-answered): New generic function.
4593         (elmo-folder-mark-as-answered): Ditto.
4594         (elmo-folder-append-messages): Removed argunment `unread-marks'
4595         (elmo-folder-list-unreads-internal): Abolish.
4596         (elmo-folder-list-importants-internal): Ditto.
4597         (elmo-folder-search-requires-msgdb-p): New generic function.
4598         (elmo-folder-search-requires-msgdb-p-internal): New function.
4599         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4600         elmo-msgdb-load.
4601         (elmo-folder-search-fast): Added key 'mark'.
4602         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4603         instead of unread-marks argument.
4604         (elmo-folder-move-messages): Removed argunment `unread-marks'
4605         (elmo-folder-unmark-important): Define.
4606         (elmo-folder-mark-as-important): Ditto.
4607         (elmo-folder-unmark-read): Ditto.
4608         (elmo-folder-mark-as-read): Ditto.
4609         (elmo-folder-unmark-answered): Ditto.
4610         (elmo-folder-mark-as-answered): Ditto.
4611         (elmo-folder-replace-marks): Abolish.
4612         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4613         duplicates.
4614         (elmo-folder-synchronize): Removed mark arguments;
4615         return crosspost only number.
4616
4617 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4618
4619         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4620         Remove redundunt connectivity check.
4621
4622 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4623
4624         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4625         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4626
4627 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4628
4629         * pldap.el (ldap-decode-string): Return string as-is if
4630         `ldap-coding-system' is nil.
4631         (ldap-encode-string): Ditto.
4632         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4633         (ldap-default-host): Fixed docstring.
4634
4635 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4636
4637         * elmo-util.el (elmo-warning): Define as a macro which uses
4638         `display-warning' if it is defined as a function.
4639
4640         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4641         (elmo-split-equal): Use it.
4642         (elmo-split-match): Ditto.
4643         (elmo-split-message-entity): New buffer-local variable.
4644         (elmo-split-subr): Set it.
4645
4646         * elmo-version.el (elmo-version): Up to 2.9.15.
4647
4648 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4649
4650         * elmo-imap4.el (elmo-network-initialize-session):
4651         Check capability after starttls.
4652
4653 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4654
4655         * elmo-util.el (elmo-list-delete): Added optional argument
4656         DELETE-FUNCTION.
4657
4658         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4659
4660         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4661
4662         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4663
4664         * elmo-imap4.el (elmo-folder-initialize): Don't use
4665         elmo-imap4-default-mailbox.
4666
4667 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4668
4669         * elmo-split.el (toplevel): Use `product-provide'.
4670         (elmo-split): Checkdoc.
4671
4672 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4673
4674         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4675         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4676         the function `elmo-imap4-debug-1'.
4677
4678 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4679
4680         * elmo-split.el (elmo-split): Moved to run hooks and to show
4681         message from elmo-split-subr.
4682         (elmo-split-subr): Follow the change above.
4683
4684         * elmo-split.el (elmo-split-subr): New function (renamed from
4685         elmo-split-subr).
4686         (elmo-split): Changed to call elmo-split-subr by element of
4687         elmo-split-folder.
4688         (elmo-split-folder): Changed customization type to choice.
4689
4690 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4691
4692         * elmo-split.el (elmo-split-and): Fixed condition.
4693
4694 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4695
4696         * elmo-split.el: New file.
4697         (elmo-split): Fixed logic.
4698         Display "Test:" instead of "Folder:" when reharsal.
4699
4700         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4701         explicitly.
4702
4703         * elmo-version.el (elmo-version): Up to 2.9.14.
4704
4705         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4706         wl-expand-newtext).
4707
4708 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4709
4710         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4711         message with no message-id field.
4712
4713 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4714
4715         * elmo-version.el (elmo-version): Up to 2.9.13.
4716
4717         * elmo-dop.el (elmo-folder-status-dop): Fix.
4718
4719 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4720
4721         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4722
4723         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4724         changing default value of default-mime-charset.
4725         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4726
4727         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4728
4729         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4730         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4731         instead of elmo-dop-queue-method-name-alist to check merging queue.
4732         (elmo-folder-delete-messages-dop): Delete from queue if negative
4733         message number.
4734         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4735         file is already removed.
4736
4737 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4738
4739         * elmo-vars.el: Bind colon keywords for old Emacsen.
4740
4741 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4742
4743         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4744         against non-exsisting charset.
4745
4746 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4747
4748         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4749         Use eword-decode-and-unfold-unstructured-field-body.
4750
4751         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4752         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4753         exists to decode raw subject string.
4754         (toplevel): Require 'mime.
4755
4756         * elmo-version.el (elmo-version): Up to 2.9.12.
4757
4758 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4759
4760         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4761         (elmo-msgdb-set-mark): Ditto.
4762
4763         * elmo-version.el (elmo-version): Up to 2.9.11.
4764
4765 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4766
4767         * elmo-util.el (elmo-delete-match-files): New function.
4768
4769         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4770         instead of elmo-delete-directory.
4771
4772         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4773         elmo-hash-minimun-size as 63.
4774
4775         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4776         elmo-diff-unread is nil.
4777
4778         * elmo-imap4.el (elmo-folder-open): Fix.
4779
4780         * elmo.el (elmo-message-mark): Rewrite.
4781         (elmo-message-field): Ditto.
4782         (elmo-message-set-mark): Ditto.
4783         (elmo-folder-replace-marks): New function.
4784         (elmo-generic-folder-append-msgdb): Removed third argument for
4785         elmo-msgdb-append.
4786         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4787         (elmo-msgdb-load): New implementation.
4788
4789         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4790
4791         * elmo-util.el (elmo-list-insert): New implementation.
4792
4793         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4794         argument for elmo-msgdb-append.
4795         
4796
4797         * elmo-msgdb.el (elmo-load-msgdb): New function.
4798         (elmo-make-msgdb): Ditto.
4799         (elmo-msgdb-get-index): New inline function.
4800         (elmo-msgdb-set-index): Ditto.
4801         (elmo-msgdb-get-entity-hashtb): Ditto.
4802         (elmo-msgdb-get-mark-hashtb): Ditto.
4803         (elmo-msgdb-get-mark): Ditto.
4804         (elmo-msgdb-set-mark): Ditto.
4805         (elmo-msgdb-count-marks): Ditto.
4806         (elmo-msgdb-get-number): Ditto.
4807         (elmo-msgdb-get-field): Ditto.
4808         (elmo-msgdb-seen-list): Ditto.
4809         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4810         (elmo-msgdb-delete-msgs): Follow the changes above.
4811         (elmo-msgdb-overview-get-entity): Ditto.
4812         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4813         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4814         and rewritten.
4815         (elmo-msgdb-make-index): Likewise.
4816         (elmo-msgdb-append): Removed third argument.
4817         (elmo-msgdb-clear): Clear index as nil.
4818         (elmo-folder-set-info-hashtb): Removed.
4819         (elmo-folder-set-info-max-by-numdb): Ditto.
4820         (elmo-folder-info-make-hashtb): Ditto.
4821
4822         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4823
4824         * elmo-map.el (elmo-folder-pack-number): Ditto.
4825
4826 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4827
4828         * elmo-version.el (elmo-version): Up to 2.9.10.
4829
4830         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4831
4832         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4833
4834 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4835
4836         * elmo-utils.el (elmo-make-directory): Add option.
4837         Default file mode is 700.
4838
4839 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4840
4841         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4842
4843 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4844
4845         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4846         mime-charset.
4847
4848         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4849         and "smaller".
4850
4851 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4852
4853         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4854         (elmo-shimbun-folder-entity-hash): New function.
4855         (elmo-shimbun-folder-shimbun-header): Ditto.
4856         (elmo-shimbun-entity-to-header): Ditto.
4857         (elmo-shimbun-msgdb-to-headers): Removed.
4858         (elmo-shimbun-folder-setup): Ditto.
4859         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4860         for hash key.
4861         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4862         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4863         Removed useless local bind.
4864         (elmo-folder-open-internal): Don't call
4865         `elmo-shimbun-folder-setup'.
4866         (elmo-folder-close-internal): Clear entity-hash slot.
4867         (elmo-folder-clear): Ditto.
4868         (elmo-shimbun-msgdb-create-entity): Use
4869         `elmo-shimbun-folder-shimbun-header'.
4870         (elmo-map-message-fetch): Ditto.
4871         (elmo-shimbun-update-overview): Use overview entity instead of
4872         shimbun header to lookup id by references.
4873         (elmo-map-folder-list-message-locations): Use not only headers but
4874         also overviews to list locations.
4875
4876 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4877
4878         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4879         msgdb path.
4880
4881         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4882
4883 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4884
4885         * elmo-util.el (elmo-read-search-condition-internal): Give default
4886         value for date.
4887
4888 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4889
4890         * elmo-util.el (elmo-condition-parse-search-value): Accept
4891         YYYY-MM-DD format to search.
4892         * elmo-date.el (elmo-date-get-datevec): Likewise.
4893
4894 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4895
4896         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4897         debugging code.
4898
4899 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4900
4901         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4902         from t.
4903
4904         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4905
4906         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4907         case from `elmo-folder-exists-p'.
4908         (elmo-folder-exists-p): Removed.
4909         (elmo-folder-creatable-p) Ditto.
4910
4911         * elmo-net.el (elmo-folder-create): Defined.
4912         (elmo-folder-create-unplugged): New function.
4913         (elmo-folder-exists-p): Changed default value to nil from t.
4914
4915         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4916         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4917
4918         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4919         `elmo-create-folder-dop' and append queue
4920         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4921         (elmo-folder-create-dop-delayed): New function.
4922
4923         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4924
4925         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4926
4927         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4928         (elmo-folder-writable-p) : Ditto.
4929
4930         * elmo-version.el (elmo-version): Up to 2.9.9.
4931
4932 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4933
4934         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4935         `elmo-message-use-cache-p' returns nil.
4936         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4937         (ignore cache file and refer the substance in local folders)
4938
4939 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4940
4941         * elmo-version.el (elmo-version): Up to 2.9.8.
4942
4943 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4944
4945         * elmo-version.el (elmo-version): Up to 2.9.7.
4946
4947         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4948
4949 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4950
4951         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4952
4953 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4954
4955         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4956         from --early.
4957         (elmo-map-folder-list-message-locations): Reverse location list.
4958
4959 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4960
4961         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4962
4963 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4964
4965         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4966         as a key.
4967         (elmo-nntp-folder-list-subfolders): Follow the change above.
4968
4969 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4970
4971         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4972         name if authentication type is specified.
4973
4974 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4975
4976         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4977         variable.
4978         (elmo-default-nntp-stream-type): Ditto.
4979         (elmo-default-pop3-stream-type): Ditto.
4980
4981 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4982
4983         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4984
4985 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4986
4987         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4988         elmo-vars.el.
4989         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4990
4991         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4992         (elmo-maildir-folder-path): Ditto.
4993         (elmo-maildir-list): Ditto (abolished).
4994
4995 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4996
4997         * elmo-version.el (elmo-version): Up to 2.9.6.
4998
4999 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5000
5001         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5002         (elmo-maildir-folder-path): Ditto.
5003         (elmo-msgdb-directory): Ditto.
5004         (elmo-passwd-life-time): Ditto.
5005         (elmo-msgdb-extra-fields): Ditto.
5006         (elmo-enable-disconnected-operation): Ditto.
5007
5008 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5009
5010         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5011         other choices.
5012         (elmo-pop3-default-authenticate-type): Ditto.
5013
5014 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5015
5016         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5017         choices for custom.
5018         (elmo-pop3-default-authenticate-type): Ditto.
5019
5020 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5021
5022         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5023         mailbox to new-folder.
5024
5025 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5026
5027         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5028         less than new, set new as unread.
5029
5030         * elmo-util.el (elmo-string): Don't put text-property if nil.
5031
5032 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5033
5034         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5035         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5036
5037 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5038
5039         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5040         is nil on `completing-read'.
5041
5042 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5043
5044         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5045         for namespace part.
5046         (elmo-imap4-parse-namespace-subr): Ditto.
5047         (elmo-folder-list-subfolders): Append a delimiter when the specified
5048         folder path is a root with namespace and does not end with delimiter.
5049
5050 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5051
5052         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5053         was used.
5054
5055 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5056
5057         * elmo-util.el (elmo-save-buffer): The first argument of message
5058         is a format control string.
5059
5060 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5061
5062         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5063         `elmo-folder-diff').
5064         (elmo-diff-unread): Likewise.
5065
5066 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5067
5068         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5069         is t on `completing-read'.
5070
5071 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5072
5073         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5074         method of target folder with self mark-alist if MARK-ALIST is nil.
5075
5076 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5077
5078         * elmo-version.el (elmo-version): Up to 2.9.5.
5079
5080 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5081
5082         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5083         (elmo-dop-merge-funcs): Remove.
5084
5085 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5086
5087         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5088         Return t if PATH is directory, too.
5089         Use `dolist' instead of while loop.
5090
5091 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5092
5093         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5094         is deleted.
5095
5096 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5097
5098         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5099         return value to t.
5100         (elmo-folder-list-messages-unplugged): Return t if
5101         elmo-enable-disconnected-operation is nil.
5102
5103         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5104         `elmo-folder-list-messages-internal'.
5105
5106 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5107
5108         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5109         Change to looking-at `[23][0-9]+'.
5110         (elmo-network-initialize-session): Use 'error-msg'
5111         * elmo-net.el (elmo-network-open-session): Set unplugged
5112         if elmo-network-initialize-session returns 'elmo-open-err.
5113
5114 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5115
5116         * elmo-version.el (elmo-version): Up to 2.9.4.
5117
5118 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5119
5120         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5121         `elmo-folder-list-messages-internal'.
5122
5123 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5124
5125         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5126         (elmo-message-match-condition): New method.
5127         (elmo-folder-search-fast): New inline function.
5128         (elmo-msgdb-search): Removed.
5129
5130         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5131         target folder if it is unplugged.
5132         (elmo-folder-list-messages-internal): Return t if target folder is
5133         unplugged and itself is persistent; In this case, use list be
5134         searched already.
5135
5136         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5137         (elmo-msgdb-search-internal-primitive): Ditto.
5138         (elmo-msgdb-match-condition): New function.
5139         (elmo-msgdb-match-condition-primitive): Ditto.
5140
5141         * elmo-util.el (elmo-filter-condition-p): New macro.
5142
5143         * elmo-cache.el (elmo-folder-search): Removed.
5144
5145         * elmo-localdir.el (elmo-folder-search): Ditto.
5146
5147         * elmo-maildir.el (elmo-folder-search): Ditto.
5148
5149         * elmo-mark.el (elmo-folder-search): Ditto.
5150
5151         * elmo-nmz.el (elmo-folder-search): Ditto.
5152
5153         * elmo-sendlog.el (elmo-folder-search): Ditto.
5154
5155         * elmo-shimbun.el (elmo-folder-search): Ditto.
5156
5157         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5158         if folder is unplugged.
5159
5160         * elmo-nntp.el (elmo-folder-search): Likewise.
5161         (elmo-nntp-search-internal): New function.
5162
5163         * elmo-version.el (elmo-version): Up to 2.9.3.
5164
5165 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5166
5167         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5168
5169 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5170
5171         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5172
5173 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5174
5175         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5176
5177 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5178
5179         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5180         (elmo-map-folder-list-message-locations): Do drive letter conversion
5181         on Windows environment.
5182         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5183         (elmo-map-message-fetch): Ditto.
5184
5185 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5186
5187         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5188         (elmo-network-initialize-session): Ditto.
5189
5190 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5191
5192         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5193
5194         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5195
5196         * elmo-util.el (elmo-progress-clear): Ditto.
5197
5198         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5199         `DD-Mon-YYYY' type date.
5200
5201 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5202
5203         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5204         `elmo-date-make-sortable-string' instead of
5205         `timezone-make-date-sortable'.
5206
5207         * elmo-date.el (elmo-date-make-sortable-string): Use
5208         `timezone-make-time-string'.
5209
5210 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5211
5212         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5213
5214         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5215         `since'; Fix timezone.
5216
5217         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5218
5219         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5220
5221 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5222
5223         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5224
5225 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5226
5227         * elmo.el (elmo-generic-folder-append-messages): Make
5228         fetch-strategy with `use-cache' as 'maybe. Check return value of
5229         `elmo-message-fetch'.
5230         (elmo-message-fetch): Return return value of
5231         `elmo-message-fetch-with-cache-process'.
5232         (elmo-message-fetch-with-cache-process): Return non-nil if
5233         fetching was succeed. Load cache when fetching was failed and
5234         fetch-strategy-use-cache is 'maybe.
5235
5236         * elmo-util.el (elmo-file-cache-load): New function.
5237
5238         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5239         defun.
5240
5241         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5242         non-nil if fetching was succeed.
5243
5244         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5245
5246         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5247
5248         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5249         (elmo-message-fetch-with-cache-process): Likwise.
5250
5251         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5252
5253         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5254
5255         * elmo-version.el (elmo-version): Up to 2.9.2.
5256
5257 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5258
5259         * elmo.el (elmo-folder-delete): Delete msgdb path.
5260
5261         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5262
5263         * elmo-maildir.el (elmo-folder-delete): Ditto.
5264
5265         * elmo-localdir.el (elmo-folder-delete): Ditto.
5266
5267         * elmo-imap4.el (elmo-folder-delete): Ditto.
5268
5269 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5270
5271         * elmo.el (luna-define-class): Added `biff' slot.
5272
5273         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5274         (elmo-pop3-debug-inhibit-logging): Abolished.
5275         (elmo-network-close-session): Eliminated needless let.
5276         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5277         (elmo-pop3-send-command): Added `no-log' argument.
5278         (elmo-pop3-process-filter): Use `with-current-buffer'.
5279         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5280         if login failure.
5281         (elmo-pop3-auth-apop): Likewise.
5282         (elmo-network-authenticate-session): Likewise.
5283
5284         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5285         if biff folder.
5286
5287         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5288         string to determine protocol.
5289         (elmo-network-session-name-prefix): Abolished.
5290         (elmo-network-session-cache-key): Follow the change above.
5291         (elmo-network-open-session): Ditto.
5292
5293         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5294         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5295
5296         * elmo-version.el (elmo-version): Up to 2.9.1.
5297
5298         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5299         unmatch condition checking.
5300
5301         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5302         condition.
5303
5304 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5305
5306         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5307
5308 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5309
5310         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5311         test for while loop to execute at least one SEARCH command.
5312
5313 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5314
5315         * elmo-version.el (elmo-version): Up to 2.9.0.
5316
5317 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5318
5319         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5320         (elmo-archive-folder-path): Define.
5321         (elmo-folder-initialize): Setup `dir-name' slot.
5322         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5323         Use `dir-name' as prefix of each subfolders.
5324         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5325
5326 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5327
5328         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5329         (elmo-pipe-folder-list-target-messages): New internal function.
5330         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5331         `killed-list'.
5332         (elmo-pipe-folder-copied-list-load): New function.
5333         (elmo-pipe-folder-copied-list-save): Ditto.
5334         (elmo-folder-open-internal): Follow the change above.
5335         (elmo-folder-status): Fixed for copy.
5336
5337 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5338
5339         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5340
5341 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5342
5343         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5344         elmo-copy-file instead of elmo-add-name-to-file.
5345
5346         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5347
5348         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5349         "file://..." index.
5350
5351         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5352         of accept-process-output as 1.
5353         (elmo-pop3-read-contents): Ditto.
5354         (elmo-pop3-read-body): Ditto.
5355
5356 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5357
5358         * elmo-version.el (product-version-as-string): Remove define.
5359
5360 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5361
5362         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5363         (elmo-imap4-copy-messages): Chop number set using
5364         `elmo-imap4-number-set-chop-length'.
5365         (elmo-imap4-set-flag): Ditto.
5366         (elmo-imap4-search-internal-primitive): Ditto.
5367
5368 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5369
5370         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5371         `elmo-folder-make-temp-dir'
5372
5373         * elmo-vars.el (elmo-cache-directory): New variable.
5374         (elmo-cache-dir): Abolished.
5375         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5376
5377         * elmo-version.el (elmo-version): Up to 2.7.7.
5378
5379 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5380
5381         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5382         defcustom; Set default value as t.
5383
5384 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5385
5386         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5387         (ldap-search-program-arguments): Changed default value.
5388         (ldap-search-basic): Accept exit status 4.
5389         (ldap/field-body): Parse options.
5390         (ldap/collect-field): Ditto.
5391         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5392
5393         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5394         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5395         (elmo-imap4-accept-ok): Ditto.
5396         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5397         'notify-bye, only BYE error is reported.
5398         (elmo-folder-exists-p-plugged): Set no-error argument of
5399         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5400
5401         * elmo.el (elmo-imap4-bye-error): Changed message.
5402
5403         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5404         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5405         queues (It causes infinite loop).
5406
5407 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5408
5409         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5410         (RECENT UNSEEN MESSAGES) extension.
5411
5412 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5413
5414         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5415         Check number of overview fields.
5416
5417 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5418
5419         * elmo.el (elmo-folder-confirm-appends): Changed message.
5420         (elmo-folder-confirm-appends): Ditto.
5421
5422         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5423         `with-temp-buffer'.
5424         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5425
5426 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5427
5428         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5429         of elmo-folder-update-threshold is nil, which can be set by
5430         wl-summary-update-confirm-threshold.
5431
5432 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5433
5434         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5435         (elmo-nmz-index-alias-alist): Ditto.
5436         (elmo-map-folder-list-message-locations): Follow the change above.
5437
5438 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5439
5440         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5441
5442         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5443
5444         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5445
5446         * elmo-util.el (elmo-read): Ditto.
5447         (elmo-display-error): Ditto.
5448
5449         * elmo-vars.el (elmo-date-match): Ditto.
5450
5451         * pldap.el (ldap-coding-system): Ditto.
5452
5453         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5454         `elmo-inhibit-number-mapping' as nil.
5455
5456 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5457
5458         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5459         space delimiter for list response.
5460
5461 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5462
5463         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5464
5465 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5466
5467         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5468         (elmo-map-message-fetch): Fix.
5469         * elmo-map.el (elmo-folder-status): Fix for killed.
5470
5471 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5472
5473         * elmo-sendlog.el: New file.
5474         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5475
5476 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5477
5478         * acap.el (acap-logging-out): New buffer local variable.
5479         (acap-close): Set it.
5480         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5481         an error.
5482
5483 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5484
5485         * acap.el (acap-response-bye-p): New function.
5486         (acap-response-bye-message): Ditto.
5487         (acap-wait-for-response): If bye response is received, cause an error.
5488         (acap-parse-response): Make bye response when 'Bye' is received.
5489
5490 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5491
5492         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5493
5494 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5495
5496         * elmo-util.el (elmo-copy-file): Added argument
5497         `ok-if-already-exists'.
5498         (elmo-copy-file): Fixed typo.
5499
5500 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5501
5502         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5503
5504 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5505
5506         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5507
5508 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5509
5510         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5511         to killed-list.
5512
5513 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5514
5515         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5516         (elmo-folder-initialize): Fix for `copy'.
5517         (elmo-pipe-drain): Ditto.
5518         (elmo-folder-open-internal): Ditto.
5519         (elmo-folder-newsgroups): Fix.
5520
5521 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5522
5523         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5524         for each message.
5525
5526         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5527         recent value is returned from imap folder.
5528
5529         * elmo.el (elmo-folder-newsgroups): New generic function.
5530
5531         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5532         (elmo-folder-initialize): Set it.
5533         (elmo-folder-expand-msgdb-path): Use it.
5534         (elmo-folder-newsgroups): Define.
5535
5536         * elmo-filter.el (elmo-folder-newsgroups): Define.
5537
5538         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5539
5540         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5541
5542         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5543
5544 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5545
5546         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5547         user option.
5548         (elmo-shimbun-header-extra-field): New inline function.
5549         (elmo-shimbun-header-set-extra-field): Ditto.
5550         (elmo-shimbun-folder-header-hash-setup): Ditto.
5551         (elmo-shimbun-update-overview): Ditto.
5552         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5553         (elmo-shimbun-folder-setup): Use
5554         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5555         (elmo-shimbun-get-headers): Ditto.
5556         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5557         Insert `X-Shimbun-Id:' header if extra field is set.
5558         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5559         field's value instead of `shimbun-header-id'.
5560
5561         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5562         inline function.
5563         (elmo-msgdb-overview-entity-set-date): Ditto.
5564         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5565
5566 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5567
5568         * mmimap.el (mmimap-entity-section): Changed body node number from
5569         "0" to "1".
5570
5571 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5572
5573         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5574         `elmo-folder-delete-messages'.
5575
5576         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5577         (elmo-folder-initialize): Changed to expand alias into index path.
5578
5579         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5580         `elmo-mime-insert-header-from-buffer' with 6th arg
5581         `sorted-fields'.
5582
5583 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5584
5585         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5586
5587         * elmo.el (elmo-diff-new): New inline function.
5588         (elmo-diff-unread): Ditto.
5589         (elmo-diff-all): Ditto.
5590
5591         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5592         value from responseb.
5593         (elmo-imap4-folder-diff-plugged): Ditto.
5594         (elmo-imap4-server-diff-async): Added recent argument.
5595         (elmo-server-diff-async): Ditto.
5596         (elmo-imap4-folder-diff-plugged): Ditto.
5597
5598         * elmo-version.el (elmo-version): Up to 2.7.6.
5599
5600 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5601
5602         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5603         in quoted-stirng.
5604
5605 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5606
5607         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5608
5609         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5610
5611         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5612
5613         * elmo-multi.el (elmo-folder-initialize): Ditto.
5614
5615         * elmo-util.el (elmo-parse-token): New function.
5616         (elmo-parse-prefixed-element): Ditto.
5617
5618 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5619
5620         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5621         delete process.
5622         (elmo-imap4-accept-ok): Ditto.
5623
5624 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5625
5626         * mmimap.el (mime-imap-entity-header-string): Don't check first
5627         element of node-id is `0' (Follow last change).
5628
5629 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5630
5631         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5632         assigned irregular node-id to nested multipart section.
5633         (initialize-instance): Followed above change.
5634
5635 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5636
5637         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5638         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5639         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5640         `elmo-shimbun-get-headers');
5641         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5642         visible article on summary exists in headers).
5643         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5644
5645 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5646
5647         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5648         definition.
5649
5650 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5651
5652         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5653
5654 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5655
5656         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5657         header separator into loop condition.
5658
5659 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5660
5661         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5662         Return duplicate folder if it has subfolder.
5663
5664 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5665
5666         * elmo.el (elmo-make-folder): Add folder name error check.
5667
5668         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5669         (elmo-nntp-encode-group-string): New inline function.
5670         (elmo-nntp-decode-group-string): Ditto.
5671         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5672         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5673         Use `not' instead of `null';
5674         Use elmo-nntp-decode-group-string.
5675
5676         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5677
5678         * elmo-version.el (elmo-version): Up to 2.7.5.
5679
5680 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5681
5682         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5683         Hide progress gauge if `elmo-folder-move-messages' exits
5684         nonlocally.
5685
5686 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5687
5688         * elmo-imap4.el (elmo-folder-initialize): Use
5689         `elmo-imap4-encode-folder-string' for folder name.
5690
5691 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5692
5693         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5694         `done'.
5695
5696 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5697
5698         * elmo-util.el (elmo-progress-counter-alist): New internal
5699         variable.
5700         (elmo-progress-counter-value): New macro.
5701         (elmo-progress-counter-all-value): Ditto.
5702         (elmo-progress-counter-format): Ditto.
5703         (elmo-progress-counter-set-value): Ditto.
5704         (elmo-progress-set): New function.
5705         (elmo-progress-clear): Ditto.
5706         (elmo-progress-notify): Ditto.
5707
5708         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5709         counter.
5710
5711         * elmo.el (elmo-generic-folder-append-messages): Call
5712         `elmo-progress-notify'.
5713         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5714
5715         * elmo-archive.el (elmo-folder-append-messages): Call
5716         `elmo-progress-notify'.
5717
5718         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5719
5720         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5721
5722         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5723
5724 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5725
5726         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5727         'Create'.
5728         (elmo-message-encache-dop): Added argument `read'.
5729
5730         * elmo-shimbun.el (elmo-message-encache): Ditto.
5731
5732         * elmo-net.el (elmo-message-encache): Ditto.
5733
5734         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5735         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5736         elmo-imap4-seen-messages.
5737         (elmo-folder-msgdb-create-plugged): Initialize
5738         elmo-imap4-seen-messages;
5739         Set seen mark on elmo-imap4-seen-messages.
5740
5741         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5742
5743         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5744         elmo-folder-append-buffer.
5745         (elmo-folder-encache): Added optional argument `read'.
5746         (elmo-message-encache): Ditto.
5747
5748         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5749
5750         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5751
5752         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5753         if append buffer content succeds.
5754
5755 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5756
5757         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5758         elmo-display-progress.
5759
5760         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5761         Set 4th argument of mime-display-message.
5762         (elmo-mime-display-as-is): Ditto.
5763
5764 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5765
5766         * elmo-nmz.el (toplevel): Require 'mime-edit.
5767         (elmo-nmz-content-type-alist): Abolished.
5768         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5769         content is not a message.
5770         (elmo-map-message-fetch): Changed behavior exept for message content;
5771         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5772         content-type, Add From: and Subject: field.
5773
5774 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5775
5776         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5777         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5778         not a message.
5779
5780 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5781
5782         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5783         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5784
5785         * elmo-archive.el (elmo-folder-writable-p): Defined.
5786
5787         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5788
5789         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5790
5791         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5792
5793         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5794
5795         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5796
5797         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5798
5799         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5800
5801         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5802
5803 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5804
5805         * elmo-util.el (elmo-address-quote-specials): New function;
5806         Renamed from `wl-address-quote-specials'.
5807
5808 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5809
5810         * elmo-version.el (elmo-version): Up to 2.7.4.
5811
5812 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5813
5814         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5815
5816 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5817
5818         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5819         both compile-time and run-time to avoid byte-compile warning.
5820
5821 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5822
5823         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5824
5825 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5826
5827         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5828         option.
5829         (elmo-mime-display-as-is-internal): Use it.
5830
5831         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5832         if `read-passwd' is not defined.
5833
5834 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5835
5836         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5837         by original number.
5838         (elmo-folder-status): Call `elmo-folder-open-internal';
5839         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5840         (elmo-folder-close-internal): Set location-alist as nil.
5841         (elmo-folder-clear): Define.
5842         (elmo-folder-check): Don't set location-alist as nil.
5843
5844         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5845
5846 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5847
5848         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5849         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5850
5851         * mmimap.el (mime-imap-entity::requested): New slot.
5852         (mime-imap-location-fetch-entity-p): New generic function.
5853         (mime-decode-parameters): Define using `defun-maybe'.
5854         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5855         content-type structure.
5856         (mime-entity-body): Return empty body if
5857         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5858
5859         * elmo.el (elmo-message-displaying): New variable.
5860
5861         * elmo-mime.el (elmo-mime-message-display): Bind
5862         elmo-message-displaying as t.
5863
5864         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5865
5866 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5867
5868         * acap.el (acap-open): erase buffer before starting network process.
5869         (acap-store): Rewrite.
5870
5871 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5872
5873         * elmo-imap4.el (elmo-imap4-default-mailbox,
5874         elmo-imap4-default-server
5875         elmo-imap4-default-authenticate-type,
5876         elmo-imap4-default-user,
5877         elmo-imap4-default-port,
5878         elmo-imap4-default-stream-type,
5879         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5880
5881         * elmo-pop3.el (elmo-pop3-default-user,
5882         elmo-pop3-default-server,
5883         elmo-pop3-default-authenticate-type,
5884         elmo-pop3-default-port,
5885         elmo-pop3-default-stream-type,
5886         elmo-pop3-stream-type-alist): Ditto.
5887
5888         * elmo-nntp.el (elmo-nntp-default-server,
5889         elmo-nntp-default-user,
5890         elmo-nntp-default-port,
5891         elmo-nntp-default-stream-type,
5892         elmo-nntp-stream-type-alist): Ditto.
5893
5894         * elmo-vars.el: Follow changes above.
5895         (elmo-setting): New custom group; added 'elmo-setting group to
5896         above variables.
5897
5898         * elmo-version.el (elmo-version): Up to 2.7.3.
5899
5900         * acap.el (acap-parse-response): Don't delete process when BYE
5901         response (It causes hang-up on slow network environment).
5902         (toplevel): Added comment.
5903
5904 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5905
5906         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5907
5908         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5909         parsing NIL.
5910         (acap-parse-return-metadata): Ditto.
5911
5912         * slp.el: New file.
5913         (toplevel): Fixed typo.
5914
5915         * acap.el: New file.
5916         (acap-network-stream-open): Show "Connecting..." message.
5917         (acap-parse-response): Fixed problem for BYE untagged response.
5918         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5919         (toplevel): Added tiny comments.
5920
5921 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5922
5923         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5924         space delimiter for uidl response.
5925
5926 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5927
5928         * elmo-vars.el (elmo-use-semi): Eliminated.
5929
5930         * elmo-util.el (elmo-string-assoc-all): New function.
5931
5932 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5933
5934         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5935         property 'mime-preview-situation for `mime-preview-quit'.
5936
5937 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5938
5939         * elmo.el (elmo-message-fetch-with-cache-process): Call
5940         elmo-message-fetch-internal instead of causing an error when fetch
5941         strategy is 'entire but only 'section cache is available.
5942
5943 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5944
5945         * elmo-version.el (elmo-version): Up to 2.7.2.
5946
5947         * elmo.el (elmo-generic-folder-append-messages): Make
5948         fetch-strategy with `use-cache'.
5949
5950         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5951         (elmo-dop-queue-method-name): New macro.
5952
5953 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5954
5955         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5956         unbalanced parenthesis.
5957
5958 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5959
5960         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5961
5962 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5963
5964         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5965         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5966
5967 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5968
5969         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5970         local variables.
5971
5972 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5973
5974         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5975         (elmo-message-use-cache-p): Define.
5976         (elmo-folder-msgdb-create): Treat cache.
5977
5978 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5979
5980         * elmo-nntp.el (elmo-network-initialize-session): Call
5981         `elmo-nntp-send-mode-reader'.
5982         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5983
5984 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5985
5986         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5987         alist.
5988         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5989         assoc.
5990
5991         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5992         for `elmo-plugged-p'.
5993         (elmo-open-network-stream): Fixed stream-type argument.
5994
5995 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5996
5997         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5998         unknown archive type is specified.
5999
6000 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6001
6002         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6003
6004         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6005         while loading msgdb.
6006
6007         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6008         (elmo-folder-open-internal): Rewrite.
6009
6010 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6011
6012         * elmo-mime.el (elmo-mime-display-as-is-internal):
6013         Adjust buffer-multibyte status.
6014
6015 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6016
6017         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6018         of elmo-condition-find-key.
6019
6020         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6021         (elmo-condition-in-msgdb-p): Ditto.
6022         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6023         argument.
6024
6025 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6026
6027         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6028
6029 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6030
6031         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6032         label for elmo-display-progress.
6033
6034 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6035
6036         * elmo.el (elmo-folder-clear): New method.
6037         (elmo-folder-clear): Define.
6038         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6039
6040         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6041         (elmo-folder-clear): Define.
6042
6043         * elmo-map.el (elmo-folder-clear): Define.
6044
6045         * elmo-version.el (elmo-version): Up to 2.7.1.
6046
6047 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6048
6049         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6050         updates.
6051
6052 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6053
6054         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6055         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6056
6057 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6058
6059         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6060
6061         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6062         and re-written.
6063
6064         * elmo-imap4.el (elmo-folder-initialize): Use
6065         elmo-get-network-stream-type.
6066
6067         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6068
6069         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6070
6071 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6072
6073         * elmo.el (elmo-message-encache): Set unread argument for
6074         elmo-message-fetch.
6075
6076         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6077
6078         * elmo.el (elmo-net-port-info): New method.
6079
6080         * elmo-shimbun.el (elmo-net-port-info): Define.
6081         (elmo-message-encache): Ditto.
6082
6083         * elmo-net.el (elmo-net-port-info): Define as method.
6084
6085         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6086         unplugged status when elmo-enable-disconnected-operation is t.
6087
6088         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6089         of spool folder before checking new number.
6090
6091 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6092
6093         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6094         (elmo-network-setup-session): Ditto.
6095         (elmo-message-fetch-plugged): Ditto.
6096         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6097         (elmo-network-initialize-session): Ditto.
6098         (elmo-pop3-read-response): Abolish 3rd argument.
6099         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6100         (elmo-pop3-read-contents): Ditto.
6101         (elmo-pop3-read-body): Ditto.
6102         (elmo-folder-status): Call elmo-folder-close.
6103         (elmo-pop3-lock): Abolish.
6104         (elmo-pop3-unlock): Ditto.
6105         (elmo-pop3-locked-p): Ditto.
6106         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6107
6108 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6109
6110         * elmo-version.el (elmo-version): Up to 2.7.0.
6111
6112         * elmo-pop3.el (elmo-pop3-debug): New variable.
6113         (elmo-pop3-debug-inhibit-logging): Ditto.
6114         (elmo-pop3-debug): New function.
6115         (elmo-pop3-send-command): Call elmo-pop3-debug.
6116         (elmo-pop3-read-response): Added keep-lock optional argument;
6117         Don't unlock if keep-lock is non-nil.
6118         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6119         (elmo-network-authenticate-session): Bind
6120         elmo-pop3-debug-inhibit-logging as t.
6121         (elmo-network-setup-session): Call elmo-pop3-read-response with
6122         keep-lock argument.
6123         (elmo-pop3-read-msg): Ditto.
6124         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6125         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6126         (elmo-network-initialize-session): Call elmo-pop3-lock.
6127         (elmo-folder-close-internal): Don't clear location-alist slot.
6128         (elmo-folder-check): Clear location-alist slot.
6129
6130 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6131
6132         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6133         (elmo-pop3-send-command): Call elmo-pop3-lock.
6134         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6135         (elmo-pop3-read-contents): Ditto.
6136         (elmo-pop3-lock): New function.
6137         (elmo-pop3-unlock): Ditto.
6138         (elmo-pop3-locked-p): Ditto.
6139         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6140         returns t.
6141
6142 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6143
6144         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6145
6146         * elmo-util.el (elmo-file-field-primitive-condition-match):
6147         New inline function (Don't fetch file content if "first" or "last").
6148         (elmo-file-field-condition-match): Use
6149         elmo-file-field-primitive-condition-match.
6150
6151         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6152         "first".
6153
6154         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6155         (elmo-message-fetch-plugged): Fixed.
6156
6157         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6158
6159 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6160
6161         * elmo.el (elmo-folder-move-messages): Bind
6162         elmo-inhibit-display-retrieval-progress as t while moving messages.
6163
6164         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6165         New variable.
6166         (elmo-inhibit-display-retrieval-progress): Ditto.
6167
6168         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6169         for retrieval progress;
6170         Don't display progress when total buffer size is smaller than
6171         elmo-display-retrieval-progress-threshold.
6172         (elmo-message-fetch-plugged): Don't display progress when
6173         elmo-inhibit-display-retrieval-progress is non-nil.
6174
6175         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6176         for retrieval progress;
6177         Don't display progress when literal size is smaller than
6178         elmo-display-retrieval-progress-threshold.
6179         (elmo-imap4-message-fetch): Don't display progress when
6180         elmo-inhibit-display-retrieval-progress is non-nil.
6181
6182 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6183
6184         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6185         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6186         (elmo-imap4-message-fetch): Likewise.
6187
6188         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6189         (elmo-shimbun-index-range-alist): Ditto.
6190         (elmo-shimbun-use-entire-index): Abolish.
6191         (shimbun-mua-use-entire-index): Ditto.
6192         (elmo-shimbun-folder): Added new slot `range'.
6193         (elmo-folder-initialize): Setup slot `range'.
6194
6195 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6196
6197         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6198         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6199         (elmo-shimbun-get-headers): Use return value of
6200         `shimbun-article-expiration-days'.
6201         (elmo-folder-close-internal): Clean up last-check slot.
6202
6203         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6204         (elmo-pop3-total-size): New variable.
6205         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6206
6207         * elmo.el (elmo-folder-reserve-status-p): New method.
6208
6209         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6210         (elmo-shimbun-use-entire-index): New user option.
6211         (shimbun-elmo-mua): New class.
6212         (shimbun-mua-search-id): Define.
6213         (shimbun-mua-use-entire-index): Ditto.
6214         (elmo-shimbun-folder:last-check): New slot.
6215         (elmo-shimbun-headers-cache-header-list): Abolish.
6216         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6217         (elmo-shimbun-headers-cache-header-hash): Ditto.
6218         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6219         (elmo-shimbun-headers-cache-last-check): Ditto.
6220         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6221         (elmo-shimbun-headers-check-p): Rewrite.
6222         (elmo-shimbun-msgdb-to-headers): New function.
6223         (elmo-shimbun-get-headers): Rewrite.
6224         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6225         (elmo-folder-open-internal): Get headers only if
6226         `elmo-shimbun-headers-check-p' is non-nil.
6227         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6228         is non-nil.
6229         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6230         (elmo-quit): Removed.
6231
6232         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6233         function.
6234         (elmo-msgdb-overview-entity-set-extra): Ditto.
6235         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6236
6237         * elmo-map.el (elmo-folder-status): Don't call
6238         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6239         is non-nil.
6240
6241 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6242
6243         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6244         of `elmo-msgdb-search-internal-primitive' when condition's car is
6245         `and' or `or'.
6246
6247 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6248
6249         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6250
6251 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6252
6253         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6254         call `elmo-pipe-drain'.
6255
6256 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6257
6258         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6259         typo. (elmo-cache-folder -> elmo-mark-folder)
6260
6261 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6262
6263         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6264         `elmo-message-fetch'.
6265
6266 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6267
6268         * elmo-net.el (elmo-message-encache): Fixed typo.
6269         (elmo-message-fetch-unplugged): Changed call
6270         `elmo-message-fetch-internal' without argument `outbuf'.
6271
6272 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6273
6274         * elmo.el (elmo-message-encache): Define as generic function.
6275         (elmo-message-fetch-field): New generic function.
6276         (elmo-message-fetch-with-cache-process): Cause an error when
6277         fetch strategy is 'entire but only 'section cache is available.
6278         (toplevel): Fixed nmz folder definition.
6279
6280         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6281         (elmo-msgdb-resume-list-filename): Ditto.
6282         (elmo-queue-filename): Ditto.
6283         (elmo-enable-disconnected-operation): Changed default value to t.
6284
6285         * elmo-util.el (elmo-cache-path-section-p): New function.
6286         (elmo-file-cache-get): Use it.
6287         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6288         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6289         (elmo-dop-queue-save): Ditto.
6290
6291         * elmo-net.el (elmo-folder-status-unplugged): Call
6292         elmo-folder-status-dop.
6293         (elmo-folder-list-messages-unplugged): Implemented.
6294         (elmo-folder-delete-messages-unplugged): Define.
6295         (elmo-folder-msgdb-create): Define.
6296         (elmo-folder-msgdb-create-unplugged): Define.
6297         (elmo-folder-mark-as-read-unplugged): Ditto.
6298         (elmo-folder-unmark-read-unplugged): Ditto.
6299         (elmo-folder-mark-as-important-unplugged): Ditto.
6300         (elmo-folder-unmark-important-unplugged): Ditto.
6301         (elmo-message-encache): Ditto.
6302
6303         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6304         (elmo-dop-queue-save): Ditto.
6305
6306         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6307         `elmo-folder-msgdb-create'.
6308         (elmo-folder-append-buffer): Implemented unplugged operation.
6309         (elmo-folder-append-messages): Call parent method in unplugged status.
6310         (elmo-message-fetch-unplugged): Removed definition.
6311         (elmo-message-fetch-field): Implemented.
6312
6313         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6314         (elmo-dop-folder): Removed variable definition.
6315         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6316         (elmo-dop-queue-flush): Implemented.
6317         (elmo-dop-queue-merge): Removed definition (TODO).
6318         (elmo-dop-spool-folder): New function.
6319         (elmo-dop-spool-folder-append-buffer): Ditto.
6320         (elmo-dop-spool-folder-list-messages): Ditto.
6321         (elmo-dop-list-deleting-messages): Ditto.
6322         (elmo-folder-append-buffer-dop): Ditto.
6323         (elmo-folder-delete-messages-dop): Ditto.
6324         (elmo-message-encache-dop): New inline function.
6325         (elmo-create-folder-dop): Ditto.
6326         (elmo-folder-mark-as-read-dop): Ditto.
6327         (elmo-folder-unmark-read-dop): Ditto.
6328         (elmo-folder-mark-as-important-dop): Ditto.
6329         (elmo-folder-unmark-important-dop): Ditto.
6330         (elmo-folder-status-dop): Fixed.
6331         (elmo-folder-append-buffer-dop-delayed): New function.
6332         (elmo-folder-delete-messages-dop-delayed): Ditto.
6333         (elmo-dop-msgdb): Ditto.
6334
6335 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6336
6337         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6338
6339 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6340
6341         * elmo.el (elmo-folder-move-messages): Fixed problem when
6342         `dst-folder' is 'null.
6343
6344 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6345
6346         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6347         instead of current mark.
6348
6349         * elmo-multi.el (elmo-folder-list-importants-internal): No
6350         operation if importants is not list.
6351
6352         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6353         Return t if importants is not list.
6354
6355         * elmo-map.el (elmo-map-folder-list-importants): Define.
6356         (elmo-folder-list-importants-internal): Check return value of
6357         `elmo-map-folder-list-importants-internal'.
6358
6359         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6360
6361         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6362
6363         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6364
6365         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6366
6367 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6368
6369         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6370         (Patch is provided by <kita@coe.nttdata.co.jp>).
6371
6372 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6373
6374         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6375         mark folder.
6376
6377 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6378
6379         * elmo.el (elmo-message-fetch): Define.
6380         (elmo-message-fetch-with-cache-process): New generic method.
6381         (elmo-message-fetch-internal): New generic method.
6382         (elmo-folder-synchronize):
6383
6384         * elmo-archive.el (elmo-message-fetch-internal): Define.
6385         (elmo-message-fetch): Eliminated.
6386
6387         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6388         (elmo-message-fetch): Eliminated.
6389
6390         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6391         argument OUTBUF.
6392         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6393
6394         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6395         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6396
6397         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6398         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6399
6400         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6401
6402         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6403
6404         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6405
6406         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6407         (elmo-message-fetch-unplugged): New generic method.
6408         (elmo-message-fetch-internal): Remove cache process (Renamed from
6409         `elmo-message-fetch').
6410
6411         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6412         (elmo-message-fetch): Eliminated.
6413         (elmo-message-fetch-unplugged): Ditto.
6414
6415         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6416
6417 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6418
6419         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6420         of `to-be-deleted' from number-alist to number-list.
6421
6422 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6423
6424         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6425         (elmo-folder-mark-as-important): Ditto.
6426
6427 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6428
6429         * elmo.el (elmo-folder): Added process-duplicates slot.
6430
6431         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6432         (elmo-folder-unmark-read): Ditto.
6433         (elmo-folder-unmark-important): Ditto.
6434         (elmo-folder-mark-as-important): Ditto.
6435
6436         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6437         duplicated message processing.
6438
6439         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6440
6441 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6442
6443         * elmo-util.el (elmo-list-subdirectories-1): New function.
6444         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6445         (elmo-mapcar-list-of-list): New function.
6446
6447         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6448         `elmo-mapcar-list-of-list' instead of `mapcar'.
6449
6450         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6451
6452         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6453         `elmo-have-link-count'. Return the fully qualified folder name.
6454
6455 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6456
6457         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6458         (elmo-shimbun-headers-cache): New internal variable.
6459         (elmo-shimbun-headers-cache-header-list): New inline function.
6460         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6461         (elmo-shimbun-headers-cache-header-hash): Ditto.
6462         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6463         (elmo-shimbun-headers-cache-last-check): Ditto.
6464         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6465         (elmo-shimbun-lapse-seconds): Ditto.
6466         (elmo-shimbun-headers-cache-check-p): Ditto.
6467         (elmo-shimbun-get-headers): New function.
6468         (elmo-folder-open-internal): Call it.
6469         (elmo-quit): Define (Clear headers-cache).
6470
6471 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6472
6473         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6474
6475         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6476         (elmo-msgdb-flist-save): Ditto.
6477
6478         * elmo-shimbun.el (elmo-folder-list-subfolders):
6479         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6480         (elmo-folder-exists-p): Ditto.
6481
6482         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6483         argument for `shimbun-header-insert'.
6484
6485 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6486
6487         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6488         at first time.
6489
6490         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6491         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6492
6493 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6494
6495         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6496         (elmo-folder-plugged-p): Define.
6497         (elmo-folder-set-plugged): Ditto.
6498         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6499         (elmo-folder-list-messages-internal): Return t if unplugged.
6500         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6501
6502         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6503         when elmo-folder-list-messages-internal method of children returns t.
6504
6505         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6506         pair is nil.
6507         (elmo-folder-open-internal): Don't update if unplugged status.
6508
6509 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6510
6511         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6512         new message.
6513
6514 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6515
6516         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6517
6518         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6519         saving.
6520
6521 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6522
6523         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6524
6525         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6526         (elmo-folder-open-internal): Set up headers slot.
6527         (elmo-folder-check): Call elmo-folder-close-internal and
6528         elmo-folder-open-internal.
6529         (elmo-folder-close-internal): Clean up headers slot.
6530
6531 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6532
6533         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6534         exactly folder list.
6535         (elmo-folder-append-messages): Fixed append archive with prefix.
6536
6537         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6538         make temp files with start-number.
6539
6540         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6541
6542 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6543
6544         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6545         argument `visible-only'.
6546         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6547         instead of `if'.
6548
6549         * elmo-pop3.el (elmo-folder-open-internal): Check
6550         `elmo-inhibit-number-mapping' is non-nil.
6551
6552         * elmo-pipe.el (elmo-folder-status): Fixed.
6553
6554 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6555
6556         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6557
6558         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6559         (elmo-folder-open-internal): Setup `header-hash' slot.
6560         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6561         information.
6562         (elmo-map-message-fetch): Ditto.
6563
6564 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6565
6566         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6567         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6568         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6569         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6570
6571         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6572
6573 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6574
6575         * sb-airs.el: Added footer.
6576
6577         * shimbun.el (shimbun-article): Define as luna-method.
6578
6579         * sb-tcup.el: New file.
6580
6581         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6582         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6583
6584 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6585
6586         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6587         (shimbun-get-headers): Ditto.
6588
6589         * elmo.el: Moved obsolete variable definitions from
6590         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6591
6592         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6593         groups.
6594
6595         * shimbun.el: New file.
6596
6597         * elmo-shimbun.el: New file.
6598
6599         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6600         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6601         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6602         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6603
6604 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6605
6606         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6607         hierarchy is t.
6608
6609 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6610
6611         * elmo.el (elmo-folder-msgdb): Define as macro.
6612         (elmo-folder-open): Added argument `load-msgdb'.
6613         (elmo-generic-folder-open): Ditto.
6614         (elmo-folder-encache): New function.
6615
6616         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6617
6618         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6619
6620         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6621         Eliminated argument FOLDER and added argument MSGDB.
6622         (elmo-dop-queue-load): Moved from elmo-dop.el.
6623         (elmo-dop-queue-save): Ditto.
6624
6625         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6626
6627         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6628
6629         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6630         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6631         (elmo-filter-folder-list-importants-internal): Ditto.
6632
6633         * elmo-map.el (elmo-folder-pack-number): Ditto.
6634
6635         * elmo-mime.el (elmo-mime-message-display): Ditto.
6636
6637         * elmo.el (elmo-generic-folder-commit): Ditto.
6638         (elmo-folder-list-unreads): Ditto.
6639         (elmo-folder-list-importants): Ditto.
6640         (elmo-generic-folder-commit): Ditto.
6641         (elmo-message-set-mark): Ditto.
6642         (elmo-generic-folder-append-msgdb): Ditto.
6643         (elmo-folder-synchronize): Ditto.
6644         (elmo-folder-messages): Ditto.
6645         (elmo-init): Call elmo-dop-queue-load.
6646         (elmo-folder-list-messages): Ditto.
6647
6648         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6649         (elmo-nntp-folder-process-crosspost): Ditto.
6650         (elmo-folder-list-unreads-internal): Ditto.
6651
6652         * elmo-dop.el: Removed old functions.
6653
6654 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6655
6656         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6657         `folder' to `msgdb'.
6658
6659 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6660
6661         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6662         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6663
6664         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6665         case-fold-search.
6666
6667 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6668
6669         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6670         defined.
6671
6672         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6673         (mmimap-parse-parameters-from-list): Define as alias for
6674         `mime-decode-parameter-plist' if it is defined as function.
6675         (mmimap-make-mime-entity): Added argument `number'.
6676         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6677         as 0.
6678         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6679
6680         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6681
6682         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6683
6684         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6685
6686 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6687
6688         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6689
6690         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6691         when elmo-imap4-default-authenticate-type is nil.
6692         (elmo-folder-list-subfolders): Ditto
6693         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6694         (elmo-imap4-fetch-callback-1-subr): Renamed from
6695         `elmo-imap4-fetch-callback-1' and define as inline function.
6696         (elmo-imap4-fetch-callback-1):
6697         Renamed from `elmo-imap4-fetch-callback'.
6698         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6699
6700         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6701         msgdb path (To keep compatibility with main trunk).
6702
6703         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6704
6705         * elmo-util.el (elmo-make-file-cache): Moved position of
6706         some macros.
6707
6708         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6709         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6710         instead of `elmo-pop3-inhibit-uidl'.
6711         (elmo-folder-exists-p): Ditto.
6712         (elmo-pop3-folder-list-messages): Ditto.
6713
6714         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6715         instead of `elmo-pop3-inhibit-uidl'.
6716         (elmo-folder-status): Ditto.
6717
6718         * elmo-dop.el (elmo-dop-folder): New variable.
6719         (elmo-dop-lock-message): Eliminated.
6720         (elmo-dop-unlock-message): Ditto.
6721         (elmo-dop-lock-list-load): Ditto.
6722         (elmo-dop-lock-list-save): Ditto.
6723         (elmo-dop-delete-folder): Ditto.
6724         (elmo-dop-rename-folder): Ditto.
6725
6726         * elmo.el: Removed incomplete commentary.
6727
6728 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6729
6730         * elmo.el (toplevel): Require 'elmo-version first;
6731         for little `recursive-load-depth' settings.
6732         Fix "ends here" comment.
6733
6734 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6735
6736         * elmo-util.el (toplevel): Require 'poem;
6737         Some functions are moved from elmo-cache.el.
6738
6739         * elmo-net.el (toplevel): Require 'elmo-cache.
6740
6741         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6742
6743         * elmo.el (toplevel): Ditto.
6744
6745         * elmo-cache.el: Rewrite with luna;
6746         Some functions are moved to elmo-util.el.
6747
6748         * elmo-internal.el (elmo-internal-folder-list): New variable.
6749         (elmo-internal-folder-initialize): Rewrite.
6750         (elmo-folder-list-subfolders): Ditto.
6751
6752         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6753         (elmo-cache-collect-sub-directories): Ditto.
6754
6755 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6756
6757         * elmo-version.el (elmo-version): Up to 2.5.8.
6758
6759         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6760
6761         * elmo-util.el (elmo-list-insert): New function.
6762
6763 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6764
6765         * elmo.el (elmo-init): New function.
6766         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6767
6768         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6769         (Renamed from `elmo-localdir-header-chop-length').
6770
6771         * elmo-pop3.el (elmo-pop3-use-cache,
6772         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6773
6774         * elmo-nntp.el (elmo-message-fetch): Define.
6775         (elmo-message-fetch-unplugged): Ditto.
6776         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6777         (elmo-nntp-use-cache): Ditto.
6778         (elmo-nntp-max-number-precedes-list-active): Ditto.
6779
6780         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6781
6782         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6783         `elmo-msgdb-insert-file-header'.
6784         Use `elmo-msgdb-file-header-chop-length'.
6785
6786         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6787         `elmo-vars.el'.
6788
6789         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6790         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6791         `elmo-msgdb-insert-file-header'.
6792
6793         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6794         Use new variable;
6795         Define obsolete variables with `elmo-define-obsolete-variable',
6796
6797         * elmo-util.el (elmo-warning-buffer-name): New constant.
6798         (elmo-warning): New function.
6799         (elmo-obsolete-variable-alist): New variable.
6800         (elmo-obsolete-variable-show-warnings): New variable.
6801         (elmo-define-obsolete-variable): New function.
6802         (elmo-resque-obsolete-variable): Ditto.
6803         (elmo-resque-obsolete-variables): Ditto.
6804
6805 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6806
6807         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6808         Eliminated.
6809
6810         * elmo-pop3.el, elmo-nntp.el: Use custom.
6811
6812 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6813
6814         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6815         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6816
6817 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6818
6819         * Luna-fy Kenichi OKADA's following changes.
6820         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6821         `nohide'.
6822         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6823
6824 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6825
6826         * elmo-util.el (elmo-display-progress): Prefer
6827         `progress-feedback-with-label' to `lprogress-display'.
6828
6829 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6830
6831         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6832
6833 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6834
6835         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6836         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6837         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6838         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6839         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6840         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6841         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6842         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6843         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6844         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6845         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6846         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6847         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6848
6849 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6850
6851         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6852         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6853
6854 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6855
6856         * elmo.el (elmo-folder-process-crosspost): New generic method.
6857         (elmo-folder-writable-p): Ditto.
6858         (elmo-folder-message-appendable-p): Eliminated.
6859         (elmo-generic-folder-append-msgdb): Rewrite.
6860         (elmo-newsgroups-hashtb): New internal variable.
6861         (elmo-crosspost-message-set): Eliminated.
6862         (elmo-crosspost-message-delete): Ditto.
6863         (elmo-setup-subscribed-newsgroups): New function.
6864         (elmo-crosspost-message-alist-modified): New internal variable.
6865         (elmo-crosspost-message-alist-load): New function (Renamed from
6866         `wl-crosspost-alist-load').
6867         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6868         `wl-crosspost-alist-save').
6869
6870         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6871
6872         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6873         `unreads'.
6874         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6875         elmo-newsgroups-hashtb).
6876         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6877         `elmo-nntp-folder-update-crosspost-message-alist'.
6878         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6879         `elmo-nntp-groups-hashtb'.
6880         (elmo-nntp-make-groups-hashtb): Eliminated.
6881         (elmo-nntp-parse-newsgroups): New function (Renamed from
6882         `wl-parse-newsgroups').
6883         (elmo-folder-creatable-p, elmo-folder-writable-p,
6884         elmo-folder-close-internal, elmo-folder-mark-as-read,
6885         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6886         Define.
6887         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6888
6889         * elmo-net.el (elmo-message-fetch): Check buffer size.
6890
6891         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6892
6893         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6894
6895         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6896         before `close' command.
6897
6898         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6899         `mark-alist' (All other related portions are changed).
6900
6901 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6902
6903         * elmo-util.el (elmo-create-hash-size): Eliminated.
6904         (elmo-make-hash) Make a hash with `one less than a power of two'
6905         length.
6906
6907         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6908         (elmo-hash-maximum-size): Changed value.
6909
6910 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6911
6912         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6913         (elmo-mime-message-display-as-is): Ditto.
6914
6915 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6916
6917         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6918         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6919
6920 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6921
6922         * elmo-mark.el: New file.
6923
6924         * elmo-internal.el: Rewrite (Almost empty).
6925
6926 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6927
6928         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6929         (mime-imap-entity-header-string): Ditto.
6930         (mmimap-entity-section): Rewrite.
6931
6932 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6933
6934         * elmo-nmz.el: New file.
6935
6936         * elmo-pipe.el: Rewrite with luna.
6937
6938 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6939
6940         * elmo-archive.el: Rewrite with luna.
6941
6942         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6943         (elmo-folder-list-importants-internal): Ditto.
6944
6945 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6946
6947         * elmo-archive.el (elmo-archive-version): Abolish.
6948         (toplevel) Removed `boso' comment.
6949
6950 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6951
6952         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6953         elmo-msgdb-add-msgs-to-seen-list-subr;
6954         Changed argument seen-marks to unread-marks.
6955
6956         * elmo-nntp.el: Rewrite with luna.
6957
6958 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6959
6960         * elmo-filter.el: Rewrite with luna.
6961
6962 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6963
6964         * elmo-pop3.el: Rewrite with luna.
6965
6966 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6967
6968         * elmo-multi.el: Rewrite with luna.
6969
6970         * elmo-vars.el (elmo-use-killed-list): Abolish.
6971         All other related portions are changed.
6972         (elmo-filename-replace-string-alist): Renamed from
6973         elmo-msgid-replace-string-alist.
6974
6975 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6976
6977         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6978
6979         * elmo-map.el: New file.
6980         * elmo-maildir.el: Rewrite with luna.
6981
6982 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6983
6984         * elmo.el: Changed meaning of `elmo-folder-commit'.
6985         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6986
6987 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6988
6989         * elmo.el (elmo-folder-append-buffer): New function.
6990         (Renamed from `elmo-append-msg')
6991
6992 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6993
6994         * elmo-mime.el: New file.
6995
6996 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6997
6998         * elmo-cache.el: Rewrite.
6999
7000 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7001
7002         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7003
7004 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7005
7006         * elmo-vars.el (elmo): New group.
7007         (elmo-strict-diff-folder-regexp): New variable.
7008
7009         * elmo-util.el (elmo-call-func): Abolish.
7010         (elmo-folder-get-type): Ditto.
7011         (elmo-*-get-spec): Ditto.
7012         (elmo-*-spec-*): Ditto.
7013         (elmo-imap4-identical-name-space-p): Ditto.
7014         (elmo-folder-identical-system-p): Ditto.
7015         (elmo-folder-direct-copy-alist): Ditto.
7016         (elmo-folder-direct-copy-p): Ditto.
7017
7018         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7019         (elmo-folder-initialize): Define.
7020         (elmo-folder-get-primitive-list): Ditto.
7021
7022         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7023         (elmo-folder-initialize): Define.
7024         Renamed `elmo-network-session-host-internal' to
7025         `elmo-network-session-server-internal'.
7026
7027         * elmo-multi.el (elmo-multi-folder): New luna class.
7028         (elmo-folder-initialize): Define.
7029         (elmo-folder-get-primitive-list): Ditto.
7030         (elmo-folder-contains-type): Ditto.
7031         (elmo-message-use-cache-p): Ditto.
7032
7033         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7034         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7035
7036         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7037         (elmo-folder-initialize): Define.
7038
7039         * elmo-filter.el (elmo-filter-folder): New luna class.
7040         (elmo-folder-initialize): Define.
7041         (elmo-folder-get-primitive-list): Ditto.
7042         (elmo-folder-contains-type): Ditto.
7043
7044 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7045
7046         * elmo-imap4.el: Rewrite with luna.
7047
7048         * mmimap.el: New file.
7049
7050         * mmelmo.el, mmelmo-imap4.el: Removed.
7051
7052         * elmo-net.el: Ditto.
7053
7054         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7055         (elmo-folder-initialize): Define.
7056
7057         * elmo-archive.el (elmo-archive-folder): New luna class.
7058         (elmo-folder-initialize): Define.
7059
7060         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7061         `elmo-folder-msgdb-path'.
7062         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7063         `elmo-make-folder'.
7064
7065 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7066
7067         * elmo.el: New file.
7068
7069         * elmo2.el: Renamed to elmo.el.
7070
7071 \f
7072 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7073
7074         * elmo-cache.el (elmo-cache-expire-by-size): Count
7075         a disk usage for a cache file entry in KB even when
7076         its kind is a directory.
7077
7078 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7079
7080         * elmo-version.el (elmo-version): Up to 2.5.7.
7081
7082 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7083
7084         * elmo-version.el (elmo-version): Up to 2.5.6.
7085
7086 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7087
7088         * elmo-version.el (elmo-version): Up to 2.5.5.
7089
7090 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7091
7092         * elmo-imap4.el (elmo-network-authenticate-session):
7093         Fixed a logic for response checking.
7094
7095 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7096
7097         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7098         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7099         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7100         `sasl-mechanisms'.
7101
7102         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7103         for `starttls-open-stream' and `starttls-negotiate'.
7104
7105         * elmo-nntp.el: Remove autoload settings for
7106         `starttls-open-stream' and `starttls-negotiate'.
7107
7108         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7109         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7110         `luna-define-class' with `eval-and-compile'.
7111
7112 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7113
7114         * elmo-util.el (elmo-read-search-condition-internal):
7115         Require an element of table for searching field.
7116
7117 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7118
7119         * elmo-version.el (elmo-version): Up to 2.5.4.
7120
7121 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7122
7123         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7124
7125 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7126
7127         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7128
7129 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7130
7131         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7132         before greeting.
7133
7134 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7135
7136         * elmo-imap4.el (elmo-imap4-delete-folder):
7137         Send "close" before "delete" (Use commented out line).
7138         (elmo-imap4-rename-folder): Ditto.
7139
7140         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7141         folder string itself.
7142         (elmo-dop-list-deleted): New function.
7143         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7144         killed.
7145
7146         * elmo-util.el (elmo-string-rassoc-all): New function.
7147
7148 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7149
7150         * elmo-version.el (elmo-version): Up to 2.5.3.
7151
7152         * elmo-net.el (elmo-network-get-session): Changed logic for
7153         checking process status.
7154
7155         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7156         process is nil;
7157         Changed logic for checking process status.
7158
7159 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7160
7161         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7162         before greeting.
7163         (elmo-network-setup-session): Set UIDL hash size according to
7164         the length of list response.
7165         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7166         according to the length of list response;
7167         Return the length of list response.
7168         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7169
7170 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7171
7172         * elmo-imap4.el (toplevel): Require 'ssl.
7173         Add autoload 'starttls.
7174         * elmo-pop3.el (toplevel): Ditto.
7175         * elmo-nntp.el (toplevel): Ditto.
7176
7177 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7178
7179         * elmo-imap4.el (toplevel): defun at compile time.
7180         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7181         sasl-next-step, sasl-step-data, sasl-step-set-data.
7182         * elmo-pop3.el (toplevel): Ditto.
7183
7184 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7185
7186         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7187
7188 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7189
7190         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7191         if error.
7192         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7193         and `elmo-pop-auth-apop'.
7194
7195 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7196
7197         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7198
7199 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7200
7201         * elmo-pop3.el (elmo-network-authenticate-session): Split
7202         encoded response value.
7203
7204 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7205
7206         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7207         `elmo-pop3-force-login'.
7208         Redefine `sasl-mechanisms'.
7209         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7210
7211 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7212
7213         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7214         Delete `elmo-imap4-authenticator-alist'.
7215         (elmo-imap4-auth-cram-md5): Delete.
7216         (elmo-imap4-auth-digest-md5): Delete.
7217
7218 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7219
7220         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7221         (elmo-pop3-auth-scram-md5): Ditto.
7222         (elmo-pop3-auth-cram-md5): Ditto.
7223
7224 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7225
7226         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7227         Delete `elmo-pop3-authenticator-alist'.
7228
7229 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7230
7231         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7232         new SASL API.
7233         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7234
7235 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7236
7237         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7238
7239 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7240
7241         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7242         Fixed problem when `elmo-pop3-use-uidl' is nil.
7243         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7244
7245 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7246
7247         * elmo-version.el (elmo-version): Up to 2.5.2.
7248
7249 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7250
7251         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7252         New function.
7253         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7254         (elmo-pop3-msgdb-create-as-numlist): Use it.
7255
7256         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7257         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7258
7259         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7260         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7261
7262 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7263
7264         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7265         when elmo-mark-as-read is called with second argument nil.
7266
7267 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7268
7269         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7270         Moved to elmo-util.el.
7271
7272         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7273         Moved from elmo-pipe.el
7274
7275         * elmo-archive.el (elmo-archive-call-process): Enclose with
7276         static-if.
7277
7278         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7279         "RFC822" (because RFC822.PEEK is obsolete).
7280         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7281
7282 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7283
7284         * elmo-archive.el (elmo-archive-call-process): Don't check for
7285         the exit status when Nemacs is running.
7286
7287 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7288
7289         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7290         'plain.
7291
7292         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7293         (elmo-pop3-get-spec): Set default of auth to 'user.
7294
7295         * elmo-imap4.el (elmo-imap4-session-check):
7296         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7297         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7298         (elmo-imap4-auth-login): New function; Revival.
7299         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7300         `elmo-imap4-auth-login'.
7301
7302 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7303
7304         * elmo2.el (toplevel): Move `product-provide' declare.
7305         * mmelmo.el (toplevel): Ditto.
7306
7307 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7308
7309         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7310
7311 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7312
7313         * elmo-util.el (elmo-folder-get-store-type): New function.
7314         (elmo-folder-direct-copy-p): Use it.
7315
7316 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7317
7318         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7319         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7320         and result of `elmo-imap4-use-flag-p'.
7321         (elmo-imap4-fetch-callback-1): Set mark according to
7322         the result of `elmo-imap4-use-flag-p'.
7323
7324 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7325
7326         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7327         (elmo-generic-list-folder-unread): Ditto.
7328         (elmo-folder-get-info): Ditto.
7329         (elmo-folder-set-info-max-by-numdb): Ditto.
7330         (elmo-folder-get-info-max): Ditto.
7331         (elmo-folder-get-info-length): Ditto.
7332         (elmo-folder-get-info-unread): Ditto.
7333         (elmo-folder-info-make-hashtb): Ditto.
7334
7335         * elmo2.el: Removed above functions.
7336
7337 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7338
7339         * elmo-imap4.el (toplevel): Require 'ssl.
7340         Add autoload 'starttls.
7341         * elmo-pop3.el (toplevel): Ditto.
7342         * elmo-nntp.el (toplevel): Ditto.
7343
7344 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7345
7346         * elmo-imap4.el (toplevel): defun at compile time.
7347         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7348         sasl-next-step, sasl-step-data, sasl-step-set-data.
7349         * elmo-pop3.el (toplevel): Ditto.
7350
7351 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7352
7353         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7354
7355 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7356
7357         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7358         if error.
7359         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7360         and `elmo-pop-auth-apop'.
7361
7362 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7363
7364         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7365
7366 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7367
7368         * elmo-pop3.el (elmo-network-authenticate-session): Split
7369         encoded response value.
7370
7371 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7372
7373         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7374         `elmo-pop3-force-login'.
7375         Redefine `sasl-mechanisms'.
7376         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7377
7378 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7379
7380         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7381         Delete `elmo-imap4-authenticator-alist'.
7382         (elmo-imap4-auth-cram-md5): Delete.
7383         (elmo-imap4-auth-digest-md5): Delete.
7384
7385 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7386
7387         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7388         (elmo-pop3-auth-scram-md5): Ditto.
7389         (elmo-pop3-auth-cram-md5): Ditto.
7390
7391 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7392
7393         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7394         Delete `elmo-pop3-authenticator-alist'.
7395
7396 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7397
7398         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7399         new SASL API.
7400         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7401
7402 \f
7403 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7404
7405         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7406
7407 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7408
7409         * elmo-nntp.el (elmo-nntp-get-folders-info):
7410         Fixed problem when '\' character is contained in user-id.
7411         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7412
7413 \f
7414 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7415
7416         * elmo-imap4.el (elmo-imap4-delete-folder):
7417         Send "close" before "delete" (Use commented out line).
7418         (elmo-imap4-rename-folder): Ditto.
7419
7420         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7421         folder string itself.
7422         (elmo-dop-list-deleted): New function.
7423         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7424         killed.
7425
7426         * elmo-util.el (elmo-string-rassoc-all): New function.
7427
7428         * elmo-version.el (elmo-version): Up to 2.5.1.
7429
7430 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7431
7432         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7433
7434         * elmo-internal.el (elmo-internal-search): Fix last change.
7435
7436 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7437
7438         * elmo-internal.el (elmo-internal-search): Rewrite.
7439         (Fixed problem which is pointed out by Akihiro MOTOKI
7440         <motoki@da.jp.nec.com>)
7441
7442         * elmo-version.el (elmo-version): Up to 2.5.0.
7443
7444 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7445
7446         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7447
7448 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7449
7450         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7451         non-nil, make hierarchy.
7452
7453 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7454
7455         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7456         `elmo-pop3-use-uidl' must be bound to nil.
7457         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7458
7459 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7460
7461         * elmo-util.el (elmo-copy-file): Don't cause an error after
7462         `add-name-to-file' failed.
7463
7464         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7465         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7466
7467 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7468
7469         * elmo-version.el (elmo-version): Up to 2.3.93.
7470
7471 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7472
7473         * elmo-util.el (elmo-flatten): New function.
7474
7475 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7476
7477         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7478         sync Author header.
7479         * elmo-cache.el (toplevel): Ditto.
7480         * elmo-database.el (toplevel): Ditto.
7481         * elmo-date.el (toplevel): Ditto.
7482         * elmo-dop.el (toplevel): Ditto.
7483         * elmo-filter.el (toplevel): Ditto.
7484         * elmo-imap4.el (toplevel): Ditto.
7485         * elmo-internal.el (toplevel): Ditto.
7486         * elmo-localdir.el (toplevel): Ditto.
7487         * elmo-localnews.el (toplevel): Ditto.
7488         * elmo-maildir.el (toplevel): Ditto.
7489         * elmo-msgdb.el (toplevel): Ditto.
7490         * elmo-multi.el (toplevel): Ditto.
7491         * elmo-net.el (toplevel): Ditto.
7492         * elmo-nntp.el (toplevel): Ditto.
7493         * elmo-pipe.el (toplevel): Ditto.
7494         * elmo-pop3.el (toplevel): Ditto.
7495         * elmo-util.el (toplevel): Ditto.
7496         * elmo-vars.el (toplevel): Ditto.
7497         * elmo2.el (toplevel): Ditto.
7498         * mmelmo-imap4.el (toplevel): Ditto.
7499         * mmelmo.el (toplevel): Ditto.
7500
7501         * elmo-version.el (elmo-version): Move to top.
7502
7503         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7504         * elmo-imap4.el (toplevel): Ditto.
7505         * elmo-localdir.el (toplevel): Ditto.
7506         * elmo-msgdb.el (toplevel): Ditto.
7507         * elmo-nntp.el (toplevel): Ditto.
7508         * elmo-pop3.el (toplevel): Ditto.
7509         * elmo-version.el (toplevel): Ditto.
7510
7511         * elmo-localnews.el (toplevel): Added Keyword header.
7512
7513 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7514
7515         * elmo-version.el (product-version-as-string): Defined using
7516         `defun-maybe'.
7517         (toplevel): Use it.
7518
7519         * elmo-localdir.el (toplevel): Updated copyright notice.
7520         * elmo-version.el (toplevel): Ditto.
7521         * elmo-msgdb.el (toplevel): Ditto.
7522         * elmo-imap4.el (toplevel): Ditto.
7523         * elmo-nntp.el (toplevel): Ditto.
7524         * elmo-pop3.el (toplevel): Ditto.
7525
7526 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7527
7528         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7529         messages.
7530
7531         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7532         parameter value (It sometimes contains raw kanji).
7533
7534 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7535
7536         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7537         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7538
7539 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7540
7541         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7542
7543 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7544
7545         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7546         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7547
7548 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7549
7550         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7551         value if selecting folder succceeded.
7552         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7553
7554 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7555
7556         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7557         representation.
7558
7559         * elmo-util.el (elmo-string-matched-member): New function.
7560
7561 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7562
7563         * elmo-util.el (elmo-unintern): New macro.
7564         (elmo-number-set-member): Fixed docstring.
7565
7566         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7567         tag token.
7568
7569 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7570
7571         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7572         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7573
7574 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7575
7576         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7577         `no-error'.
7578         Added docstring.
7579         Return non-nil if selecting folder succeeded.
7580         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7581
7582 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7583
7584         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7585         `file-name-completion' returns t.
7586         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7587         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7588         directory if it does not exist.
7589         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7590         for iteration.
7591
7592 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7593
7594         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7595         enclosure (It's harmful in unplugged status).
7596
7597         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7598
7599         * mmelmo-1.el: Removed.
7600
7601         * mmelmo-2.el: Ditto.
7602
7603         * mmelmo-imap4-1.el: Ditto.
7604
7605         * mmelmo-imap4-2.el: Ditto.
7606
7607         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7608
7609         * mmelmo.el: Merged mmelmo-2.el.
7610
7611         * elmo-version.el (elmo-version): Up to 2.3.92.
7612
7613 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7614
7615         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7616         elmo-update-number): Remove last period in "...done." message.
7617         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7618         Ditto.
7619         * elmo-cache.el (elmo-cache-expire-by-size,
7620         elmo-cache-get-sorted-cache-file-list,
7621         elmo-cache-msgdb-create-as-numlist): Ditto.
7622         * elmo-dop.el (elmo-dop-save-pending-messages,
7623         (elmo-dop-flush-pending-append-operations): Ditto.
7624         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7625         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7626         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7627         (elmo-localdir-pack-number): Ditto.
7628         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7629         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7630         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7631         mime-write-entity-content): Ditto.
7632         * pldap.el (ldap-search-basic): Ditto.
7633
7634 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7635
7636         * elmo-version.el (elmo-version): Up to 2.3.91.
7637
7638         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7639         Only when filter is 'last'.
7640
7641         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7642         (elmo-condition-parse-search-value): Use it.
7643         (elmo-read-search-condition-internal): Quote value only when
7644         it is not an atom.
7645
7646 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7647
7648         * elmo2.el (elmo-generic-folder-diff): Fix.
7649
7650 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7651
7652         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7653         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7654         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7655         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7656         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7657         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7658
7659 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7660
7661         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7662         extra-fields.
7663
7664 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7665
7666         * elmo-version.el (elmo-version): Up to 2.3.90.
7667
7668         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7669         (elmo-imap4-list-folder-important): Ditto.
7670
7671 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7672
7673         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7674
7675 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7676
7677         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7678
7679 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7680
7681         * elmo-nntp.el (elmo-network-initialize-session):
7682         Add starttls negotiation.
7683
7684 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7685
7686         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7687         response.
7688         (elmo-network-setup-session): Define.
7689         Call `elmo-nntp-send-mode-reader' when session opened.
7690
7691 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7692
7693         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7694
7695 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7696
7697         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7698         an invalid SPACE character ahead of `SEARCH' command.  Move
7699         a valid SPACE character following `SEARCH' from conditional
7700         `format' arguments to control-strings.
7701
7702 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7703
7704         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7705         was succeeded.
7706
7707         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7708
7709 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7710
7711         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7712         `w32-get-true-file-link-count' as t.
7713
7714         * elmo-imap4.el (elmo-imap4-read): Abolished.
7715         (Renamed to `elmo-read' and moved to elmo-util.el)
7716         All other related portions are changed.
7717
7718         * elmo-util.el (elmo-read): New function.
7719         (elmo-condition-parse-search-value): Use it.
7720
7721 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7722
7723         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7724
7725         * elmo-nntp.el (elmo-nntp-session): Define.
7726         (elmo-nntp-setting): Abolished.
7727         All other related portions are changed.
7728         (elmo-nntp-get-server-command): Changed argument.
7729         (elmo-nntp-set-server-command): Ditto.
7730         (elmo-nntp-xover-p): Ditto.
7731         (elmo-nntp-set-xover): Ditto.
7732         (elmo-nntp-listgroup-p): Ditto.
7733         (elmo-nntp-set-listgroup): Ditto.
7734         (elmo-nntp-list-active-p): Ditto.
7735         (elmo-nntp-set-list-active): Ditto.
7736         (elmo-nntp-xhdr-p): Ditto.
7737         (elmo-nntp-set-xhdr): Ditto.
7738         (elmo-nntp-flush-connection): Abolished.
7739         (elmo-nntp-get-connection): Abolished.
7740         (elmo-nntp-get-session): New function.
7741         (elmo-network-initialize-session): Defined.
7742         (elmo-network-authenticate-session): Ditto.
7743         (elmo-nntp-send-mode-reader): Changed argument.
7744         (elmo-nntp-send-command): Changed argument.
7745         All other related portions are changed.
7746         (elmo-nntp-read-response): Ditto.
7747         (elmo-nntp-read-raw-response): Ditto.
7748         (elmo-nntp-read-contents): Ditto.
7749         (elmo-nntp-read-body): Ditto.
7750         (elmo-nntp-goto-folder): Abolished.
7751         (elmo-nntp-select-group): New function.
7752         All other related portions are changed.
7753         (This function substitutes `elmo-nntp-goto-folder')
7754         (elmo-nntp-msgdb-create-by-header): Rewrite.
7755         (elmo-nntp-get-overview): Eliminated.
7756         (elmo-nntp-get-message): Ditto.
7757         (elmo-nntp-open-connection) Abolished.
7758         (elmo-nntp-read-msg): Rewrite.
7759         (elmo-nntp-post): Ditto.
7760         (elmo-nntp-send-data): Abolished.
7761         (elmo-nntp-send-buffer): New function.
7762         (elmo-nntp-send-data-line): Define as inline function.
7763         (elmo-nntp-get-folders-info-prepare): Use session as key.
7764         (elmo-nntp-groups-read-response): Changed argument.
7765         (elmo-nntp-retrieve-headers): Ditto.
7766         (elmo-nntp-msgdb-create-message): Ditto.
7767
7768         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7769         when searching by 'since' or 'before'.
7770
7771 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7772
7773         * elmo-version.el (toplevel): Use product-version-as-string for set
7774         verstion-string, if defined.
7775
7776 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7777
7778         * elmo-util.el: Doc fixes.
7779
7780 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7781
7782         * elmo-archive.el (toplevel): Use product-provide.
7783         * elmo-cache.el (toplevel): Ditto.
7784         * elmo-database.el (toplevel): Ditto.
7785         * elmo-date.el (toplevel): Ditto.
7786         * elmo-dop.el (toplevel): Ditto.
7787         * elmo-filter.el (toplevel): Ditto.
7788         * elmo-imap4.el (toplevel): Ditto.
7789         * elmo-internal.el (toplevel): Ditto.
7790         * elmo-localdir.el (toplevel): Ditto.
7791         * elmo-localnews.el (toplevel): Ditto.
7792         * elmo-maildir.el (toplevel): Ditto.
7793         * elmo-msgdb.el (toplevel): Ditto.
7794         * elmo-multi.el (toplevel): Ditto.
7795         * elmo-net.el (toplevel): Ditto.
7796         * elmo-nntp.el (toplevel): Ditto.
7797         * elmo-pipe.el (toplevel): Ditto.
7798         * elmo-pop3.el (toplevel): Ditto.
7799         * elmo-util.el (toplevel): Ditto.
7800         * elmo-vars.el (toplevel): Ditto.
7801         * elmo2.el (toplevel): Ditto.
7802         * mmelmo-1.el (toplevel): Ditto.
7803         * mmelmo-2.el (toplevel): Ditto.
7804         * mmelmo-imap4-1.el (toplevel): Ditto.
7805         * mmelmo-imap4-2.el (toplevel): Ditto.
7806         * mmelmo-imap4.el (toplevel): Ditto.
7807         * mmelmo.el (toplevel): Ditto.
7808
7809 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7810
7811         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7812         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7813
7814 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7815
7816         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7817         before splitting.
7818         (elmo-multi-split-number-alist): Ditto.
7819
7820 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7821
7822         * elmo-version.el: New file.  Use product.el.
7823         * elmo2.el: Add (require 'elmo-version).
7824         * elmo-vars.el (elmo-appname, elmo-version): Move to
7825         elmo-version.el
7826
7827 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7828
7829         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7830         `elmo-msgdb-expand-path'.
7831         (elmo-msgdb-load): Ditto.
7832         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7833         (elmo-generic-list-folder-unread): Rewrite.
7834         (elmo-generic-list-folder-important): Changed argument.
7835         (elmo-list-folder-unread): Ditto.
7836         (elmo-list-folder-important): Ditto.
7837         (elmo-folder-diff): Rewrite.
7838         (elmo-generic-folder-diff): New function.
7839         (elmo-multi-get-number-alist-list): Abolished
7840         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7841         (elmo-multi-folder-diff): Moved to elmo-multi.el
7842         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7843
7844         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7845         `elmo-msgdb-expand-path'.
7846         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7847         (elmo-pop3-read-msg): Ditto.
7848         (elmo-pop3-delete-msgs): Ditto.
7849         (elmo-pop3-folder-diff): New alias.
7850
7851         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7852         `elmo-msgdb-expand-path'.
7853         (elmo-pipe-list-folder-unread): Changed arguments.
7854         (elmo-pipe-list-folder-important): Ditto.
7855         (elmo-pipe-folder-diff): New alias.
7856
7857         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7858         `elmo-msgdb-expand-path'.
7859         (elmo-nntp-max-of-folder): Ditto.
7860         (elmo-nntp-msgdb-create): Ditto.
7861         (elmo-nntp-delete-msgs): Ditto.
7862         (elmo-nntp-folder-diff): New alias.
7863
7864         * elmo-multi.el (elmo-multi-folder-diff): New function.
7865         (elmo-multi-split-mark-alist): Ditto.
7866         (elmo-multi-split-number-alist): Ditto.
7867         (elmo-multi-mark-alist-list): Abolished (Renamed to
7868         elmo-multi-split-mark-alist).
7869         (elmo-multi-list-folder-unread): Rewrite.
7870         (elmo-multi-list-folder-important): Ditto.
7871         (elmo-multi-list-folder): Set `spec' as 1st argument for
7872         `elmo-msgdb-expand-path'.
7873         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7874         instead of `elmo-multi-get-number-alist-list'.
7875
7876         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7877         If 1st argument is not string, treat as spec.
7878         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7879         `elmo-msgdb-expand-path'.
7880         (elmo-msgdb-flist-load): Ditto.
7881         (elmo-msgdb-flist-save): Ditto.
7882         (elmo-msgdb-delete-path): Ditto.
7883         (elmo-msgdb-rename-path): Ditto.
7884
7885         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7886         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7887         (elmo-maildir-delete-mark-msgs): Ditto.
7888         (elmo-maildir-msgdb-create): Ditto.
7889         (elmo-maildir-read-msg): Ditto.
7890         (elmo-maildir-delete-msgs): Ditto.
7891         (elmo-maildir-list-folder-subr): Ditto.
7892         (elmo-maildir-search): Ditto.
7893         (elmo-maildir-get-msg-filename): Ditto.
7894         (elmo-maildir-pack-number): Ditto.
7895         (elmo-maildir-folder-diff): New alias.
7896
7897         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7898
7899         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7900         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7901         (elmo-localdir-folder-diff): New alias.
7902
7903         * elmo-internal.el (elmo-internal-list-folder-subr):
7904         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7905         (elmo-internal-list-folder-by-location): Ditto.
7906         (elmo-internal-msgdb-create): Ditto.
7907         (elmo-internal-delete-msgs): Ditto.
7908         (elmo-internal-read-msg): Ditto.
7909         (elmo-internal-folder-diff): New alias.
7910
7911         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7912         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7913         `elmo-msgdb-expand-path'.
7914         (elmo-imap4-list-folder-unread): Changed arguments.
7915         (elmo-imap4-list-folder-important): Ditto.
7916
7917         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7918         (elmo-filter-list-folder-important): Ditto.
7919         (elmo-filter-folder-diff): New function.
7920
7921         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7922
7923         * elmo-cache.el (elmo-cache-list-folder):
7924         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7925         (elmo-cache-copy-msgs): Ditto.
7926         (elmo-cache-folder-diff): New alias.
7927
7928         * elmo-archive.el (elmo-archive-list-folder-subr):
7929         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7930         (elmo-archive-get-archive-name): Ditto.
7931         (elmo-archive-create-file): Ditto.
7932         (elmo-archive-append-msg): Ditto.
7933         (elmo-archive-copy-msgs): Ditto.
7934         (elmo-archive-copy-msgs-froms): Ditto.
7935         (elmo-archive-get-msg-filename): Ditto.
7936         (elmo-archive-folder-diff): New alias.
7937
7938 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7939
7940         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7941         (elmo-pop3-stream-type-alist): New variable.
7942         (elmo-nntp-stream-type-alist): New variable.
7943
7944         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7945         (elmo-kill-buffer): Ditto.
7946         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7947         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7948         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7949         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7950         (elmo-imap4-get-spec): Take into account
7951         `elmo-imap4-stream-type-alist'.
7952
7953 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7954
7955         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7956         (elmo-nntp-list-folders-get-cache): Ditto.
7957
7958 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7959
7960         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7961         character before 'uid'.
7962
7963 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7964
7965         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7966
7967         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7968
7969         * elmo-util.el (elmo-number-set-member): New function.
7970         (elmo-number-set-append-list): Ditto.
7971         (elmo-number-set-append): Ditto.
7972
7973         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7974         Use `elmo-number-set-member'.
7975         (elmo-living-messages): Ditto.
7976         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7977         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7978
7979         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7980         (elmo-imap4-add-to-cont-list): Abolished.
7981         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7982         instead of elmo-imap4-add-to-cont-list.
7983
7984         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7985         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7986
7987         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7988
7989 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7990
7991         * elmo-util.el (elmo-condition-parse-search-value):
7992         Fixed date parsing.
7993
7994 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7995
7996         * elmo-util.el (elmo-condition-find-key-internal): New function.
7997         (elmo-condition-find-key): Ditto.
7998
7999         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8000         (elmo-msgdb-search-internal): Ditto.
8001         (elmo-msgdb-search): Ditto.
8002
8003 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8004
8005         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8006         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8007
8008         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8009         (elmo-nntp-search-primitive): Fixed problem when condition is
8010         'unmatch'.
8011
8012         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8013
8014         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8015         (elmo-nntp-xhdr-p): New macro.
8016         (elmo-nntp-set-xhdr): Ditto.
8017         (elmo-nntp-parse-xhdr-response): New function.
8018         (elmo-nntp-retrieve-field): Ditto.
8019         (elmo-nntp-search-primitive): Ditto.
8020         (elmo-nntp-search): Implemented.
8021
8022         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8023
8024         * elmo-archive.el (elmo-archive-search): Set all number list to
8025         `elmo-archive-field-condition-match'
8026
8027         * elmo-localdir.el (elmo-localdir-search): Likewise.
8028
8029         * elmo-maildir.el (elmo-maildir-search): Likewise.
8030
8031 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8032
8033         * elmo-msgdb.el (elmo-living-messages): New function.
8034         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8035         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8036         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8037         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8038         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8039         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8040         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8041         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8042         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8043         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8044         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8045
8046 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8047
8048         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8049
8050         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8051
8052         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8053
8054         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8055         arguments for `SEARCH' command.
8056         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8057         All other related portions are changed.
8058
8059         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8060
8061         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8062         (elmo-list-folder-unread): Rewrite.
8063         (elmo-list-folder-important): Ditto.
8064
8065         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8066         (elmo-condition-parse-error): New inline function.
8067         (elmo-read-search-condition): New function.
8068         (elmo-read-search-condition-internal): Ditto.
8069         (elmo-parse-search-condition): Rewrite.
8070         (elmo-condition-parse): New function.
8071         (elmo-condition-parse-or-expr): Ditto.
8072         (elmo-condition-parse-and-expr): Ditto.
8073         (elmo-condition-parse-primitive): Ditto.
8074         (elmo-condition-parse-search-value): Ditto.
8075         (elmo-buffer-field-primitive-condition-match): Ditto.
8076         (elmo-buffer-field-condition-match): Rewrite.
8077         (elmo-file-field-condition-match): Ditto.
8078
8079         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8080         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8081
8082         * elmo-internal.el (elmo-internal-search): Set `number' and
8083         `number-list' argument of `elmo-file-field-condition-match'.
8084
8085         * elmo-maildir.el (elmo-maildir-search): Ditto.
8086
8087         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8088         `msgdb' as argument instead of `mark-alist'.
8089         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8090         `overview'.
8091
8092         * elmo-multi.el: Likewise.
8093
8094         * elmo-pipe.el: Likewise.
8095
8096         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8097         (elmo-imap4-search-internal): Rewrite.
8098         (elmo-imap4-search): Ditto.
8099
8100         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8101         (elmo-filter-list-folder-unread): Ditto.
8102         (elmo-filter-list-folder-important): Ditto.
8103         (elmo-filter-search): Rewrite.
8104
8105         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8106         `number-list' argument of `elmo-file-field-condition-match'.
8107         (elmo-cache-search): Ditto.
8108
8109         * elmo-localdir.el: Likewise.
8110
8111         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8112         number-list and pass it to `elmo-buffer-field-condition-match'.
8113         (elmo-archive-field-condition-match): Pass `number-list' to
8114         `elmo-archive-field-condition-match'
8115
8116 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8117
8118         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8119         `listgroup'.
8120
8121         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8122         (elmo-folder-diff-async-callback-data): Ditto.
8123         (elmo-folder-diff-async): New function.
8124
8125         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8126         (elmo-network-session-cache-key): Use it as a prefix of the session
8127         name.
8128         (elmo-network-open-session): Ditto.
8129
8130         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8131         (elmo-imap4-status-callback-data): Ditto.
8132         (elmo-imap4-server-diff-async-callback): New variable.
8133         (elmo-imap4-server-diff-async-callback-data): Ditto.
8134         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8135         `elmo-imap4-status-callback-data'.
8136         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8137         `elmo-imap4-status-callback-data' as nil.
8138         (elmo-imap4-server-diff): Ditto.
8139         (elmo-imap4-server-diff-async-callback-1): New function.
8140         (elmo-imap4-server-diff-async): Ditto.
8141         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8142
8143 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8144
8145         * elmo-util.el (elmo-list-delete): Doc fix.
8146         (elmo-delete-lists): Abolish.
8147         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8148         instead of `elmo-delete-lists'.
8149
8150 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8151
8152         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8153         before `sort'.
8154
8155 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8156
8157         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8158         `elmo-imap4-literal-subr'.
8159         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8160         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8161
8162 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8163
8164         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8165         (elmo-archive-list-folder): Fix.
8166         (elmo-archive-max-of-folder): Fix.
8167
8168 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8169
8170         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8171          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8172         (elmo-localdir-append-msg): Ditto.
8173         (elmo-localdir-list-folder): Fix for `nonsort'.
8174         (elmo-localdir-list-folder-subr): Fix for `killed'.
8175         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8176         (elmo-maildir-list-folder-subr): Ditto.
8177         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8178         (elmo-archive-list-folder-subr): Ditto.
8179         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8180         (elmo-internal-list-folder-subr): Ditto.
8181
8182 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8183
8184         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8185
8186 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8187
8188         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8189
8190 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8191
8192         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8193         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8194
8195         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8196         before greeting.
8197         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8198         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8199
8200 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8201
8202         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8203
8204         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8205         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8206         before STORE command.
8207
8208 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8209
8210         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8211
8212         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8213         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8214         of `response'.
8215         (elmo-imap4-list-folders): Removed unused local variable.
8216         (elmo-network-initialize-session): Ditto.
8217         (elmo-imap4-delete-msg-by-id): Ditto.
8218         (elmo-imap4-parse-fetch): Ditto.
8219         (elmo-imap4-copy-msgs): Ditto.
8220         Use `dst-spec' instead of `dst-folder'.
8221         (elmo-network-authenticate-session): Check authenticate type `plain'.
8222
8223 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8224
8225         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8226         garbage checking.
8227         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8228         `elmo-imap4-response-value'.
8229         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8230
8231 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8232
8233         * elmo-imap4.el (elmo-imap4-send-command):
8234         Cause elmo-imap4-bye-error when current response is BYE.
8235         (elmo-imap4-arrival-filter): Changed greeting response value.
8236
8237         * elmo2.el (elmo-imap4-bye-error): Define.
8238
8239         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8240         (elmo-imap4-server-diff): Ditto.
8241         (elmo-imap4-response-bye-p): New macro.
8242         (elmo-imap4-response-error-text): Get text from BYE response.
8243         (elmo-imap4-read-response): Return if BYE response.
8244         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8245         (elmo-imap4-folder-exists-p): Ditto.
8246         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8247         (elmo-imap4-parse-bye): New function.
8248         (elmo-imap4-parse-response): Remove needless let.
8249         Call `elmo-imap4-parse-bye'.
8250
8251 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8252
8253         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8254         the mailbox does not exist.
8255         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8256
8257 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8258
8259         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8260
8261 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8262
8263         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8264
8265         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8266         (elmo-network-initialize-session-buffer): Defined.
8267
8268         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8269         Abolished.
8270         (mmelmo-imap4-get-mime-entity): Rewrite.
8271
8272         * elmo2.el (elmo-error): Capitalize error message.
8273
8274         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8275         (elmo-network-session-buffer): New macro.
8276         (elmo-network-open-session): Use it.
8277
8278         * elmo-imap4.el: Rewrite.
8279
8280 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8281
8282         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8283
8284 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8285
8286         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8287         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8288         (elmo-imap4-create-msgdb-from-overview-string): Use
8289         `elmo-msgdb-create-overview-from-buffer'.
8290
8291 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8292
8293         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8294         (elmo-imap4-default-hierarchy-delimiter): New variable.
8295         (elmo-imap4-list-folders): Use it.
8296
8297 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8298
8299         * elmo-net.el (elmo-network-open-session): Add user and
8300         stream-type for process-buffer name.
8301
8302         * elmo-pop3.el (elmo-network-initialize-session): Call
8303         buffer-disable-undo.
8304
8305         * elmo-imap4.el (elmo-network-initialize-session):
8306         Set current-buffer as an argument for `buffer-disable-undo'.
8307
8308         * elmo-pop3.el (elmo-network-close-session): Don't use
8309         `process-live-p'.
8310
8311         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8312         Set default as 'user.
8313
8314         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8315
8316         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8317         and `elmo-imap4-flush-connection'.
8318
8319         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8320         (elmo-pop3-get-spec): Assume auth as symbol.
8321         (elmo-open-network-stream): Moved to `elmo-net'.
8322
8323         * elmo-pop3.el (toplevel): Require 'elmo-net.
8324         Define `sasl-cram-md5' to silence byte compilier.
8325         (elmo-pop3-connection-cache) Abolished.
8326         (elmo-pop3-authenticator-alist) New variable.
8327         (elmo-pop3-session): Define.
8328         (elmo-pop3-connection-get-process): Abolished.
8329         (elmo-pop3-connection-get-buffer): Ditto.
8330         (elmo-pop3-close-connection): Ditto.
8331         (elmo-pop3-flush-connection): Ditto.
8332         (elmo-pop3-get-connection): Ditto.
8333         (elmo-pop3-get-session): New function.
8334         (Replacement for `elmo-pop3-get-connection').
8335         All other related modules are changed.
8336         (elmo-network-close-session): Define.
8337         (elmo-pop3-send-command): Abolished argument `buffer'.
8338         All other related modules are changed.
8339         (elmo-pop3-read-response): Likewise.
8340         (elmo-pop3-open-connection): Abolished.
8341         (elmo-pop3-auth-user): New function.
8342         (elmo-pop3-auth-apop): Ditto.
8343         (elmo-pop3-auth-cram-md5): Ditto.
8344         (elmo-pop3-auth-scram-md5): Ditto.
8345         (elmo-pop3-auth-digest-md5): Ditto.
8346         (elmo-network-initialize-session): Define.
8347         (elmo-network-authenticate-session): Ditto.
8348         (elmo-network-setup-session): Ditto.
8349
8350         * elmo-imap4.el (toplevel): Require 'elmo-net.
8351         (elmo-imap4-session): Define.
8352         (elmo-imap4-connection-cache): Abolished.
8353         (elmo-imap4-password-key): Ditto.
8354         (elmo-imap4-flush-connection): Ditto.
8355         (elmo-imap4-get-connection): Ditto.
8356         All other related modules are changed.
8357         (elmo-imap4-get-session): New function
8358         (Replacement for `elmo-imap4-get-connection').
8359         (elmo-imap4-read-response): Abolished argument `buffer'.
8360         All other related modules are changed.
8361         (elmo-imap4-send-command): Likewise.
8362         (elmo-imap4-select-folder): Abolished.
8363         All other related modules are changed.
8364         (elmo-imap4-select-mailbox): New function.
8365         (Replacement for `elmo-imap4-select-folder').
8366         (elmo-imap4-auth-login): Simplify.
8367         (Assume current buffer as process buffer)
8368         (elmo-imap4-auth-cram-md5): Ditto.
8369         (elmo-imap4-auth-digest-md5): Ditto.
8370         (elmo-imap4-login): Ditto.
8371         (elmo-imap4-open-connection): Abolished.
8372         (elmo-imap4-open-connection-1): Abolished.
8373         (elmo-network-initialize-sessoin): Define.
8374         (elmo-network-authenticate-session): Ditto.
8375         (elmo-network-setup-session): Ditto.
8376
8377         * elmo-net.el: New module.
8378
8379 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8380
8381         * elmo-util.el (elmo-define-error): New function.
8382
8383         * elmo2.el (elmo-error): Define.
8384         (elmo-open-error): Define.
8385         (elmo-authenticate-error): Define.
8386
8387         * elmo-imap4.el (elmo-imap4-error): Abolish.
8388         (elmo-imap4-error-type): Abolish.
8389         (elmo-imap4-error-process): Abolish.
8390         (elmo-imap4-error-message): Abolish
8391         (elmo-imap4-list-folders): Don't quote lambda.
8392         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8393         (elmo-imap4-parse-namespace): Ditto.
8394         (elmo-imap4-open-connection): Rewrite.
8395         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8396         (elmo-imap4-get-connection): Abolish local variable `result'.
8397
8398 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8399
8400         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8401         wrong-type-argument error when auth is nil.
8402
8403 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8404
8405         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8406         (elmo-default-nntp-stream-type): Ditto.
8407         (elmo-default-pop3-stream-type): Ditto.
8408         (elmo-network-stream-type-alist): Ditto.
8409         (elmo-default-imap4-ssl): Abolished.
8410         (elmo-default-nntp-ssl): Ditto.
8411         (elmo-default-pop3-ssl): Ditto.
8412
8413         * elmo-util.el: (toplevel): Removed needless requires.
8414         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8415         (elmo-open-network-stream): Open network stream according to
8416         the value of `elmo-network-stream-type-alist'.
8417         (elmo-get-network-stream-type): New function.
8418         (elmo-network-stream-type-spec-string): New macro.
8419         (elmo-network-stream-type-symbol): Ditto.
8420         (elmo-network-stream-type-function): Ditto.
8421
8422         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8423         network-stream-type. All other related portions are changed.
8424         (elmo-pop3-open-connection): Ditto.
8425
8426         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8427         network-stream-type. All other related portions are changed.
8428
8429         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8430         network-stream-type.All other related portions are changed.
8431         (elmo-imap4-error): New macro.
8432         (elmo-imap4-error-type): Ditto.
8433         (elmo-imap4-error-process): Ditto.
8434         (elmo-imap4-error-message): Ditto.
8435         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8436         (elmo-imap4-auth-cram-md5): Ditto.
8437         (elmo-imap4-auth-digest-md5): Ditto.
8438         (elmo-imap4-login): Ditto.
8439         (elmo-imap4-open-connection): Remove password entry if authentication
8440         was in vain.
8441         (elmo-imap4-user-at-host): Abolished.
8442         (elmo-imap4-password-key): New buffer local variable.
8443         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8444         using protocol, port, auth and stream-type.
8445
8446         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8447
8448 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8449
8450         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8451
8452         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8453
8454         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8455         (elmo-imap4-authenticator-alist): New variable.
8456         (elmo-imap4-open-connection-1): Rename from
8457         elmo-imap4-open-connection.
8458         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8459         only wraps elmo-imap4-open-connection-1.
8460         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8461         user-at-host.
8462         (elmo-imap4-auth-login): New function.
8463         (elmo-imap4-auth-cram-md5): New function.
8464         (elmo-imap4-auth-digest-md5): New function.
8465         (elmo-imap4-login): New function.
8466
8467 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8468
8469         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8470         function `error'.
8471
8472 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8473
8474         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8475
8476 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8477
8478         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8479
8480 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8481
8482         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8483         for server responses, quote `*' regardless of where it appears.
8484
8485 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8486
8487         * elmo-maildir.el (elmo-maildir-commit): New alias.
8488
8489 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8490
8491         * elmo-util.el (elmo-display-progress):
8492                 Use `progress-feedback-with-label'.
8493
8494 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8495
8496         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8497         (elmo-imap4-non-atom-char-regex): Ditto.
8498         (elmo-imap4-non-text-char-regex): Ditto.
8499         (elmo-imap4-literal-threshold): Ditto.
8500         (elmo-imap4-atom-p): New function.
8501         (elmo-imap4-quotable-p): Ditto.
8502         (elmo-imap4-nil): Ditto.
8503         (elmo-imap4-atom): Ditto.
8504         (elmo-imap4-quoted): Ditto.
8505         (elmo-imap4-literal-subr): Ditto.
8506         (elmo-imap4-literal): Ditto.
8507         (elmo-imap4-buffer-literal): Ditto.
8508         (elmo-imap4-string-subr): Ditto.
8509         (elmo-imap4-string): Ditto.
8510         (elmo-imap4-buffer-string): Ditto.
8511         (elmo-imap4-astring-subr): Ditto.
8512         (elmo-imap4-astring): Ditto.
8513         (elmo-imap4-buffer-astring): Ditto.
8514         (elmo-imap4-nstring): Ditto.
8515         (elmo-imap4-buffer-nstring): Ditto.
8516         (elmo-imap4-mailbox): New alias.
8517         (elmo-imap4-field-body): Ditto.
8518         (elmo-imap4-userid): Ditto.
8519         (elmo-imap4-password): Ditto.
8520         (elmo-imap4-format-quoted): New function.
8521         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8522         arguments and handle "atom", "quoted" and "literal" string here.
8523         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8524         `elmo-imap4-send-command'.
8525         (elmo-imap4-folder-exists-p): Likewise.
8526         (elmo-imap4-create-folder): Likewise.
8527         (elmo-imap4-delete-folder): Likewise.
8528         (elmo-imap4-rename-folder): Likewise.
8529         (elmo-imap4-max-of-folder): Likewise.
8530         (elmo-imap4-check-validity): Likewise.
8531         (elmo-imap4-sync-validity): Likewise.
8532         (elmo-imap4-server-diff): Likewise.
8533         (elmo-imap4-select-folder): Likewise.
8534         (elmo-imap4-copy-msgs): Likewise.
8535         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8536         (elmo-imap4-mark-set-on-msgs): Likewise.
8537         (elmo-imap4-read-part): Likewise.
8538         (elmo-imap4-read-msg): Likewise.
8539         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8540         `elmo-imap4-password' for `elmo-imap4-send-command'.
8541         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8542         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8543         `elmo-imap4-buffer-literal'.
8544         (elmo-imap4-append-msg): Likewise.
8545
8546         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8547         `delete' for removing dead connection from the connection cache.
8548         Move deletion of the process buffer after that.
8549         (elmo-imap4-list): Change `defsubst' to `defun'.
8550         (elmo-imap4-commit): Make error message verbose.
8551         (elmo-imap4-search): Ditto.
8552         (elmo-imap4-list): Ditto.
8553         (elmo-imap4-select-folder): Ditto.
8554         (elmo-imap4-copy-msgs): Ditto.
8555         (elmo-imap4-delete-msg-by-id): Ditto.
8556         (elmo-imap4-append-msg-by-id): Ditto.
8557         (elmo-imap4-append-msg): Ditto.
8558
8559 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8560
8561         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8562         when dired is used on XEmacs.
8563
8564 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8565
8566         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8567         instead of `append'.
8568         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8569         `elmo-plugged-p' directly.
8570         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8571         of `elmo-plugged-p' directly.
8572
8573         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8574         Eliminate unused variable.  Use `memq' for checking a process status.
8575         Use `cons' instead of `append' for updating the connection cache.
8576         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8577         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8578
8579 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8580
8581         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8582         `elmo-imap4-read-point' exactly.
8583
8584         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8585         the local variable `folder' to `mailbox'.
8586         Rename the argument `fld' to `folder'.
8587
8588 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8589
8590         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8591         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8592
8593 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8594
8595         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8596         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8597         (elmo-pop3-uidl-number-hash): Ditto.
8598         (elmo-pop3-size-hash): Ditto.
8599         (elmo-pop3-uidl-done): Ditto.
8600         (elmo-pop3-list-done): Ditto.
8601         (elmo-pop3-connection-get-process): New defmacro.
8602         (elmo-pop3-connection-get-buffer): Ditto.
8603         (elmo-pop3-close-connection): Delete buffer and process.
8604         (elmo-pop3-flush-connection): Don't delete buffer and process.
8605         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8606         Setup UIDL and size hash.
8607         (elmo-pop3-send-command-no-erase): Deleted
8608         (elmo-pop3-send-command): Added optional argument `no-erase'.
8609         (elmo-pop3-parse-uidl-response): New function.
8610         (elmo-pop3-parse-list-response): Set size hash.
8611         (elmo-pop3-list-location): New function.
8612         (elmo-pop3-list-by-uidl-subr): Ditto.
8613         (elmo-pop3-list-by-list): Ditto.
8614         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8615         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8616         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8617         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8618         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8619         Use uidl.
8620         (elmo-pop3-uidl-to-number): New function.
8621         (elmo-pop3-number-to-uidl): Ditto.
8622         (elmo-pop3-number-to-size): Ditto.
8623         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8624         Set number by use of uidl.
8625         (elmo-pop3-msgdb-create-message): Likewise.
8626         Set size, loc-alist in msgdb.
8627         (elmo-pop3-read-msg): Set number by use of uidl.
8628         Added optional argument `msgdb'.
8629         (elmo-pop3-delete-msg): Ditto.
8630         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8631         (elmo-pop3-commit): Close connection.
8632
8633         * elmo-pipe.el (elmo-pipe-max-of-folder):
8634         Bind `elmo-pop3-use-uidl' as nil.
8635         (elmo-pipe-drain): Ditto.
8636         Call `elmo-commit'.
8637
8638         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8639         (elmo-msgdb-overview-entity-set-size): New defsubst.
8640
8641 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8642
8643         * elmo-vars.el (elmo-use-killed-list): New variable
8644         (Renamed from `elmo-nntp-use-killed-list').
8645         (elmo-nntp-use-killed-list): Eliminated.
8646
8647         * elmo-msgdb.el (elmo-msgdb-expand-path):
8648         Changed expanding msgdb path for elmo-multi.
8649
8650         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8651         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8652         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8653         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8654         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8655         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8656         (toplevel): Deleted time-stamp line.
8657
8658         * elmo2.el (elmo-clear-killed ): Defined as function
8659         (Abolished defining as a backend function).
8660         All other related modules are changed.
8661
8662 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8663
8664         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8665
8666 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8667
8668         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8669
8670 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8671
8672         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8673
8674 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8675
8676         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8677         asynchronous folder check.
8678
8679         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8680
8681         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8682         `elmo-nntp-use-killed-list'.
8683         (elmo-nntp-list-folder): Use killed list.
8684         (elmo-nntp-max-of-folder): Ditto.
8685         (elmo-nntp-msgdb-create): Set killed list.
8686
8687         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8688
8689         * elmo2.el (elmo-clear-killed): New backend function.
8690         All other related modules are changed.
8691
8692 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8693
8694         * elmo-util.el (elmo-imap4-spec-folder): Use
8695         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8696         All callers changed.
8697
8698 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8699
8700         * mmelmo-2.el (initialize-instance):
8701         Use `mime-buffer-entity-buffer-internal' instead of
8702         `mime-entity-buffer'.
8703
8704         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8705         (mime-entity-body): Implemented.
8706         (mime-goto-header-start-point): Deleted.
8707         (mime-goto-body-end-point): Ditto.
8708         (mime-entity-point-min): Ditto.
8709         (mime-entity-point-max): Ditto.
8710         (mime-entity-children): Ditto.
8711         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8712         instead of `mime-entity-buffer'.
8713         (mime-entity-header-buffer): Ditto.
8714         (mime-entity-body-buffer): Ditto.
8715         (mime-write-entity-content): Ditto.
8716
8717         * pldap.el (ldap-static-if): New macro.
8718         (toplevel): Use it instead of `static-if'.
8719
8720 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8721
8722         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8723         included in `attrs' argument.
8724
8725 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8726
8727         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8728
8729         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8730         (ldap-ldif-safe-init-char-regexp): Ditto.
8731         (ldap-ldif-safe-string-regexp): Ditto.
8732         (ldap/ldif-safe-string-p): New macro.
8733         (ldap/ldif-insert-field): Ditto.
8734         (ldap-modify): Use it.
8735         (ldap-add): Ditto.
8736         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8737         (ldap-decode-attribute): Decode only when `attr' is consp.
8738         (ldap-delete): Bind `ret'.
8739         (toplevel): Require 'cl at compile time.
8740         Removed (require 'poe) and (require 'std11).
8741         (pldap-version): Eliminated.
8742         (ldap-search-basic): Removed auth and dn binding.
8743         (ldap-ldif-field-name-regexp): New constant.
8744         (ldap-ldif-field-head-regexp): Ditto.
8745         (ldap-ldif-next-field-head-regexp): Ditto.
8746         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8747         (ldap/field-end): New function.
8748         (ldap/field-body): Use it.
8749         (ldap/collect-field): Ditto.
8750         (ldap-search-basic): Use `ldap/field-body'.
8751
8752 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8753
8754         * pldap.el (ldap-default-attribute-encoder): New user option.
8755         (ldap/field-body): Decode base64 string.
8756         (ldap/collect-field): Ditto.
8757         (ldap-encode-attribute): New function.
8758         (ldap-add-entries): Use it.
8759         (ldap-modify-entries): Ditto.
8760         (ldap-search-entries): Enclosed decoding function with
8761         `with-temp-buffer' and set as unibyte.
8762         (ldap-search-basic): Set process buffer as unibyte.
8763
8764         * elmo-util.el (elmo-folder-identical-system-p):
8765         Eliminated name space checking.
8766
8767         * pldap.el: New module.
8768         toplevel: Changed condition to detect built-in ldap feature.
8769         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8770         (ldap-add): Added error handling.
8771         (ldap-modify): Ditto.
8772         (ldap-delete): Ditto.
8773
8774 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8775
8776         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8777         Initialize local variables with `let'.  Inline a temporary
8778         variable for the progress percentage.  Sort `setq' to reduce
8779         function call in the while-loop.
8780
8781         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8782         into the conditional branch.
8783
8784 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8785
8786         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8787         Move a conditional out of the while-loop.
8788
8789 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8790
8791         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8792         elmo-msgdb-overview-get-entity-by-number.
8793         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8794         throw.
8795
8796 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8797
8798         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8799         the local variable for a packed number self descriptively.
8800
8801 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8802
8803         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8804         * elmo-localdir.el (elmo-localdir-pack-number): Use
8805         `elmo-msgdb-overview-get-entity' instead of
8806         `elmo-msgdb-overview-get-entity-by-number'.
8807         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8808         (elmo-msgdb-search-overview-entity): Removed.
8809         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8810         by message-id or number.
8811         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8812         instead of `elmo-msgdb-overview-get-entity-by-number'.
8813
8814 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8815
8816         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8817         non-nil, use hash table for overview.
8818         (elmo-hash-maximum-size): New variable.
8819         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8820         (elmo-msgdb-make-overview-hashtb): New function.
8821         (elmo-msgdb-clear-overview-hashtb): New function.
8822         (elmo-clear-hash-val): New macro.
8823         All other related modules are changed.
8824
8825 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8826
8827         * elmo2.el (elmo-move-msgs): If there's other message with
8828         same message-id, don't use cache.
8829
8830 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8831
8832         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8833         number is already packed.
8834
8835 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8836
8837         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8838
8839 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8840
8841         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8842         All other related modules are changed.
8843
8844 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8845
8846         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8847         of refiling failure on Maildir.
8848
8849 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8850
8851         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8852         decoded mime-charset with cache.
8853         (elmo-msgdb-overview-entity-get-from): Ditto.
8854         (elmo-msgdb-overview-entity-get-subject): Ditto.
8855         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8856
8857 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8858
8859         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8860         (elmo-remove-passwd): Fill password with 0 before erase.
8861         * elmo-vars.el (elmo-passwd-life-time): New variable.
8862
8863 \f
8864 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8865
8866         * elmo-cache.el (elmo-buffer-cache-add):
8867         Set message cache buffer as unibyte.
8868
8869 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8870
8871         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8872         become nil.
8873
8874 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8875
8876         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8877         when display is finished.
8878         (elmo-nntp-msgdb-create): Ditto.
8879         (elmo-nntp-groups-read-response): Ditto.
8880         (elmo-nntp-retrieve-headers): Ditto.
8881         (elmo-nntp-msgdb-create-message): Ditto.
8882         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8883         (elmo-pop3-msgdb-create-message): Ditto.
8884
8885 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8886
8887         * elmo-maildir.el (elmo-maildir-msgdb-create):
8888         Use `elmo-msgdb-sort-by-date'.
8889
8890 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8891
8892         * elmo2.el (elmo-read-msg-no-cache):
8893         Eliminated arguments after `outbuf'.
8894         Don't use cache even if it exists.
8895         (elmo-read-msg): Don't pass arguments after `outbuf' to
8896         `elmo-read-msg-no-cache'.
8897
8898 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8899
8900         * elmo-archive.el (elmo-archive-list-folders):
8901         Use `file-name-directory' if base folder does not exist.
8902
8903 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8904
8905         * elmo-archive.el (elmo-archive-list-folders): Don't use
8906         `file-name-directory'.
8907
8908 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8909
8910         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8911         If `force' is non-nil, try flushing all operation queues.
8912
8913 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8914
8915         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8916         as-binary-process.
8917
8918 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8919
8920         * elmo-util.el (elmo-display-progress): Fixed.
8921
8922 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8923
8924         * elmo-util.el (elmo-display-progress): New function.
8925         All other related modules are changed.