64d8544ba864acb6cb8eba5ee9ee92df6559e67d
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-vars.el (elmo-use-hardlink): New user option.
4
5         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
6         `elmo-use-hardlink'.
7
8         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
9         killed-list.
10         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
11         instead of `*-internal'. Use `elmo-with-progress-display'.
12
13 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
14
15         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
16         `elmo-spam-process-messages-as-mbox'.
17
18         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
19
20 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
21
22         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
23         argument BUFFER of `call-process'.
24
25 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
26
27         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
28         args.
29         (elsp-bsfilter-list-spam-files): Ditto.
30
31 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
32
33         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
34         (elmo-spam-bsfilter-max-messages-per-process): New use option.
35         (elmo-spam-bsfilter-debug): Fix a group.
36         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
37         `--homedir'.
38         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
39         (elsp-bsfilter-list-spam-files): New function.
40         (elmo-spam-list-spam-messages): Define.
41         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
42         (elmo-spam-bsfilter-register-messages): New function.
43         (elmo-spam-register-spam-messages): Define.
44         (elmo-spam-register-good-messages): Ditto.
45
46         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
47
48         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
49         `nconc' and `consp'.
50
51 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
52
53         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
54         hash table to test whether a location is exists.
55
56 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
57
58         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
59         even if some error occurred.
60
61         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
62         meaningless unwind-protect.
63
64         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
65         start-number correctly.
66         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
67         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
68
69 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
70
71         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
72         (elmo-folder-initialize): Use it.
73         (elmo-global-flag-replace-referrer): New function.
74
75         * elmo.el (toplevel): Added autoload setting for
76         `elmo-global-flag-replace-referrer'.
77         (elmo-folder-rename): Rewrite the last change use
78         `elmo-global-flag-replace-referrer'.
79
80         * elmo-pipe.el (elmo-folder-rename): Call
81         `elmo-global-flag-replace-referrer'.
82
83 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
84
85         * elmo.el (elmo-folder-rename): Set meta data for global flags
86         follow the rename.
87
88 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
89
90         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
91         as 'not-loaded.
92         (elmo-folder-close): Ditto.
93         (elmo-filter-folder-number-list-loaded-p): New function.
94         (elmo-filter-folder-number-list): Check whether loaded or not.
95         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
96         of `elmo-filter-folder-number-list-internal'.
97         (elmo-folder-delete-messages): Ditto.
98         (elmo-folder-length): Check whether number-list is loaded or not.
99
100 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
101
102         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
103         field `real field' into each element of list.
104         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
105         (elmo-msgdb-message-entity-field): Ditto.
106         (modb-entity-ml-info-real-fields): New function.
107
108         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
109
110         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
111         `elmo-msgdb-extra-fields'.
112
113 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
114
115         * elmo-util.el (elmo-passwd-alist-load): Move point to min
116         position before read.
117
118 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
119
120         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
121         (elmo-global-flags-initialize): Ditto.
122
123 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
124
125         * elmo-archive.el (toplevel): Don't require emu, std11
126         and elmo-localdir.
127
128         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
129         definition.
130
131 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
132
133         * elmo.el (elmo-folder-confirm-appends): Display folder name.
134
135 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
136
137         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
138         literals.
139
140 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
141
142         * elmo-maildir.el (elmo-maildir-list-location): Reduce
143         `elmo-get-last-modification-time' call.
144
145 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
146
147         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
148         expression.
149         (elmo-maildir-set-mark): Ditto.
150         (elmo-maildir-delete-mark): Ditto.
151
152 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
153
154         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
155         optional argument `separators'.
156
157 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
158
159         * elmo.el (cache-changed): Abolish.
160         (status-changed): New signal.
161         (elmo-message-killed-p): New generic function and define for
162         elmo-folder.
163         (elmo-folder-recover-messages): Ditto.
164         (elmo-message-set-cached): Emit signal `status-changed' instead of
165         `cache-changed'.
166         (elmo-message-status): New macro.
167         (elmo-message-status-folder): Ditto.
168         (elmo-message-status-number): Ditto.
169         (elmo-message-status-set-flags): Ditto.
170         (elmo-message-status-set-killed): Ditto.
171         (elmo-message-status-flags): New function.
172         (elmo-message-status-cached-p): Ditto.
173         (elmo-message-status-killed-p): Ditto.
174
175         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
176         `status-changed' instead of `cache-changed'.
177         (elmo-folder-recover-messages): Define.
178         (elmo-message-killed-p): Ditto.
179
180         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
181         `status-changed' instead of `cache-changed'.
182
183         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
184         (elmo-message-killed-p): Define.
185         (elmo-folder-recover-messages): Ditto.
186
187         * elmo-version.el (elmo-version): Up to 2.15.3.
188
189 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elmo-signal.el (elmo-signal-bindings): Use cons to append
192         element into list.
193         (elmo-define-signal-handler): Add docstring.
194         (elmo-define-signal-filter): Ditto.
195
196         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
197
198 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
199
200         * elmo-util.el (elmo-flatten): Don't use recursive call.
201
202         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
203         assignment.
204         (elmo-folder-message-make-temp-files): Use `number-to-string'
205         instead of `int-to-string'.
206
207 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
208
209         * elmo-search.el (elmo-folder-delete-messages): Define.
210
211 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
212
213         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
214         customization type.
215         (elmo-mailing-list-count-spec-list): Ditto.
216
217         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
218         for `list-id'.
219
220 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
221
222         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
223         handling.
224
225 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
226
227         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
228         (elmo-mailing-list-count-spec-list): Ditto.
229
230         * elmo-util.el (elmo-map-until-success): New function.
231         (elmo-string-match-substring): Ditto.
232         (elmo-find-list-match-value): Ditto.
233
234         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
235         Removed.
236         (modb-entity-extract-ml-info-from-subject): Ditto.
237         (modb-entity-extract-ml-info-from-return-path): Ditto.
238         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
239         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
240         (modb-entity-extract-ml-info-from-mailman): Ditto.
241         (modb-entity-extract-mailing-list-info-functions): Ditto.
242         (modb-entity-extract-mailing-list-info): Rewrite with
243         `elmo-find-list-match-value'.
244
245 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
246
247         * elmo-net.el (elmo-network-session-retry-count): New user option.
248         (elmo-network-session-buffer-name): New internal function.
249         (elmo-network-session-buffer-create): Ditto.
250         (elmo-network-open-session): Retry open network session
251         `elmo-network-session-retry-count' times.
252
253 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
254
255         * elmo-util.el (elmo-list-filter): Rewritten.
256
257 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
258
259         * elmo-util.el (elmo-string-member): Allow symbol element in list.
260
261 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
262
263         * elmo-search.el (elmo-make-search-engine): Use prefix
264         `elmo-search-' for require symbol instead of `else-'.
265         (elmo-search-engine-extprog): New class.
266         (elmo-search-engine-do-search): Remove nil from argument
267         list. Added argument pattern to evaluate element as function.
268         (elmo-search-engine-local-file): Derived from
269         `elmo-search-engine-extprog'.
270         (elmo-search-engine-create-message-entity): Check existance of file.
271         (elmo-search-engine-fetch-message): Ditto.
272         (elmo-search-namazu-index): Follow the API change.
273         (elmo-search-grep-target): Ditto.
274
275 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
276
277         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
278         characters of working buffer.
279
280         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
281         Does not bind `default-mime-charset'.
282         (elmo-msgdb-create-message-entity-from-buffer): Removed
283         unnecessary local bind.
284
285         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
286         function.
287         (modb-entity-extract-mailing-list-info-functions): Added it.
288
289 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
290
291         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
292         when number and message-id are non-nil.
293
294         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
295
296         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
297         conditional steatment.
298         (elmo-pop3-auth-apop): Likewise.
299         (elmo-network-authenticate-session): Likewise.
300
301 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
302
303         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
304         symbol `fill-column'.
305         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
306         decode field value.
307
308         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
309         (elmo-decoded-field-body): Ditto.
310
311 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
312
313         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
314         `tokens' to `params'.
315
316 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
317
318         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
319         working buffer.
320
321 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
322
323         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
324         decide index.
325
326 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
327
328         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
329         Set default value as nil.
330         (toplevel): Register search engines by
331         `elmo-search-register-engine' if there are not defined.
332
333         * elmo.el (autoload): Added autoload setting for
334         `elmo-search-register-engine'.
335
336 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
337
338         * elmo.el (toplevel): `[' is redefined as the prefix of the search
339         folder instead of nmz folder.
340         (elmo-nmz-default-index-path): Added obsolete variable setting.
341         (elmo-nmz-index-alias-alist): Ditto.
342         (elmo-nmz-use-drive-letter): Ditto.
343
344         * elmo-search.el (elmo-search-register-engine): New function.
345
346         * elmo-nmz.el: Removed.
347
348         * elmo-version.el (elmo-version): Up to 2.15.2.
349
350 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
351
352         * elmo-search.el: New file.
353
354 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
355
356         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
357         condition `larger' and `smaller'.
358
359 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
360
361         * elmo-util.el (elmo-safe-filename): Rewrite to replace
362         `"' (double quote) into "_Q_".
363
364 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
365
366         * elmo-net.el (elmo-net-quote-chars): Abolish.
367         (elmo-net-format-quoted): Ditto.
368
369 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
370
371         * elmo.el (elmo-get-folder-function): New variable.
372         (elmo-get-folder): New function.
373         (elmo-folder-rename): Call `elmo-make-folder' with specified
374         mime-charset.
375
376         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
377         `elmo-make-folder'.
378         (elmo-split-subr): Ditto.
379
380         * elmo-multi.el (elmo-folder-initialize): Ditto.
381
382         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
383
384         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
385         (elmo-flag-get-folder): Ditto.
386
387         * elmo-filter.el (elmo-folder-initialize): Ditto.
388
389         * elmo-access.el (elmo-folder-initialize): Ditto.
390         (elmo-access-folder-update-children): Ditto.
391
392         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
393         (elmo-dop-queue-flush): Ditto.
394         (elmo-folder-append-buffer-dop-delayed): Ditto.
395         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
396         mime-charset.
397
398         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
399         instead of `elmo-make-folder'.
400         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
401         destination folder instead of send `elmo-folder-rename-internal'.
402
403         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
404         slot of subfolder instead of create it.
405
406 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
407
408         * elmo-util.el (elmo-collect-separators): New function.
409         (elmo-collect-separators-internal): Ditto.
410         (elmo-collect-trail-separators): Ditto.
411         (elmo-parse-separated-tokens): Ditto.
412         (elmo-parse-separated-tokens-internal): Ditto.
413         (elmo-quote-syntactical-element): Ditto.
414
415         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
416         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
417
418         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
419         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
420         (elmo-nntp-folder-list-subfolders): Quote a user name.
421
422         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
423         (elmo-net-parse-network): Abolish.
424         (elmo-net-folder-set-parameters): New function.
425         (elmo-folder-initialize): Follow the above change.
426
427         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
428         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
429         (elmo-folder-list-subfolders): Use
430         `elmo-quote-syntactical-element' instead of
431         `elmo-net-format-quoted' to quote mailbox and user name.
432
433 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
434
435         * elmo-util.el (elmo-token-valid-p): New function.
436         (elmo-parse-token): Add optional argument `requirement'.
437         (elmo-parse-prefixed-element): Likewise.
438
439         * elmo-net.el (elmo-net-quote-chars): Renamed from
440         `elmo-net-quote-chars-regexp'.
441         (elmo-net-format-quoted): Add optional argument `extra-chars'.
442
443         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
444         by info document. Check token `uidl' is started an alphabet.
445
446         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
447         by info document. Check token `user' is started an alphabet.
448
449         * elmo-imap4.el (elmo-folder-initialize): Ditto.
450         (elmo-folder-list-subfolders): Quote user.
451
452 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
453
454         * elmo-util.el (elmo-quoted-specials-list): New constant.
455         (elmo-quoted-token): New function.
456
457         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
458         (elmo-net-format-quoted): New function.
459         (elmo-net-parse-network): Ditto.
460         (elmo-folder-initialize): Use it.
461
462         * elmo-nntp.el (elmo-folder-initialize): Use
463         `elmo-net-parse-network' to parse network specification instead of
464         `elmo-folder-initialize#elmo-net'.
465
466         * elmo-pop3.el (elmo-folder-initialize): Ditto.
467
468         * elmo-imap4.el (elmo-folder-initialize): Ditto.
469         (elmo-folder-list-subfolders): Quote folder name by
470         `elmo-net-format-quoted'.
471
472 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
473
474         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
475         (elmo-folder-search): Use it.
476
477 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
478
479         * modb-standard.el (modb-standard-loaded-message-id): Use
480         `elmo-msgdb-message-entity-field'.
481
482 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
483
484         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
485         without filename.
486
487 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
488
489         * elmo-util.el (elmo-set-auto-coding): New function.
490         (elmo-object-load): Use it.
491
492 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
493
494         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
495         (elmo-time<): Define as alias of `elmo-time-less-p'.
496         (elmo-time-to-datevec): New function.
497
498         * elmo-date.el (elmo-time-to-days): New function.
499
500 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
501
502         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
503         is not cons cell.
504
505 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
506
507         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
508         parenthesis.
509
510         * elmo-util.el (elmo-map-recursive): New function.
511
512         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
513         (modb-entity-encode-string-recursive): Ditto.
514
515 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
516
517         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
518         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
519         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
520         compare sequence number when last modified time is nil.
521
522 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
523
524         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
525
526         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
527
528 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
529
530         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
531         modification time of the file.
532
533 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
534
535         * elmo-util.el (elmo-condition-optimize): Discriminated against
536         preserved fields, extra fields and the other weight.
537
538 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
539
540         * modb-entity.el (initialize-instance): Define.
541         (modb-entity-handler-mime-charset): New internal function.
542         (modb-standard-entity-set-field): Use it.
543         (elmo-msgdb-message-entity-field): Ditto.
544         (elmo-msgdb-message-entity-field): Ditto.
545
546         * modb.el (elmo-msgdb-match-condition): Rewrite with
547         `elmo-condition-match'.
548         (elmo-msgdb-match-condition-primitive): New function.
549
550         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
551         arguments `flags' and `numbers'.
552         (elmo-msgdb-match-condition-primitive): Abolished (merged to
553         `elmo-msgdb-message-match-condition').
554         (modb-buffer-entity-handler): New class.
555
556         * elmo.el (elmo-folder-search): Optimize condition to use
557         `elmo-condition-optimize'.
558         (elmo-message-buffer-match-condition): New function.
559         (elmo-message-match-condition): Use
560         `elmo-message-buffer-match-condition' instead of
561         `elmo-buffer-field-condition-match'.
562
563         * elmo-util.el (elmo-condition-match): New function.
564         (elmo-condition-optimize): Ditto.
565         (elmo-buffer-field-primitive-condition-match): Abolish.
566         (elmo-buffer-field-condition-match): Ditto.
567
568         * elmo-archive.el (elmo-archive-field-condition-match): Use
569         `elmo-message-buffer-match-condition' instead of
570         `elmo-buffer-field-condition-match'.
571
572 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
573
574         * elmo-flag.el (elmo-global-flags-initialize): Check the
575         existence of the flag directory.
576
577 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
578
579         * elmo-access.el (elmo-folder-initialize): Call
580         `elmo-multi-connect-signals'.
581
582         * elmo-pipe.el (elmo-folder-close): Define.
583
584         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
585         children folders.
586
587         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
588         with target folder.
589
590         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
591         `number'.
592
593         * elmo-multi.el (elmo-message-entity): Don't use return value of
594         `elmo-message-entity-set-number'.
595
596 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
597
598         * modb.el (modb-generic): Added slot `mime-charset'.
599
600         * modb-standard.el (modb-standard): Added slot `overview-handler'.
601         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
602         and `modb-entity-handler-dump-parameters'.
603         (modb-standard-default-entity-handler): Abolish.
604         (elmo-msgdb-message-entity-handler): Save created handler by
605         instance slot.
606
607         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
608         (modb-entity-handler-list-parameters): New method.
609         (modb-entity-handler-equal-p): New function.
610         (modb-entity-handler-dump-parameters): Ditto.
611         (modb-entity-parse-address-string): Encode return value.
612         (modb-entity-make-address-string): Decode argument value.
613         (modb-entity-decode-string-recursive): New function.
614         (modb-entity-encode-string-recursive): Ditto.
615         (modb-standard-entity-normalizer): Set to encode field value.
616         (modb-standard-entity-specializer): Follow the above change.
617         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
618         mime-charset of handler.
619         (elmo-msgdb-message-entity-field): Ditto.
620         (elmo-msgdb-copy-message-entity): Fixed reference to internal
621         structure.
622         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
623
624         * elmo.el (elmo-folder): Added slot `mime-charset'.
625         (elmo-make-folder): Added argument `mime-charset'.
626         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
627         `mime-charest'.
628
629         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
630         (elmo-make-msgdb): Likewise.
631
632         * elmo-internal.el (elmo-internal-folder-initialize): Call
633         `luna-make-entity' with :mime-charset parameter.
634
635 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
636
637         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
638         encoded words in `from' and `subject' field.
639
640 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
641
642         * modb.el (elmo-msgdb-message-field): Add argument `type'.
643         (elmo-msgdb-match-condition): Get handler from entity instead of
644         msgdb.
645
646         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
647         (modb-standard-load-entity): Treat new file format.
648         (modb-standard-save-entity-1): Save as new file format.
649         (modb-standard-save-entity): Split messages into section here.
650         (elmo-msgdb-message-field): Follow the API change.
651         (modb-standard-default-entity-handler): New internal variable.
652         (elmo-msgdb-message-entity-handler): Define.
653
654         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
655         to `elmo-vars.el'.
656         (modb-entity-field-extractor-alist): New user option.
657         (elmo-msgdb-message-entity-field): Removed argument `decode' and
658         added argument `type'.
659         (elmo-msgdb-copy-message-entity): Add optional argument
660         `make-handler'.
661         (modb-set-field-converter): New function.
662         (modb-convert-field-value): Ditto.
663         (modb-entity-string-decoder): Ditto.
664         (modb-entity-string-encoder): Ditto.
665         (modb-entity-parse-date-string): Ditto.
666         (modb-entity-make-date-string): Ditto.
667         (modb-entity-mime-decoder): Ditto.
668         (modb-entity-mime-encoder): Ditto.
669         (modb-entity-address-list-decoder): Ditto.
670         (modb-entity-address-list-encoder): Ditto.
671         (modb-entity-parse-address-string): Ditto.
672         (modb-entity-make-address-string): Ditto.
673         (modb-entity-create-field-indices): Ditto.
674         (modb-legacy-entity-field-slots): New constant.
675         (modb-legacy-entity-field-indices): Ditto.
676         (modb-legacy-entity-normalizer): New variable.
677         (modb-legacy-entity-specializer): Ditto.
678         (modb-legacy-entity-field-index): New macro.
679         (modb-legacy-entity-set-field): New function.
680         (modb-legacy-make-message-entity): Rewrite.
681         (elmo-msgdb-create-message-entity-from-buffer): Use
682         `elmo-msgdb-get-references-from-buffer'. Use
683         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
684         Use `modb-legacy-entity-set-field' instead of
685         `elmo-msgdb-message-entity-set-field'.
686         (elmo-msgdb-message-entity-field): Rewrite.
687         (elmo-msgdb-message-entity-set-field): Ditto.
688         (elmo-msgdb-copy-message-entity): Make new entity by
689         `make-handler' if it specified.
690         (elmo-msgdb-message-match-condition): Define a method of
691         `modb-entity-handler' and follow the API change.
692         (modb-standard-entity-handler): New class.
693         (modb-entity-extract-ml-info-from-x-sequence): New function.
694         (modb-entity-extract-ml-info-from-subject): Ditto.
695         (modb-entity-extract-ml-info-from-return-path): Ditto.
696         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
697         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
698         (modb-entity-extract-mailing-list-info): Ditto.
699         (modb-entity-extract-mailing-list-info-functions): New variable.
700
701         * elmo.el (elmo-message-field): Add optional argument `type'.
702
703         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
704         from `modb-entity.el'.
705
706         * elmo-util.el (elmo-object-load): Decode by coding-system from
707         `set-auto-coding-function'.
708         (elmo-object-save): Use `detect-mime-charset-region' and add
709         coding cookie if encode.
710         (elmo-msgdb-get-references-from-buffer): New function.
711         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
712
713         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
714
715         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
716         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
717         instead of `shimbun-make-header' and follow the API change.
718         (elmo-shimbun-update-overview): Follow the API change.
719         (elmo-map-folder-list-message-locations): Ditto.
720
721         * elmo-pipe.el (elmo-message-field): Ditto.
722
723         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
724         Ditto.
725
726         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
727
728         * elmo-multi.el (elmo-message-field): Ditto.
729
730         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
731         (elmo-msgdb-sort-by-date): Ditto.
732         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
733         `elmo-message-entity-field'.
734         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
735         change.
736         (elmo-msgdb-overview-entity-get-from): Ditto.
737         (elmo-msgdb-overview-entity-get-subject): Ditto.
738         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
739         (elmo-msgdb-overview-entity-get-date): Ditto.
740         (elmo-msgdb-overview-entity-get-to): Ditto.
741         (elmo-msgdb-overview-entity-get-cc): Ditto.
742
743         * elmo-mime.el (elmo-message-mime-entity): Ditto.
744         (elmo-mime-collect-message/partial-pieces): Ditto.
745
746         * elmo-filter.el (elmo-message-field): Ditto.
747
748         * elmo-date.el (elmo-datevec-to-time): New function.
749         (elmo-time-parse-date-string): Ditto.
750         (elmo-time-make-date-string): Ditto.
751         (elmo-time<): Ditto.
752
753         * elmo-version.el (elmo-version): Up to 2.15.1.
754
755 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
756
757         * elmo-flag.el (elmo-global-flags-initialize): Don't include
758         member of elmo-local-flags.
759
760 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
761
762         * elmo-version.el (elmo-version): Up to 2.15.0.
763
764 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
765
766         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
767         `ignore-msgdb' is non-nil.
768
769 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
770
771         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
772         (elmo-condition-in-msgdb-p): Ditto.
773         (elmo-file-field-primitive-condition-match): Ditto.
774         (elmo-file-field-condition-match): Ditto.
775
776         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
777
778 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
779
780         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
781         subdirectories here.
782         (elmo-global-flags-initialize): New function.
783
784         * elmo.el (toplevel): Added autoload setting for
785         `elmo-global-flags-initialize'.
786
787 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
788
789         * elmo.el (message-number-changed): Define new signal.
790         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
791         message-number-changed signal.
792         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
793         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
794         Respect `elmo-pack-number-check-strict'.
795
796 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
797
798         * elmo-signal.el (elmo-connect-signal): Document.
799         (elmo-emit-signal): Ditto.
800         (elmo-emit-signal): It should pass source argument to filter and
801         handler, not slot-source.
802
803 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
804
805         * modb.el (elmo-msgdb-update-entity): New API and define generic
806         implement.
807
808         * modb-standard.el (elmo-msgdb-update-entity): Define.
809
810         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
811         API and define generic implement.
812
813         * elmo.el (update-overview): New singnal.
814
815         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
816         `elmo-msgdb-update-entity' and emit signal `update-overview'.
817         (elmo-message-entity-parent): Define.
818
819         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
820         `update-overview'.
821
822         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
823
824         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
825
826 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
827
828         * elmo.el (elmo-folder-synchronize): Sort the return value of
829         `elmo-list-diff'.
830
831         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
832         list.
833
834 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
835
836         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
837         `default-enable-multibyte-characters'.
838         (elmo-object-load): Use `with-temp-buffer' instead of
839         `elmo-set-work-buf'.
840         (elmo-object-save): Ditto.
841         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
842         `elmo-set-work-buf'.
843         (elmo-decoded-field-body): Ditto.
844
845         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
846
847         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
848         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
849
850         * elmo-version.el (elmo-version): Up to 2.13.3.
851
852 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
853
854         * elmo-util.el (elmo-list-diff): Fix the last change.
855         Reverse order of result lists.
856
857 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
858
859         * modb-standard.el (elmo-msgdb-set-flag): Use
860         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
861         (elmo-msgdb-unset-flag): Ditto.
862
863         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
864         `elmo-list-diff'.
865
866         * elmo-util.el (elmo-list-diff): Rewrite.
867         (elmo-list-diff-nonsortable): New function.
868
869 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
870
871         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
872         `elmo-multibypte-buffer-name'.  All referers are updated.
873
874 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
875
876         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
877         (elmo-mime-entity-fragment-p): New function.
878         (mime-elmo-buffer-entity): Added slot `reassembled'.
879         (elmo-message-mime-entity): Added 4th argument `reassemble'.
880         (elmo-message-mime-entity-internal): New function (renamed from
881         `elmo-message-mime-entity').
882         (elmo-mime-inherit-field-list-from-enclosed): New constant.
883         (elmo-mime-make-reassembled-mime-entity): New function.
884         (elmo-message-reassembled-mime-entity): Ditto.
885         (elmo-mime-collect-message/partial-pieces): Ditto.
886
887 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
888
889         * elmo.el (elmo-message-fetch-string): Disable multibyte.
890
891         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
892         (elmo-with-enable-multibyte): New macro.
893
894         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
895
896 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
897
898         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
899         argument `number'.
900         (elmo-filter-connect-signals): Follow the above change.
901
902 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
903
904         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
905
906         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
907         that only the first flag is used.
908
909 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
910
911         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
912         if available.
913
914 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
915
916         * elmo-signal.el: New file.
917
918         * elmo.el (toplevel): Require elmo-signal.
919         (flag-changing, flag-changed, cache-changed): New signal.
920         (elmo-folder): Remove slog `handlers'.
921         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
922         `elmo-folder-notify-event'.
923         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
924         (elmo-folder-unset-flag): Ditto.
925         (elmo-event-handler): Abolish.
926         (elmo-event-handler-flag-changed): Ditto.
927         (elmo-event-handler-cache-changed): Ditto.
928         (elmo-folder-add-handler): Ditto.
929         (elmo-folder-remove-handler): Ditto.
930         (elmo-folder-notify-event): Ditto.
931
932         * elmo-pipe.el (toplevel): Require elmo-signal.
933         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
934         (elmo-pipe-connect-signals): New function.
935         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
936         (elmo-folder-set-flag): Ditto.
937         (elmo-folder-unset-flag): Ditto.
938         (elmo-message-set-cached): Ditto.
939
940         * elmo-multi.el (toplevel): Require elmo-signal.
941         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
942         (elmo-multi-connect-signals): New function.
943         (elmo-multi-map-numbers): Ditto.
944         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
945         (elmo-message-fetch): Ditto.
946         (elmo-folder-set-flag): Ditto.
947         (elmo-folder-unset-flag): Ditto.
948
949         * elmo-filter.el (toplevel): Require elmo-signal.
950         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
951         (elmo-filter-connect-signals): New function.
952         (elmo-filter-add-flag-count): Ditto.
953         (elmo-message-fetch): Does not call
954         `elmo-filter-folder-countup-message-flags' and
955         `elmo-folder-notify-event'.
956         (elmo-message-set-cached): Ditto.
957         (elmo-folder-set-flag): Ditto.
958         (elmo-folder-unset-flag): Ditto.
959
960         * elmo-version.el (elmo-version): Up to 2.13.2.
961
962 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
963
964         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
965         `flags'.
966
967 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
968
969         * elmo-filter.el (elmo-message-set-cached): Call
970         `elmo-folder-notify-event' with event `cache-changed'.
971
972         * elmo-multi.el (elmo-message-set-cached): Ditto.
973
974         * elmo-pipe.el (elmo-message-set-cached): Ditto.
975
976 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
977
978         * elmo.el (elmo-folder-encache): Abolish.
979
980 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
981
982         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
983         (elmo-folder-next-message-number-dop): Return appropriate negative
984         integer.
985
986 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
987
988         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
989         clearing pending operations.
990         (elmo-folder-next-message-number-dop): Return appropriate negative
991         integer.
992
993 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
994
995         * elmo.el (toplevel): Added autoload setting for `md5'.
996         (elmo-msgdb-path-encode-threshold): New user option.
997         (elmo-folder-msgdb-path): Encode msgdb path if its length is
998         longer than `elmo-msgdb-path-encode-threshold'.
999
1000         * elmo-flag.el (elmo-global-mark-migrate): Use
1001         `elmo-folder-expand-msgdb-path' instead of
1002         `elmo-folder-msgdb-path'.
1003
1004 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1005
1006         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1007         element of the difference is nil.
1008
1009 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1010
1011         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1012         to the check logic of file systems which are weak in colon character.
1013
1014 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1015
1016         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1017
1018 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1019
1020         * elmo-maildir.el (elmo-maildir-move-file): New function.
1021         (elmo-folder-append-buffer): Use it.
1022         (elmo-folder-append-messages): Ditto.
1023         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1024
1025         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1026         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1027
1028         * elmo-maildir.el (elmo-maildir-separator): New user option.
1029         (elmo-maildir-adjust-separator): New macro.
1030         (elmo-maildir-list-location): Use it.
1031         (elmo-maildir-update-current): Ditto.
1032         (elmo-maildir-set-mark): Ditto.
1033         (elmo-maildir-delete-mark): Ditto.
1034         (These changes are based on Hiroya Murata's patch [wl: 13437])
1035
1036 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1037
1038         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1039
1040 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1041
1042         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1043         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1044         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1045
1046 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1047
1048         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1049         Use `with-temp-buffer'.
1050
1051 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1052
1053         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1054
1055         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1056         `wl-read-search-condition').
1057         (elmo-read-search-condition-internal): Likewise.
1058
1059         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1060         (elmo-flag-valid-p): New function.
1061         (elmo-folder-initialize): Check flag name is valid.
1062
1063 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1064
1065         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1066         delimiter to obtain root mailbox itself.
1067
1068 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1069
1070         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1071         type mismatch.
1072
1073 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1074
1075         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1076         as t.
1077
1078 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1079
1080         * elmo-shimbun.el (toplevel): Require cl at compile.
1081
1082         * elmo-nntp.el (toplevel): Ditto.
1083
1084         * elmo-nmz.el (toplevel): Ditto.
1085
1086         * elmo-multi.el (toplevel): Ditto.
1087
1088         * elmo-file.el (toplevel): Ditto.
1089
1090         * elmo-dop.el (toplevel): Ditto.
1091
1092         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1093
1094 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1095
1096         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1097         as nil.
1098
1099         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1100         size of elmo-message-fetch-internal is 0 byte.
1101
1102 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1103
1104         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1105
1106 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1107
1108         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1109         always plugged.
1110
1111 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1112
1113         * elmo-maildir.el (elmo-map-message-fetch): Call
1114         `elmo-map-folder-set-flag'.
1115
1116         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1117         (elmo-message-fetch): Merge from
1118         `elmo-message-fetch-with-cache-process'.
1119
1120         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1121         (elmo-message-fetch): Define.
1122
1123         * elmo-nntp.el (elmo-message-fetch): Renamed from
1124         `elmo-message-fetch-with-cache-process'.
1125
1126         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1127         (elmo-message-fetch): Define.
1128
1129         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1130         search-key.
1131
1132         * elmo-shimbun.el (shimbun-mua-search-id): Use
1133         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1134         (elmo-shimbun-folder-shimbun-header): Ditto.
1135         (elmo-shimbun-get-headers): Ditto.
1136         (elmo-shimbun-update-overview): Ditto.
1137
1138         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1139
1140         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1141         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1142
1143 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1144
1145         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1146         message is cached.
1147         (elmo-message-fetch-string): Fixed argument.
1148
1149 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1150
1151         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1152         exchange order of arguments `section' and `unread'.
1153         (elmo-message-encache): Follow the API change.
1154         (elmo-message-match-condition): Ditto.
1155         (elmo-generic-folder-append-messages): Ditto.
1156         (elmo-message-fetch-string): New function.
1157
1158         * elmo-split.el (elmo-split-subr): Ditto.
1159
1160         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1161
1162         * elmo-pipe.el (elmo-message-fetch): Ditto.
1163
1164         * elmo-multi.el (elmo-message-fetch): Ditto.
1165
1166         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1167
1168         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1169
1170         * elmo-filter.el (elmo-message-fetch): Ditto.
1171
1172         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1173
1174         * elmo-imap4.el (mime-imap-location-section-body): Use
1175         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1176         follow the API change.
1177
1178 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1179
1180         * elmo-access.el: New file.
1181
1182         * elmo-null.el: Ditto.
1183
1184         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1185
1186 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1187
1188         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1189         (elmo-network-session): New attribute `last-accessed'.
1190         (elmo-network-get-session): Discard network cache if elapsed time
1191         since last-accessed is larger than elmo-network-session-idle-timeout.
1192
1193 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1194
1195         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1196         and added `number', `require-entireness'.
1197         (elmo-find-fetch-strategy): Rewrite.
1198         (elmo-message-fetch): Unset `unread' flag when argument unread is
1199         non-nil.
1200
1201         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1202
1203         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1204         (elmo-message-fetch): Notify event `flag-changed'.
1205
1206         * elmo-pipe.el: Likewise.
1207
1208         * elmo-mime.el (elmo-mime-entity): New class.
1209         (elmo-mime-entity-display-p): New generic function.
1210         (elmo-mime-entity-display): Ditto.
1211         (elmo-mime-entity-display-as-is): Ditto.
1212         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1213         elmo-mime-entity.
1214         (elmo-make-mime-message-location): Removed.
1215         (elmo-mime-message-display): Ditto.
1216         (elmo-mime-display-as-is): Ditto.
1217         (elmo-message-mime-entity): New function.
1218
1219         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1220
1221         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1222         change.
1223         (elmo-message-fetch): Re-count flagged message number and notify
1224         event `flag-changed'.
1225
1226         * elmo-version.el (elmo-version): Up to 2.13.1.
1227
1228 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1229
1230         * elmo-filter.el (elmo-message-field): Define.
1231         (elmo-message-set-field): Ditto.
1232
1233 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1234
1235         * elmo.el (elmo-message-set-cached): Call
1236         `elmo-folder-notify-event' with cache-changed.
1237         (elmo-event-handler-cache-changed): New generic function.
1238
1239 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1240
1241         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1242         instead of elmo-add-name-to-file.
1243         (elmo-folder-append-messages): Ditto.
1244
1245 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1246
1247         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1248
1249 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1250
1251         * elmo-version.el (elmo-version): Up to 2.13.0.
1252
1253         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1254         `auto'.
1255
1256         * modb-standard.el (modb-standard-economize-entity-size): Changed
1257         default value to `t'.
1258
1259         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1260         `standard'.
1261
1262         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1263         after parsing greeting string.
1264
1265 2004-11-23  Daishi Kato <daishi@axlight.com>
1266
1267         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1268         New user option.
1269         (elmo-spam-spamoracle-call): Use it.
1270
1271 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1272
1273         * elmo.el (elmo-message-accessible-p): Message in dop spool
1274         is accessible.
1275
1276 2004-11-23  Daishi Kato <daishi@axlight.com>
1277
1278         * elsp-spamoracle.el: New file.
1279
1280 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1281
1282         * elmo.el (elmo-message-flags-for-append): New function.
1283         (elmo-generic-folder-append-messages): Use it.
1284
1285         * elmo-split.el (elmo-split-subr): Ditto.
1286
1287         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1288         `flags' and use elmo-folder-append-buffer instead of
1289         write-region-as-binary.
1290         (elmo-dop-filter-pending-messages): New function.
1291         (elmo-folder-append-buffer-dop): Call
1292         elmo-dop-spool-folder-append-buffer with `flag'.
1293         (elmo-folder-set-flag-dop): Filter messages by
1294         elmo-dop-filter-pending-messages.
1295         (elmo-folder-unset-flag-dop): Ditto.
1296         (elmo-folder-append-buffer-dop-delayed): Use
1297         elmo-message-flags-for-append to get flags of the message and
1298         simplify.
1299
1300 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1301
1302         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1303
1304 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1305
1306         * elmo.el (elmo-folder): Added handlers slot.
1307         (elmo-event-handler): New class.
1308         (elmo-event-handler-flag-changed): New API.
1309         (elmo-folder-add-handler): New function.
1310         (elmo-folder-remove-handler): Ditto.
1311         (elmo-folder-notify-event): Ditto.
1312         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1313         `flag-changed'.
1314         (elmo-folder-unset-flag): Ditto.
1315
1316         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1317         (elmo-folder-unset-flag): Ditto.
1318
1319         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1320         (elmo-folder-unset-flag): Ditto.
1321
1322         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1323         (elmo-folder-unset-flag): Ditto.
1324
1325         * elmo-version.el (elmo-version): Up to 2.11.33.
1326
1327 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1328
1329         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1330
1331 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1332
1333         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1334
1335         * elmo-flag.el (elmo-folder-unset-flag): Define.
1336         (elmo-global-flag-detach): Do process when the flag is not target
1337         flag.
1338
1339 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1340
1341         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1342         variable.
1343         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1344
1345 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1346
1347         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1348         function.
1349         (elmo-folder-delete-messages): Detach messages before delete
1350         messages from target folder.
1351         (elmo-folder-detach-messages): Set updated number-list to slot.
1352
1353 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1354
1355         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1356
1357 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1358
1359         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1360
1361 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1362
1363         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1364         internal use only).
1365         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1366         not modified.
1367         (elmo-folder-delete-messages): Define.
1368         (elmo-folder-move-messages): Don't call
1369         `elmo-folder-detach-messages'.
1370         (elmo-folder-synchronize): Rewrite.
1371         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1372
1373         * elmo-util.el (elmo-last): New function.
1374         (elmo-set-list): Ditto.
1375         (elmo-number-set-delete-list): Ditto.
1376         (elmo-number-set-delete): Ditto.
1377
1378         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1379
1380         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1381         `elmo-folder-delete-messages' and don't delete location map.
1382         (elmo-folder-detach-messages): Define.
1383
1384         * elmo-imap4.el (elmo-folder-delete): Use
1385         `elmo-folder-delete-messages-internal' instead of
1386         `elmo-folder-delete-messages'.
1387
1388         * elmo-filter.el (elmo-folder-delete-messages): Call
1389         `elmo-folder-detach-messages'.
1390         (elmo-folder-detach-messages): Don't call
1391         `elmo-folder-detach-messages' for target folder.
1392
1393         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1394         message deletion is succeeded.
1395
1396         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1397
1398         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1399         from `elmo-folder-delete-messages'.
1400
1401         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1402
1403         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1404
1405         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1406
1407         * elmo-version.el (elmo-version): Up to 2.11.32.
1408
1409 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1410
1411         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1412         (elmo-global-flag-list): Added obsolete variable setting.
1413
1414         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1415
1416         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1417         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1418         `elmo-mime-display-header-analysis' is nil.
1419
1420         * elmo-flag.el (elmo-global-flags): Renamed from
1421         `elmo-global-flag-list' (All other related portions are changed).
1422         (elmo-local-flags): New variable.
1423         (elmo-local-flag-p): New function.
1424         (elmo-global-flag-set-internal): Cause an error when flag is not
1425         global.
1426
1427 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1428
1429         * elmo-util.el (elmo-concat-path): Treat empty path.
1430
1431 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1432
1433         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1434         field-or-fields).
1435         (elmo-split-address-match): Ditto.
1436         (elmo-split-equal): Ditto.
1437         (elmo-split-match): Ditto.
1438
1439 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1440
1441         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1442         (elmo-generic-folder-append-messages): If src message exists but
1443         has no flag, pass (read) for the FLAG argument of
1444         `elmo-folder-append-buffer'. Otherwise, pass nil.
1445
1446         * elmo-split.el (elmo-split-subr): Likewise.
1447
1448         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1449
1450         * elmo-multi.el (elmo-message-flags): Ditto.
1451
1452         * elmo-filter.el (elmo-message-flags): Ditto.
1453
1454         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1455         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1456         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1457         
1458 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1459
1460         * elmo-split.el (elmo-split-rule): Update comment.
1461         (elmo-split-address-equal): Allow 2nd argument to be a list.
1462         (elmo-split-address-match): Ditto.
1463         (elmo-split-equal): Ditto.
1464         (elmo-split-match): Ditto.
1465
1466 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1467
1468         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1469         (elmo-folder-append-msgdb): Don't treat `read'.
1470         (elmo-message-flags): Don't return `read'.
1471
1472         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1473         (elmo-folder-unset-read-delayed): Ditto.
1474
1475         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1476
1477 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1478
1479         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1480         deletion.
1481
1482 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1483
1484         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1485         header.
1486
1487 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1488
1489         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1490         here.
1491         (elmo-msgdb-save): Bind inhibit-quit.
1492         (modb-standard-message-entity): Ditto.
1493
1494 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1495
1496         * elmo-database.el: No need to require elmo-msgdb.
1497
1498 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1499
1500         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1501         instead of `elmo-list-subdirectories'.
1502
1503 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1504
1505         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1506         group entry.
1507         (elmo-folder-exists-p): "[" is empty.
1508         (elmo-folder-list-subfolders): Define.
1509         (elmo-folder-have-subfolder-p): Ditto.
1510
1511 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1512
1513         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1514
1515 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1516
1517         * elmo-filter.el (elmo-folder-local-p): Define.
1518
1519 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1520
1521         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1522         when entity is garbaged.
1523         (modb-standard-save-entity-1): Don't modify the original entity.
1524
1525 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1526
1527         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1528
1529 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1530
1531         * elmo.el (elmo-strict-folder-diff): Use
1532         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1533
1534 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1535
1536         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1537         (elmo-msgdb-message-number): Ditto.
1538         (elmo-msgdb-message-field): Ditto.
1539
1540         * modb-standard.el (modb-standard-economize-entity-size): New user
1541         option.
1542         (modb-standard-loaded-message-id): New inline function.
1543         (modb-standard-load-entity): Use it.
1544         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1545         throw message-id string away.
1546         (elmo-msgdb-flag-available-p): Define.
1547         (elmo-msgdb-message-number): Ditto.
1548         (elmo-msgdb-message-field): Ditto.
1549
1550         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1551         (suppoted -> supported).
1552         (modb-legacy-supported-flag-p): Ditto.
1553         (elmo-msgdb-set-flag): Ditto.
1554         (elmo-msgdb-unset-flag): Ditto.
1555         (elmo-msgdb-flag-available-p): Define.
1556
1557         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1558         is `t', treat it as legacy entity.
1559         
1560         * elmo.el (elmo-message-flag-available-p): New generic function.
1561         (elmo-message-number): Ditto.
1562         (elmo-message-field): Use `elmo-msgdb-message-field'.
1563
1564         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1565
1566         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1567         (elmo-message-number): Ditto.
1568
1569         * elmo-multi.el (elmo-message-number): Define.
1570         (elmo-message-flag-available-p): Ditto.
1571
1572         * elmo-filter.el (elmo-message-flag-available-p): Define.
1573         (elmo-message-number): Ditto.
1574
1575         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1576         (elmo-folder-initialize): Load `max-number'.
1577         (elmo-folder-commit): Save it.
1578         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1579         (elmo-global-flag-set-internal): Set up max-number slot.
1580
1581 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1582
1583         * elmo-version.el (elmo-version): Up to 2.11.31.
1584
1585 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1586
1587         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1588         unibyte string of the current buffer for the argument of `md5'
1589         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1590
1591 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1592
1593         * modb-legacy.el (modb-legacy-flag-list): New constant.
1594         (modb-legacy-suppoted-flag-p): New internal function.
1595         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1596         (elmo-msgdb-unset-flag): Ditto.
1597
1598 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1599
1600         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1601
1602         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1603         from msgdb.
1604
1605 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1606
1607         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1608         (follow the API change).
1609
1610         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1611
1612 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1613
1614         * modb-standard.el (modb-standard-digest-flags): Abolish.
1615         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1616
1617         * elmo-vars.el (elmo-digest-flags): New variable.
1618         (elmo-preserved-flags): Moved from elmo-flag.el.
1619
1620         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1621         (elmo-imap4-flag-to-imap-criteria): Ditto.
1622         (elmo-imap4-folder-list-flagged): Use it.
1623
1624         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1625
1626         * elmo.el (elmo-folder-count-flags): Changed return value.
1627
1628         * elmo-flag.el (elmo-preserved-flags): New variable.
1629         (elmo-get-global-flags): Use it.
1630
1631         * modb-standard.el (modb-standard-digest-flags): New variable.
1632         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1633         Changed behavior of `any'.
1634
1635         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1636         which are defined the Internet draft
1637         (draft-melnikov-imap-keywords-03.txt).
1638         (elmo-imap4-flags-to-imap): New function.
1639         (elmo-folder-append-buffer): Use it.
1640
1641         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1642         in the docstring.
1643
1644         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1645         avoid the bug of Emacs 21.3.
1646
1647 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1648
1649         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1650         function find-coding-system does not exist.
1651
1652 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1653
1654         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1655         parsing.
1656
1657 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1658
1659         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1660         response codes.
1661
1662 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1663
1664         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1665         (elmo-network-close-session): Follow the changes in
1666         `elmo-pop3-read-response'.
1667         (elmo-pop3-auth-user): Ditto.
1668         (elmo-pop3-auth-apop): Ditto.
1669         (elmo-network-initialize-session): Ditto.
1670         (elmo-network-authenticate-session): Ditto.
1671         (elmo-network-setup-session): Ditto.
1672         (elmo-folder-status): Ditto.
1673         (elmo-message-fetch-plugged): Ditto.
1674         (elmo-pop3-delete-msg): Ditto.
1675
1676 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1677
1678         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1679         on failure.
1680
1681 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1682
1683         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1684         style.
1685         (elmo-bind-directory): Ditto.
1686
1687 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1688
1689         * elmo.el (elmo-folder-append-messages): Note on return value.
1690         * elmo-archive.el (elmo-folder-append-messages): Don't return
1691         message numbers which could not be appended.
1692
1693 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1694
1695         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1696
1697 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1698
1699         * elmo-version.el (elmo-version): Up to 2.11.30.
1700
1701 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1702
1703         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1704         `mask'.
1705
1706         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1707
1708         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1709         (elmo-multi-split-numbers): Add elmo-folder object into each
1710         element of return value at first.
1711         (elmo-folder-delete-messages): Follow the above change.
1712         (elmo-folder-detach-messages): Ditto.
1713
1714         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1715         number which is synchronized in target folder.
1716
1717 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1718
1719         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1720         Change default value to symbol `all'.
1721         (elmo-map-message-fetch): Change condition to update overview
1722         follow the above.
1723
1724 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1725
1726         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1727         behavior to update overview.
1728         (elmo-shimbun-update-overview-folder-list): Note it.
1729
1730 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1731
1732         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1733         recursive call.
1734
1735 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1736
1737         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1738         buffer-disable-undo, it is unnecessary.
1739         (elmo-spam-register-good-messages): Ditto.
1740
1741         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1742         Ditto.
1743
1744         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1745
1746 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1747
1748         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1749         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1750         elmo-set-buffer-multibyte.
1751         (elmo-object-load): Ditto.
1752         (elmo-save-buffer): Ditto.
1753         (elmo-delete-char): Ditto.
1754         (elmo-file-field-primitive-condition-match): Ditto.
1755         (elmo-mime-string): Ditto.
1756
1757         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1758         (elmo-archive-field-condition-match): Ditto.
1759
1760         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1761
1762         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1763
1764         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1765         (elmo-nntp-msgdb-create-message): Ditto.
1766
1767         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1768
1769         * elmo.el (elmo-message-match-condition): Ditto.
1770         (elmo-message-match-condition): Ditto.
1771
1772         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1773         Ditto.
1774
1775         * elmo-version.el (elmo-version): Up to 2.11.29.
1776
1777         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1778         (elsp-header): New backend.
1779
1780         * elmo-util.el (elmo-decoded-field-body): New function.
1781
1782 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1783
1784         * elmo-version.el (elmo-version): Up to 2.11.28.
1785
1786 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1787
1788         * elmo-filter.el: Rewrite.
1789
1790         * elmo-version.el (elmo-version): Up to 2.11.27.
1791
1792 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1793
1794         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1795         msgdb path for the localdir folder with absolute path.
1796
1797         * utf7.el: Synch up with latest gnus/utf7.el;
1798         Modified for latest Emacs.
1799
1800 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1801
1802         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1803         shimbun backend couldn't open.
1804
1805 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1806
1807         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1808         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1809         when a destination folder is a filter folder.
1810
1811 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1812
1813         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1814         (elmo-generic-folder-append-messages): Call elmo-message-flags
1815         with argument `msgid'.
1816
1817         * elmo-split.el (elmo-split-subr): Ditto.
1818
1819         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1820
1821         * elmo-multi.el (elmo-message-flags): Ditto.
1822
1823 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1824
1825         * elmo.el (elmo-folder): Add new slot `flag-table'.
1826         (elmo-folder-flag-table): New API.
1827         (elmo-folder-close-flag-table): Ditto.
1828         (elmo-folder-preserve-flags): New function.
1829         (elmo-generic-folder-append-messages): Use
1830         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1831         Flag of a non-registered message, it sets to nil.
1832         Does not set flag to flag-table.
1833
1834         * elmo-maildir.el (elmo-folder-append-buffer): Use
1835         `elmo-folder-preserve-flags'.
1836         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1837         `elmo-folder-close-flag-table'.
1838
1839         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1840         (elmo-archive-folder-append-buffer): Use
1841         `elmo-folder-preserve-flags'.
1842
1843         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1844
1845         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1846
1847         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1848         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1849         `elmo-folder-close-flag-table'.
1850
1851         * elmo-version.el (elmo-version): Up to 2.11.26.
1852
1853 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1854
1855         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1856
1857         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1858         md5's 4th and 5th argument (non-existent in flim one).
1859
1860 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1861
1862         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1863         message, It sets to nil.
1864
1865 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1866
1867         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1868         list is non-nil.
1869
1870 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1871
1872         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1873
1874         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1875
1876         * elmo-util.el (elmo-uniq-sorted-list): New function.
1877         (elmo-make-number-list): Ditto.
1878         (elmo-number-set-to-number-list): Use elmo-make-number-list
1879         and don't use nreverse.
1880
1881 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1882
1883         * elmo-version.el (elmo-version): Up to 2.11.25.
1884
1885 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1886
1887         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1888         field not exists in message, Use md5 message digest of header.
1889
1890 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1891
1892         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1893         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1894         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1895         * elmo-split.el (elmo-split-subr): Check return value of
1896         elmo-folder-append-buffer.
1897
1898         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1899         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1900
1901         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1902         message-id.
1903
1904 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1905
1906         * elmo-split.el (elmo-split-subr): Append message with flag.
1907
1908         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1909         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1910         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1911
1912 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1913
1914         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1915         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1916         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1917
1918 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1919
1920         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1921         with a function call of `process-buffer'.  All callers are updated.
1922         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1923         Remove redundant `set-buffer' in a while loop.
1924
1925 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1926
1927         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1928         calls.
1929
1930 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1931
1932         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1933         elsp-spamfilter-register-buffer-internal with current buffer.
1934         (elmo-spam-register-spam-buffer): Ditto.
1935         (elmo-spam-register-good-buffer): Ditto.
1936
1937 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1938
1939         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1940         if it is not contained in the response(A workaround for courier-imap).
1941
1942 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1943
1944         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1945         parenthesis.
1946
1947 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1948
1949         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1950         range.
1951
1952 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1953
1954         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1955         of nconc.
1956
1957         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1958         argument handler.
1959         (elmo-msgdb-message-match-condition): Follow the change above.
1960
1961 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1962
1963         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1964         folder name.
1965
1966 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1967
1968         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1969
1970 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1971
1972         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1973
1974 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1975
1976         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1977         not found.
1978
1979 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1980
1981         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1982         value.
1983         (elmo-file-command-argument): Undo last change for cygwin.
1984         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1985         Don't return nil.
1986         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1987
1988 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1989
1990         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1991         value returned from elmo-file-find is nil.
1992
1993 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1994
1995         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1996         to elmo-vars.el.
1997
1998         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1999         instead of insert-file-contents-as-binary.
2000         (elmo-message-set-field): New generic function.
2001
2002         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2003         behavior change on `split-string'.
2004
2005         * elmo-file.el (elmo-file-find): New function.
2006         (elmo-file-command): New user option.
2007         (elmo-file-command-argument): Ditto.
2008         (elmo-file-fetch-max-size): Ditto.
2009         (elmo-file-detect-format): New function.
2010         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2011         Use elmo-file-detect-format.
2012         (elmo-map-folder-list-message-locations): Don't treat directories.
2013
2014 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2015
2016         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2017         (elmo-passwd-alist-clear): Shred password before clear.
2018         (elmo-remove-passwd): Remove all mached pair.
2019
2020 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2021
2022         * elmo.el (elmo-folder-synchronize): Fix description of the return
2023         value.
2024
2025 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2026
2027         * elmo.el (elmo-message-fetch-bodystructure): New method.
2028         (elmo-message-fetch-bodystructure): Define default.
2029
2030         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2031         elmo-message-fetch-bodystructure.
2032         (elmo-message-fetch-bodystructure): Define.
2033
2034         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2035
2036 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2037
2038         * elmo-filter.el (elmo-message-folder): Define.
2039
2040 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2041
2042         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2043         elmo-delete-cr-buffer.
2044
2045         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2046
2047         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2048
2049         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2050
2051         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2052         type seems to be a text.
2053
2054 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2055
2056         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2057         (elmo-spam-register-good-buffer): Ditto.
2058         (elmo-spam-spamassassin-register-messages): Ditto.
2059
2060         * elmo-util.el (elmo-string-member-ignore-case): Define with
2061         static-cond.
2062
2063 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2064
2065         * elmo.el (elmo-folder-type): Undo last change.
2066
2067         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2068
2069         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2070         warnings.
2071
2072         * elmo-file.el: New file.
2073         
2074         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2075
2076         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2077         variable.
2078         (elmo-spam-spamassassin-register-messages): New inline function.
2079         (elmo-spam-register-spam-messages): Define.
2080         (elmo-spam-register-good-messages): Ditto.
2081
2082         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2083         Fixed typo.
2084
2085         * elmo.el (toplevel): Added autoload setting for
2086         `elmo-get-global-flags'.
2087         (elmo-message-has-global-flag-p): New function.
2088         (elmo-message-set-global-flags): Ditto.
2089         (elmo-folder-type): Improvement for name: format.
2090
2091         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2092         availability of keyword flags.
2093         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2094         (elmo-folder-list-flagged-plugged): Renamed from
2095         elmo-folder-list-flagged-unplugged.
2096         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2097         accept any flag as keyword flag.
2098         (elmo-folder-set-flag-plugged): Accept keyword flags.
2099         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2100
2101         * elmo-flag.el (elmo-get-global-flags): New function.
2102
2103         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2104         folders.
2105
2106         * elmo-version.el (elmo-version): Up to 2.11.24.
2107
2108 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2109
2110         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2111         elmo-multiple-field-body instead of std11-field-body to check all
2112         headers.
2113
2114 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2115
2116         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2117         or "size".
2118
2119 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2120
2121         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2122         unintern is unbound.
2123
2124 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2125
2126         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2127         Protect from infinite loop.
2128
2129 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2130
2131         * elsp-bogofilter.el
2132         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2133         (elmo-spam-bogofilter-register-messages): New internal function.
2134         (elmo-spam-register-spam-messages): Define.
2135         (elmo-spam-register-good-messages): Ditto.
2136
2137 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2138
2139         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2140         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2141         (elmo-spam-bogofilter-call): Fixed the last change.
2142         (elmo-spam-bogofilter-arguments): Ditto.
2143
2144         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2145         Follow the options change of latest bogofilter.
2146
2147         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2148         (elmo-spam-bogofilter-good-switch): Ditto.
2149         (elmo-spam-bogofilter-arguments-alist): New user option.
2150         (elmo-spam-bogofilter-debug): Ditto.
2151         (elmo-spam-bogofilter-call): Renamed from
2152         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2153         is non-nil, insert output in buffer for debug.
2154         (elmo-spam-bogofilter-arguments): New macro.
2155         (elmo-spam-buffer-spam-p): Use it.
2156         (elsp-bogofilter-register-buffer): Ditto.
2157
2158 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2159
2160         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2161         regexp.
2162
2163 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2164
2165         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2166         value as "ruby".
2167         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2168         (elmo-spam-bsfilter-program): Set default value as full path for
2169         `bsfilter'.
2170         (elmo-spam-bsfilter-debug): New user option.
2171         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2172         non-nil, insert output in buffer for debug. Fix treating of
2173         argument.
2174
2175 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2176
2177         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2178         `elmo-maildir-flag-specs' element instead of one.
2179         (elmo-map-folder-unset-flag): Ditto.
2180         (Reported by Ken Makimura <macky@astem.or.jp>)
2181
2182         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2183         (elmo-folder-unset-flag-plugged): Ditto.
2184
2185 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2186
2187         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2188         to `reads' slot only if `in-msgdb' is nil.
2189
2190 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2191
2192         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2193         and complement argument list.
2194
2195 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2196
2197         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2198         instead of elmo-folder-list-flagged.
2199
2200 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2201
2202         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2203
2204         * elsp-bsfilter.el: New file.
2205
2206         * elmo-pipe.el (elmo-folder-list-unreads,
2207         elmo-folder-list-answereds,
2208         elmo-folder-list-importants,
2209         elmo-folder-flag-as-important,
2210         elmo-folder-unflag-important,
2211         elmo-folder-flag-as-read,
2212         elmo-folder-unflag-read,
2213         elmo-folder-flag-as-answered,
2214         elmo-folder-unflag-answered): Remove.
2215         (elmo-folder-set-flag): Define.
2216         (elmo-folder-unset-flag): Ditto.
2217
2218         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2219         (elmo-folder-set-flag): Define.
2220         (elmo-folder-unset-flag): Ditto.
2221         (elmo-folder-list-unreads): Remove.
2222         (elmo-folder-list-flagged): Define.
2223
2224         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2225         (elmo-folder-list-unreads,
2226         elmo-folder-list-importants,
2227         elmo-folder-list-answereds,
2228         elmo-folder-list-unreads-plugged,
2229         elmo-folder-list-importants-plugged,
2230         elmo-folder-list-answereds-plugged): Remove.
2231         (elmo-folder-list-flagged-plugged): New method.
2232         (elmo-folder-unflag-important,
2233         elmo-folder-flag-as-important,
2234         elmo-folder-unflag-read,
2235         elmo-folder-flag-as-read,
2236         elmo-folder-unflag-answered,
2237         elmo-folder-flag-as-answered,
2238         elmo-folder-flag-as-read-unplugged,
2239         elmo-folder-unflag-read-unplugged,
2240         elmo-folder-flag-as-important-unplugged,
2241         elmo-folder-unflag-important-unplugged,
2242         elmo-folder-flag-as-answered-unplugged,
2243         elmo-folder-unflag-answered-unplugged): Remove.
2244         (elmo-folder-set-flag): Define.
2245         (elmo-folder-unset-flag): Ditto.
2246         (elmo-folder-set-flag-unplugged): Ditto.
2247         (elmo-folder-unset-flag-unplugged): Ditto.
2248
2249         * elmo-multi.el (elmo-folder-list-unreads,
2250         elmo-folder-list-answereds,
2251         elmo-folder-list-importants,
2252         elmo-folder-flag-as-important,
2253         elmo-folder-unflag-important,
2254         elmo-folder-flag-as-read,
2255         elmo-folder-unflag-read,
2256         elmo-folder-flag-as-answered,
2257         elmo-folder-unflag-answered): Remove.
2258         (elmo-folder-set-flag): Define.
2259         (elmo-folder-unset-flag): Ditto.
2260
2261         * elmo-map.el (elmo-map-folder-unflag-important,
2262         elmo-map-folder-flag-as-important,
2263         elmo-map-folder-unflag-read,
2264         elmo-map-folder-flag-as-read,
2265         elmo-map-folder-unflag-answered,
2266         elmo-map-folder-flag-as-answered): Remove.
2267         (elmo-map-folder-set-flag): New method.
2268         (elmo-map-folder-unset-flag): Ditto.
2269         (elmo-map-folder-list-unreads,
2270         elmo-map-folder-list-importants,
2271         elmo-map-folder-list-answereds): Remove.
2272         (elmo-folder-list-flagged-internal): Define.
2273         (elmo-map-folder-list-flagged): New method.
2274
2275         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2276         (elmo-map-folder-list-unreads,
2277         elmo-map-folder-list-importants,
2278         elmo-map-folder-list-flagged): Remove.
2279         (elmo-map-folder-list-flagged): Define.
2280         (elmo-map-folder-flag-as-important,
2281         elmo-map-folder-unflag-important,
2282         elmo-map-folder-flag-as-read,
2283         elmo-map-folder-unflag-read,
2284         elmo-map-folder-flag-as-answered,
2285         elmo-map-folder-unflag-answered): Remove.
2286         (elmo-maildir-set-mark-messages): New internal function.
2287         (elmo-map-folder-set-flag): Define.
2288         (elmo-map-folder-unset-flag): Ditto.
2289
2290         * elmo.el (toplevel): Added autoload setting for
2291         `elmo-folder-list-global-flag-messages'.
2292         (elmo-folder-list-unreads,
2293         elmo-folder-list-importants,
2294         elmo-folder-list-answereds): Remove.
2295         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2296         Return a list whitch merged with messages have global flag.
2297         (elmo-folder-list-flagged-internal): New method.
2298         (elmo-folder-unflag-important,
2299         elmo-folder-flag-as-important,
2300         elmo-folder-unflag-read,
2301         elmo-folder-flag-as-read,
2302         elmo-folder-unflag-answered,
2303         elmo-folder-flag-as-answered): Remove.
2304         (elmo-folder-set-flag): New method.
2305         (elmo-folder-unset-flag): Ditto.
2306         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2307         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2308
2309         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2310         (elmo-folder-list-unreads-plugged,
2311         elmo-folder-list-importants-plugged,
2312         elmo-folder-list-answereds-plugged,
2313         elmo-folder-list-flagged-unplugged,
2314         elmo-folder-unflag-important-plugged,
2315         elmo-folder-flag-as-important-plugged,
2316         elmo-folder-unflag-read-plugged,
2317         elmo-folder-flag-as-read-plugged,
2318         elmo-folder-unflag-answered-plugged,
2319         elmo-folder-flag-as-answered-plugged): Remove.
2320         (elmo-folder-set-flag-plugged,
2321         elmo-folder-unset-flag-plugged): Define.
2322
2323         * elmo-flag.el (elmo-folder-initialize): Register to
2324         `elmo-global-flag-list' if flag is not global.
2325         (elmo-folder-append-messages): Set flag to source messages.
2326
2327         * elmo-filter.el (elmo-filter-folder-list-unreads,
2328         elmo-folder-list-unreads,
2329         elmo-filter-folder-list-importants,
2330         elmo-folder-list-importants,
2331         elmo-folder-flag-as-read,
2332         elmo-folder-unflag-read,
2333         elmo-folder-flag-as-important,
2334         elmo-folder-unflag-important,
2335         elmo-folder-flag-as-answered,
2336         elmo-folder-unflag-answered): Remove.
2337         (elmo-folder-set-flag): Define.
2338         (elmo-folder-unset-flag): Ditto.
2339
2340         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2341         elmo-folder-unflag-read-dop,
2342         elmo-folder-flag-as-important-dop,
2343         elmo-folder-unflag-important-dop,
2344         elmo-folder-flag-as-answered-dop,
2345         elmo-folder-unflag-answered-dop): Remove.
2346         (elmo-folder-set-flag-dop,
2347         elmo-folder-unset-flag-dop,
2348         elmo-folder-set-important-delayed,
2349         elmo-folder-unset-important-delayed,
2350         elmo-folder-set-read-delayed,
2351         elmo-folder-unset-read-delayed,
2352         elmo-folder-set-answered-delayed,
2353         elmo-folder-unset-answered-delayed): New function.
2354         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2355         (elmo-dop-queue-method-name-alist): Ditto.
2356
2357         * elmo-version.el (elmo-version): Up to 2.11.23.
2358
2359 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2360
2361         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2362
2363         * elsp-sa.el: New file.
2364
2365 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2366
2367         * modb-standard.el (modb-standard-message-entity): New function.
2368         (elmo-msgdb-message-entity): Use it.
2369
2370 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2371
2372         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2373         behavior when one-level is nil.
2374
2375         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2376
2377         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2378
2379 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2380
2381         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2382         get max number.
2383         (elmo-generic-folder-diff): Ditto.
2384
2385         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2386         (elmo-folder-update-number): Ditto.
2387
2388         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2389         (elmo-folder-next-message-number-dop): Ditto.
2390
2391 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2392
2393         * elmo-filter.el (elmo-folder-msgdb-create): Use
2394         `elmo-message-entity' and `elmo-message-flags' instead of
2395         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2396
2397 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2398
2399         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2400         `if-exists'.
2401
2402 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2403
2404         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2405
2406         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2407
2408         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2409
2410 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2411
2412         * elmo-version.el (elmo-version): Up to 2.11.22.
2413
2414 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2415
2416         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2417
2418 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2419
2420         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2421         if the message dose not exist.
2422
2423 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2424
2425         * elmo-version.el (elmo-version): Up to 2.11.21.
2426
2427 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2428
2429         * modb-standard.el (toplevel): Don't require mime.
2430
2431 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2432
2433         * elsp-bogofilter.el (toplevel): Don't require path-util.
2434         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2435         (elmo-spam-bogofilter-header): Abolish.
2436         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2437         (elmo-spam-bogofilter-args): New user option.
2438         (elsp-bogofilter-call-bogofilter): New internal function.
2439         (elmo-spam-buffer-spam-p): Use it.
2440         (elsp-bogofilter-register-buffer): Renamed from
2441         `elmo-spam-bogofilter-register-buffer';
2442         Use `elsp-bogofilter-call-bogofilter'.
2443         (elmo-spam-register-spam-buffer): Follow the change above.
2444         (elmo-spam-register-good-buffer): Ditto.
2445
2446 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2447
2448         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2449         message-id is nil do nothing.
2450
2451 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2452
2453         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2454         Revival.
2455         (elmo-imap4-session): Removed use-flag slot.
2456         (elmo-imap4-session-select-mailbox): Undo last change.
2457         (elmo-folder-use-flag-p): Use
2458         elmo-imap4-disuse-server-flag-mailbox-regexp.
2459
2460 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2461
2462         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2463         (elmo-imap4-session-select-mailbox): Set it up.
2464         (elmo-folder-use-flag-p): Return value of use-flag slot.
2465
2466 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2467
2468         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2469         message-id is nil.
2470         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2471
2472         * modb-entity.el (elmo-message-entity-handler): Likewise.
2473
2474 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2475
2476         * elmo.el (toplevel): Remove setting of autoloding for
2477         elmo-global-flag-initialize.
2478         (elmo-init): Don't call elmo-global-flag-initialize.
2479         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2480
2481         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2482         (elmo-global-mark-migrate): Don't call it.
2483         (elmo-global-mark-upgrade): Ditto.
2484
2485 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2486
2487         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2488         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2489
2490         * elmo-vars.el (elmo-init-hook): New user option.
2491
2492         * elmo.el (elmo-init): Run the elmo-init-hook.
2493
2494         * elmo-flag.el (elmo-global-mark-migrate): New function.
2495
2496 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2497
2498         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2499         Undo last change (move to elmo-msgdb-unset-flag).
2500         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2501         flag is unset.
2502
2503 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2504
2505         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2506         read flag is set.
2507         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2508         (elmo-msgdb-unset-flag): Ditto.
2509
2510 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2511
2512         * elmo-split.el (elmo-split): Return split message count.
2513
2514 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2515
2516         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2517         is nil.
2518
2519 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2520
2521         * elmo.el (elmo-folder-unflag-important): Call
2522         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2523         a symbol `always'.
2524
2525         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2526         before unset flag.
2527         (elmo-global-flag-detach): Delete the message from flag folder, if
2528         `delete-if-none' is a symbol `always'.
2529
2530 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2531
2532         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2533         `elmo-spam-spamfilter-decode-buffer'.
2534         (elsp-spamfilter-register-buffer-internal): New internal function.
2535         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2536         (elmo-spam-register-spam-buffer): Ditto.
2537         (elmo-spam-register-good-buffer): Ditto.
2538
2539         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2540         change.
2541         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2542         (elmo-spam-register-spam-buffer): Follow the API change.
2543         (elmo-spam-register-good-buffer): Ditto.
2544
2545         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2546         (elmo-split-spam-p): Added argument plist; Call
2547         `elmo-spam-buffer-spam-p' with new argument register.
2548
2549         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2550         `register'.
2551         (elmo-spam-message-spam-p): Ditto.
2552         (elmo-spam-register-spam-buffer): Added optional argument
2553         `restore'.
2554         (elmo-spam-register-good-buffer): Ditto.
2555         (elmo-spam-register-spam-messages): Ditto.
2556         (elmo-spam-register-good-messages): Ditto.
2557
2558 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2559
2560         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2561         register into good corpus.
2562         (elmo-spam-register-good-buffer): Fixed to register into bad
2563         corpus.
2564
2565 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2566
2567         * elmo-version.el (elmo-version): Up to 2.11.20.
2568
2569         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2570         change.
2571
2572         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2573         flag without depending on \Recent flag.
2574
2575 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2576
2577         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2578         (elmo-spam-modified-p): Defined.
2579         (elmo-spam-save-status): Set `modified' slot to nil.
2580         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2581         (elmo-spam-register-good-buffer): Ditto.
2582
2583         * elmo-spam.el (elmo-spam-modified-p): New API.
2584
2585 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2586
2587         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2588         duplicate definition.
2589
2590         * elmo-util.el (elmo-unfold-field-body): New function.
2591         (elmo-msgdb-get-message-id-from-buffer): Use it.
2592
2593         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2594         Fixed the last change; Use elmo-unfold-field-body.
2595
2596 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2597
2598         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2599         Unfold date value.
2600
2601 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2602
2603         * elmo-spam.el (elmo-spam-save-status): New API.
2604
2605         * elsp-spamfilter.el: New file.
2606
2607 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2608
2609         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2610
2611 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2612
2613         * elmo-split.el (elmo-split-spam-p): New function.
2614
2615         * elmo-spam.el: New file.
2616
2617         * elsp-bogofilter.el: Ditto.
2618
2619 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2620
2621         * elmo.el (elmo-folder-next-message-number): New API.
2622         (elmo-folder-next-message-number): Define.
2623         (elmo-message-field): Don't check folder length.
2624
2625         * elmo-net.el (elmo-folder-next-message-number): Define.
2626         (elmo-folder-next-message-number-unplugged): Define.
2627
2628         * elmo-map.el (elmo-folder-next-message-number): Define.
2629         (elmo-folder-delete-messages): Clear hash value.
2630
2631         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2632
2633         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2634         (elmo-folder-delete-messages-dop-delayed): Always return t.
2635
2636         * elmo-version.el (elmo-version): Up to 2.11.19.
2637
2638 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2639
2640         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2641         change.
2642
2643         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2644         identical cons cell into the mark-alist and the hash table.
2645
2646 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2647
2648         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2649         elmo-folder-list-messages with argument `visible-only' as t.
2650
2651         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2652         (elmo-folder-msgdb-create): Check the target folder.
2653
2654 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2655
2656         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2657         `permanentflag' instead of `flags'.
2658         (elmo-folder-open): Ditto.
2659         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2660         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2661         (elmo-folder-use-flag-p): Always return t.
2662         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2663         `permanentflags' does not exist.
2664         (elmo-folder-open): Ditto.
2665
2666 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2667
2668         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2669         is nil.
2670         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2671
2672         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2673         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2674         response.
2675         (elmo-folder-open): Ditto.
2676         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2677         slot of the session includes the flag.
2678         (elmo-imap4-session-flag-available-p): New function.
2679         (elmo-imap4-folder-list-flagged): Ditto.
2680         (elmo-folder-list-unreads-plugged): Use it.
2681         (elmo-folder-list-importants-plugged): Ditto.
2682         (elmo-folder-list-answereds-plugged): Ditto.
2683         (elmo-imap4-search-internal-primitive): Ditto.
2684         (elmo-imap4-folder-list-any-plugged,
2685         elmo-imap4-folder-list-digest-plugged): Abolish.
2686
2687         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2688         if numbers is nil.
2689
2690 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2691
2692         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2693
2694 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2695
2696         * elmo-util.el (elmo-get-hash-val): Simplify.
2697         (elmo-set-hash-val): Rewrite.
2698
2699 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2700
2701         * elmo.el (elmo-folder-list-messages): Append killed messages into
2702         result if `visible-only' is nil and `in-msgdb' is non-nil.
2703
2704         * elmo-util.el (elmo-uniq-list): Added optional argument
2705         `delete-function'.
2706
2707         * modb.el (elmo-msgdb-flag-count): New API.
2708
2709         * modb-standard.el (modb-standard): Added slot flag-count.
2710         (modb-standard-countup-flags): New function.
2711         (modb-standard-load-flag): Call it.
2712         (elmo-msgdb-append): Ditto.
2713         (elmo-msgdb-clear): Clear slot flag-count.
2714         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2715         (elmo-msgdb-unset-flag): Treat `all' flag and call
2716         modb-standard-countup-flags.
2717         (elmo-msgdb-flag-count): Define.
2718         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2719         (elmo-msgdb-delete-messages): Ditto.
2720
2721         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2722         (elmo-msgdb-flag-count): Define.
2723
2724         * elmo.el (elmo-folder-list-messages): Undo last change.
2725         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2726         (elmo-folder-kill-messages): Unset all flags to numbers.
2727
2728         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2729         elmo-folder-kill-messages.
2730
2731         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2732         (elmo-nntp-folder-delete-messages): Abolish.
2733
2734         * elmo-version.el (elmo-version): Up to 2.11.18.
2735
2736 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2737
2738         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2739         (elmo-folder-kill-messages-range): New function.
2740         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2741         instead of elmo-folder-kill-messages-before.
2742
2743 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2744
2745         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2746         elmo-imap4-current-msgdb to decide entity handler.
2747
2748 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2749
2750         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2751
2752         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2753         inline function.
2754         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2755         (elmo-msgdb-overview-entity-set-number,
2756         elmo-msgdb-overview-entity-get-references,
2757         elmo-msgdb-overview-entity-set-references,
2758         elmo-msgdb-overview-entity-get-from-no-decode,
2759         elmo-msgdb-overview-entity-get-from,
2760         elmo-msgdb-overview-entity-set-from,
2761         elmo-msgdb-overview-entity-get-subject,
2762         elmo-msgdb-overview-entity-get-subject-no-decode,
2763         elmo-msgdb-overview-entity-set-subject,
2764         elmo-msgdb-overview-entity-get-date,
2765         elmo-msgdb-overview-entity-set-date,
2766         elmo-msgdb-overview-entity-get-to,
2767         elmo-msgdb-overview-entity-get-cc,
2768         elmo-msgdb-overview-entity-get-size,
2769         elmo-msgdb-overview-entity-set-size,
2770         elmo-msgdb-overview-entity-get-extra,
2771         elmo-msgdb-overview-entity-set-extra,
2772         elmo-msgdb-overview-entity-get-extra-field,
2773         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2774         (elmo-msgdb-make-index): Use
2775         `elmo-msgdb-overview-entity-get-number-internal'.
2776         (elmo-msgdb-clear-index): Ditto.
2777         (elmo-msgdb-append-entity): Ditto;
2778         Use `elmo-msgdb-overview-entity-get-id-internal'.
2779
2780         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2781         elmo-msgdb-overview-entity-set-number,
2782         elmo-msgdb-overview-entity-get-references,
2783         elmo-msgdb-overview-entity-set-references,
2784         elmo-msgdb-overview-entity-get-from-no-decode,
2785         elmo-msgdb-overview-entity-get-from,
2786         elmo-msgdb-overview-entity-set-from,
2787         elmo-msgdb-overview-entity-get-subject,
2788         elmo-msgdb-overview-entity-get-subject-no-decode,
2789         elmo-msgdb-overview-entity-set-subject,
2790         elmo-msgdb-overview-entity-get-date,
2791         elmo-msgdb-overview-entity-set-date,
2792         elmo-msgdb-overview-entity-get-to,
2793         elmo-msgdb-overview-entity-get-cc,
2794         elmo-msgdb-overview-entity-get-size,
2795         elmo-msgdb-overview-entity-set-size,
2796         elmo-msgdb-overview-entity-get-extra,
2797         elmo-msgdb-overview-entity-set-extra,
2798         elmo-msgdb-overview-entity-get-extra-field,
2799         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2800         and rewrote for backward compatibility.
2801
2802 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2803
2804         * elmo.el (elmo-message-entity-number,
2805         elmo-message-entity-set-number,
2806         elmo-message-entity-field,
2807         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2808
2809         * elmo-msgdb.el (elmo-message-entity-number,
2810         elmo-message-entity-set-number,
2811         elmo-message-entity-field,
2812         elmo-message-entity-set-field): Moved from elmo.el.
2813
2814 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2815
2816         * elmo.el (toplevel): Changed definition orders.
2817
2818 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2819
2820         * modb.el (elmo-msgdb-search): New API .
2821         (elmo-msgdb-match-condition): Ditto.
2822
2823         * modb-standard.el (elmo-msgdb-search): Define.
2824
2825         * modb-legacy.el (elmo-msgdb-search): Ditto.
2826
2827         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2828         from elmo-msgdb-match-condition-internal.
2829
2830         * elmo.el (elmo-folder-search-fast): Abolish.
2831         (elmo-folder-search): Use elmo-msgdb-search and
2832         elmo-with-progress-display.
2833
2834         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2835         as msgdb API.
2836
2837         * elmo.el (elmo-folder): Remove slot message-modified and
2838         flag-modified.
2839         (elmo-folder-set-message-modified): Abolish.
2840         (elmo-generic-folder-commit): Follow the change above.
2841         (elmo-folder-synchronize): Ditto.
2842
2843         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2844
2845         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2846
2847         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2848
2849 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2850
2851         * modb-standard.el (modb-standard-make-message-entity,
2852         elmo-msgdb-make-message-entity,
2853         elmo-msgdb-create-message-entity-from-buffer,
2854         elmo-msgdb-message-entity-number,
2855         elmo-msgdb-message-entity-set-number,
2856         elmo-msgdb-message-entity-field,
2857         elmo-msgdb-message-entity-set-field,
2858         elmo-msgdb-copy-message-entity,
2859         elmo-msgdb-match-condition-internal): Remove.
2860
2861         * modb-entity.el: New file (again).
2862
2863         * modb.el (toplevel): Require modb-entity.
2864         (elmo-msgdb-message-entity-handler): New method.
2865
2866         * modb-standard.el (modb-standard-entity-id): Use
2867         elmo-message-entity-handler.
2868         (modb-standard-load-entity): Ditto.
2869         (elmo-msgdb-append-entity): Ditto.
2870         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2871
2872         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2873         elmo-msgdb-decoded-cache-hashtb,
2874         (modb-legacy-make-message-entity,
2875         elmo-msgdb-make-message-entity,
2876         elmo-msgdb-create-message-entity-from-buffer,
2877         elmo-msgdb-message-entity-number,
2878         elmo-msgdb-message-entity-set-number,
2879         elmo-msgdb-message-entity-field,
2880         elmo-msgdb-message-entity-set-field,
2881         elmo-msgdb-copy-message-entity,
2882         elmo-msgdb-match-condition-internal,
2883         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2884
2885         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2886         (elmo-message-entity-set-number): Ditto.
2887         (elmo-message-entity-field): Ditto.
2888         (elmo-message-entity-set-field): Ditto.
2889
2890         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2891
2892         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2893
2894         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2895
2896         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2897         (elmo-nntp-msgdb-create-message): Ditto.
2898
2899         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2900         (elmo-folder-msgdb-create): Add unread flag.
2901
2902         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2903
2904         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2905
2906         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2907
2908         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2909
2910         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2911         elmo-msgdb-messge-entity-handler.
2912         * elmo-version.el (elmo-version): Up to 2.11.17.
2913
2914 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2915
2916         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2917         change.
2918
2919 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2920
2921         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2922
2923         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2924         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2925         (elmo-msgdb-flag-table): Ditto.
2926         (elmo-msgdb-sort-by-date): Ditto.
2927
2928         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2929
2930         * modb-standard.el (toplevel): Require mime.
2931         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2932         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2933         elmo-msgdb-message-entity-number.
2934         (elmo-msgdb-append-entity): Ditto.
2935         (elmo-msgdb-create-message-entity-from-file): Remove.
2936         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2937         corresponds to the entity.
2938         (elmo-msgdb-message-entity-number): Do nothing currently.
2939         (elmo-msgdb-message-entity-field): Ditto.
2940         (elmo-msgdb-message-entity-set-field): Ditto.
2941         (elmo-msgdb-copy-message-entity): Ditto.
2942         (elmo-msgdb-match-condition-internal): Ditto.
2943
2944         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2945         elmo-util.el.
2946         (elmo-msgdb-create-message-entity-from-file): Remove.
2947
2948         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2949         modb-legacy.el.
2950         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2951
2952         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2953
2954 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2955
2956         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2957         (elmo-msgdb-message-entity-field): Ditto.
2958         (elmo-msgdb-message-entity-number): Ditto.
2959
2960 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2961
2962         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2963         Fixed how to set extra field into entity.
2964         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2965         symbol.
2966
2967         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2968         Fixed how to set extra field into entity.
2969         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2970         symbol.
2971
2972 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2973
2974         * modb.el (elmo-message-entity-db): New function.
2975         (elmo-msgdb-make-message-entity): New API.
2976         (elmo-msgdb-message-entity-number): Ditto.
2977         (elmo-msgdb-message-entity-set-number): Ditto.
2978         (elmo-msgdb-message-entity-field): Ditto.
2979         (elmo-msgdb-message-entity-set-field): Ditto.
2980         (elmo-msgdb-copy-message-entity): Ditto.
2981         (elmo-msgdb-create-message-entity-from-file): Ditto.
2982         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2983         (elmo-msgdb-match-condition-internal): Ditto.
2984
2985         * modb-standard.el (modb-legacy): Require modb-legacy.
2986         (modb-standard-make-message-entity): New inline function.
2987         (elmo-msgdb-make-message-entity): Define.
2988         (elmo-msgdb-create-message-entity-from-file): Ditto.
2989         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2990         (elmo-msgdb-message-entity-field): Ditto.
2991         (elmo-msgdb-message-entity-set-field): Ditto.
2992         (elmo-msgdb-copy-message-entity): Ditto.
2993         (elmo-msgdb-match-condition-internal): Ditto.
2994
2995         * modb-legacy.el: Don't require modb-entity.
2996         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2997         (elmo-msgdb-match-condition-primitive): Ditto.
2998         (elmo-msgdb-get-decoded-cache): Ditto.
2999         (elmo-msgdb-overview-entity-get-id): Ditto.
3000         (elmo-msgdb-overview-entity-get-number): Ditto.
3001         (elmo-msgdb-overview-entity-set-number): Ditto.
3002         (elmo-msgdb-overview-entity-get-references): Ditto.
3003         (elmo-msgdb-overview-entity-set-references): Ditto.
3004         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3005         (elmo-msgdb-overview-entity-get-from): Ditto.
3006         (elmo-msgdb-overview-entity-set-from): Ditto.
3007         (elmo-msgdb-overview-entity-get-subject): Ditto.
3008         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3009         (elmo-msgdb-overview-entity-set-subject): Ditto.
3010         (elmo-msgdb-overview-entity-get-date): Ditto.
3011         (elmo-msgdb-overview-entity-set-date): Ditto.
3012         (elmo-msgdb-overview-entity-get-to): Ditto.
3013         (elmo-msgdb-overview-entity-get-cc): Ditto.
3014         (elmo-msgdb-overview-entity-get-size): Ditto.
3015         (elmo-msgdb-overview-entity-set-size): Ditto.
3016         (elmo-msgdb-overview-entity-get-extra): Ditto.
3017         (elmo-msgdb-overview-entity-set-extra): Ditto.
3018         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3019         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3020         (elmo-msgdb-number-load): Ditto.
3021         (elmo-msgdb-overview-load): Ditto.
3022         (elmo-msgdb-mark-load): Ditto.
3023         (elmo-msgdb-number-save): Ditto.
3024         (elmo-msgdb-mark-save): Ditto.
3025         (elmo-msgdb-overview-save): Ditto.
3026         (modb-legacy-make-message-entity): New inline function.
3027         (elmo-msgdb-insert-file-header): Ditto.
3028         (elmo-msgdb-make-message-entity): Define.
3029         (elmo-msgdb-create-message-entity-from-file): Ditto.
3030         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3031         (elmo-msgdb-message-entity-number): Ditto.
3032         (elmo-msgdb-message-entity-set-number): Ditto.
3033         (elmo-msgdb-message-entity-field): Ditto.
3034         (elmo-msgdb-message-entity-set-field): Ditto.
3035         (elmo-msgdb-copy-message-entity): Ditto.
3036         (elmo-msgdb-match-condition-internal): Ditto.
3037
3038         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3039         (elmo-message-copy-entity): Rewrite.
3040         (elmo-message-entity-number): Ditto.
3041         (elmo-message-entity-set-number): Ditto.
3042         (elmo-message-entity-field): Use elmo-message-entity-db.
3043         (elmo-message-entity-set-field): Ditto.
3044         (elmo-message-field): Rewrite.
3045
3046         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3047         elmo-msgdb.el
3048         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3049
3050         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3051         elmo-message-entity-field.
3052         (elmo-shimbun-folder-shimbun-header): Ditto.
3053         (elmo-shimbun-entity-to-header): Ditto.
3054         (elmo-folder-msgdb-create): Ditto.
3055         (elmo-shimbun-msgdb-create-entity): Ditto;
3056         Use elmo-msgdb-create-message-entity-from-buffer.
3057         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3058         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3059
3060         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3061         elmo-msgdb-create-message-entity-from-file and 
3062         elmo-message-entity-field.
3063
3064         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3065         elmo-message-entity-number.
3066         (elmo-pop3-msgdb-create-message): Use
3067         elmo-msgdb-create-message-entity-from-buffer,
3068         elmo-message-entity-set-field, elmo-message-entity-number and
3069         elmo-message-entity-set-number.
3070
3071         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3072         the API change in elmo-msgdb-make-message-entity.
3073         (elmo-nntp-msgdb-create-message): Use
3074         elmo-msgdb-create-message-entity-from-buffer.
3075
3076         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3077         elmo-message-entity-field and
3078         elmo-msgdb-create-message-entity-from-file.
3079
3080         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3081         (elmo-msgdb-get-field): Abolish.
3082         (elmo-msgdb-get-number): Rewrite.
3083         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3084         (elmo-msgdb-flag-table): Ditto.
3085         (elmo-msgdb-get-last-message-id,
3086         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3087         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3088         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3089         (elmo-msgdb-create-overview-from-buffer,
3090         elmo-msgdb-overview-get-parent-entity): Abolish.
3091
3092         * elmo-mime.el (elmo-mime-display-as-is): Use
3093         elmo-message-entity-field.
3094
3095         * elmo-map.el (elmo-folder-pack-numbers): Use
3096         elmo-message-entity-set-number.
3097
3098         * elmo-maildir.el (elmo-folder-msgdb-create): 
3099         elmo-msgdb-create-message-entity-from-file instead of
3100         elmo-msgdb-create-overview-entity-from-file.
3101
3102         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3103         msgdb.
3104         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3105         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3106
3107         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3108         elmo-messge-entity-field and elmo-message-entity-number.
3109         (elmo-imap4-fetch-callback-1): Call
3110         elmo-msgdb-create-message-entity-from-buffer instead of
3111         elmo-msgdb-create-overview-from-buffer. 
3112         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3113         (elmo-find-fetch-strategy): Likewise.
3114
3115         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3116         elmo-localdir-msgdb-create-entity with argument msgdb.
3117
3118         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3119         and elmo-message-entity-set-number.
3120
3121         * elmo-cache.el (elmo-folder-msgdb-create): Use
3122         elmo-message-entity-field.
3123         (elmo-folder-msgdb-create): Call
3124         elmo-msgdb-create-message-entity-from-file instead of
3125         elmo-msgdb-create-overview-entity-from-file.
3126
3127         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3128         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3129         instead of elmo-msgdb-create-overview-from-buffer.
3130         (elmo-archive-msgdb-create-entity): Ditto.
3131         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3132         elmo-message-entity-field.
3133         (elmo-archive-parse-mmdf): Ditto.
3134
3135         * modb-entity.el: Removed.
3136
3137         * elmo-version.el (elmo-version): Up to 2.11.16.
3138
3139 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3140
3141         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3142         `is-local'.
3143         (elmo-folder-flag-as-answered): Ditto.
3144
3145 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3146
3147         * modb-standard.el: New file.
3148
3149         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3150         elmo-msgdb-convert-type is `sync'.
3151
3152         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3153         (elmo-msgdb-convert-type): New user option.
3154
3155         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3156         (elmo-load-msgdb): Auto detect saved type.
3157
3158         * elmo-version.el (elmo-version): Up to 2.11.15.
3159
3160 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3161
3162         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3163
3164         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3165         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3166         with argument `delete-if-none' when dst-folder is 'null.
3167
3168         * elmo-flag.el (elmo-folder-append-messages): Defined.
3169         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3170
3171 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3172
3173         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3174
3175 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3176
3177         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3178         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3179         (elmo-folder-commit): Ditto.
3180
3181 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3182
3183         * elmo-flag.el: New file.
3184
3185         * elmo-mark.el: Removed.
3186
3187         * modb-legacy.el (modb-legacy-new-mark,
3188         modb-legacy-unread-uncached-mark,
3189         modb-legacy-unread-cached-mark,
3190         modb-legacy-read-uncached-mark,
3191         modb-legacy-answered-cached-mark,
3192         modb-legacy-answered-uncached-mark,
3193         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3194         All other related portions are changed.
3195
3196         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3197         (elmo-folder-list-messages-with-global-mark): Abolish.
3198         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3199         (elmo-folder-flag-as-important): Ditto.
3200         (elmo-folder-unflag-read): Ditto.
3201         (elmo-folder-flag-as-read): Ditto.
3202         (elmo-folder-unflag-answered): Ditto.
3203         (elmo-folder-flag-as-answered): Ditto.
3204         (elmo-message-encache): Return the cache path.
3205         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3206         (elmo-message-set-flag): Transitional implementation.
3207         (elmo-message-unset-flag): Ditto.
3208         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3209         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3210         (elmo-init): Call elmo-global-flag-initialize.
3211         (toplevel): Added autoload settings for elmo-flag.
3212
3213         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3214
3215         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3216         (elmo-file-cache-delete): Don't treat global-mark.
3217
3218         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3219
3220         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3221
3222         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3223         `elmo-global-flags-set'.
3224
3225         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3226         `flag'.
3227         (elmo-folder-unflag-read): Ditto.
3228         (elmo-folder-unflag-important): Ditto.
3229         (elmo-folder-flag-as-important): Ditto.
3230         (elmo-folder-unflag-answered): Ditto.
3231         (elmo-folder-flag-as-answered): Ditto.
3232
3233         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3234         `elmo-global-flags-set'.
3235         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3236
3237         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3238
3239         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3240         `flag'.
3241         (elmo-folder-flag-as-important): Ditto.
3242         (elmo-folder-unflag-important): Ditto.
3243         (elmo-folder-flag-as-important): Ditto.
3244         (elmo-folder-unflag-read): Ditto.
3245         (elmo-folder-flag-as-read): Ditto.
3246         (elmo-folder-unflag-answered): Ditto.
3247         (elmo-folder-flag-as-answered): Ditto.
3248
3249         * elmo-multi.el (elmo-folder-list-importants): Don't call
3250         elmo-folder-list-messages-with-global-mark.
3251         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3252         (elmo-folder-unflag-important): Ditto.
3253         (elmo-folder-flag-as-read): Ditto.
3254         (elmo-folder-unflag-read): Ditto.
3255         (elmo-folder-flag-as-answered): Ditto.
3256         (elmo-folder-unflag-answered): Ditto.
3257
3258         * elmo-msgdb.el (elmo-msgdb-new-mark,
3259         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3260         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3261         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3262         (Moved to modb-legacy.el).
3263         (elmo-flag-table-get): Treat important flag too.
3264
3265         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3266         `mark' to `flag'.
3267         (elmo-map-folder-flag-as-important): Ditto.
3268         (elmo-map-folder-unflag-read): Ditto.
3269         (elmo-map-folder-flag-as-read): Ditto.
3270         (elmo-map-folder-unflag-answered): Ditto.
3271         (elmo-map-folder-flag-as-answered): Ditto.
3272         (elmo-folder-unflag-important): Ditto.
3273         (elmo-folder-flag-as-important): Ditto.
3274         (elmo-folder-unflag-read): Ditto.
3275         (elmo-folder-flag-as-read): Ditto.
3276         (elmo-folder-unflag-answered): Ditto.
3277         (elmo-folder-flag-as-answered): Ditto.
3278
3279         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3280         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3281         `flag'.
3282         (elmo-map-folder-unflag-important): Ditto.
3283         (elmo-map-folder-flag-as-read): Ditto.
3284         (elmo-map-folder-unflag-read): Ditto.
3285         (elmo-map-folder-flag-as-answered): Ditto.
3286         (elmo-map-folder-unflag-answered): Ditto.
3287
3288         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3289         `elmo-global-flags-set'.
3290         (elmo-global-flags-set): Added autoload setting.
3291
3292         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3293         `flag'.
3294
3295         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3296         `elmo-msgdb-global-mark-set'.
3297         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3298         Call `elmo-global-flags-set'.
3299         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3300         `flag'.
3301         (elmo-folder-flag-as-important-plugged): Ditto.
3302         (elmo-folder-unflag-read-plugged): Ditto.
3303         (elmo-folder-flag-as-read-plugged): Ditto.
3304         (elmo-folder-unflag-answered-plugged): Ditto.
3305         (elmo-folder-flag-as-answered-plugged): Ditto.
3306         (elmo-global-flags-set): Added autoload setting.
3307
3308         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3309         `flag'.
3310         (elmo-folder-unflag-read): Ditto.
3311         (elmo-folder-flag-as-important): Ditto.
3312         (elmo-folder-unflag-important): Ditto.
3313         (elmo-folder-flag-as-answered): Ditto.
3314         (elmo-folder-unflag-answered): Ditto.
3315
3316         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3317         change of `mark'->`flag'.
3318         (elmo-dop-queue-method-name-alist): Ditto.
3319         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3320         (elmo-folder-unflag-read-dop): Ditto.
3321         (elmo-folder-flag-as-important-dop): Ditto.
3322         (elmo-folder-unflag-important-dop): Ditto.
3323         (elmo-folder-flag-as-answered-dop): Ditto.
3324         (elmo-folder-unflag-answered-dop): Ditto.
3325
3326         * elmo-cache.el (elmo-folder-msgdb-create): Call
3327         `elmo-global-flags-set'.
3328
3329         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3330         Call `elmo-global-flags-set'.
3331         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3332         elmo-archive-parse-mmdf with argument `folder'.
3333         (elmo-archive-parse-mmdf): Added argument `folder';
3334         Call `elmo-global-flags-set'.
3335
3336         * elmo-version.el (elmo-version): Up to 2.11.14.
3337
3338 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3339
3340         * modb.el (elmo-msgdb-length): Define.
3341
3342         * elmo.el (elmo-make-folder): Fixed.
3343         (elmo-generic-folder-append-messages): Follow the API change.
3344
3345         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3346         API change.
3347
3348 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3349
3350         * modb.el: New file.
3351
3352         * modb-entity.el: Ditto.
3353
3354         * modb-legacy.el: Ditto.
3355
3356         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3357         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3358         of `elmo-msgdb-overview-get-entity'.
3359         (elmo-msgdb-get-field): Ditto.
3360         (elmo-msgdb-merge): Moved to `elmo.el'.
3361         (elmo-msgdb-length): Removed; redefine as modb method.
3362         (elmo-msgdb-change-mark): Abolish.
3363         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3364         (elmo-msgdb-match-condition): Don't use mark.
3365         (elmo-msgdb-overview-get-entity): Abolish.
3366         Split modb part into `modb*.el'.
3367
3368         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3369
3370         * elmo-shimbun.el (shimbun-mua-search-id): Use
3371         `elmo-msgdb-message-entity' instead of
3372         `elmo-msgdb-overview-get-entity'.
3373         (elmo-shimbun-folder-shimbun-header): Ditto.
3374         (elmo-shimbun-get-headers): Ditto.
3375         (elmo-shimbun-update-overview): Ditto.
3376
3377         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3378
3379         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3380
3381         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3382         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3383
3384         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3385         `elmo-msgdb-mark-to-flags'.
3386
3387         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3388         `elmo-msgdb-set-path'.
3389
3390         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3391  
3392         * elmo-version.el (elmo-version): Up to 2.11.13.
3393
3394         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3395
3396         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3397         of mark.
3398
3399 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3400
3401         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3402         mismatch.
3403
3404 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3405
3406         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3407         instead of `elmo-msgdb-get-cached'.
3408         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3409
3410         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3411         (elmo-msgdb-set-cached): Ditto.
3412         (elmo-msgdb-set-flag): Rewrite.
3413         (elmo-msgdb-unset-flag): Ditto.
3414
3415         * elmo-msgdb.el: Rewrite with luna.
3416
3417         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3418         (elmo-folder-msgdb): Follow the change above.
3419         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3420         (elmo-folder-unmark-important): Follow the API change.
3421         (elmo-folder-mark-as-important): Ditto.
3422         (elmo-folder-unmark-read): Ditto.
3423         (elmo-folder-mark-as-read): Ditto.
3424         (elmo-folder-unmark-answered): Ditto.
3425         (elmo-folder-mark-as-answered): Ditto.
3426         (elmo-folder-clear): Likewise.
3427
3428         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3429         instead of `elmo-msgdb-load' (renamed).
3430
3431         * elmo-version.el (elmo-version): Up to 2.11.12.
3432
3433 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3434
3435         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3436         change.
3437         (elmo-message-mark): Abolish.
3438         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3439         instead of `elmo-msgdb-change-mark'.
3440
3441         * elmo-pipe.el (elmo-message-mark): Abolish.
3442
3443         * elmo-multi.el (elmo-message-mark): Ditto.
3444
3445         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3446         (elmo-msgdb-unread-uncached-mark): Ditto.
3447         (elmo-msgdb-unread-cached-mark): Ditto.
3448         (elmo-msgdb-read-uncached-mark): Ditto.
3449         (elmo-msgdb-answered-cached-mark): Ditto.
3450         (elmo-msgdb-answered-uncached-mark): Ditto.
3451         (elmo-msgdb-important-mark): Ditto.
3452         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3453         `use-cache'.
3454         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3455         `flags'.
3456         (elmo-flag-table-load): Changed flag to list of flag.
3457         (elmo-flag-table-set): If flags is nil, set read flag.
3458         (elmo-flag-table-get): Return derived flags from global mark,
3459         cache status and saved flags.
3460         (elmo-msgdb-flag-table): Follow the change above.
3461         (elmo-msgdb-out-of-date-messages): New function.
3462
3463         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3464
3465         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3466
3467         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3468
3469         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3470         (elmo-nntp-msgdb-create-message): Ditto.
3471
3472         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3473
3474         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3475         independent.
3476         (elmo-folder-msgdb-create): Follow the API change.
3477
3478         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3479         (elmo-folder-append-messages): Ditto.
3480
3481         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3482         (elmo-folder-append-buffer): Ditto.
3483
3484         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3485
3486         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3487
3488         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3489         (elmo-archive-parse-mmdf): Ditto.
3490
3491         * elmo-version.el (elmo-version): Up to 2.11.11.
3492
3493 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3494
3495         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3496         `elmo-msgdb-mark'.
3497
3498         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3499
3500         * elmo-pipe.el (elmo-message-flags): Defined.
3501
3502         * elmo-multi.el (elmo-message-flags): Ditto.
3503
3504 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3505
3506         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3507         `elmo-msgdb-delete-msgs'.
3508
3509         * elmo.el (elmo-folder-count-flags): Don't use
3510         `elmo-msgdb-get-mark-alist'.
3511         (elmo-folder-detach-messages): Follow the API change.
3512
3513         * elmo.el (elmo-folder-list-messages): Append killed messages into
3514         result if `visible-only' is nil.
3515
3516         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3517         canceled messages.
3518         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3519         (elmo-folder-update-number): Likewise.
3520
3521         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3522         (elmo-pop3-sort-msgdb-by-original-number): Use
3523         `elmo-msgdb-sort-entities'.
3524
3525         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3526         (elmo-msgdb-sort-by-date): Use it.
3527         (elmo-msgdb-overview-sort-by-date): Abolish.
3528
3529         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3530
3531         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3532         (elmo-msgdb-flags): New function.
3533         (elmo-msgdb-merge): Use elmo-msgdb-append.
3534
3535         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3536         change.
3537
3538         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3539
3540         * elmo-dop.el (elmo-folder-status-dop): Use
3541         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3542
3543 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3544
3545         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3546
3547         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3548
3549         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3550
3551         * elmo-util.el (elmo-with-progress-display): New macro.
3552
3553         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3554
3555 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3556
3557         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3558         `elmo-folder-list-message-entities' instead of
3559         `elmo-msgdb-get-overview'.
3560         (elmo-map-folder-list-message-locations): Ditto.
3561
3562         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3563         methods instead of treat directly).
3564         (elmo-msgdb-clear): Ditto.
3565         (elmo-msgdb-delete-msgs): Ditto.
3566         (elmo-msgdb-sort-by-date): Ditto.
3567
3568         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3569         local variables.
3570         (elmo-nntp-folder-msgdb-create): Follow the API change.
3571
3572         * elmo-version.el (elmo-version): Up to 2.11.10.
3573
3574 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3575
3576         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3577         (elmo-msgdb-flags-to-mark): Ditto.
3578         (elmo-msgdb-append-entity): Ditto.
3579
3580         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3581         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3582         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3583         (elmo-archive-parse-mmdf): Ditto.
3584
3585         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3586
3587         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3588
3589         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3590
3591         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3592
3593         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3594
3595         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3596
3597         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3598
3599         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3600
3601         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3602         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3603         to empty msgdb.
3604
3605         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3606         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3607         instead of directly construction.
3608         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3609         instead of construct msgdb.
3610
3611         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3612         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3613         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3614         instead of construct msgdb.
3615
3616 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3617
3618         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3619         when field is from or subject.
3620
3621 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3622
3623         * elmo-multi.el (elmo-message-entity-parent): Define.
3624         (elmo-folder-search): Rewrite.
3625
3626 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3627
3628         * elmo-multi.el (elmo-message-cached-p): Define.
3629
3630         * elmo.el (elmo-message-cached-p): New method.
3631         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3632         (elmo-message-flags): New method.
3633         (elmo-message-flagged-p): New function.
3634
3635         * elmo-version.el (elmo-version): Up to 2.11.9.
3636
3637 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3638
3639         * elmo-version.el (elmo-version): Up to 2.11.8.
3640
3641         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3642
3643         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3644
3645 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3646
3647         * elmo.el (elmo-folder-detach-messages): Undo last change.
3648
3649 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3650
3651         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3652
3653         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3654         only when src folder type is pop3.
3655
3656 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3657
3658         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3659         elmo-msgdb-overview-entity-get-number instead of
3660         elmo-message-entity-number.
3661
3662 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3663
3664         * elmo-version.el (elmo-version): Up to 2.11.7.
3665
3666 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3667
3668         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3669         function.
3670
3671         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3672         (elmo-msgdb-merge): New function.
3673         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3674         (elmo-msgdb-make-index): Rewrite.
3675
3676         * elmo-version.el (elmo-version): Up to 2.11.6.
3677
3678         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3679         use it as a the path for loading message entities.
3680
3681         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3682
3683 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3684
3685         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3686         message-modified slot of itself if it does not require target msgdb.
3687
3688         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3689         if folder length is zero.
3690         (elmo-mime-display-as-is): Ditto.
3691
3692         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3693
3694         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3695
3696 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3697
3698         * elmo.el (elmo-folder-set-message-modified): New method.
3699         (elmo-generic-folder-commit): Use it.
3700         (elmo-folder-synchronize): Ditto.
3701
3702         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3703         (elmo-folder-commit): Remove duplicate definition.
3704
3705 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3706
3707         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3708
3709 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3710
3711         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3712         (elmo-strict-folder-diff): Ditto.
3713         (elmo-folder-set-info-max-by-numdb): Simplify.
3714
3715         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3716         elmo-msgdb-list-messages.
3717
3718         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3719         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3720
3721 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3722
3723         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3724         visible-only is non-nil.
3725         (elmo-folder-confirm-appends): Changed message.
3726         (elmo-folder-synchronize): Added argument disable-killed.
3727
3728         * elmo-multi.el (elmo-folder-synchronize): Added argument
3729         disable-killed.
3730
3731         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3732
3733         * elmo-version.el (elmo-version): Up to 2.11.5.
3734
3735         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3736         elmo-list-filter.
3737
3738         * elmo-util.el (elmo-list-filter): Simplify.
3739
3740         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3741         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3742         (elmo-generic-folder-diff): Abolish argument.
3743         (elmo-msgdb-load): Don't use number-alist.
3744
3745         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3746
3747         * elmo-pipe.el (elmo-folder-diff): Ditto.
3748
3749         * elmo-nmz.el (elmo-folder-diff): Ditto.
3750
3751         * elmo-net.el (elmo-folder-diff): Ditto.
3752
3753         * elmo-maildir.el (elmo-folder-diff): Ditto.
3754
3755         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3756
3757         * elmo-multi.el (elmo-folder-diff): Ditto
3758         (elmo-multi-folder-diff): Rewrite.
3759
3760 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3761
3762         * elmo-pipe.el (elmo-folder-msgdb): Define.
3763
3764 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3765
3766         * elmo.el (elmo-message-set-cached): Define as a method.
3767
3768         * elmo-pipe.el (elmo-message-set-cached): Define.
3769         (elmo-find-fetch-strategy): Ditto.
3770
3771         * elmo-multi.el (elmo-message-set-cached): Define.
3772         (elmo-find-fetch-strategy): Rewrite.
3773
3774         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3775
3776         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3777
3778 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3779
3780         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3781         instead of number-alist.
3782
3783         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3784         mark nor message-id when msgdb of source folder is not loaded.
3785
3786         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3787
3788         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3789
3790 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3791
3792         * elmo.el (elmo-folder-length): Don't require msgdb.
3793
3794 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3795
3796         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3797         (elmo-message-field): Ditto.
3798
3799         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3800         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3801         slot.
3802         (elmo-map-folder-list-answereds): Define.
3803         (elmo-maildir-list-location): Treat 'R' info.
3804         (elmo-folder-msgdb-create): Treat flag-table.
3805         (elmo-folder-append-messages): Save flag-table.
3806
3807 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3808
3809         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3810         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3811
3812 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3813
3814         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3815
3816         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3817         'read when mark is null.
3818
3819 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3820
3821         * elmo-version.el (elmo-version): Up to 2.11.4.
3822
3823 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3824
3825         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3826         (elmo-folder-mark-as-answered): Ditto.
3827
3828 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3829
3830         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3831         (elmo-pop3-get-session): Make msgdb directory after session.
3832         (elmo-folder-exists-p): Check exactly at the first time even when the
3833         elmo-pop3-exists-exactly is nil.
3834
3835         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3836         (elmo-folder-list-messages): Define instead of
3837         elmo-folder-list-messages-internal.
3838         (elmo-folder-check): Check destination folder.
3839         (elmo-folder-synchronize): Drain the pipe.
3840
3841         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3842         when msgdb is not loaded.
3843
3844         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3845
3846         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3847         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3848         messages.
3849
3850         * elmo.el (elmo-folder-kill-messages-before): New function.
3851         (elmo-folder-kill-messages): Ditto.
3852         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3853
3854         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3855         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3856         killed not by synchronize (e.g. scoring).
3857
3858 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3859
3860         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3861         treated.
3862         (elmo-folder-search): Follow the change above.
3863
3864         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3865         into the candidates of search field.
3866
3867 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3868
3869         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3870         (elmo-msgdb-unset-flag): Ditto.
3871
3872         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3873
3874 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3875
3876         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3877         (elmo-folder-commit): Define.
3878         (elmo-folder-synchronize): Ditto.
3879         (elmo-folder-list-flagged): Ditto.
3880         (elmo-folder-commit): Ditto.
3881         (elmo-folder-length): Ditto.
3882         (elmo-folder-count-flags): Ditto.
3883         (elmo-message-mark): Ditto.
3884         (elmo-message-field): Ditto.
3885         (elmo-message-entity): Ditto.
3886         (elmo-message-folder): Ditto.
3887
3888 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3889
3890         * elmo.el (elmo-message-field): Define as a method.
3891
3892         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3893         (elmo-message-field): Define.
3894
3895         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3896         (elmo-folder-list-importants): Ditto.
3897         (elmo-folder-list-answereds): Ditto.
3898
3899         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3900         qualifier.
3901         (elmo-folder-mark-as-read): Ditto.
3902         (elmo-folder-unmark-read): Ditto.
3903         (elmo-folder-mark-as-answered): Ditto.
3904         (elmo-folder-unmark-answered): Ditto.
3905         (elmo-folder-list-flagged): Define.
3906         (elmo-folder-commit): Ditto.
3907         (elmo-folder-length): Ditto.
3908         (elmo-folder-count-flags): Ditto.
3909
3910 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3911
3912         * elmo.el (elmo-folder-detach-messages): New method.
3913         (elmo-folder-move-messages): Use it.
3914         (elmo-folder-synchronize): Ditto.
3915
3916         * elmo-multi.el (elmo-folder-detach-messages): Define.
3917
3918         * elmo.el (elmo-message-copy-entity): New function.
3919         (elmo-message-entity-set-number): Ditto.
3920         (elmo-message-mark): Define as method.
3921
3922         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3923         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3924         (elmo-message-entity): Fixed last change.
3925         (elmo-message-mark): Define.
3926         (elmo-folder-msgdb-create): Abolish.
3927         (elmo-multi-folder-append-msgdb): Ditto.
3928         (elmo-multi-folder-diff): Fixed.
3929         (elmo-multi-split-number-alist): Removed.
3930         (elmo-multi-split-mark-alist): Removed.
3931         (elmo-folder-list-messages): Define.
3932         (elmo-folder-list-messages-internal): Removed.
3933
3934         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3935         local file messages.
3936         (elmo-folder-msgdb-create): Fixed read mark.
3937
3938 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3939
3940         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3941         if mark is nil.
3942
3943 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3944
3945         * elmo.el (elmo-folder-list-message-entities): Define as inline
3946         function.
3947         (elmo-folder-messages): Abolish.
3948
3949         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3950         folder.
3951         (elmo-folder-synchronize): Define.
3952         (elmo-message-entity): Define.
3953
3954 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3955
3956         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3957         elmo-imap4-session-select-mailbox.
3958
3959         * elmo.el (elmo-folder-move-messages): Don't display any message.
3960
3961         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3962         parsing.
3963         (elmo-imap4-session-check): Don't wait CHECK response.
3964         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3965
3966 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3967
3968         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3969
3970 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3971
3972         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3973         API.
3974         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3975
3976
3977         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3978         (elmo-folder-list-message-entities): Added argument in-msgdb and
3979         numbers.
3980         (elmo-folder-synchronize): Define as a method.
3981
3982         * elmo-nntp.el (elmo-folder-initialize): Don't use
3983         elmo-nntp-default-user if zero-length username is specified
3984         explicitly.
3985
3986 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3987
3988         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3989         server name in case with username.
3990         (XXX: this is ad-hoc fix against username includes "@", it
3991         should be solved fundamentally)
3992
3993 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3994
3995         * elmo-nntp.el (elmo-nntp-debug): New function.
3996         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3997         (elmo-network-authenticate-session): Hide auth-info from the log.
3998
3999         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4000         user name if it is equal to elmo-nntp-default-user.
4001
4002 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4003
4004         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4005         instead of shimbun-server-internal;
4006         Use shimbun-current-group instead of shimbun-current-group-internal.
4007         (elmo-folder-plugged-p): Use shimbun-server instead of
4008         shimbun-server-internal.
4009         (elmo-folder-set-plugged): Ditto.
4010         (elmo-net-port-info): Ditto.
4011         (elmo-folder-check): Ditto.
4012         (elmo-folder-expand-msgdb-path): Ditto.
4013         (elmo-folder-list-subfolders): Ditto.
4014
4015 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4016
4017         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4018         Convert field-name to lower case.
4019         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4020
4021 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4022
4023         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4024         `message' and `error' take format string.
4025
4026 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4027
4028         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4029
4030 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4031
4032         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4033         recursive call (can't byte compile on emacs 20.7).
4034
4035 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4036
4037         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4038         (elmo-folder-list-message-entities): New API.
4039         (elmo-message-entity): Ditto.
4040         (elmo-message-entity-parent): Ditto.
4041         (elmo-folder-do-each-message-entity): Ditto.
4042         (elmo-message-entity-number): Ditto.
4043         (elmo-message-entity-field): Ditto.
4044         (elmo-message-entity-set-field): Ditto.
4045         (elmo-folder-count-flags): Ditto.
4046         (elmo-folder-length): Ditto.
4047
4048         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4049         not.
4050
4051         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4052         (elmo-msgdb-count-marks): Abolish.
4053         (elmo-msgdb-make-entity): Ditto.
4054         (elmo-msgdb-do-each-entity): Ditto.
4055         (elmo-msgdb-message-entity): New inline function.
4056         (elmo-msgdb-message-entity-field): Ditto.
4057         (elmo-msgdb-message-entity-set-field): Ditto.
4058         (elmo-msgdb-make-message-entity): New function.
4059
4060 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4061
4062         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4063         to flag. (All other related portions are changed.)
4064         (elmo-folder-msgdb-create): Likewise.
4065         (elmo-generic-folder-append-messages): Use flag-table instead of
4066         seen-list.
4067         (elmo-folder-move-messages): Removed redundant process.
4068         (elmo-folder-synchronize): Likewise.
4069
4070         * elmo-msgdb.el (elmo-flag-table-get): New function.
4071         (elmo-flag-table-save): Fixed.
4072         (elmo-msgdb-length): New inline function.
4073         (elmo-msgdb-flag-table): New function.
4074         (elmo-msgdb-mark): Add optional argument new.
4075         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4076         (elmo-msgdb-seen-list): Ditto.
4077         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4078
4079
4080 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4081
4082         * elmo.el (elmo-message-set-mark): Abolish.
4083         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4084         (All related portions are changed.)
4085
4086         * elmo-msgdb.el (toplevel): Added comment.
4087         (elmo-load-msgdb): Added 4th element `path'.
4088         (elmo-msgdb-append): Follow the change above.
4089         (elmo-msgdb-clear): Ditto.
4090         (elmo-msgdb-delete-msgs): Ditto.
4091         (elmo-msgdb-get-path): New inline function.
4092         (elmo-msgdb-set-path): Ditto.
4093         (elmo-flag-table-filename): New variable.
4094         (elmo-flag-table-load): New function.
4095         (elmo-flag-table-set): Ditto.
4096         (elmo-flag-table-save): Ditto.
4097         (elmo-msgdb-get-field-value): Abolish.
4098         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4099
4100 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4101
4102         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4103         the folder has been deleted successfully.
4104         * elmo-imap4.el (elmo-folder-delete): Ditto.
4105         * elmo-archive.el (elmo-folder-delete): Ditto.
4106         * elmo-localdir.el (elmo-folder-delete): Ditto.
4107         * elmo-maildir.el (elmo-folder-delete): Ditto.
4108
4109 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4110
4111         * elmo-util.el (elmo-string-member-ignore-case): New function.
4112         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4113         (elmo-imap4-fetch-callback-1-subr): Likewise.
4114
4115 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4116
4117         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4118         the case of the name attribute "\Noselect".
4119
4120 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4121
4122         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4123
4124         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4125         flist, is not always a member of onum-alist.
4126
4127 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4128
4129         * elmo-version.el (elmo-version): Up to 2.11.3.
4130
4131 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4132
4133         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4134         copied from localdir's one.
4135
4136         * elmo-pipe.el (elmo-folder-rename): New method, rename
4137         destination folder with leaving source folder as it is.
4138
4139 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4140
4141         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4142         replace-regexp.
4143
4144 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4145
4146         * elmo-version.el (elmo-version): Up to 2.11.2.
4147
4148 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4149
4150         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4151         shimbun-open in case of "@".
4152         (elmo-folder-open-internal): Cope with shimbun = nil case.
4153         (elmo-folder-plugged-p): Ditto.
4154         (elmo-folder-list-subfolders): Make list for "@/" group.
4155
4156 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4157
4158         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4159         mailbox (e.g. for %~/something).
4160
4161 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4162
4163         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4164         Replace nested conditional with guard clauses.
4165
4166 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4167
4168         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4169         error [wl:11327].
4170
4171         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4172         print-depth.
4173
4174 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4175
4176         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4177         Replace nested conditional with guard clauses.
4178
4179 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4180
4181         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4182         (elmo-passwd-alist-save): Ditto.
4183         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4184
4185 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4186
4187         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4188         dir-name only if it is absolute path.
4189         (TODO: distinguish +/something and +something)
4190
4191 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4192
4193         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4194         path for "+~/something".
4195
4196 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4197
4198         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4199         as non-directory, cause error before rename-file.
4200         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4201         apropriately, mimic localdir's one.
4202         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4203
4204 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4205
4206         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4207
4208 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4209
4210         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4211
4212         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4213         
4214         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4215         is included in the global-mark or not.
4216
4217 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4218
4219         * utf7.el (toplevel): Avoid error when the function
4220         find-coding-system does not exist.
4221
4222 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4223
4224         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4225         cache even if the folder is plugged.
4226         (elmo-nntp-search-primitive): Do nothing when body search is
4227         invoked (although it is not used by the change above).
4228         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4229
4230 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4231
4232         * elmo-version.el (elmo-version): Up to 2.11.1.
4233
4234 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4235
4236         * elmo-archive.el: Specify charset.
4237
4238 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4239
4240         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4241         process buffer lives or not.
4242
4243         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4244         while flushing queues (It causes infinite loop).
4245
4246 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4247
4248         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4249
4250 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4251
4252         * utf7.el (toplevel): Check the ucs features dynamically.
4253         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4254
4255         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4256         folder is creatabe or not if it already exists.
4257
4258 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4259
4260         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4261
4262         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4263
4264         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4265         (elmo-imap4-read-response): Take care of garbage response.
4266
4267 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4268
4269         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4270         just return nil instead of error.
4271
4272 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4273
4274         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4275         search-key is "body".
4276
4277 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4278
4279         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4280         of elmo-string-matched-assoc to use match-data.
4281         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4282
4283 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4284
4285         * elmo-split.el (elmo-split->): New function.
4286         (elmo-split-<): Ditto.
4287
4288 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4289
4290         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4291         workaround for invalid message-id.
4292
4293 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4294
4295         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4296         return normal pop3 session or pop3 biff session.
4297
4298 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4299
4300         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4301         info part to the cur files when the new files already have it.
4302         (Adviced by Jared Rhine <jared@wordzoo.com>)
4303
4304 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4305
4306         * elmo-split.el (elmo-split-default-action): New variable.
4307         (elmo-split-subr): Use it if all other conditions are passed.
4308         Extend `fname' and rename it as `action'. (implemented
4309         Teranishi-san's idea in [wl:10800])
4310
4311 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4312
4313         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4314         * elmo-util.el: Ditto.
4315
4316 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4317
4318         * elmo.el (elmo-message-accessible-p): Renamed from
4319         elmo-message-cached-p and rewritten.
4320
4321 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4322
4323         * elmo.el (elmo-folder-list-flagged): New generic function.
4324         (elmo-folder-list-importants): New implementation.
4325         (elmo-folder-list-answereds): Ditto.
4326         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4327         Added 'digest'.
4328         (elmo-message-cached-p): New function.
4329         (elmo-message-set-flag): Ditto (no content).
4330         (elmo-message-unset-flag): Ditto.
4331         (elmo-folder-list-messages-mark-match): Abolish.
4332
4333         * elmo-util.el (elmo-regexp-opt): New function.
4334
4335         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4336         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4337         Added 'digest'.
4338         (elmo-msgdb-list-flagged): New function.
4339
4340         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4341         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4342         Added 'digest'.
4343
4344         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4345
4346 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4347
4348         * elmo-version.el (elmo-version): Up to 2.11.0.
4349
4350 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4351
4352         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4353         `elmo-file-cache-exists-p'; use proper mark that depends on
4354         `use-cache'.
4355         (elmo-msgdb-unset-flag): Ditto.
4356         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4357
4358         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4359         with 4th argument `use-cache'.
4360
4361 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4362
4363         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4364         (elmo-folder-mark-as-important): Ditto.
4365         (elmo-folder-unmark-read): Ditto.
4366         (elmo-folder-mark-as-read): Ditto.
4367         (elmo-folder-unmark-answered): Ditto.
4368         (elmo-folder-mark-as-answered): Ditto.
4369
4370         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4371         message status.
4372         (elmo-msgdb-mark): Likewise.
4373         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4374         (elmo-msgdb-unset-flag): Likewise.
4375
4376         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4377
4378 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4379
4380         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4381         `last:' filter.
4382
4383 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4384
4385         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4386         set spool-length to 0.
4387
4388 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4389
4390         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4391         (elmo-dop-queue-flush): Fixed last change.
4392
4393 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4394
4395         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4396         if require-msgdb slot is nil.
4397         (elmo-folder-list-importants): Likewise.
4398
4399 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4400
4401         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4402         mark is changed.
4403
4404         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4405         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4406         is changed.
4407
4408 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4409
4410         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4411
4412 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4413
4414         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4415
4416         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4417
4418 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4419
4420         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4421         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4422
4423 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4424
4425         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4426         the problem reported by Sean Rima [wl-en:180].
4427
4428 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4429
4430         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4431
4432         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4433
4434         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4435
4436         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4437
4438         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4439
4440         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4441
4442         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4443
4444 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4445
4446         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4447         status number.
4448
4449 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4450
4451         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4452         (elmo-folder-mark-as-read): Follow the API change.
4453         (elmo-message-set-cached): New function.
4454
4455         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4456
4457         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4458
4459         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4460         (elmo-folder-mark-as-important): Ditto.
4461         (elmo-folder-unmark-read): Ditto.
4462         (elmo-folder-mark-as-read): Ditto.
4463         (elmo-folder-unmark-answered): Ditto.
4464         (elmo-folder-mark-as-answered): Ditto.
4465
4466         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4467         (elmo-folder-unmark-important): Ditto.
4468         (elmo-folder-mark-as-read): Ditto.
4469         (elmo-folder-unmark-read): Ditto.
4470         (elmo-folder-mark-as-answered): Ditto.
4471         (elmo-folder-unmark-answered): Ditto.
4472
4473         * elmo-mark.el (toplevel): Removed some mark method definitions.
4474
4475         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4476         (elmo-map-folder-mark-as-answered): Ditto.
4477         (elmo-folder-unmark-important): Add :before qualifier.
4478         (elmo-folder-mark-as-important): Ditto.
4479         (elmo-folder-unmark-read): Ditto.
4480         (elmo-folder-mark-as-read): Ditto.
4481         (elmo-folder-unmark-answered): Define.
4482         (elmo-folder-mark-as-answered): Ditto.
4483
4484         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4485         (elmo-map-folder-unmark-answered): Ditto.
4486
4487         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4488
4489         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4490         (elmo-folder-mark-as-important): Ditto.
4491         (elmo-folder-unmark-read): Ditto.
4492         (elmo-folder-mark-as-read): Ditto.
4493         (elmo-folder-unmark-answered): Ditto.
4494         (elmo-folder-mark-as-answered): Ditto.
4495
4496         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4497         `mark'; evaluate mark condition.
4498         (elmo-msgdb-match-condition-internal): New function.
4499         (elmo-msgdb-match-condition): Call it; changed argument.
4500
4501         * elmo.el (elmo-folder-search): Follow the API change on
4502         `elmo-msgdb-match-condition'.
4503
4504 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4505
4506         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4507         original mark is non-nil.
4508
4509 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4510
4511         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4512         (elmo-map-folder-list-answereds): New method.
4513         (elmo-folder-list-unreads): Add :around qualifier.
4514         (elmo-folder-list-importants): Ditto.
4515         (elmo-folder-list-answereds): Ditto.
4516
4517 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4518
4519         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4520
4521         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4522         method if msgdb is not required.
4523         (elmo-filter-folder-list-importants): Don't treat global-mark.
4524
4525         * elmo.el (elmo-folder-list-importants): Ditto.
4526
4527         * elmo-net.el (elmo-folder-list-importants): Ditto.
4528
4529         * elmo-map.el (elmo-folder-list-importants): Ditto.
4530
4531         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4532
4533         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4534         (elmo-imap4-folder-list-any-plugged): New function.
4535         (elmo-imap4-search-internal-primitive): Use it.
4536
4537         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4538         only when require-msgdb slot is non-nil.
4539         (elmo-folder-close): Clear target folder's msgdb.
4540
4541 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4542
4543         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4544         (elmo-pop3-msgdb-create-by-header): Ditto.
4545         (elmo-pop3-msgdb-create-message): Ditto.
4546
4547         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4548
4549         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4550
4551         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4552
4553         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4554         (elmo-folder-msgdb-create): Ditto.
4555         (elmo-nntp-folder-msgdb-create): Ditto.
4556         (elmo-nntp-msgdb-create-by-header): Ditto.
4557         (elmo-nntp-msgdb-create-message): Ditto.
4558         (elmo-folder-list-unreads): Define.
4559
4560         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4561         (elmo-folder-append-messages): Ditto.
4562         (elmo-folder-list-unreads): Define.
4563         (elmo-folder-list-importants): Ditto.
4564         (elmo-folder-list-answereds): Ditto.
4565
4566         * elmo-net.el (elmo-folder-list-unreads): Define.
4567         (elmo-folder-list-importants): Ditto.
4568         (elmo-folder-list-answereds): Ditto.
4569         (elmo-folder-list-answereds-plugged): Ditto.
4570         (elmo-folder-msgdb-create): Follow the API change.
4571         (elmo-folder-msgdb-create-unplugged): Ditto.
4572         (elmo-folder-unmark-answered): Define.
4573         (elmo-folder-mark-as-answered-unplugged): Ditto.
4574         (elmo-folder-unmark-answered-unplugged): Ditto.
4575
4576         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4577         (elmo-msgdb-unread-uncached-mark): Ditto.
4578         (elmo-msgdb-unread-cached-mark): Ditto.
4579         (elmo-msgdb-read-uncached-mark): Ditto.
4580         (elmo-msgdb-answered-cached-mark): Ditto.
4581         (elmo-msgdb-answered-uncached-mark): Ditto.
4582         (elmo-msgdb-important-mark): Ditto.
4583         (elmo-msgdb-set-mark): Rewrite.
4584         (elmo-msgdb-count-marks): Rewrite.
4585         (elmo-msgdb-mark-alist-set): Abolish.
4586         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4587         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4588
4589         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4590         (elmo-folder-close): Define.
4591         (elmo-folder-msgdb-create): Follow the API change.
4592         (elmo-folder-list-unreads): Rewrite.
4593         (elmo-folder-mark-as-important): Ditto.
4594         (elmo-folder-unmark-important): Ditto.
4595         (elmo-folder-mark-as-read): Ditto.
4596         (elmo-folder-unmark-read): Ditto.
4597         (elmo-folder-mark-as-answered): Define.
4598         (elmo-folder-unmark-answered): Ditto.
4599
4600         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4601         (elmo-folder-append-messages): Ditto.
4602
4603         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4604
4605         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4606         (elmo-folder-list-importants): Ditto.
4607
4608         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4609         (elmo-folder-append-messages): Ditto.
4610
4611         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4612         change.
4613         (elmo-folder-msgdb-create-plugged): Ditto.
4614         (elmo-folder-append-messages): Ditto.
4615         (elmo-folder-list-answereds-plugged): Define.
4616         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4617         (elmo-folder-unmark-answered-plugged): Define.
4618         (elmo-folder-mark-as-answered-plugged): Ditto.
4619         (elmo-folder-search-requires-msgdb-p): Ditto.
4620
4621         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4622         (elmo-folder-initialize): Set it.
4623         (elmo-folder-msgdb): Define.
4624         (elmo-folder-check): Call elmo-folder-synchronize.
4625         (elmo-folder-close): Define.
4626         (elmo-folder-commit): Ditto.
4627         (elmo-folder-msgdb-create): Rewrite.
4628         (elmo-folder-list-unreads): Ditto.
4629         (elmo-folder-list-importants): Ditto.
4630         (elmo-folder-mark-as-read): Ditto.
4631         (elmo-folder-unmark-read): Ditto.
4632         (elmo-folder-mark-as-important): Ditto.
4633         (elmo-folder-unmark-important): Ditto.
4634         (elmo-folder-mark-as-answered): Define.
4635         (elmo-folder-unmark-answered): Ditto.
4636
4637         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4638         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4639         (elmo-dop-queue-method-name-alist): Likewise.
4640         (elmo-folder-mark-as-answered-dop): New inline function.
4641         (elmo-folder-unmark-answered-dop): Ditto.
4642         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4643
4644         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4645         (elmo-folder-msgdb-create): Ditto.
4646         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4647         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4648         (elmo-archive-parse-mmdf): Ditto.
4649
4650         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4651         (elmo-folder-list-unreads-internal): Ditto.
4652
4653         * elmo.el (elmo-folder-msgdb): Define as generic function.
4654         (elmo-folder-list-messages): Added argument `in-msgdb'.
4655         (elmo-folder-list-unreads): Define as generic function.
4656         (elmo-folder-list-importants): Ditto.
4657         (elmo-folder-list-answereds): Ditto.
4658         (elmo-folder-list-messages-with-global-mark): New function.
4659         (elmo-folder-msgdb-create): Removed mark arguments.
4660         (elmo-folder-unmark-answered): New generic function.
4661         (elmo-folder-mark-as-answered): Ditto.
4662         (elmo-folder-append-messages): Removed argunment `unread-marks'
4663         (elmo-folder-list-unreads-internal): Abolish.
4664         (elmo-folder-list-importants-internal): Ditto.
4665         (elmo-folder-search-requires-msgdb-p): New generic function.
4666         (elmo-folder-search-requires-msgdb-p-internal): New function.
4667         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4668         elmo-msgdb-load.
4669         (elmo-folder-search-fast): Added key 'mark'.
4670         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4671         instead of unread-marks argument.
4672         (elmo-folder-move-messages): Removed argunment `unread-marks'
4673         (elmo-folder-unmark-important): Define.
4674         (elmo-folder-mark-as-important): Ditto.
4675         (elmo-folder-unmark-read): Ditto.
4676         (elmo-folder-mark-as-read): Ditto.
4677         (elmo-folder-unmark-answered): Ditto.
4678         (elmo-folder-mark-as-answered): Ditto.
4679         (elmo-folder-replace-marks): Abolish.
4680         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4681         duplicates.
4682         (elmo-folder-synchronize): Removed mark arguments;
4683         return crosspost only number.
4684
4685 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4686
4687         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4688         Remove redundunt connectivity check.
4689
4690 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4691
4692         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4693         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4694
4695 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4696
4697         * pldap.el (ldap-decode-string): Return string as-is if
4698         `ldap-coding-system' is nil.
4699         (ldap-encode-string): Ditto.
4700         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4701         (ldap-default-host): Fixed docstring.
4702
4703 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4704
4705         * elmo-util.el (elmo-warning): Define as a macro which uses
4706         `display-warning' if it is defined as a function.
4707
4708         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4709         (elmo-split-equal): Use it.
4710         (elmo-split-match): Ditto.
4711         (elmo-split-message-entity): New buffer-local variable.
4712         (elmo-split-subr): Set it.
4713
4714         * elmo-version.el (elmo-version): Up to 2.9.15.
4715
4716 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4717
4718         * elmo-imap4.el (elmo-network-initialize-session):
4719         Check capability after starttls.
4720
4721 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4722
4723         * elmo-util.el (elmo-list-delete): Added optional argument
4724         DELETE-FUNCTION.
4725
4726         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4727
4728         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4729
4730         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4731
4732         * elmo-imap4.el (elmo-folder-initialize): Don't use
4733         elmo-imap4-default-mailbox.
4734
4735 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4736
4737         * elmo-split.el (toplevel): Use `product-provide'.
4738         (elmo-split): Checkdoc.
4739
4740 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4741
4742         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4743         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4744         the function `elmo-imap4-debug-1'.
4745
4746 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4747
4748         * elmo-split.el (elmo-split): Moved to run hooks and to show
4749         message from elmo-split-subr.
4750         (elmo-split-subr): Follow the change above.
4751
4752         * elmo-split.el (elmo-split-subr): New function (renamed from
4753         elmo-split-subr).
4754         (elmo-split): Changed to call elmo-split-subr by element of
4755         elmo-split-folder.
4756         (elmo-split-folder): Changed customization type to choice.
4757
4758 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4759
4760         * elmo-split.el (elmo-split-and): Fixed condition.
4761
4762 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4763
4764         * elmo-split.el: New file.
4765         (elmo-split): Fixed logic.
4766         Display "Test:" instead of "Folder:" when reharsal.
4767
4768         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4769         explicitly.
4770
4771         * elmo-version.el (elmo-version): Up to 2.9.14.
4772
4773         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4774         wl-expand-newtext).
4775
4776 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4777
4778         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4779         message with no message-id field.
4780
4781 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4782
4783         * elmo-version.el (elmo-version): Up to 2.9.13.
4784
4785         * elmo-dop.el (elmo-folder-status-dop): Fix.
4786
4787 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4788
4789         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4790
4791         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4792         changing default value of default-mime-charset.
4793         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4794
4795         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4796
4797         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4798         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4799         instead of elmo-dop-queue-method-name-alist to check merging queue.
4800         (elmo-folder-delete-messages-dop): Delete from queue if negative
4801         message number.
4802         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4803         file is already removed.
4804
4805 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4806
4807         * elmo-vars.el: Bind colon keywords for old Emacsen.
4808
4809 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4810
4811         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4812         against non-exsisting charset.
4813
4814 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4815
4816         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4817         Use eword-decode-and-unfold-unstructured-field-body.
4818
4819         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4820         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4821         exists to decode raw subject string.
4822         (toplevel): Require 'mime.
4823
4824         * elmo-version.el (elmo-version): Up to 2.9.12.
4825
4826 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4827
4828         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4829         (elmo-msgdb-set-mark): Ditto.
4830
4831         * elmo-version.el (elmo-version): Up to 2.9.11.
4832
4833 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4834
4835         * elmo-util.el (elmo-delete-match-files): New function.
4836
4837         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4838         instead of elmo-delete-directory.
4839
4840         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4841         elmo-hash-minimun-size as 63.
4842
4843         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4844         elmo-diff-unread is nil.
4845
4846         * elmo-imap4.el (elmo-folder-open): Fix.
4847
4848         * elmo.el (elmo-message-mark): Rewrite.
4849         (elmo-message-field): Ditto.
4850         (elmo-message-set-mark): Ditto.
4851         (elmo-folder-replace-marks): New function.
4852         (elmo-generic-folder-append-msgdb): Removed third argument for
4853         elmo-msgdb-append.
4854         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4855         (elmo-msgdb-load): New implementation.
4856
4857         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4858
4859         * elmo-util.el (elmo-list-insert): New implementation.
4860
4861         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4862         argument for elmo-msgdb-append.
4863         
4864
4865         * elmo-msgdb.el (elmo-load-msgdb): New function.
4866         (elmo-make-msgdb): Ditto.
4867         (elmo-msgdb-get-index): New inline function.
4868         (elmo-msgdb-set-index): Ditto.
4869         (elmo-msgdb-get-entity-hashtb): Ditto.
4870         (elmo-msgdb-get-mark-hashtb): Ditto.
4871         (elmo-msgdb-get-mark): Ditto.
4872         (elmo-msgdb-set-mark): Ditto.
4873         (elmo-msgdb-count-marks): Ditto.
4874         (elmo-msgdb-get-number): Ditto.
4875         (elmo-msgdb-get-field): Ditto.
4876         (elmo-msgdb-seen-list): Ditto.
4877         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4878         (elmo-msgdb-delete-msgs): Follow the changes above.
4879         (elmo-msgdb-overview-get-entity): Ditto.
4880         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4881         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4882         and rewritten.
4883         (elmo-msgdb-make-index): Likewise.
4884         (elmo-msgdb-append): Removed third argument.
4885         (elmo-msgdb-clear): Clear index as nil.
4886         (elmo-folder-set-info-hashtb): Removed.
4887         (elmo-folder-set-info-max-by-numdb): Ditto.
4888         (elmo-folder-info-make-hashtb): Ditto.
4889
4890         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4891
4892         * elmo-map.el (elmo-folder-pack-number): Ditto.
4893
4894 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4895
4896         * elmo-version.el (elmo-version): Up to 2.9.10.
4897
4898         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4899
4900         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4901
4902 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4903
4904         * elmo-utils.el (elmo-make-directory): Add option.
4905         Default file mode is 700.
4906
4907 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4908
4909         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4910
4911 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4912
4913         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4914         mime-charset.
4915
4916         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4917         and "smaller".
4918
4919 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4920
4921         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4922         (elmo-shimbun-folder-entity-hash): New function.
4923         (elmo-shimbun-folder-shimbun-header): Ditto.
4924         (elmo-shimbun-entity-to-header): Ditto.
4925         (elmo-shimbun-msgdb-to-headers): Removed.
4926         (elmo-shimbun-folder-setup): Ditto.
4927         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4928         for hash key.
4929         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4930         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4931         Removed useless local bind.
4932         (elmo-folder-open-internal): Don't call
4933         `elmo-shimbun-folder-setup'.
4934         (elmo-folder-close-internal): Clear entity-hash slot.
4935         (elmo-folder-clear): Ditto.
4936         (elmo-shimbun-msgdb-create-entity): Use
4937         `elmo-shimbun-folder-shimbun-header'.
4938         (elmo-map-message-fetch): Ditto.
4939         (elmo-shimbun-update-overview): Use overview entity instead of
4940         shimbun header to lookup id by references.
4941         (elmo-map-folder-list-message-locations): Use not only headers but
4942         also overviews to list locations.
4943
4944 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4945
4946         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4947         msgdb path.
4948
4949         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4950
4951 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4952
4953         * elmo-util.el (elmo-read-search-condition-internal): Give default
4954         value for date.
4955
4956 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4957
4958         * elmo-util.el (elmo-condition-parse-search-value): Accept
4959         YYYY-MM-DD format to search.
4960         * elmo-date.el (elmo-date-get-datevec): Likewise.
4961
4962 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4963
4964         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4965         debugging code.
4966
4967 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4968
4969         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4970         from t.
4971
4972         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4973
4974         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4975         case from `elmo-folder-exists-p'.
4976         (elmo-folder-exists-p): Removed.
4977         (elmo-folder-creatable-p) Ditto.
4978
4979         * elmo-net.el (elmo-folder-create): Defined.
4980         (elmo-folder-create-unplugged): New function.
4981         (elmo-folder-exists-p): Changed default value to nil from t.
4982
4983         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4984         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4985
4986         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4987         `elmo-create-folder-dop' and append queue
4988         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4989         (elmo-folder-create-dop-delayed): New function.
4990
4991         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4992
4993         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4994
4995         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4996         (elmo-folder-writable-p) : Ditto.
4997
4998         * elmo-version.el (elmo-version): Up to 2.9.9.
4999
5000 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5001
5002         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5003         `elmo-message-use-cache-p' returns nil.
5004         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5005         (ignore cache file and refer the substance in local folders)
5006
5007 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5008
5009         * elmo-version.el (elmo-version): Up to 2.9.8.
5010
5011 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5012
5013         * elmo-version.el (elmo-version): Up to 2.9.7.
5014
5015         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5016
5017 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5018
5019         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5020
5021 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5022
5023         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5024         from --early.
5025         (elmo-map-folder-list-message-locations): Reverse location list.
5026
5027 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5028
5029         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5030
5031 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5032
5033         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5034         as a key.
5035         (elmo-nntp-folder-list-subfolders): Follow the change above.
5036
5037 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5038
5039         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5040         name if authentication type is specified.
5041
5042 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5043
5044         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5045         variable.
5046         (elmo-default-nntp-stream-type): Ditto.
5047         (elmo-default-pop3-stream-type): Ditto.
5048
5049 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5050
5051         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5052
5053 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5054
5055         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5056         elmo-vars.el.
5057         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5058
5059         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5060         (elmo-maildir-folder-path): Ditto.
5061         (elmo-maildir-list): Ditto (abolished).
5062
5063 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5064
5065         * elmo-version.el (elmo-version): Up to 2.9.6.
5066
5067 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5068
5069         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5070         (elmo-maildir-folder-path): Ditto.
5071         (elmo-msgdb-directory): Ditto.
5072         (elmo-passwd-life-time): Ditto.
5073         (elmo-msgdb-extra-fields): Ditto.
5074         (elmo-enable-disconnected-operation): Ditto.
5075
5076 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5077
5078         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5079         other choices.
5080         (elmo-pop3-default-authenticate-type): Ditto.
5081
5082 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5083
5084         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5085         choices for custom.
5086         (elmo-pop3-default-authenticate-type): Ditto.
5087
5088 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5089
5090         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5091         mailbox to new-folder.
5092
5093 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5094
5095         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5096         less than new, set new as unread.
5097
5098         * elmo-util.el (elmo-string): Don't put text-property if nil.
5099
5100 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5101
5102         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5103         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5104
5105 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5106
5107         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5108         is nil on `completing-read'.
5109
5110 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5111
5112         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5113         for namespace part.
5114         (elmo-imap4-parse-namespace-subr): Ditto.
5115         (elmo-folder-list-subfolders): Append a delimiter when the specified
5116         folder path is a root with namespace and does not end with delimiter.
5117
5118 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5119
5120         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5121         was used.
5122
5123 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5124
5125         * elmo-util.el (elmo-save-buffer): The first argument of message
5126         is a format control string.
5127
5128 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5129
5130         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5131         `elmo-folder-diff').
5132         (elmo-diff-unread): Likewise.
5133
5134 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5135
5136         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5137         is t on `completing-read'.
5138
5139 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5140
5141         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5142         method of target folder with self mark-alist if MARK-ALIST is nil.
5143
5144 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5145
5146         * elmo-version.el (elmo-version): Up to 2.9.5.
5147
5148 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5149
5150         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5151         (elmo-dop-merge-funcs): Remove.
5152
5153 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5154
5155         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5156         Return t if PATH is directory, too.
5157         Use `dolist' instead of while loop.
5158
5159 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5160
5161         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5162         is deleted.
5163
5164 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5165
5166         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5167         return value to t.
5168         (elmo-folder-list-messages-unplugged): Return t if
5169         elmo-enable-disconnected-operation is nil.
5170
5171         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5172         `elmo-folder-list-messages-internal'.
5173
5174 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5175
5176         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5177         Change to looking-at `[23][0-9]+'.
5178         (elmo-network-initialize-session): Use 'error-msg'
5179         * elmo-net.el (elmo-network-open-session): Set unplugged
5180         if elmo-network-initialize-session returns 'elmo-open-err.
5181
5182 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5183
5184         * elmo-version.el (elmo-version): Up to 2.9.4.
5185
5186 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5187
5188         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5189         `elmo-folder-list-messages-internal'.
5190
5191 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5192
5193         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5194         (elmo-message-match-condition): New method.
5195         (elmo-folder-search-fast): New inline function.
5196         (elmo-msgdb-search): Removed.
5197
5198         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5199         target folder if it is unplugged.
5200         (elmo-folder-list-messages-internal): Return t if target folder is
5201         unplugged and itself is persistent; In this case, use list be
5202         searched already.
5203
5204         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5205         (elmo-msgdb-search-internal-primitive): Ditto.
5206         (elmo-msgdb-match-condition): New function.
5207         (elmo-msgdb-match-condition-primitive): Ditto.
5208
5209         * elmo-util.el (elmo-filter-condition-p): New macro.
5210
5211         * elmo-cache.el (elmo-folder-search): Removed.
5212
5213         * elmo-localdir.el (elmo-folder-search): Ditto.
5214
5215         * elmo-maildir.el (elmo-folder-search): Ditto.
5216
5217         * elmo-mark.el (elmo-folder-search): Ditto.
5218
5219         * elmo-nmz.el (elmo-folder-search): Ditto.
5220
5221         * elmo-sendlog.el (elmo-folder-search): Ditto.
5222
5223         * elmo-shimbun.el (elmo-folder-search): Ditto.
5224
5225         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5226         if folder is unplugged.
5227
5228         * elmo-nntp.el (elmo-folder-search): Likewise.
5229         (elmo-nntp-search-internal): New function.
5230
5231         * elmo-version.el (elmo-version): Up to 2.9.3.
5232
5233 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5234
5235         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5236
5237 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5238
5239         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5240
5241 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5242
5243         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5244
5245 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5246
5247         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5248         (elmo-map-folder-list-message-locations): Do drive letter conversion
5249         on Windows environment.
5250         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5251         (elmo-map-message-fetch): Ditto.
5252
5253 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5254
5255         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5256         (elmo-network-initialize-session): Ditto.
5257
5258 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5259
5260         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5261
5262         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5263
5264         * elmo-util.el (elmo-progress-clear): Ditto.
5265
5266         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5267         `DD-Mon-YYYY' type date.
5268
5269 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5270
5271         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5272         `elmo-date-make-sortable-string' instead of
5273         `timezone-make-date-sortable'.
5274
5275         * elmo-date.el (elmo-date-make-sortable-string): Use
5276         `timezone-make-time-string'.
5277
5278 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5279
5280         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5281
5282         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5283         `since'; Fix timezone.
5284
5285         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5286
5287         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5288
5289 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5290
5291         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5292
5293 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5294
5295         * elmo.el (elmo-generic-folder-append-messages): Make
5296         fetch-strategy with `use-cache' as 'maybe. Check return value of
5297         `elmo-message-fetch'.
5298         (elmo-message-fetch): Return return value of
5299         `elmo-message-fetch-with-cache-process'.
5300         (elmo-message-fetch-with-cache-process): Return non-nil if
5301         fetching was succeed. Load cache when fetching was failed and
5302         fetch-strategy-use-cache is 'maybe.
5303
5304         * elmo-util.el (elmo-file-cache-load): New function.
5305
5306         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5307         defun.
5308
5309         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5310         non-nil if fetching was succeed.
5311
5312         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5313
5314         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5315
5316         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5317         (elmo-message-fetch-with-cache-process): Likwise.
5318
5319         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5320
5321         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5322
5323         * elmo-version.el (elmo-version): Up to 2.9.2.
5324
5325 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5326
5327         * elmo.el (elmo-folder-delete): Delete msgdb path.
5328
5329         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5330
5331         * elmo-maildir.el (elmo-folder-delete): Ditto.
5332
5333         * elmo-localdir.el (elmo-folder-delete): Ditto.
5334
5335         * elmo-imap4.el (elmo-folder-delete): Ditto.
5336
5337 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5338
5339         * elmo.el (luna-define-class): Added `biff' slot.
5340
5341         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5342         (elmo-pop3-debug-inhibit-logging): Abolished.
5343         (elmo-network-close-session): Eliminated needless let.
5344         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5345         (elmo-pop3-send-command): Added `no-log' argument.
5346         (elmo-pop3-process-filter): Use `with-current-buffer'.
5347         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5348         if login failure.
5349         (elmo-pop3-auth-apop): Likewise.
5350         (elmo-network-authenticate-session): Likewise.
5351
5352         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5353         if biff folder.
5354
5355         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5356         string to determine protocol.
5357         (elmo-network-session-name-prefix): Abolished.
5358         (elmo-network-session-cache-key): Follow the change above.
5359         (elmo-network-open-session): Ditto.
5360
5361         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5362         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5363
5364         * elmo-version.el (elmo-version): Up to 2.9.1.
5365
5366         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5367         unmatch condition checking.
5368
5369         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5370         condition.
5371
5372 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5373
5374         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5375
5376 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5377
5378         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5379         test for while loop to execute at least one SEARCH command.
5380
5381 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5382
5383         * elmo-version.el (elmo-version): Up to 2.9.0.
5384
5385 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5386
5387         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5388         (elmo-archive-folder-path): Define.
5389         (elmo-folder-initialize): Setup `dir-name' slot.
5390         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5391         Use `dir-name' as prefix of each subfolders.
5392         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5393
5394 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5395
5396         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5397         (elmo-pipe-folder-list-target-messages): New internal function.
5398         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5399         `killed-list'.
5400         (elmo-pipe-folder-copied-list-load): New function.
5401         (elmo-pipe-folder-copied-list-save): Ditto.
5402         (elmo-folder-open-internal): Follow the change above.
5403         (elmo-folder-status): Fixed for copy.
5404
5405 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5406
5407         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5408
5409 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5410
5411         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5412         elmo-copy-file instead of elmo-add-name-to-file.
5413
5414         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5415
5416         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5417         "file://..." index.
5418
5419         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5420         of accept-process-output as 1.
5421         (elmo-pop3-read-contents): Ditto.
5422         (elmo-pop3-read-body): Ditto.
5423
5424 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5425
5426         * elmo-version.el (product-version-as-string): Remove define.
5427
5428 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5429
5430         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5431         (elmo-imap4-copy-messages): Chop number set using
5432         `elmo-imap4-number-set-chop-length'.
5433         (elmo-imap4-set-flag): Ditto.
5434         (elmo-imap4-search-internal-primitive): Ditto.
5435
5436 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5437
5438         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5439         `elmo-folder-make-temp-dir'
5440
5441         * elmo-vars.el (elmo-cache-directory): New variable.
5442         (elmo-cache-dir): Abolished.
5443         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5444
5445         * elmo-version.el (elmo-version): Up to 2.7.7.
5446
5447 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5448
5449         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5450         defcustom; Set default value as t.
5451
5452 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5453
5454         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5455         (ldap-search-program-arguments): Changed default value.
5456         (ldap-search-basic): Accept exit status 4.
5457         (ldap/field-body): Parse options.
5458         (ldap/collect-field): Ditto.
5459         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5460
5461         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5462         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5463         (elmo-imap4-accept-ok): Ditto.
5464         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5465         'notify-bye, only BYE error is reported.
5466         (elmo-folder-exists-p-plugged): Set no-error argument of
5467         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5468
5469         * elmo.el (elmo-imap4-bye-error): Changed message.
5470
5471         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5472         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5473         queues (It causes infinite loop).
5474
5475 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5476
5477         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5478         (RECENT UNSEEN MESSAGES) extension.
5479
5480 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5481
5482         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5483         Check number of overview fields.
5484
5485 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5486
5487         * elmo.el (elmo-folder-confirm-appends): Changed message.
5488         (elmo-folder-confirm-appends): Ditto.
5489
5490         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5491         `with-temp-buffer'.
5492         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5493
5494 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5495
5496         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5497         of elmo-folder-update-threshold is nil, which can be set by
5498         wl-summary-update-confirm-threshold.
5499
5500 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5501
5502         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5503         (elmo-nmz-index-alias-alist): Ditto.
5504         (elmo-map-folder-list-message-locations): Follow the change above.
5505
5506 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5507
5508         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5509
5510         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5511
5512         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5513
5514         * elmo-util.el (elmo-read): Ditto.
5515         (elmo-display-error): Ditto.
5516
5517         * elmo-vars.el (elmo-date-match): Ditto.
5518
5519         * pldap.el (ldap-coding-system): Ditto.
5520
5521         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5522         `elmo-inhibit-number-mapping' as nil.
5523
5524 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5525
5526         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5527         space delimiter for list response.
5528
5529 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5530
5531         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5532
5533 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5534
5535         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5536         (elmo-map-message-fetch): Fix.
5537         * elmo-map.el (elmo-folder-status): Fix for killed.
5538
5539 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5540
5541         * elmo-sendlog.el: New file.
5542         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5543
5544 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5545
5546         * acap.el (acap-logging-out): New buffer local variable.
5547         (acap-close): Set it.
5548         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5549         an error.
5550
5551 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5552
5553         * acap.el (acap-response-bye-p): New function.
5554         (acap-response-bye-message): Ditto.
5555         (acap-wait-for-response): If bye response is received, cause an error.
5556         (acap-parse-response): Make bye response when 'Bye' is received.
5557
5558 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5559
5560         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5561
5562 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5563
5564         * elmo-util.el (elmo-copy-file): Added argument
5565         `ok-if-already-exists'.
5566         (elmo-copy-file): Fixed typo.
5567
5568 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5569
5570         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5571
5572 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5573
5574         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5575
5576 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5577
5578         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5579         to killed-list.
5580
5581 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5582
5583         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5584         (elmo-folder-initialize): Fix for `copy'.
5585         (elmo-pipe-drain): Ditto.
5586         (elmo-folder-open-internal): Ditto.
5587         (elmo-folder-newsgroups): Fix.
5588
5589 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5590
5591         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5592         for each message.
5593
5594         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5595         recent value is returned from imap folder.
5596
5597         * elmo.el (elmo-folder-newsgroups): New generic function.
5598
5599         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5600         (elmo-folder-initialize): Set it.
5601         (elmo-folder-expand-msgdb-path): Use it.
5602         (elmo-folder-newsgroups): Define.
5603
5604         * elmo-filter.el (elmo-folder-newsgroups): Define.
5605
5606         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5607
5608         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5609
5610         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5611
5612 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5613
5614         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5615         user option.
5616         (elmo-shimbun-header-extra-field): New inline function.
5617         (elmo-shimbun-header-set-extra-field): Ditto.
5618         (elmo-shimbun-folder-header-hash-setup): Ditto.
5619         (elmo-shimbun-update-overview): Ditto.
5620         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5621         (elmo-shimbun-folder-setup): Use
5622         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5623         (elmo-shimbun-get-headers): Ditto.
5624         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5625         Insert `X-Shimbun-Id:' header if extra field is set.
5626         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5627         field's value instead of `shimbun-header-id'.
5628
5629         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5630         inline function.
5631         (elmo-msgdb-overview-entity-set-date): Ditto.
5632         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5633
5634 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5635
5636         * mmimap.el (mmimap-entity-section): Changed body node number from
5637         "0" to "1".
5638
5639 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5640
5641         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5642         `elmo-folder-delete-messages'.
5643
5644         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5645         (elmo-folder-initialize): Changed to expand alias into index path.
5646
5647         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5648         `elmo-mime-insert-header-from-buffer' with 6th arg
5649         `sorted-fields'.
5650
5651 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5652
5653         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5654
5655         * elmo.el (elmo-diff-new): New inline function.
5656         (elmo-diff-unread): Ditto.
5657         (elmo-diff-all): Ditto.
5658
5659         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5660         value from responseb.
5661         (elmo-imap4-folder-diff-plugged): Ditto.
5662         (elmo-imap4-server-diff-async): Added recent argument.
5663         (elmo-server-diff-async): Ditto.
5664         (elmo-imap4-folder-diff-plugged): Ditto.
5665
5666         * elmo-version.el (elmo-version): Up to 2.7.6.
5667
5668 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5669
5670         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5671         in quoted-stirng.
5672
5673 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5674
5675         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5676
5677         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5678
5679         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5680
5681         * elmo-multi.el (elmo-folder-initialize): Ditto.
5682
5683         * elmo-util.el (elmo-parse-token): New function.
5684         (elmo-parse-prefixed-element): Ditto.
5685
5686 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5687
5688         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5689         delete process.
5690         (elmo-imap4-accept-ok): Ditto.
5691
5692 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5693
5694         * mmimap.el (mime-imap-entity-header-string): Don't check first
5695         element of node-id is `0' (Follow last change).
5696
5697 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5698
5699         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5700         assigned irregular node-id to nested multipart section.
5701         (initialize-instance): Followed above change.
5702
5703 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5704
5705         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5706         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5707         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5708         `elmo-shimbun-get-headers');
5709         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5710         visible article on summary exists in headers).
5711         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5712
5713 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5714
5715         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5716         definition.
5717
5718 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5719
5720         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5721
5722 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5723
5724         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5725         header separator into loop condition.
5726
5727 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5728
5729         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5730         Return duplicate folder if it has subfolder.
5731
5732 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5733
5734         * elmo.el (elmo-make-folder): Add folder name error check.
5735
5736         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5737         (elmo-nntp-encode-group-string): New inline function.
5738         (elmo-nntp-decode-group-string): Ditto.
5739         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5740         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5741         Use `not' instead of `null';
5742         Use elmo-nntp-decode-group-string.
5743
5744         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5745
5746         * elmo-version.el (elmo-version): Up to 2.7.5.
5747
5748 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5749
5750         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5751         Hide progress gauge if `elmo-folder-move-messages' exits
5752         nonlocally.
5753
5754 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5755
5756         * elmo-imap4.el (elmo-folder-initialize): Use
5757         `elmo-imap4-encode-folder-string' for folder name.
5758
5759 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5760
5761         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5762         `done'.
5763
5764 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5765
5766         * elmo-util.el (elmo-progress-counter-alist): New internal
5767         variable.
5768         (elmo-progress-counter-value): New macro.
5769         (elmo-progress-counter-all-value): Ditto.
5770         (elmo-progress-counter-format): Ditto.
5771         (elmo-progress-counter-set-value): Ditto.
5772         (elmo-progress-set): New function.
5773         (elmo-progress-clear): Ditto.
5774         (elmo-progress-notify): Ditto.
5775
5776         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5777         counter.
5778
5779         * elmo.el (elmo-generic-folder-append-messages): Call
5780         `elmo-progress-notify'.
5781         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5782
5783         * elmo-archive.el (elmo-folder-append-messages): Call
5784         `elmo-progress-notify'.
5785
5786         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5787
5788         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5789
5790         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5791
5792 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5793
5794         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5795         'Create'.
5796         (elmo-message-encache-dop): Added argument `read'.
5797
5798         * elmo-shimbun.el (elmo-message-encache): Ditto.
5799
5800         * elmo-net.el (elmo-message-encache): Ditto.
5801
5802         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5803         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5804         elmo-imap4-seen-messages.
5805         (elmo-folder-msgdb-create-plugged): Initialize
5806         elmo-imap4-seen-messages;
5807         Set seen mark on elmo-imap4-seen-messages.
5808
5809         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5810
5811         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5812         elmo-folder-append-buffer.
5813         (elmo-folder-encache): Added optional argument `read'.
5814         (elmo-message-encache): Ditto.
5815
5816         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5817
5818         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5819
5820         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5821         if append buffer content succeds.
5822
5823 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5824
5825         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5826         elmo-display-progress.
5827
5828         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5829         Set 4th argument of mime-display-message.
5830         (elmo-mime-display-as-is): Ditto.
5831
5832 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5833
5834         * elmo-nmz.el (toplevel): Require 'mime-edit.
5835         (elmo-nmz-content-type-alist): Abolished.
5836         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5837         content is not a message.
5838         (elmo-map-message-fetch): Changed behavior exept for message content;
5839         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5840         content-type, Add From: and Subject: field.
5841
5842 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5843
5844         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5845         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5846         not a message.
5847
5848 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5849
5850         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5851         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5852
5853         * elmo-archive.el (elmo-folder-writable-p): Defined.
5854
5855         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5856
5857         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5858
5859         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5860
5861         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5862
5863         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5864
5865         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5866
5867         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5868
5869         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5870
5871 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5872
5873         * elmo-util.el (elmo-address-quote-specials): New function;
5874         Renamed from `wl-address-quote-specials'.
5875
5876 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5877
5878         * elmo-version.el (elmo-version): Up to 2.7.4.
5879
5880 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5881
5882         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5883
5884 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5885
5886         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5887         both compile-time and run-time to avoid byte-compile warning.
5888
5889 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5890
5891         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5892
5893 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5894
5895         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5896         option.
5897         (elmo-mime-display-as-is-internal): Use it.
5898
5899         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5900         if `read-passwd' is not defined.
5901
5902 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5903
5904         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5905         by original number.
5906         (elmo-folder-status): Call `elmo-folder-open-internal';
5907         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5908         (elmo-folder-close-internal): Set location-alist as nil.
5909         (elmo-folder-clear): Define.
5910         (elmo-folder-check): Don't set location-alist as nil.
5911
5912         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5913
5914 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5915
5916         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5917         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5918
5919         * mmimap.el (mime-imap-entity::requested): New slot.
5920         (mime-imap-location-fetch-entity-p): New generic function.
5921         (mime-decode-parameters): Define using `defun-maybe'.
5922         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5923         content-type structure.
5924         (mime-entity-body): Return empty body if
5925         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5926
5927         * elmo.el (elmo-message-displaying): New variable.
5928
5929         * elmo-mime.el (elmo-mime-message-display): Bind
5930         elmo-message-displaying as t.
5931
5932         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5933
5934 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5935
5936         * acap.el (acap-open): erase buffer before starting network process.
5937         (acap-store): Rewrite.
5938
5939 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5940
5941         * elmo-imap4.el (elmo-imap4-default-mailbox,
5942         elmo-imap4-default-server
5943         elmo-imap4-default-authenticate-type,
5944         elmo-imap4-default-user,
5945         elmo-imap4-default-port,
5946         elmo-imap4-default-stream-type,
5947         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5948
5949         * elmo-pop3.el (elmo-pop3-default-user,
5950         elmo-pop3-default-server,
5951         elmo-pop3-default-authenticate-type,
5952         elmo-pop3-default-port,
5953         elmo-pop3-default-stream-type,
5954         elmo-pop3-stream-type-alist): Ditto.
5955
5956         * elmo-nntp.el (elmo-nntp-default-server,
5957         elmo-nntp-default-user,
5958         elmo-nntp-default-port,
5959         elmo-nntp-default-stream-type,
5960         elmo-nntp-stream-type-alist): Ditto.
5961
5962         * elmo-vars.el: Follow changes above.
5963         (elmo-setting): New custom group; added 'elmo-setting group to
5964         above variables.
5965
5966         * elmo-version.el (elmo-version): Up to 2.7.3.
5967
5968         * acap.el (acap-parse-response): Don't delete process when BYE
5969         response (It causes hang-up on slow network environment).
5970         (toplevel): Added comment.
5971
5972 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5973
5974         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5975
5976         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5977         parsing NIL.
5978         (acap-parse-return-metadata): Ditto.
5979
5980         * slp.el: New file.
5981         (toplevel): Fixed typo.
5982
5983         * acap.el: New file.
5984         (acap-network-stream-open): Show "Connecting..." message.
5985         (acap-parse-response): Fixed problem for BYE untagged response.
5986         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5987         (toplevel): Added tiny comments.
5988
5989 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5990
5991         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5992         space delimiter for uidl response.
5993
5994 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5995
5996         * elmo-vars.el (elmo-use-semi): Eliminated.
5997
5998         * elmo-util.el (elmo-string-assoc-all): New function.
5999
6000 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6001
6002         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6003         property 'mime-preview-situation for `mime-preview-quit'.
6004
6005 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6006
6007         * elmo.el (elmo-message-fetch-with-cache-process): Call
6008         elmo-message-fetch-internal instead of causing an error when fetch
6009         strategy is 'entire but only 'section cache is available.
6010
6011 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6012
6013         * elmo-version.el (elmo-version): Up to 2.7.2.
6014
6015         * elmo.el (elmo-generic-folder-append-messages): Make
6016         fetch-strategy with `use-cache'.
6017
6018         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6019         (elmo-dop-queue-method-name): New macro.
6020
6021 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6022
6023         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6024         unbalanced parenthesis.
6025
6026 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6027
6028         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6029
6030 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6031
6032         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6033         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6034
6035 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6036
6037         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6038         local variables.
6039
6040 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6041
6042         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6043         (elmo-message-use-cache-p): Define.
6044         (elmo-folder-msgdb-create): Treat cache.
6045
6046 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6047
6048         * elmo-nntp.el (elmo-network-initialize-session): Call
6049         `elmo-nntp-send-mode-reader'.
6050         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6051
6052 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6053
6054         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6055         alist.
6056         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6057         assoc.
6058
6059         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6060         for `elmo-plugged-p'.
6061         (elmo-open-network-stream): Fixed stream-type argument.
6062
6063 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6064
6065         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6066         unknown archive type is specified.
6067
6068 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6069
6070         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6071
6072         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6073         while loading msgdb.
6074
6075         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6076         (elmo-folder-open-internal): Rewrite.
6077
6078 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6079
6080         * elmo-mime.el (elmo-mime-display-as-is-internal):
6081         Adjust buffer-multibyte status.
6082
6083 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6084
6085         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6086         of elmo-condition-find-key.
6087
6088         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6089         (elmo-condition-in-msgdb-p): Ditto.
6090         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6091         argument.
6092
6093 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6094
6095         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6096
6097 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6098
6099         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6100         label for elmo-display-progress.
6101
6102 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6103
6104         * elmo.el (elmo-folder-clear): New method.
6105         (elmo-folder-clear): Define.
6106         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6107
6108         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6109         (elmo-folder-clear): Define.
6110
6111         * elmo-map.el (elmo-folder-clear): Define.
6112
6113         * elmo-version.el (elmo-version): Up to 2.7.1.
6114
6115 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6116
6117         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6118         updates.
6119
6120 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6121
6122         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6123         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6124
6125 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6126
6127         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6128
6129         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6130         and re-written.
6131
6132         * elmo-imap4.el (elmo-folder-initialize): Use
6133         elmo-get-network-stream-type.
6134
6135         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6136
6137         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6138
6139 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6140
6141         * elmo.el (elmo-message-encache): Set unread argument for
6142         elmo-message-fetch.
6143
6144         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6145
6146         * elmo.el (elmo-net-port-info): New method.
6147
6148         * elmo-shimbun.el (elmo-net-port-info): Define.
6149         (elmo-message-encache): Ditto.
6150
6151         * elmo-net.el (elmo-net-port-info): Define as method.
6152
6153         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6154         unplugged status when elmo-enable-disconnected-operation is t.
6155
6156         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6157         of spool folder before checking new number.
6158
6159 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6160
6161         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6162         (elmo-network-setup-session): Ditto.
6163         (elmo-message-fetch-plugged): Ditto.
6164         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6165         (elmo-network-initialize-session): Ditto.
6166         (elmo-pop3-read-response): Abolish 3rd argument.
6167         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6168         (elmo-pop3-read-contents): Ditto.
6169         (elmo-pop3-read-body): Ditto.
6170         (elmo-folder-status): Call elmo-folder-close.
6171         (elmo-pop3-lock): Abolish.
6172         (elmo-pop3-unlock): Ditto.
6173         (elmo-pop3-locked-p): Ditto.
6174         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6175
6176 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6177
6178         * elmo-version.el (elmo-version): Up to 2.7.0.
6179
6180         * elmo-pop3.el (elmo-pop3-debug): New variable.
6181         (elmo-pop3-debug-inhibit-logging): Ditto.
6182         (elmo-pop3-debug): New function.
6183         (elmo-pop3-send-command): Call elmo-pop3-debug.
6184         (elmo-pop3-read-response): Added keep-lock optional argument;
6185         Don't unlock if keep-lock is non-nil.
6186         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6187         (elmo-network-authenticate-session): Bind
6188         elmo-pop3-debug-inhibit-logging as t.
6189         (elmo-network-setup-session): Call elmo-pop3-read-response with
6190         keep-lock argument.
6191         (elmo-pop3-read-msg): Ditto.
6192         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6193         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6194         (elmo-network-initialize-session): Call elmo-pop3-lock.
6195         (elmo-folder-close-internal): Don't clear location-alist slot.
6196         (elmo-folder-check): Clear location-alist slot.
6197
6198 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6199
6200         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6201         (elmo-pop3-send-command): Call elmo-pop3-lock.
6202         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6203         (elmo-pop3-read-contents): Ditto.
6204         (elmo-pop3-lock): New function.
6205         (elmo-pop3-unlock): Ditto.
6206         (elmo-pop3-locked-p): Ditto.
6207         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6208         returns t.
6209
6210 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6211
6212         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6213
6214         * elmo-util.el (elmo-file-field-primitive-condition-match):
6215         New inline function (Don't fetch file content if "first" or "last").
6216         (elmo-file-field-condition-match): Use
6217         elmo-file-field-primitive-condition-match.
6218
6219         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6220         "first".
6221
6222         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6223         (elmo-message-fetch-plugged): Fixed.
6224
6225         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6226
6227 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6228
6229         * elmo.el (elmo-folder-move-messages): Bind
6230         elmo-inhibit-display-retrieval-progress as t while moving messages.
6231
6232         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6233         New variable.
6234         (elmo-inhibit-display-retrieval-progress): Ditto.
6235
6236         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6237         for retrieval progress;
6238         Don't display progress when total buffer size is smaller than
6239         elmo-display-retrieval-progress-threshold.
6240         (elmo-message-fetch-plugged): Don't display progress when
6241         elmo-inhibit-display-retrieval-progress is non-nil.
6242
6243         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6244         for retrieval progress;
6245         Don't display progress when literal size is smaller than
6246         elmo-display-retrieval-progress-threshold.
6247         (elmo-imap4-message-fetch): Don't display progress when
6248         elmo-inhibit-display-retrieval-progress is non-nil.
6249
6250 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6251
6252         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6253         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6254         (elmo-imap4-message-fetch): Likewise.
6255
6256         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6257         (elmo-shimbun-index-range-alist): Ditto.
6258         (elmo-shimbun-use-entire-index): Abolish.
6259         (shimbun-mua-use-entire-index): Ditto.
6260         (elmo-shimbun-folder): Added new slot `range'.
6261         (elmo-folder-initialize): Setup slot `range'.
6262
6263 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6264
6265         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6266         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6267         (elmo-shimbun-get-headers): Use return value of
6268         `shimbun-article-expiration-days'.
6269         (elmo-folder-close-internal): Clean up last-check slot.
6270
6271         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6272         (elmo-pop3-total-size): New variable.
6273         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6274
6275         * elmo.el (elmo-folder-reserve-status-p): New method.
6276
6277         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6278         (elmo-shimbun-use-entire-index): New user option.
6279         (shimbun-elmo-mua): New class.
6280         (shimbun-mua-search-id): Define.
6281         (shimbun-mua-use-entire-index): Ditto.
6282         (elmo-shimbun-folder:last-check): New slot.
6283         (elmo-shimbun-headers-cache-header-list): Abolish.
6284         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6285         (elmo-shimbun-headers-cache-header-hash): Ditto.
6286         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6287         (elmo-shimbun-headers-cache-last-check): Ditto.
6288         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6289         (elmo-shimbun-headers-check-p): Rewrite.
6290         (elmo-shimbun-msgdb-to-headers): New function.
6291         (elmo-shimbun-get-headers): Rewrite.
6292         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6293         (elmo-folder-open-internal): Get headers only if
6294         `elmo-shimbun-headers-check-p' is non-nil.
6295         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6296         is non-nil.
6297         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6298         (elmo-quit): Removed.
6299
6300         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6301         function.
6302         (elmo-msgdb-overview-entity-set-extra): Ditto.
6303         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6304
6305         * elmo-map.el (elmo-folder-status): Don't call
6306         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6307         is non-nil.
6308
6309 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6310
6311         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6312         of `elmo-msgdb-search-internal-primitive' when condition's car is
6313         `and' or `or'.
6314
6315 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6316
6317         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6318
6319 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6320
6321         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6322         call `elmo-pipe-drain'.
6323
6324 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6325
6326         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6327         typo. (elmo-cache-folder -> elmo-mark-folder)
6328
6329 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6330
6331         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6332         `elmo-message-fetch'.
6333
6334 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6335
6336         * elmo-net.el (elmo-message-encache): Fixed typo.
6337         (elmo-message-fetch-unplugged): Changed call
6338         `elmo-message-fetch-internal' without argument `outbuf'.
6339
6340 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6341
6342         * elmo.el (elmo-message-encache): Define as generic function.
6343         (elmo-message-fetch-field): New generic function.
6344         (elmo-message-fetch-with-cache-process): Cause an error when
6345         fetch strategy is 'entire but only 'section cache is available.
6346         (toplevel): Fixed nmz folder definition.
6347
6348         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6349         (elmo-msgdb-resume-list-filename): Ditto.
6350         (elmo-queue-filename): Ditto.
6351         (elmo-enable-disconnected-operation): Changed default value to t.
6352
6353         * elmo-util.el (elmo-cache-path-section-p): New function.
6354         (elmo-file-cache-get): Use it.
6355         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6356         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6357         (elmo-dop-queue-save): Ditto.
6358
6359         * elmo-net.el (elmo-folder-status-unplugged): Call
6360         elmo-folder-status-dop.
6361         (elmo-folder-list-messages-unplugged): Implemented.
6362         (elmo-folder-delete-messages-unplugged): Define.
6363         (elmo-folder-msgdb-create): Define.
6364         (elmo-folder-msgdb-create-unplugged): Define.
6365         (elmo-folder-mark-as-read-unplugged): Ditto.
6366         (elmo-folder-unmark-read-unplugged): Ditto.
6367         (elmo-folder-mark-as-important-unplugged): Ditto.
6368         (elmo-folder-unmark-important-unplugged): Ditto.
6369         (elmo-message-encache): Ditto.
6370
6371         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6372         (elmo-dop-queue-save): Ditto.
6373
6374         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6375         `elmo-folder-msgdb-create'.
6376         (elmo-folder-append-buffer): Implemented unplugged operation.
6377         (elmo-folder-append-messages): Call parent method in unplugged status.
6378         (elmo-message-fetch-unplugged): Removed definition.
6379         (elmo-message-fetch-field): Implemented.
6380
6381         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6382         (elmo-dop-folder): Removed variable definition.
6383         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6384         (elmo-dop-queue-flush): Implemented.
6385         (elmo-dop-queue-merge): Removed definition (TODO).
6386         (elmo-dop-spool-folder): New function.
6387         (elmo-dop-spool-folder-append-buffer): Ditto.
6388         (elmo-dop-spool-folder-list-messages): Ditto.
6389         (elmo-dop-list-deleting-messages): Ditto.
6390         (elmo-folder-append-buffer-dop): Ditto.
6391         (elmo-folder-delete-messages-dop): Ditto.
6392         (elmo-message-encache-dop): New inline function.
6393         (elmo-create-folder-dop): Ditto.
6394         (elmo-folder-mark-as-read-dop): Ditto.
6395         (elmo-folder-unmark-read-dop): Ditto.
6396         (elmo-folder-mark-as-important-dop): Ditto.
6397         (elmo-folder-unmark-important-dop): Ditto.
6398         (elmo-folder-status-dop): Fixed.
6399         (elmo-folder-append-buffer-dop-delayed): New function.
6400         (elmo-folder-delete-messages-dop-delayed): Ditto.
6401         (elmo-dop-msgdb): Ditto.
6402
6403 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6404
6405         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6406
6407 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6408
6409         * elmo.el (elmo-folder-move-messages): Fixed problem when
6410         `dst-folder' is 'null.
6411
6412 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6413
6414         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6415         instead of current mark.
6416
6417         * elmo-multi.el (elmo-folder-list-importants-internal): No
6418         operation if importants is not list.
6419
6420         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6421         Return t if importants is not list.
6422
6423         * elmo-map.el (elmo-map-folder-list-importants): Define.
6424         (elmo-folder-list-importants-internal): Check return value of
6425         `elmo-map-folder-list-importants-internal'.
6426
6427         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6428
6429         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6430
6431         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6432
6433         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6434
6435 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6436
6437         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6438         (Patch is provided by <kita@coe.nttdata.co.jp>).
6439
6440 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6441
6442         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6443         mark folder.
6444
6445 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6446
6447         * elmo.el (elmo-message-fetch): Define.
6448         (elmo-message-fetch-with-cache-process): New generic method.
6449         (elmo-message-fetch-internal): New generic method.
6450         (elmo-folder-synchronize):
6451
6452         * elmo-archive.el (elmo-message-fetch-internal): Define.
6453         (elmo-message-fetch): Eliminated.
6454
6455         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6456         (elmo-message-fetch): Eliminated.
6457
6458         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6459         argument OUTBUF.
6460         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6461
6462         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6463         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6464
6465         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6466         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6467
6468         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6469
6470         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6471
6472         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6473
6474         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6475         (elmo-message-fetch-unplugged): New generic method.
6476         (elmo-message-fetch-internal): Remove cache process (Renamed from
6477         `elmo-message-fetch').
6478
6479         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6480         (elmo-message-fetch): Eliminated.
6481         (elmo-message-fetch-unplugged): Ditto.
6482
6483         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6484
6485 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6486
6487         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6488         of `to-be-deleted' from number-alist to number-list.
6489
6490 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6491
6492         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6493         (elmo-folder-mark-as-important): Ditto.
6494
6495 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6496
6497         * elmo.el (elmo-folder): Added process-duplicates slot.
6498
6499         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6500         (elmo-folder-unmark-read): Ditto.
6501         (elmo-folder-unmark-important): Ditto.
6502         (elmo-folder-mark-as-important): Ditto.
6503
6504         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6505         duplicated message processing.
6506
6507         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6508
6509 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6510
6511         * elmo-util.el (elmo-list-subdirectories-1): New function.
6512         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6513         (elmo-mapcar-list-of-list): New function.
6514
6515         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6516         `elmo-mapcar-list-of-list' instead of `mapcar'.
6517
6518         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6519
6520         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6521         `elmo-have-link-count'. Return the fully qualified folder name.
6522
6523 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6524
6525         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6526         (elmo-shimbun-headers-cache): New internal variable.
6527         (elmo-shimbun-headers-cache-header-list): New inline function.
6528         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6529         (elmo-shimbun-headers-cache-header-hash): Ditto.
6530         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6531         (elmo-shimbun-headers-cache-last-check): Ditto.
6532         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6533         (elmo-shimbun-lapse-seconds): Ditto.
6534         (elmo-shimbun-headers-cache-check-p): Ditto.
6535         (elmo-shimbun-get-headers): New function.
6536         (elmo-folder-open-internal): Call it.
6537         (elmo-quit): Define (Clear headers-cache).
6538
6539 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6540
6541         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6542
6543         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6544         (elmo-msgdb-flist-save): Ditto.
6545
6546         * elmo-shimbun.el (elmo-folder-list-subfolders):
6547         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6548         (elmo-folder-exists-p): Ditto.
6549
6550         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6551         argument for `shimbun-header-insert'.
6552
6553 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6554
6555         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6556         at first time.
6557
6558         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6559         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6560
6561 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6562
6563         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6564         (elmo-folder-plugged-p): Define.
6565         (elmo-folder-set-plugged): Ditto.
6566         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6567         (elmo-folder-list-messages-internal): Return t if unplugged.
6568         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6569
6570         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6571         when elmo-folder-list-messages-internal method of children returns t.
6572
6573         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6574         pair is nil.
6575         (elmo-folder-open-internal): Don't update if unplugged status.
6576
6577 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6578
6579         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6580         new message.
6581
6582 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6583
6584         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6585
6586         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6587         saving.
6588
6589 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6590
6591         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6592
6593         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6594         (elmo-folder-open-internal): Set up headers slot.
6595         (elmo-folder-check): Call elmo-folder-close-internal and
6596         elmo-folder-open-internal.
6597         (elmo-folder-close-internal): Clean up headers slot.
6598
6599 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6600
6601         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6602         exactly folder list.
6603         (elmo-folder-append-messages): Fixed append archive with prefix.
6604
6605         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6606         make temp files with start-number.
6607
6608         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6609
6610 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6611
6612         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6613         argument `visible-only'.
6614         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6615         instead of `if'.
6616
6617         * elmo-pop3.el (elmo-folder-open-internal): Check
6618         `elmo-inhibit-number-mapping' is non-nil.
6619
6620         * elmo-pipe.el (elmo-folder-status): Fixed.
6621
6622 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6623
6624         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6625
6626         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6627         (elmo-folder-open-internal): Setup `header-hash' slot.
6628         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6629         information.
6630         (elmo-map-message-fetch): Ditto.
6631
6632 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6633
6634         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6635         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6636         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6637         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6638
6639         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6640
6641 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6642
6643         * sb-airs.el: Added footer.
6644
6645         * shimbun.el (shimbun-article): Define as luna-method.
6646
6647         * sb-tcup.el: New file.
6648
6649         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6650         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6651
6652 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6653
6654         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6655         (shimbun-get-headers): Ditto.
6656
6657         * elmo.el: Moved obsolete variable definitions from
6658         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6659
6660         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6661         groups.
6662
6663         * shimbun.el: New file.
6664
6665         * elmo-shimbun.el: New file.
6666
6667         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6668         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6669         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6670         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6671
6672 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6673
6674         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6675         hierarchy is t.
6676
6677 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6678
6679         * elmo.el (elmo-folder-msgdb): Define as macro.
6680         (elmo-folder-open): Added argument `load-msgdb'.
6681         (elmo-generic-folder-open): Ditto.
6682         (elmo-folder-encache): New function.
6683
6684         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6685
6686         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6687
6688         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6689         Eliminated argument FOLDER and added argument MSGDB.
6690         (elmo-dop-queue-load): Moved from elmo-dop.el.
6691         (elmo-dop-queue-save): Ditto.
6692
6693         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6694
6695         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6696
6697         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6698         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6699         (elmo-filter-folder-list-importants-internal): Ditto.
6700
6701         * elmo-map.el (elmo-folder-pack-number): Ditto.
6702
6703         * elmo-mime.el (elmo-mime-message-display): Ditto.
6704
6705         * elmo.el (elmo-generic-folder-commit): Ditto.
6706         (elmo-folder-list-unreads): Ditto.
6707         (elmo-folder-list-importants): Ditto.
6708         (elmo-generic-folder-commit): Ditto.
6709         (elmo-message-set-mark): Ditto.
6710         (elmo-generic-folder-append-msgdb): Ditto.
6711         (elmo-folder-synchronize): Ditto.
6712         (elmo-folder-messages): Ditto.
6713         (elmo-init): Call elmo-dop-queue-load.
6714         (elmo-folder-list-messages): Ditto.
6715
6716         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6717         (elmo-nntp-folder-process-crosspost): Ditto.
6718         (elmo-folder-list-unreads-internal): Ditto.
6719
6720         * elmo-dop.el: Removed old functions.
6721
6722 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6723
6724         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6725         `folder' to `msgdb'.
6726
6727 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6728
6729         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6730         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6731
6732         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6733         case-fold-search.
6734
6735 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6736
6737         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6738         defined.
6739
6740         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6741         (mmimap-parse-parameters-from-list): Define as alias for
6742         `mime-decode-parameter-plist' if it is defined as function.
6743         (mmimap-make-mime-entity): Added argument `number'.
6744         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6745         as 0.
6746         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6747
6748         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6749
6750         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6751
6752         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6753
6754 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6755
6756         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6757
6758         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6759         when elmo-imap4-default-authenticate-type is nil.
6760         (elmo-folder-list-subfolders): Ditto
6761         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6762         (elmo-imap4-fetch-callback-1-subr): Renamed from
6763         `elmo-imap4-fetch-callback-1' and define as inline function.
6764         (elmo-imap4-fetch-callback-1):
6765         Renamed from `elmo-imap4-fetch-callback'.
6766         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6767
6768         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6769         msgdb path (To keep compatibility with main trunk).
6770
6771         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6772
6773         * elmo-util.el (elmo-make-file-cache): Moved position of
6774         some macros.
6775
6776         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6777         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6778         instead of `elmo-pop3-inhibit-uidl'.
6779         (elmo-folder-exists-p): Ditto.
6780         (elmo-pop3-folder-list-messages): Ditto.
6781
6782         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6783         instead of `elmo-pop3-inhibit-uidl'.
6784         (elmo-folder-status): Ditto.
6785
6786         * elmo-dop.el (elmo-dop-folder): New variable.
6787         (elmo-dop-lock-message): Eliminated.
6788         (elmo-dop-unlock-message): Ditto.
6789         (elmo-dop-lock-list-load): Ditto.
6790         (elmo-dop-lock-list-save): Ditto.
6791         (elmo-dop-delete-folder): Ditto.
6792         (elmo-dop-rename-folder): Ditto.
6793
6794         * elmo.el: Removed incomplete commentary.
6795
6796 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6797
6798         * elmo.el (toplevel): Require 'elmo-version first;
6799         for little `recursive-load-depth' settings.
6800         Fix "ends here" comment.
6801
6802 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6803
6804         * elmo-util.el (toplevel): Require 'poem;
6805         Some functions are moved from elmo-cache.el.
6806
6807         * elmo-net.el (toplevel): Require 'elmo-cache.
6808
6809         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6810
6811         * elmo.el (toplevel): Ditto.
6812
6813         * elmo-cache.el: Rewrite with luna;
6814         Some functions are moved to elmo-util.el.
6815
6816         * elmo-internal.el (elmo-internal-folder-list): New variable.
6817         (elmo-internal-folder-initialize): Rewrite.
6818         (elmo-folder-list-subfolders): Ditto.
6819
6820         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6821         (elmo-cache-collect-sub-directories): Ditto.
6822
6823 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6824
6825         * elmo-version.el (elmo-version): Up to 2.5.8.
6826
6827         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6828
6829         * elmo-util.el (elmo-list-insert): New function.
6830
6831 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6832
6833         * elmo.el (elmo-init): New function.
6834         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6835
6836         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6837         (Renamed from `elmo-localdir-header-chop-length').
6838
6839         * elmo-pop3.el (elmo-pop3-use-cache,
6840         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6841
6842         * elmo-nntp.el (elmo-message-fetch): Define.
6843         (elmo-message-fetch-unplugged): Ditto.
6844         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6845         (elmo-nntp-use-cache): Ditto.
6846         (elmo-nntp-max-number-precedes-list-active): Ditto.
6847
6848         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6849
6850         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6851         `elmo-msgdb-insert-file-header'.
6852         Use `elmo-msgdb-file-header-chop-length'.
6853
6854         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6855         `elmo-vars.el'.
6856
6857         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6858         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6859         `elmo-msgdb-insert-file-header'.
6860
6861         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6862         Use new variable;
6863         Define obsolete variables with `elmo-define-obsolete-variable',
6864
6865         * elmo-util.el (elmo-warning-buffer-name): New constant.
6866         (elmo-warning): New function.
6867         (elmo-obsolete-variable-alist): New variable.
6868         (elmo-obsolete-variable-show-warnings): New variable.
6869         (elmo-define-obsolete-variable): New function.
6870         (elmo-resque-obsolete-variable): Ditto.
6871         (elmo-resque-obsolete-variables): Ditto.
6872
6873 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6874
6875         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6876         Eliminated.
6877
6878         * elmo-pop3.el, elmo-nntp.el: Use custom.
6879
6880 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6881
6882         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6883         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6884
6885 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6886
6887         * Luna-fy Kenichi OKADA's following changes.
6888         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6889         `nohide'.
6890         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6891
6892 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6893
6894         * elmo-util.el (elmo-display-progress): Prefer
6895         `progress-feedback-with-label' to `lprogress-display'.
6896
6897 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6898
6899         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6900
6901 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6902
6903         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6904         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6905         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6906         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6907         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6908         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6909         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6910         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6911         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6912         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6913         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6914         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6915         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6916
6917 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6918
6919         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6920         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6921
6922 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6923
6924         * elmo.el (elmo-folder-process-crosspost): New generic method.
6925         (elmo-folder-writable-p): Ditto.
6926         (elmo-folder-message-appendable-p): Eliminated.
6927         (elmo-generic-folder-append-msgdb): Rewrite.
6928         (elmo-newsgroups-hashtb): New internal variable.
6929         (elmo-crosspost-message-set): Eliminated.
6930         (elmo-crosspost-message-delete): Ditto.
6931         (elmo-setup-subscribed-newsgroups): New function.
6932         (elmo-crosspost-message-alist-modified): New internal variable.
6933         (elmo-crosspost-message-alist-load): New function (Renamed from
6934         `wl-crosspost-alist-load').
6935         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6936         `wl-crosspost-alist-save').
6937
6938         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6939
6940         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6941         `unreads'.
6942         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6943         elmo-newsgroups-hashtb).
6944         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6945         `elmo-nntp-folder-update-crosspost-message-alist'.
6946         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6947         `elmo-nntp-groups-hashtb'.
6948         (elmo-nntp-make-groups-hashtb): Eliminated.
6949         (elmo-nntp-parse-newsgroups): New function (Renamed from
6950         `wl-parse-newsgroups').
6951         (elmo-folder-creatable-p, elmo-folder-writable-p,
6952         elmo-folder-close-internal, elmo-folder-mark-as-read,
6953         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6954         Define.
6955         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6956
6957         * elmo-net.el (elmo-message-fetch): Check buffer size.
6958
6959         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6960
6961         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6962
6963         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6964         before `close' command.
6965
6966         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6967         `mark-alist' (All other related portions are changed).
6968
6969 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6970
6971         * elmo-util.el (elmo-create-hash-size): Eliminated.
6972         (elmo-make-hash) Make a hash with `one less than a power of two'
6973         length.
6974
6975         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6976         (elmo-hash-maximum-size): Changed value.
6977
6978 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6979
6980         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6981         (elmo-mime-message-display-as-is): Ditto.
6982
6983 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6984
6985         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6986         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6987
6988 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6989
6990         * elmo-mark.el: New file.
6991
6992         * elmo-internal.el: Rewrite (Almost empty).
6993
6994 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6995
6996         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6997         (mime-imap-entity-header-string): Ditto.
6998         (mmimap-entity-section): Rewrite.
6999
7000 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7001
7002         * elmo-nmz.el: New file.
7003
7004         * elmo-pipe.el: Rewrite with luna.
7005
7006 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7007
7008         * elmo-archive.el: Rewrite with luna.
7009
7010         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7011         (elmo-folder-list-importants-internal): Ditto.
7012
7013 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7014
7015         * elmo-archive.el (elmo-archive-version): Abolish.
7016         (toplevel) Removed `boso' comment.
7017
7018 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7019
7020         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7021         elmo-msgdb-add-msgs-to-seen-list-subr;
7022         Changed argument seen-marks to unread-marks.
7023
7024         * elmo-nntp.el: Rewrite with luna.
7025
7026 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7027
7028         * elmo-filter.el: Rewrite with luna.
7029
7030 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7031
7032         * elmo-pop3.el: Rewrite with luna.
7033
7034 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7035
7036         * elmo-multi.el: Rewrite with luna.
7037
7038         * elmo-vars.el (elmo-use-killed-list): Abolish.
7039         All other related portions are changed.
7040         (elmo-filename-replace-string-alist): Renamed from
7041         elmo-msgid-replace-string-alist.
7042
7043 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7044
7045         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7046
7047         * elmo-map.el: New file.
7048         * elmo-maildir.el: Rewrite with luna.
7049
7050 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7051
7052         * elmo.el: Changed meaning of `elmo-folder-commit'.
7053         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7054
7055 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7056
7057         * elmo.el (elmo-folder-append-buffer): New function.
7058         (Renamed from `elmo-append-msg')
7059
7060 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7061
7062         * elmo-mime.el: New file.
7063
7064 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7065
7066         * elmo-cache.el: Rewrite.
7067
7068 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7069
7070         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7071
7072 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7073
7074         * elmo-vars.el (elmo): New group.
7075         (elmo-strict-diff-folder-regexp): New variable.
7076
7077         * elmo-util.el (elmo-call-func): Abolish.
7078         (elmo-folder-get-type): Ditto.
7079         (elmo-*-get-spec): Ditto.
7080         (elmo-*-spec-*): Ditto.
7081         (elmo-imap4-identical-name-space-p): Ditto.
7082         (elmo-folder-identical-system-p): Ditto.
7083         (elmo-folder-direct-copy-alist): Ditto.
7084         (elmo-folder-direct-copy-p): Ditto.
7085
7086         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7087         (elmo-folder-initialize): Define.
7088         (elmo-folder-get-primitive-list): Ditto.
7089
7090         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7091         (elmo-folder-initialize): Define.
7092         Renamed `elmo-network-session-host-internal' to
7093         `elmo-network-session-server-internal'.
7094
7095         * elmo-multi.el (elmo-multi-folder): New luna class.
7096         (elmo-folder-initialize): Define.
7097         (elmo-folder-get-primitive-list): Ditto.
7098         (elmo-folder-contains-type): Ditto.
7099         (elmo-message-use-cache-p): Ditto.
7100
7101         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7102         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7103
7104         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7105         (elmo-folder-initialize): Define.
7106
7107         * elmo-filter.el (elmo-filter-folder): New luna class.
7108         (elmo-folder-initialize): Define.
7109         (elmo-folder-get-primitive-list): Ditto.
7110         (elmo-folder-contains-type): Ditto.
7111
7112 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7113
7114         * elmo-imap4.el: Rewrite with luna.
7115
7116         * mmimap.el: New file.
7117
7118         * mmelmo.el, mmelmo-imap4.el: Removed.
7119
7120         * elmo-net.el: Ditto.
7121
7122         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7123         (elmo-folder-initialize): Define.
7124
7125         * elmo-archive.el (elmo-archive-folder): New luna class.
7126         (elmo-folder-initialize): Define.
7127
7128         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7129         `elmo-folder-msgdb-path'.
7130         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7131         `elmo-make-folder'.
7132
7133 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7134
7135         * elmo.el: New file.
7136
7137         * elmo2.el: Renamed to elmo.el.
7138
7139 \f
7140 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7141
7142         * elmo-cache.el (elmo-cache-expire-by-size): Count
7143         a disk usage for a cache file entry in KB even when
7144         its kind is a directory.
7145
7146 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7147
7148         * elmo-version.el (elmo-version): Up to 2.5.7.
7149
7150 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7151
7152         * elmo-version.el (elmo-version): Up to 2.5.6.
7153
7154 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7155
7156         * elmo-version.el (elmo-version): Up to 2.5.5.
7157
7158 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7159
7160         * elmo-imap4.el (elmo-network-authenticate-session):
7161         Fixed a logic for response checking.
7162
7163 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7164
7165         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7166         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7167         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7168         `sasl-mechanisms'.
7169
7170         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7171         for `starttls-open-stream' and `starttls-negotiate'.
7172
7173         * elmo-nntp.el: Remove autoload settings for
7174         `starttls-open-stream' and `starttls-negotiate'.
7175
7176         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7177         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7178         `luna-define-class' with `eval-and-compile'.
7179
7180 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7181
7182         * elmo-util.el (elmo-read-search-condition-internal):
7183         Require an element of table for searching field.
7184
7185 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7186
7187         * elmo-version.el (elmo-version): Up to 2.5.4.
7188
7189 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7190
7191         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7192
7193 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7194
7195         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7196
7197 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7198
7199         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7200         before greeting.
7201
7202 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7203
7204         * elmo-imap4.el (elmo-imap4-delete-folder):
7205         Send "close" before "delete" (Use commented out line).
7206         (elmo-imap4-rename-folder): Ditto.
7207
7208         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7209         folder string itself.
7210         (elmo-dop-list-deleted): New function.
7211         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7212         killed.
7213
7214         * elmo-util.el (elmo-string-rassoc-all): New function.
7215
7216 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7217
7218         * elmo-version.el (elmo-version): Up to 2.5.3.
7219
7220         * elmo-net.el (elmo-network-get-session): Changed logic for
7221         checking process status.
7222
7223         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7224         process is nil;
7225         Changed logic for checking process status.
7226
7227 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7228
7229         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7230         before greeting.
7231         (elmo-network-setup-session): Set UIDL hash size according to
7232         the length of list response.
7233         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7234         according to the length of list response;
7235         Return the length of list response.
7236         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7237
7238 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7239
7240         * elmo-imap4.el (toplevel): Require 'ssl.
7241         Add autoload 'starttls.
7242         * elmo-pop3.el (toplevel): Ditto.
7243         * elmo-nntp.el (toplevel): Ditto.
7244
7245 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7246
7247         * elmo-imap4.el (toplevel): defun at compile time.
7248         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7249         sasl-next-step, sasl-step-data, sasl-step-set-data.
7250         * elmo-pop3.el (toplevel): Ditto.
7251
7252 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7253
7254         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7255
7256 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7257
7258         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7259         if error.
7260         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7261         and `elmo-pop-auth-apop'.
7262
7263 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7264
7265         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7266
7267 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7268
7269         * elmo-pop3.el (elmo-network-authenticate-session): Split
7270         encoded response value.
7271
7272 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7273
7274         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7275         `elmo-pop3-force-login'.
7276         Redefine `sasl-mechanisms'.
7277         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7278
7279 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7280
7281         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7282         Delete `elmo-imap4-authenticator-alist'.
7283         (elmo-imap4-auth-cram-md5): Delete.
7284         (elmo-imap4-auth-digest-md5): Delete.
7285
7286 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7287
7288         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7289         (elmo-pop3-auth-scram-md5): Ditto.
7290         (elmo-pop3-auth-cram-md5): Ditto.
7291
7292 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7293
7294         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7295         Delete `elmo-pop3-authenticator-alist'.
7296
7297 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7298
7299         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7300         new SASL API.
7301         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7302
7303 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7304
7305         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7306
7307 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7308
7309         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7310         Fixed problem when `elmo-pop3-use-uidl' is nil.
7311         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7312
7313 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7314
7315         * elmo-version.el (elmo-version): Up to 2.5.2.
7316
7317 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7318
7319         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7320         New function.
7321         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7322         (elmo-pop3-msgdb-create-as-numlist): Use it.
7323
7324         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7325         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7326
7327         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7328         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7329
7330 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7331
7332         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7333         when elmo-mark-as-read is called with second argument nil.
7334
7335 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7336
7337         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7338         Moved to elmo-util.el.
7339
7340         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7341         Moved from elmo-pipe.el
7342
7343         * elmo-archive.el (elmo-archive-call-process): Enclose with
7344         static-if.
7345
7346         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7347         "RFC822" (because RFC822.PEEK is obsolete).
7348         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7349
7350 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7351
7352         * elmo-archive.el (elmo-archive-call-process): Don't check for
7353         the exit status when Nemacs is running.
7354
7355 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7356
7357         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7358         'plain.
7359
7360         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7361         (elmo-pop3-get-spec): Set default of auth to 'user.
7362
7363         * elmo-imap4.el (elmo-imap4-session-check):
7364         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7365         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7366         (elmo-imap4-auth-login): New function; Revival.
7367         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7368         `elmo-imap4-auth-login'.
7369
7370 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7371
7372         * elmo2.el (toplevel): Move `product-provide' declare.
7373         * mmelmo.el (toplevel): Ditto.
7374
7375 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7376
7377         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7378
7379 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7380
7381         * elmo-util.el (elmo-folder-get-store-type): New function.
7382         (elmo-folder-direct-copy-p): Use it.
7383
7384 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7385
7386         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7387         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7388         and result of `elmo-imap4-use-flag-p'.
7389         (elmo-imap4-fetch-callback-1): Set mark according to
7390         the result of `elmo-imap4-use-flag-p'.
7391
7392 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7393
7394         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7395         (elmo-generic-list-folder-unread): Ditto.
7396         (elmo-folder-get-info): Ditto.
7397         (elmo-folder-set-info-max-by-numdb): Ditto.
7398         (elmo-folder-get-info-max): Ditto.
7399         (elmo-folder-get-info-length): Ditto.
7400         (elmo-folder-get-info-unread): Ditto.
7401         (elmo-folder-info-make-hashtb): Ditto.
7402
7403         * elmo2.el: Removed above functions.
7404
7405 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7406
7407         * elmo-imap4.el (toplevel): Require 'ssl.
7408         Add autoload 'starttls.
7409         * elmo-pop3.el (toplevel): Ditto.
7410         * elmo-nntp.el (toplevel): Ditto.
7411
7412 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7413
7414         * elmo-imap4.el (toplevel): defun at compile time.
7415         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7416         sasl-next-step, sasl-step-data, sasl-step-set-data.
7417         * elmo-pop3.el (toplevel): Ditto.
7418
7419 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7420
7421         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7422
7423 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7424
7425         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7426         if error.
7427         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7428         and `elmo-pop-auth-apop'.
7429
7430 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7431
7432         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7433
7434 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7435
7436         * elmo-pop3.el (elmo-network-authenticate-session): Split
7437         encoded response value.
7438
7439 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7440
7441         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7442         `elmo-pop3-force-login'.
7443         Redefine `sasl-mechanisms'.
7444         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7445
7446 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7447
7448         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7449         Delete `elmo-imap4-authenticator-alist'.
7450         (elmo-imap4-auth-cram-md5): Delete.
7451         (elmo-imap4-auth-digest-md5): Delete.
7452
7453 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7454
7455         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7456         (elmo-pop3-auth-scram-md5): Ditto.
7457         (elmo-pop3-auth-cram-md5): Ditto.
7458
7459 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7460
7461         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7462         Delete `elmo-pop3-authenticator-alist'.
7463
7464 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7465
7466         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7467         new SASL API.
7468         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7469
7470 \f
7471 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7472
7473         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7474
7475 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7476
7477         * elmo-nntp.el (elmo-nntp-get-folders-info):
7478         Fixed problem when '\' character is contained in user-id.
7479         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7480
7481 \f
7482 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7483
7484         * elmo-imap4.el (elmo-imap4-delete-folder):
7485         Send "close" before "delete" (Use commented out line).
7486         (elmo-imap4-rename-folder): Ditto.
7487
7488         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7489         folder string itself.
7490         (elmo-dop-list-deleted): New function.
7491         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7492         killed.
7493
7494         * elmo-util.el (elmo-string-rassoc-all): New function.
7495
7496         * elmo-version.el (elmo-version): Up to 2.5.1.
7497
7498 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7499
7500         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7501
7502         * elmo-internal.el (elmo-internal-search): Fix last change.
7503
7504 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7505
7506         * elmo-internal.el (elmo-internal-search): Rewrite.
7507         (Fixed problem which is pointed out by Akihiro MOTOKI
7508         <motoki@da.jp.nec.com>)
7509
7510         * elmo-version.el (elmo-version): Up to 2.5.0.
7511
7512 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7513
7514         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7515
7516 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7517
7518         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7519         non-nil, make hierarchy.
7520
7521 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7522
7523         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7524         `elmo-pop3-use-uidl' must be bound to nil.
7525         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7526
7527 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7528
7529         * elmo-util.el (elmo-copy-file): Don't cause an error after
7530         `add-name-to-file' failed.
7531
7532         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7533         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7534
7535 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7536
7537         * elmo-version.el (elmo-version): Up to 2.3.93.
7538
7539 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7540
7541         * elmo-util.el (elmo-flatten): New function.
7542
7543 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7544
7545         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7546         sync Author header.
7547         * elmo-cache.el (toplevel): Ditto.
7548         * elmo-database.el (toplevel): Ditto.
7549         * elmo-date.el (toplevel): Ditto.
7550         * elmo-dop.el (toplevel): Ditto.
7551         * elmo-filter.el (toplevel): Ditto.
7552         * elmo-imap4.el (toplevel): Ditto.
7553         * elmo-internal.el (toplevel): Ditto.
7554         * elmo-localdir.el (toplevel): Ditto.
7555         * elmo-localnews.el (toplevel): Ditto.
7556         * elmo-maildir.el (toplevel): Ditto.
7557         * elmo-msgdb.el (toplevel): Ditto.
7558         * elmo-multi.el (toplevel): Ditto.
7559         * elmo-net.el (toplevel): Ditto.
7560         * elmo-nntp.el (toplevel): Ditto.
7561         * elmo-pipe.el (toplevel): Ditto.
7562         * elmo-pop3.el (toplevel): Ditto.
7563         * elmo-util.el (toplevel): Ditto.
7564         * elmo-vars.el (toplevel): Ditto.
7565         * elmo2.el (toplevel): Ditto.
7566         * mmelmo-imap4.el (toplevel): Ditto.
7567         * mmelmo.el (toplevel): Ditto.
7568
7569         * elmo-version.el (elmo-version): Move to top.
7570
7571         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7572         * elmo-imap4.el (toplevel): Ditto.
7573         * elmo-localdir.el (toplevel): Ditto.
7574         * elmo-msgdb.el (toplevel): Ditto.
7575         * elmo-nntp.el (toplevel): Ditto.
7576         * elmo-pop3.el (toplevel): Ditto.
7577         * elmo-version.el (toplevel): Ditto.
7578
7579         * elmo-localnews.el (toplevel): Added Keyword header.
7580
7581 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7582
7583         * elmo-version.el (product-version-as-string): Defined using
7584         `defun-maybe'.
7585         (toplevel): Use it.
7586
7587         * elmo-localdir.el (toplevel): Updated copyright notice.
7588         * elmo-version.el (toplevel): Ditto.
7589         * elmo-msgdb.el (toplevel): Ditto.
7590         * elmo-imap4.el (toplevel): Ditto.
7591         * elmo-nntp.el (toplevel): Ditto.
7592         * elmo-pop3.el (toplevel): Ditto.
7593
7594 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7595
7596         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7597         messages.
7598
7599         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7600         parameter value (It sometimes contains raw kanji).
7601
7602 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7603
7604         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7605         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7606
7607 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7608
7609         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7610
7611 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7612
7613         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7614         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7615
7616 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7617
7618         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7619         value if selecting folder succceeded.
7620         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7621
7622 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7623
7624         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7625         representation.
7626
7627         * elmo-util.el (elmo-string-matched-member): New function.
7628
7629 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7630
7631         * elmo-util.el (elmo-unintern): New macro.
7632         (elmo-number-set-member): Fixed docstring.
7633
7634         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7635         tag token.
7636
7637 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7638
7639         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7640         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7641
7642 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7643
7644         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7645         `no-error'.
7646         Added docstring.
7647         Return non-nil if selecting folder succeeded.
7648         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7649
7650 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7651
7652         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7653         `file-name-completion' returns t.
7654         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7655         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7656         directory if it does not exist.
7657         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7658         for iteration.
7659
7660 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7661
7662         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7663         enclosure (It's harmful in unplugged status).
7664
7665         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7666
7667         * mmelmo-1.el: Removed.
7668
7669         * mmelmo-2.el: Ditto.
7670
7671         * mmelmo-imap4-1.el: Ditto.
7672
7673         * mmelmo-imap4-2.el: Ditto.
7674
7675         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7676
7677         * mmelmo.el: Merged mmelmo-2.el.
7678
7679         * elmo-version.el (elmo-version): Up to 2.3.92.
7680
7681 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7682
7683         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7684         elmo-update-number): Remove last period in "...done." message.
7685         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7686         Ditto.
7687         * elmo-cache.el (elmo-cache-expire-by-size,
7688         elmo-cache-get-sorted-cache-file-list,
7689         elmo-cache-msgdb-create-as-numlist): Ditto.
7690         * elmo-dop.el (elmo-dop-save-pending-messages,
7691         (elmo-dop-flush-pending-append-operations): Ditto.
7692         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7693         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7694         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7695         (elmo-localdir-pack-number): Ditto.
7696         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7697         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7698         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7699         mime-write-entity-content): Ditto.
7700         * pldap.el (ldap-search-basic): Ditto.
7701
7702 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7703
7704         * elmo-version.el (elmo-version): Up to 2.3.91.
7705
7706         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7707         Only when filter is 'last'.
7708
7709         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7710         (elmo-condition-parse-search-value): Use it.
7711         (elmo-read-search-condition-internal): Quote value only when
7712         it is not an atom.
7713
7714 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7715
7716         * elmo2.el (elmo-generic-folder-diff): Fix.
7717
7718 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7719
7720         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7721         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7722         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7723         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7724         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7725         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7726
7727 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7728
7729         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7730         extra-fields.
7731
7732 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7733
7734         * elmo-version.el (elmo-version): Up to 2.3.90.
7735
7736         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7737         (elmo-imap4-list-folder-important): Ditto.
7738
7739 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7740
7741         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7742
7743 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7744
7745         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7746
7747 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7748
7749         * elmo-nntp.el (elmo-network-initialize-session):
7750         Add starttls negotiation.
7751
7752 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7753
7754         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7755         response.
7756         (elmo-network-setup-session): Define.
7757         Call `elmo-nntp-send-mode-reader' when session opened.
7758
7759 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7760
7761         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7762
7763 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7764
7765         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7766         an invalid SPACE character ahead of `SEARCH' command.  Move
7767         a valid SPACE character following `SEARCH' from conditional
7768         `format' arguments to control-strings.
7769
7770 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7771
7772         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7773         was succeeded.
7774
7775         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7776
7777 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7778
7779         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7780         `w32-get-true-file-link-count' as t.
7781
7782         * elmo-imap4.el (elmo-imap4-read): Abolished.
7783         (Renamed to `elmo-read' and moved to elmo-util.el)
7784         All other related portions are changed.
7785
7786         * elmo-util.el (elmo-read): New function.
7787         (elmo-condition-parse-search-value): Use it.
7788
7789 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7790
7791         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7792
7793         * elmo-nntp.el (elmo-nntp-session): Define.
7794         (elmo-nntp-setting): Abolished.
7795         All other related portions are changed.
7796         (elmo-nntp-get-server-command): Changed argument.
7797         (elmo-nntp-set-server-command): Ditto.
7798         (elmo-nntp-xover-p): Ditto.
7799         (elmo-nntp-set-xover): Ditto.
7800         (elmo-nntp-listgroup-p): Ditto.
7801         (elmo-nntp-set-listgroup): Ditto.
7802         (elmo-nntp-list-active-p): Ditto.
7803         (elmo-nntp-set-list-active): Ditto.
7804         (elmo-nntp-xhdr-p): Ditto.
7805         (elmo-nntp-set-xhdr): Ditto.
7806         (elmo-nntp-flush-connection): Abolished.
7807         (elmo-nntp-get-connection): Abolished.
7808         (elmo-nntp-get-session): New function.
7809         (elmo-network-initialize-session): Defined.
7810         (elmo-network-authenticate-session): Ditto.
7811         (elmo-nntp-send-mode-reader): Changed argument.
7812         (elmo-nntp-send-command): Changed argument.
7813         All other related portions are changed.
7814         (elmo-nntp-read-response): Ditto.
7815         (elmo-nntp-read-raw-response): Ditto.
7816         (elmo-nntp-read-contents): Ditto.
7817         (elmo-nntp-read-body): Ditto.
7818         (elmo-nntp-goto-folder): Abolished.
7819         (elmo-nntp-select-group): New function.
7820         All other related portions are changed.
7821         (This function substitutes `elmo-nntp-goto-folder')
7822         (elmo-nntp-msgdb-create-by-header): Rewrite.
7823         (elmo-nntp-get-overview): Eliminated.
7824         (elmo-nntp-get-message): Ditto.
7825         (elmo-nntp-open-connection) Abolished.
7826         (elmo-nntp-read-msg): Rewrite.
7827         (elmo-nntp-post): Ditto.
7828         (elmo-nntp-send-data): Abolished.
7829         (elmo-nntp-send-buffer): New function.
7830         (elmo-nntp-send-data-line): Define as inline function.
7831         (elmo-nntp-get-folders-info-prepare): Use session as key.
7832         (elmo-nntp-groups-read-response): Changed argument.
7833         (elmo-nntp-retrieve-headers): Ditto.
7834         (elmo-nntp-msgdb-create-message): Ditto.
7835
7836         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7837         when searching by 'since' or 'before'.
7838
7839 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7840
7841         * elmo-version.el (toplevel): Use product-version-as-string for set
7842         verstion-string, if defined.
7843
7844 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7845
7846         * elmo-util.el: Doc fixes.
7847
7848 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7849
7850         * elmo-archive.el (toplevel): Use product-provide.
7851         * elmo-cache.el (toplevel): Ditto.
7852         * elmo-database.el (toplevel): Ditto.
7853         * elmo-date.el (toplevel): Ditto.
7854         * elmo-dop.el (toplevel): Ditto.
7855         * elmo-filter.el (toplevel): Ditto.
7856         * elmo-imap4.el (toplevel): Ditto.
7857         * elmo-internal.el (toplevel): Ditto.
7858         * elmo-localdir.el (toplevel): Ditto.
7859         * elmo-localnews.el (toplevel): Ditto.
7860         * elmo-maildir.el (toplevel): Ditto.
7861         * elmo-msgdb.el (toplevel): Ditto.
7862         * elmo-multi.el (toplevel): Ditto.
7863         * elmo-net.el (toplevel): Ditto.
7864         * elmo-nntp.el (toplevel): Ditto.
7865         * elmo-pipe.el (toplevel): Ditto.
7866         * elmo-pop3.el (toplevel): Ditto.
7867         * elmo-util.el (toplevel): Ditto.
7868         * elmo-vars.el (toplevel): Ditto.
7869         * elmo2.el (toplevel): Ditto.
7870         * mmelmo-1.el (toplevel): Ditto.
7871         * mmelmo-2.el (toplevel): Ditto.
7872         * mmelmo-imap4-1.el (toplevel): Ditto.
7873         * mmelmo-imap4-2.el (toplevel): Ditto.
7874         * mmelmo-imap4.el (toplevel): Ditto.
7875         * mmelmo.el (toplevel): Ditto.
7876
7877 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7878
7879         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7880         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7881
7882 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7883
7884         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7885         before splitting.
7886         (elmo-multi-split-number-alist): Ditto.
7887
7888 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7889
7890         * elmo-version.el: New file.  Use product.el.
7891         * elmo2.el: Add (require 'elmo-version).
7892         * elmo-vars.el (elmo-appname, elmo-version): Move to
7893         elmo-version.el
7894
7895 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7896
7897         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7898         `elmo-msgdb-expand-path'.
7899         (elmo-msgdb-load): Ditto.
7900         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7901         (elmo-generic-list-folder-unread): Rewrite.
7902         (elmo-generic-list-folder-important): Changed argument.
7903         (elmo-list-folder-unread): Ditto.
7904         (elmo-list-folder-important): Ditto.
7905         (elmo-folder-diff): Rewrite.
7906         (elmo-generic-folder-diff): New function.
7907         (elmo-multi-get-number-alist-list): Abolished
7908         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7909         (elmo-multi-folder-diff): Moved to elmo-multi.el
7910         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7911
7912         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7913         `elmo-msgdb-expand-path'.
7914         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7915         (elmo-pop3-read-msg): Ditto.
7916         (elmo-pop3-delete-msgs): Ditto.
7917         (elmo-pop3-folder-diff): New alias.
7918
7919         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7920         `elmo-msgdb-expand-path'.
7921         (elmo-pipe-list-folder-unread): Changed arguments.
7922         (elmo-pipe-list-folder-important): Ditto.
7923         (elmo-pipe-folder-diff): New alias.
7924
7925         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7926         `elmo-msgdb-expand-path'.
7927         (elmo-nntp-max-of-folder): Ditto.
7928         (elmo-nntp-msgdb-create): Ditto.
7929         (elmo-nntp-delete-msgs): Ditto.
7930         (elmo-nntp-folder-diff): New alias.
7931
7932         * elmo-multi.el (elmo-multi-folder-diff): New function.
7933         (elmo-multi-split-mark-alist): Ditto.
7934         (elmo-multi-split-number-alist): Ditto.
7935         (elmo-multi-mark-alist-list): Abolished (Renamed to
7936         elmo-multi-split-mark-alist).
7937         (elmo-multi-list-folder-unread): Rewrite.
7938         (elmo-multi-list-folder-important): Ditto.
7939         (elmo-multi-list-folder): Set `spec' as 1st argument for
7940         `elmo-msgdb-expand-path'.
7941         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7942         instead of `elmo-multi-get-number-alist-list'.
7943
7944         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7945         If 1st argument is not string, treat as spec.
7946         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7947         `elmo-msgdb-expand-path'.
7948         (elmo-msgdb-flist-load): Ditto.
7949         (elmo-msgdb-flist-save): Ditto.
7950         (elmo-msgdb-delete-path): Ditto.
7951         (elmo-msgdb-rename-path): Ditto.
7952
7953         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7954         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7955         (elmo-maildir-delete-mark-msgs): Ditto.
7956         (elmo-maildir-msgdb-create): Ditto.
7957         (elmo-maildir-read-msg): Ditto.
7958         (elmo-maildir-delete-msgs): Ditto.
7959         (elmo-maildir-list-folder-subr): Ditto.
7960         (elmo-maildir-search): Ditto.
7961         (elmo-maildir-get-msg-filename): Ditto.
7962         (elmo-maildir-pack-number): Ditto.
7963         (elmo-maildir-folder-diff): New alias.
7964
7965         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7966
7967         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7968         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7969         (elmo-localdir-folder-diff): New alias.
7970
7971         * elmo-internal.el (elmo-internal-list-folder-subr):
7972         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7973         (elmo-internal-list-folder-by-location): Ditto.
7974         (elmo-internal-msgdb-create): Ditto.
7975         (elmo-internal-delete-msgs): Ditto.
7976         (elmo-internal-read-msg): Ditto.
7977         (elmo-internal-folder-diff): New alias.
7978
7979         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7980         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7981         `elmo-msgdb-expand-path'.
7982         (elmo-imap4-list-folder-unread): Changed arguments.
7983         (elmo-imap4-list-folder-important): Ditto.
7984
7985         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7986         (elmo-filter-list-folder-important): Ditto.
7987         (elmo-filter-folder-diff): New function.
7988
7989         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7990
7991         * elmo-cache.el (elmo-cache-list-folder):
7992         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7993         (elmo-cache-copy-msgs): Ditto.
7994         (elmo-cache-folder-diff): New alias.
7995
7996         * elmo-archive.el (elmo-archive-list-folder-subr):
7997         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7998         (elmo-archive-get-archive-name): Ditto.
7999         (elmo-archive-create-file): Ditto.
8000         (elmo-archive-append-msg): Ditto.
8001         (elmo-archive-copy-msgs): Ditto.
8002         (elmo-archive-copy-msgs-froms): Ditto.
8003         (elmo-archive-get-msg-filename): Ditto.
8004         (elmo-archive-folder-diff): New alias.
8005
8006 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8007
8008         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8009         (elmo-pop3-stream-type-alist): New variable.
8010         (elmo-nntp-stream-type-alist): New variable.
8011
8012         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8013         (elmo-kill-buffer): Ditto.
8014         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8015         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8016         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8017         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8018         (elmo-imap4-get-spec): Take into account
8019         `elmo-imap4-stream-type-alist'.
8020
8021 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8022
8023         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8024         (elmo-nntp-list-folders-get-cache): Ditto.
8025
8026 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8027
8028         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8029         character before 'uid'.
8030
8031 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8032
8033         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8034
8035         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8036
8037         * elmo-util.el (elmo-number-set-member): New function.
8038         (elmo-number-set-append-list): Ditto.
8039         (elmo-number-set-append): Ditto.
8040
8041         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8042         Use `elmo-number-set-member'.
8043         (elmo-living-messages): Ditto.
8044         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8045         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8046
8047         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8048         (elmo-imap4-add-to-cont-list): Abolished.
8049         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8050         instead of elmo-imap4-add-to-cont-list.
8051
8052         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8053         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8054
8055         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8056
8057 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8058
8059         * elmo-util.el (elmo-condition-parse-search-value):
8060         Fixed date parsing.
8061
8062 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8063
8064         * elmo-util.el (elmo-condition-find-key-internal): New function.
8065         (elmo-condition-find-key): Ditto.
8066
8067         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8068         (elmo-msgdb-search-internal): Ditto.
8069         (elmo-msgdb-search): Ditto.
8070
8071 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8072
8073         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8074         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8075
8076         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8077         (elmo-nntp-search-primitive): Fixed problem when condition is
8078         'unmatch'.
8079
8080         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8081
8082         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8083         (elmo-nntp-xhdr-p): New macro.
8084         (elmo-nntp-set-xhdr): Ditto.
8085         (elmo-nntp-parse-xhdr-response): New function.
8086         (elmo-nntp-retrieve-field): Ditto.
8087         (elmo-nntp-search-primitive): Ditto.
8088         (elmo-nntp-search): Implemented.
8089
8090         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8091
8092         * elmo-archive.el (elmo-archive-search): Set all number list to
8093         `elmo-archive-field-condition-match'
8094
8095         * elmo-localdir.el (elmo-localdir-search): Likewise.
8096
8097         * elmo-maildir.el (elmo-maildir-search): Likewise.
8098
8099 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8100
8101         * elmo-msgdb.el (elmo-living-messages): New function.
8102         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8103         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8104         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8105         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8106         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8107         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8108         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8109         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8110         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8111         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8112         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8113
8114 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8115
8116         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8117
8118         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8119
8120         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8121
8122         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8123         arguments for `SEARCH' command.
8124         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8125         All other related portions are changed.
8126
8127         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8128
8129         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8130         (elmo-list-folder-unread): Rewrite.
8131         (elmo-list-folder-important): Ditto.
8132
8133         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8134         (elmo-condition-parse-error): New inline function.
8135         (elmo-read-search-condition): New function.
8136         (elmo-read-search-condition-internal): Ditto.
8137         (elmo-parse-search-condition): Rewrite.
8138         (elmo-condition-parse): New function.
8139         (elmo-condition-parse-or-expr): Ditto.
8140         (elmo-condition-parse-and-expr): Ditto.
8141         (elmo-condition-parse-primitive): Ditto.
8142         (elmo-condition-parse-search-value): Ditto.
8143         (elmo-buffer-field-primitive-condition-match): Ditto.
8144         (elmo-buffer-field-condition-match): Rewrite.
8145         (elmo-file-field-condition-match): Ditto.
8146
8147         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8148         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8149
8150         * elmo-internal.el (elmo-internal-search): Set `number' and
8151         `number-list' argument of `elmo-file-field-condition-match'.
8152
8153         * elmo-maildir.el (elmo-maildir-search): Ditto.
8154
8155         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8156         `msgdb' as argument instead of `mark-alist'.
8157         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8158         `overview'.
8159
8160         * elmo-multi.el: Likewise.
8161
8162         * elmo-pipe.el: Likewise.
8163
8164         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8165         (elmo-imap4-search-internal): Rewrite.
8166         (elmo-imap4-search): Ditto.
8167
8168         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8169         (elmo-filter-list-folder-unread): Ditto.
8170         (elmo-filter-list-folder-important): Ditto.
8171         (elmo-filter-search): Rewrite.
8172
8173         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8174         `number-list' argument of `elmo-file-field-condition-match'.
8175         (elmo-cache-search): Ditto.
8176
8177         * elmo-localdir.el: Likewise.
8178
8179         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8180         number-list and pass it to `elmo-buffer-field-condition-match'.
8181         (elmo-archive-field-condition-match): Pass `number-list' to
8182         `elmo-archive-field-condition-match'
8183
8184 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8185
8186         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8187         `listgroup'.
8188
8189         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8190         (elmo-folder-diff-async-callback-data): Ditto.
8191         (elmo-folder-diff-async): New function.
8192
8193         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8194         (elmo-network-session-cache-key): Use it as a prefix of the session
8195         name.
8196         (elmo-network-open-session): Ditto.
8197
8198         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8199         (elmo-imap4-status-callback-data): Ditto.
8200         (elmo-imap4-server-diff-async-callback): New variable.
8201         (elmo-imap4-server-diff-async-callback-data): Ditto.
8202         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8203         `elmo-imap4-status-callback-data'.
8204         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8205         `elmo-imap4-status-callback-data' as nil.
8206         (elmo-imap4-server-diff): Ditto.
8207         (elmo-imap4-server-diff-async-callback-1): New function.
8208         (elmo-imap4-server-diff-async): Ditto.
8209         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8210
8211 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8212
8213         * elmo-util.el (elmo-list-delete): Doc fix.
8214         (elmo-delete-lists): Abolish.
8215         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8216         instead of `elmo-delete-lists'.
8217
8218 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8219
8220         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8221         before `sort'.
8222
8223 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8224
8225         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8226         `elmo-imap4-literal-subr'.
8227         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8228         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8229
8230 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8231
8232         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8233         (elmo-archive-list-folder): Fix.
8234         (elmo-archive-max-of-folder): Fix.
8235
8236 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8237
8238         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8239          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8240         (elmo-localdir-append-msg): Ditto.
8241         (elmo-localdir-list-folder): Fix for `nonsort'.
8242         (elmo-localdir-list-folder-subr): Fix for `killed'.
8243         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8244         (elmo-maildir-list-folder-subr): Ditto.
8245         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8246         (elmo-archive-list-folder-subr): Ditto.
8247         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8248         (elmo-internal-list-folder-subr): Ditto.
8249
8250 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8251
8252         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8253
8254 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8255
8256         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8257
8258 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8259
8260         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8261         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8262
8263         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8264         before greeting.
8265         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8266         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8267
8268 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8269
8270         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8271
8272         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8273         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8274         before STORE command.
8275
8276 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8277
8278         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8279
8280         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8281         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8282         of `response'.
8283         (elmo-imap4-list-folders): Removed unused local variable.
8284         (elmo-network-initialize-session): Ditto.
8285         (elmo-imap4-delete-msg-by-id): Ditto.
8286         (elmo-imap4-parse-fetch): Ditto.
8287         (elmo-imap4-copy-msgs): Ditto.
8288         Use `dst-spec' instead of `dst-folder'.
8289         (elmo-network-authenticate-session): Check authenticate type `plain'.
8290
8291 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8292
8293         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8294         garbage checking.
8295         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8296         `elmo-imap4-response-value'.
8297         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8298
8299 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8300
8301         * elmo-imap4.el (elmo-imap4-send-command):
8302         Cause elmo-imap4-bye-error when current response is BYE.
8303         (elmo-imap4-arrival-filter): Changed greeting response value.
8304
8305         * elmo2.el (elmo-imap4-bye-error): Define.
8306
8307         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8308         (elmo-imap4-server-diff): Ditto.
8309         (elmo-imap4-response-bye-p): New macro.
8310         (elmo-imap4-response-error-text): Get text from BYE response.
8311         (elmo-imap4-read-response): Return if BYE response.
8312         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8313         (elmo-imap4-folder-exists-p): Ditto.
8314         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8315         (elmo-imap4-parse-bye): New function.
8316         (elmo-imap4-parse-response): Remove needless let.
8317         Call `elmo-imap4-parse-bye'.
8318
8319 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8320
8321         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8322         the mailbox does not exist.
8323         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8324
8325 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8326
8327         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8328
8329 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8330
8331         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8332
8333         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8334         (elmo-network-initialize-session-buffer): Defined.
8335
8336         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8337         Abolished.
8338         (mmelmo-imap4-get-mime-entity): Rewrite.
8339
8340         * elmo2.el (elmo-error): Capitalize error message.
8341
8342         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8343         (elmo-network-session-buffer): New macro.
8344         (elmo-network-open-session): Use it.
8345
8346         * elmo-imap4.el: Rewrite.
8347
8348 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8349
8350         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8351
8352 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8353
8354         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8355         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8356         (elmo-imap4-create-msgdb-from-overview-string): Use
8357         `elmo-msgdb-create-overview-from-buffer'.
8358
8359 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8360
8361         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8362         (elmo-imap4-default-hierarchy-delimiter): New variable.
8363         (elmo-imap4-list-folders): Use it.
8364
8365 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8366
8367         * elmo-net.el (elmo-network-open-session): Add user and
8368         stream-type for process-buffer name.
8369
8370         * elmo-pop3.el (elmo-network-initialize-session): Call
8371         buffer-disable-undo.
8372
8373         * elmo-imap4.el (elmo-network-initialize-session):
8374         Set current-buffer as an argument for `buffer-disable-undo'.
8375
8376         * elmo-pop3.el (elmo-network-close-session): Don't use
8377         `process-live-p'.
8378
8379         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8380         Set default as 'user.
8381
8382         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8383
8384         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8385         and `elmo-imap4-flush-connection'.
8386
8387         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8388         (elmo-pop3-get-spec): Assume auth as symbol.
8389         (elmo-open-network-stream): Moved to `elmo-net'.
8390
8391         * elmo-pop3.el (toplevel): Require 'elmo-net.
8392         Define `sasl-cram-md5' to silence byte compilier.
8393         (elmo-pop3-connection-cache) Abolished.
8394         (elmo-pop3-authenticator-alist) New variable.
8395         (elmo-pop3-session): Define.
8396         (elmo-pop3-connection-get-process): Abolished.
8397         (elmo-pop3-connection-get-buffer): Ditto.
8398         (elmo-pop3-close-connection): Ditto.
8399         (elmo-pop3-flush-connection): Ditto.
8400         (elmo-pop3-get-connection): Ditto.
8401         (elmo-pop3-get-session): New function.
8402         (Replacement for `elmo-pop3-get-connection').
8403         All other related modules are changed.
8404         (elmo-network-close-session): Define.
8405         (elmo-pop3-send-command): Abolished argument `buffer'.
8406         All other related modules are changed.
8407         (elmo-pop3-read-response): Likewise.
8408         (elmo-pop3-open-connection): Abolished.
8409         (elmo-pop3-auth-user): New function.
8410         (elmo-pop3-auth-apop): Ditto.
8411         (elmo-pop3-auth-cram-md5): Ditto.
8412         (elmo-pop3-auth-scram-md5): Ditto.
8413         (elmo-pop3-auth-digest-md5): Ditto.
8414         (elmo-network-initialize-session): Define.
8415         (elmo-network-authenticate-session): Ditto.
8416         (elmo-network-setup-session): Ditto.
8417
8418         * elmo-imap4.el (toplevel): Require 'elmo-net.
8419         (elmo-imap4-session): Define.
8420         (elmo-imap4-connection-cache): Abolished.
8421         (elmo-imap4-password-key): Ditto.
8422         (elmo-imap4-flush-connection): Ditto.
8423         (elmo-imap4-get-connection): Ditto.
8424         All other related modules are changed.
8425         (elmo-imap4-get-session): New function
8426         (Replacement for `elmo-imap4-get-connection').
8427         (elmo-imap4-read-response): Abolished argument `buffer'.
8428         All other related modules are changed.
8429         (elmo-imap4-send-command): Likewise.
8430         (elmo-imap4-select-folder): Abolished.
8431         All other related modules are changed.
8432         (elmo-imap4-select-mailbox): New function.
8433         (Replacement for `elmo-imap4-select-folder').
8434         (elmo-imap4-auth-login): Simplify.
8435         (Assume current buffer as process buffer)
8436         (elmo-imap4-auth-cram-md5): Ditto.
8437         (elmo-imap4-auth-digest-md5): Ditto.
8438         (elmo-imap4-login): Ditto.
8439         (elmo-imap4-open-connection): Abolished.
8440         (elmo-imap4-open-connection-1): Abolished.
8441         (elmo-network-initialize-sessoin): Define.
8442         (elmo-network-authenticate-session): Ditto.
8443         (elmo-network-setup-session): Ditto.
8444
8445         * elmo-net.el: New module.
8446
8447 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8448
8449         * elmo-util.el (elmo-define-error): New function.
8450
8451         * elmo2.el (elmo-error): Define.
8452         (elmo-open-error): Define.
8453         (elmo-authenticate-error): Define.
8454
8455         * elmo-imap4.el (elmo-imap4-error): Abolish.
8456         (elmo-imap4-error-type): Abolish.
8457         (elmo-imap4-error-process): Abolish.
8458         (elmo-imap4-error-message): Abolish
8459         (elmo-imap4-list-folders): Don't quote lambda.
8460         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8461         (elmo-imap4-parse-namespace): Ditto.
8462         (elmo-imap4-open-connection): Rewrite.
8463         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8464         (elmo-imap4-get-connection): Abolish local variable `result'.
8465
8466 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8467
8468         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8469         wrong-type-argument error when auth is nil.
8470
8471 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8472
8473         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8474         (elmo-default-nntp-stream-type): Ditto.
8475         (elmo-default-pop3-stream-type): Ditto.
8476         (elmo-network-stream-type-alist): Ditto.
8477         (elmo-default-imap4-ssl): Abolished.
8478         (elmo-default-nntp-ssl): Ditto.
8479         (elmo-default-pop3-ssl): Ditto.
8480
8481         * elmo-util.el: (toplevel): Removed needless requires.
8482         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8483         (elmo-open-network-stream): Open network stream according to
8484         the value of `elmo-network-stream-type-alist'.
8485         (elmo-get-network-stream-type): New function.
8486         (elmo-network-stream-type-spec-string): New macro.
8487         (elmo-network-stream-type-symbol): Ditto.
8488         (elmo-network-stream-type-function): Ditto.
8489
8490         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8491         network-stream-type. All other related portions are changed.
8492         (elmo-pop3-open-connection): Ditto.
8493
8494         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8495         network-stream-type. All other related portions are changed.
8496
8497         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8498         network-stream-type.All other related portions are changed.
8499         (elmo-imap4-error): New macro.
8500         (elmo-imap4-error-type): Ditto.
8501         (elmo-imap4-error-process): Ditto.
8502         (elmo-imap4-error-message): Ditto.
8503         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8504         (elmo-imap4-auth-cram-md5): Ditto.
8505         (elmo-imap4-auth-digest-md5): Ditto.
8506         (elmo-imap4-login): Ditto.
8507         (elmo-imap4-open-connection): Remove password entry if authentication
8508         was in vain.
8509         (elmo-imap4-user-at-host): Abolished.
8510         (elmo-imap4-password-key): New buffer local variable.
8511         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8512         using protocol, port, auth and stream-type.
8513
8514         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8515
8516 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8517
8518         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8519
8520         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8521
8522         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8523         (elmo-imap4-authenticator-alist): New variable.
8524         (elmo-imap4-open-connection-1): Rename from
8525         elmo-imap4-open-connection.
8526         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8527         only wraps elmo-imap4-open-connection-1.
8528         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8529         user-at-host.
8530         (elmo-imap4-auth-login): New function.
8531         (elmo-imap4-auth-cram-md5): New function.
8532         (elmo-imap4-auth-digest-md5): New function.
8533         (elmo-imap4-login): New function.
8534
8535 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8536
8537         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8538         function `error'.
8539
8540 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8541
8542         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8543
8544 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8545
8546         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8547
8548 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8549
8550         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8551         for server responses, quote `*' regardless of where it appears.
8552
8553 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8554
8555         * elmo-maildir.el (elmo-maildir-commit): New alias.
8556
8557 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8558
8559         * elmo-util.el (elmo-display-progress):
8560                 Use `progress-feedback-with-label'.
8561
8562 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8563
8564         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8565         (elmo-imap4-non-atom-char-regex): Ditto.
8566         (elmo-imap4-non-text-char-regex): Ditto.
8567         (elmo-imap4-literal-threshold): Ditto.
8568         (elmo-imap4-atom-p): New function.
8569         (elmo-imap4-quotable-p): Ditto.
8570         (elmo-imap4-nil): Ditto.
8571         (elmo-imap4-atom): Ditto.
8572         (elmo-imap4-quoted): Ditto.
8573         (elmo-imap4-literal-subr): Ditto.
8574         (elmo-imap4-literal): Ditto.
8575         (elmo-imap4-buffer-literal): Ditto.
8576         (elmo-imap4-string-subr): Ditto.
8577         (elmo-imap4-string): Ditto.
8578         (elmo-imap4-buffer-string): Ditto.
8579         (elmo-imap4-astring-subr): Ditto.
8580         (elmo-imap4-astring): Ditto.
8581         (elmo-imap4-buffer-astring): Ditto.
8582         (elmo-imap4-nstring): Ditto.
8583         (elmo-imap4-buffer-nstring): Ditto.
8584         (elmo-imap4-mailbox): New alias.
8585         (elmo-imap4-field-body): Ditto.
8586         (elmo-imap4-userid): Ditto.
8587         (elmo-imap4-password): Ditto.
8588         (elmo-imap4-format-quoted): New function.
8589         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8590         arguments and handle "atom", "quoted" and "literal" string here.
8591         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8592         `elmo-imap4-send-command'.
8593         (elmo-imap4-folder-exists-p): Likewise.
8594         (elmo-imap4-create-folder): Likewise.
8595         (elmo-imap4-delete-folder): Likewise.
8596         (elmo-imap4-rename-folder): Likewise.
8597         (elmo-imap4-max-of-folder): Likewise.
8598         (elmo-imap4-check-validity): Likewise.
8599         (elmo-imap4-sync-validity): Likewise.
8600         (elmo-imap4-server-diff): Likewise.
8601         (elmo-imap4-select-folder): Likewise.
8602         (elmo-imap4-copy-msgs): Likewise.
8603         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8604         (elmo-imap4-mark-set-on-msgs): Likewise.
8605         (elmo-imap4-read-part): Likewise.
8606         (elmo-imap4-read-msg): Likewise.
8607         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8608         `elmo-imap4-password' for `elmo-imap4-send-command'.
8609         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8610         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8611         `elmo-imap4-buffer-literal'.
8612         (elmo-imap4-append-msg): Likewise.
8613
8614         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8615         `delete' for removing dead connection from the connection cache.
8616         Move deletion of the process buffer after that.
8617         (elmo-imap4-list): Change `defsubst' to `defun'.
8618         (elmo-imap4-commit): Make error message verbose.
8619         (elmo-imap4-search): Ditto.
8620         (elmo-imap4-list): Ditto.
8621         (elmo-imap4-select-folder): Ditto.
8622         (elmo-imap4-copy-msgs): Ditto.
8623         (elmo-imap4-delete-msg-by-id): Ditto.
8624         (elmo-imap4-append-msg-by-id): Ditto.
8625         (elmo-imap4-append-msg): Ditto.
8626
8627 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8628
8629         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8630         when dired is used on XEmacs.
8631
8632 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8633
8634         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8635         instead of `append'.
8636         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8637         `elmo-plugged-p' directly.
8638         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8639         of `elmo-plugged-p' directly.
8640
8641         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8642         Eliminate unused variable.  Use `memq' for checking a process status.
8643         Use `cons' instead of `append' for updating the connection cache.
8644         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8645         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8646
8647 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8648
8649         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8650         `elmo-imap4-read-point' exactly.
8651
8652         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8653         the local variable `folder' to `mailbox'.
8654         Rename the argument `fld' to `folder'.
8655
8656 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8657
8658         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8659         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8660
8661 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8662
8663         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8664         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8665         (elmo-pop3-uidl-number-hash): Ditto.
8666         (elmo-pop3-size-hash): Ditto.
8667         (elmo-pop3-uidl-done): Ditto.
8668         (elmo-pop3-list-done): Ditto.
8669         (elmo-pop3-connection-get-process): New defmacro.
8670         (elmo-pop3-connection-get-buffer): Ditto.
8671         (elmo-pop3-close-connection): Delete buffer and process.
8672         (elmo-pop3-flush-connection): Don't delete buffer and process.
8673         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8674         Setup UIDL and size hash.
8675         (elmo-pop3-send-command-no-erase): Deleted
8676         (elmo-pop3-send-command): Added optional argument `no-erase'.
8677         (elmo-pop3-parse-uidl-response): New function.
8678         (elmo-pop3-parse-list-response): Set size hash.
8679         (elmo-pop3-list-location): New function.
8680         (elmo-pop3-list-by-uidl-subr): Ditto.
8681         (elmo-pop3-list-by-list): Ditto.
8682         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8683         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8684         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8685         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8686         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8687         Use uidl.
8688         (elmo-pop3-uidl-to-number): New function.
8689         (elmo-pop3-number-to-uidl): Ditto.
8690         (elmo-pop3-number-to-size): Ditto.
8691         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8692         Set number by use of uidl.
8693         (elmo-pop3-msgdb-create-message): Likewise.
8694         Set size, loc-alist in msgdb.
8695         (elmo-pop3-read-msg): Set number by use of uidl.
8696         Added optional argument `msgdb'.
8697         (elmo-pop3-delete-msg): Ditto.
8698         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8699         (elmo-pop3-commit): Close connection.
8700
8701         * elmo-pipe.el (elmo-pipe-max-of-folder):
8702         Bind `elmo-pop3-use-uidl' as nil.
8703         (elmo-pipe-drain): Ditto.
8704         Call `elmo-commit'.
8705
8706         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8707         (elmo-msgdb-overview-entity-set-size): New defsubst.
8708
8709 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8710
8711         * elmo-vars.el (elmo-use-killed-list): New variable
8712         (Renamed from `elmo-nntp-use-killed-list').
8713         (elmo-nntp-use-killed-list): Eliminated.
8714
8715         * elmo-msgdb.el (elmo-msgdb-expand-path):
8716         Changed expanding msgdb path for elmo-multi.
8717
8718         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8719         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8720         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8721         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8722         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8723         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8724         (toplevel): Deleted time-stamp line.
8725
8726         * elmo2.el (elmo-clear-killed ): Defined as function
8727         (Abolished defining as a backend function).
8728         All other related modules are changed.
8729
8730 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8731
8732         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8733
8734 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8735
8736         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8737
8738 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8739
8740         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8741
8742 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8743
8744         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8745         asynchronous folder check.
8746
8747         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8748
8749         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8750         `elmo-nntp-use-killed-list'.
8751         (elmo-nntp-list-folder): Use killed list.
8752         (elmo-nntp-max-of-folder): Ditto.
8753         (elmo-nntp-msgdb-create): Set killed list.
8754
8755         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8756
8757         * elmo2.el (elmo-clear-killed): New backend function.
8758         All other related modules are changed.
8759
8760 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8761
8762         * elmo-util.el (elmo-imap4-spec-folder): Use
8763         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8764         All callers changed.
8765
8766 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8767
8768         * mmelmo-2.el (initialize-instance):
8769         Use `mime-buffer-entity-buffer-internal' instead of
8770         `mime-entity-buffer'.
8771
8772         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8773         (mime-entity-body): Implemented.
8774         (mime-goto-header-start-point): Deleted.
8775         (mime-goto-body-end-point): Ditto.
8776         (mime-entity-point-min): Ditto.
8777         (mime-entity-point-max): Ditto.
8778         (mime-entity-children): Ditto.
8779         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8780         instead of `mime-entity-buffer'.
8781         (mime-entity-header-buffer): Ditto.
8782         (mime-entity-body-buffer): Ditto.
8783         (mime-write-entity-content): Ditto.
8784
8785         * pldap.el (ldap-static-if): New macro.
8786         (toplevel): Use it instead of `static-if'.
8787
8788 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8789
8790         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8791         included in `attrs' argument.
8792
8793 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8794
8795         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8796
8797         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8798         (ldap-ldif-safe-init-char-regexp): Ditto.
8799         (ldap-ldif-safe-string-regexp): Ditto.
8800         (ldap/ldif-safe-string-p): New macro.
8801         (ldap/ldif-insert-field): Ditto.
8802         (ldap-modify): Use it.
8803         (ldap-add): Ditto.
8804         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8805         (ldap-decode-attribute): Decode only when `attr' is consp.
8806         (ldap-delete): Bind `ret'.
8807         (toplevel): Require 'cl at compile time.
8808         Removed (require 'poe) and (require 'std11).
8809         (pldap-version): Eliminated.
8810         (ldap-search-basic): Removed auth and dn binding.
8811         (ldap-ldif-field-name-regexp): New constant.
8812         (ldap-ldif-field-head-regexp): Ditto.
8813         (ldap-ldif-next-field-head-regexp): Ditto.
8814         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8815         (ldap/field-end): New function.
8816         (ldap/field-body): Use it.
8817         (ldap/collect-field): Ditto.
8818         (ldap-search-basic): Use `ldap/field-body'.
8819
8820 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8821
8822         * pldap.el (ldap-default-attribute-encoder): New user option.
8823         (ldap/field-body): Decode base64 string.
8824         (ldap/collect-field): Ditto.
8825         (ldap-encode-attribute): New function.
8826         (ldap-add-entries): Use it.
8827         (ldap-modify-entries): Ditto.
8828         (ldap-search-entries): Enclosed decoding function with
8829         `with-temp-buffer' and set as unibyte.
8830         (ldap-search-basic): Set process buffer as unibyte.
8831
8832         * elmo-util.el (elmo-folder-identical-system-p):
8833         Eliminated name space checking.
8834
8835         * pldap.el: New module.
8836         toplevel: Changed condition to detect built-in ldap feature.
8837         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8838         (ldap-add): Added error handling.
8839         (ldap-modify): Ditto.
8840         (ldap-delete): Ditto.
8841
8842 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8843
8844         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8845         Initialize local variables with `let'.  Inline a temporary
8846         variable for the progress percentage.  Sort `setq' to reduce
8847         function call in the while-loop.
8848
8849         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8850         into the conditional branch.
8851
8852 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8853
8854         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8855         Move a conditional out of the while-loop.
8856
8857 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8858
8859         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8860         elmo-msgdb-overview-get-entity-by-number.
8861         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8862         throw.
8863
8864 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8865
8866         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8867         the local variable for a packed number self descriptively.
8868
8869 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8870
8871         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8872         * elmo-localdir.el (elmo-localdir-pack-number): Use
8873         `elmo-msgdb-overview-get-entity' instead of
8874         `elmo-msgdb-overview-get-entity-by-number'.
8875         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8876         (elmo-msgdb-search-overview-entity): Removed.
8877         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8878         by message-id or number.
8879         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8880         instead of `elmo-msgdb-overview-get-entity-by-number'.
8881
8882 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8883
8884         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8885         non-nil, use hash table for overview.
8886         (elmo-hash-maximum-size): New variable.
8887         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8888         (elmo-msgdb-make-overview-hashtb): New function.
8889         (elmo-msgdb-clear-overview-hashtb): New function.
8890         (elmo-clear-hash-val): New macro.
8891         All other related modules are changed.
8892
8893 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8894
8895         * elmo2.el (elmo-move-msgs): If there's other message with
8896         same message-id, don't use cache.
8897
8898 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8899
8900         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8901         number is already packed.
8902
8903 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8904
8905         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8906
8907 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8908
8909         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8910         All other related modules are changed.
8911
8912 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8913
8914         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8915         of refiling failure on Maildir.
8916
8917 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8918
8919         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8920         decoded mime-charset with cache.
8921         (elmo-msgdb-overview-entity-get-from): Ditto.
8922         (elmo-msgdb-overview-entity-get-subject): Ditto.
8923         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8924
8925 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8926
8927         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8928         (elmo-remove-passwd): Fill password with 0 before erase.
8929         * elmo-vars.el (elmo-passwd-life-time): New variable.
8930
8931 \f
8932 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8933
8934         * elmo-cache.el (elmo-buffer-cache-add):
8935         Set message cache buffer as unibyte.
8936
8937 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8938
8939         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8940         become nil.
8941
8942 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8943
8944         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8945         when display is finished.
8946         (elmo-nntp-msgdb-create): Ditto.
8947         (elmo-nntp-groups-read-response): Ditto.
8948         (elmo-nntp-retrieve-headers): Ditto.
8949         (elmo-nntp-msgdb-create-message): Ditto.
8950         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8951         (elmo-pop3-msgdb-create-message): Ditto.
8952
8953 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8954
8955         * elmo-maildir.el (elmo-maildir-msgdb-create):
8956         Use `elmo-msgdb-sort-by-date'.
8957
8958 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8959
8960         * elmo2.el (elmo-read-msg-no-cache):
8961         Eliminated arguments after `outbuf'.
8962         Don't use cache even if it exists.
8963         (elmo-read-msg): Don't pass arguments after `outbuf' to
8964         `elmo-read-msg-no-cache'.
8965
8966 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8967
8968         * elmo-archive.el (elmo-archive-list-folders):
8969         Use `file-name-directory' if base folder does not exist.
8970
8971 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8972
8973         * elmo-archive.el (elmo-archive-list-folders): Don't use
8974         `file-name-directory'.
8975
8976 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8977
8978         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8979         If `force' is non-nil, try flushing all operation queues.
8980
8981 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8982
8983         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8984         as-binary-process.
8985
8986 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8987
8988         * elmo-util.el (elmo-display-progress): Fixed.
8989
8990 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8991
8992         * elmo-util.el (elmo-display-progress): New function.
8993         All other related modules are changed.