* Version number is increased to 2.15.4.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-version.el (elmo-version): Up to 2.15.4.
4
5 2006-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6
7         * elmo-vars.el (elmo-use-hardlink): New user option.
8
9         * elmo-util.el (elmo-add-name-to-file): Switch implementations by
10         `elmo-use-hardlink'.
11
12         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Keep the
13         killed-list.
14         (elmo-pipe-drain): Use `elmo-folder-open' and `elmo-folder-close'
15         instead of `*-internal'. Use `elmo-with-progress-display'.
16
17 2006-09-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
18
19         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages): Use
20         `elmo-spam-process-messages-as-mbox'.
21
22         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
23
24 2006-08-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
25
26         * elsp-bsfilter.el (elsp-bsfilter-list-spam-files): Fix the
27         argument BUFFER of `call-process'.
28
29 2006-08-27  Yoichi NAKAYAMA  <yoichi@geiin.org>
30
31         * elsp-bsfilter.el (elsp-bsfilter-call-bsfilter): Remove nil from
32         args.
33         (elsp-bsfilter-list-spam-files): Ditto.
34
35 2006-08-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
36
37         * elsp-bsfilter.el (elmo-spam-bsfilter-max-files-per-process)
38         (elmo-spam-bsfilter-max-messages-per-process): New use option.
39         (elmo-spam-bsfilter-debug): Fix a group.
40         (elsp-bsfilter-call-bsfilter): Don't use `delq' and add option
41         `--homedir'.
42         (elmo-spam-buffer-spam-p): Don't specify `--homedir' option.
43         (elsp-bsfilter-list-spam-files): New function.
44         (elmo-spam-list-spam-messages): Define.
45         (elsp-bsfilter-register-buffer): Add an optional argument `mbox'.
46         (elmo-spam-bsfilter-register-messages): New function.
47         (elmo-spam-register-spam-messages): Define.
48         (elmo-spam-register-good-messages): Ditto.
49
50         * elmo-spam.el (elmo-spam-process-messages-as-mbox): New function.
51
52         * elmo-util.el (elmo-flatten): Use `append' and `listp' instead of
53         `nconc' and `consp'.
54
55 2006-08-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
56
57         * elmo-map.el (elmo-map-folder-update-locations): Rewrite with
58         hash table to test whether a location is exists.
59
60 2006-08-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
61
62         * elmo-archive.el (elmo-folder-append-messages): Delete temp-dir
63         even if some error occurred.
64
65         * elmo-archive.el (elmo-archive-folder-append-buffer): Remove
66         meaningless unwind-protect.
67
68         * elmo-maildir.el (elmo-folder-message-make-temp-files): Respect
69         start-number correctly.
70         * elmo-search.el (elmo-folder-message-make-temp-files): Ditto.
71         * elmo-file.el (elmo-folder-message-make-temp-files): Ditto.
72
73 2006-08-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
74
75         * elmo-flag.el (elmo-flag-folder-set-minfo): New function.
76         (elmo-folder-initialize): Use it.
77         (elmo-global-flag-replace-referrer): New function.
78
79         * elmo.el (toplevel): Added autoload setting for
80         `elmo-global-flag-replace-referrer'.
81         (elmo-folder-rename): Rewrite the last change use
82         `elmo-global-flag-replace-referrer'.
83
84         * elmo-pipe.el (elmo-folder-rename): Call
85         `elmo-global-flag-replace-referrer'.
86
87 2006-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
88
89         * elmo.el (elmo-folder-rename): Set meta data for global flags
90         follow the rename.
91
92 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
93
94         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
95         as 'not-loaded.
96         (elmo-folder-close): Ditto.
97         (elmo-filter-folder-number-list-loaded-p): New function.
98         (elmo-filter-folder-number-list): Check whether loaded or not.
99         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
100         of `elmo-filter-folder-number-list-internal'.
101         (elmo-folder-delete-messages): Ditto.
102         (elmo-folder-length): Check whether number-list is loaded or not.
103
104 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
105
106         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
107         field `real field' into each element of list.
108         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
109         (elmo-msgdb-message-entity-field): Ditto.
110         (modb-entity-ml-info-real-fields): New function.
111
112         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
113
114         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
115         `elmo-msgdb-extra-fields'.
116
117 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
118
119         * elmo-util.el (elmo-passwd-alist-load): Move point to min
120         position before read.
121
122 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
123
124         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
125         (elmo-global-flags-initialize): Ditto.
126
127 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
128
129         * elmo-archive.el (toplevel): Don't require emu, std11
130         and elmo-localdir.
131
132         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
133         definition.
134
135 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
136
137         * elmo.el (elmo-folder-confirm-appends): Display folder name.
138
139 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
140
141         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
142         literals.
143
144 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
145
146         * elmo-maildir.el (elmo-maildir-list-location): Reduce
147         `elmo-get-last-modification-time' call.
148
149 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
150
151         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
152         expression.
153         (elmo-maildir-set-mark): Ditto.
154         (elmo-maildir-delete-mark): Ditto.
155
156 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
157
158         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
159         optional argument `separators'.
160
161 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
162
163         * elmo.el (cache-changed): Abolish.
164         (status-changed): New signal.
165         (elmo-message-killed-p): New generic function and define for
166         elmo-folder.
167         (elmo-folder-recover-messages): Ditto.
168         (elmo-message-set-cached): Emit signal `status-changed' instead of
169         `cache-changed'.
170         (elmo-message-status): New macro.
171         (elmo-message-status-folder): Ditto.
172         (elmo-message-status-number): Ditto.
173         (elmo-message-status-set-flags): Ditto.
174         (elmo-message-status-set-killed): Ditto.
175         (elmo-message-status-flags): New function.
176         (elmo-message-status-cached-p): Ditto.
177         (elmo-message-status-killed-p): Ditto.
178
179         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
180         `status-changed' instead of `cache-changed'.
181         (elmo-folder-recover-messages): Define.
182         (elmo-message-killed-p): Ditto.
183
184         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
185         `status-changed' instead of `cache-changed'.
186
187         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
188         (elmo-message-killed-p): Define.
189         (elmo-folder-recover-messages): Ditto.
190
191         * elmo-version.el (elmo-version): Up to 2.15.3.
192
193 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
194
195         * elmo-signal.el (elmo-signal-bindings): Use cons to append
196         element into list.
197         (elmo-define-signal-handler): Add docstring.
198         (elmo-define-signal-filter): Ditto.
199
200         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
201
202 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
203
204         * elmo-util.el (elmo-flatten): Don't use recursive call.
205
206         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
207         assignment.
208         (elmo-folder-message-make-temp-files): Use `number-to-string'
209         instead of `int-to-string'.
210
211 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
212
213         * elmo-search.el (elmo-folder-delete-messages): Define.
214
215 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
216
217         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
218         customization type.
219         (elmo-mailing-list-count-spec-list): Ditto.
220
221         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
222         for `list-id'.
223
224 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
225
226         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
227         handling.
228
229 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
230
231         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
232         (elmo-mailing-list-count-spec-list): Ditto.
233
234         * elmo-util.el (elmo-map-until-success): New function.
235         (elmo-string-match-substring): Ditto.
236         (elmo-find-list-match-value): Ditto.
237
238         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
239         Removed.
240         (modb-entity-extract-ml-info-from-subject): Ditto.
241         (modb-entity-extract-ml-info-from-return-path): Ditto.
242         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
243         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
244         (modb-entity-extract-ml-info-from-mailman): Ditto.
245         (modb-entity-extract-mailing-list-info-functions): Ditto.
246         (modb-entity-extract-mailing-list-info): Rewrite with
247         `elmo-find-list-match-value'.
248
249 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
250
251         * elmo-net.el (elmo-network-session-retry-count): New user option.
252         (elmo-network-session-buffer-name): New internal function.
253         (elmo-network-session-buffer-create): Ditto.
254         (elmo-network-open-session): Retry open network session
255         `elmo-network-session-retry-count' times.
256
257 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
258
259         * elmo-util.el (elmo-list-filter): Rewritten.
260
261 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
262
263         * elmo-util.el (elmo-string-member): Allow symbol element in list.
264
265 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
266
267         * elmo-search.el (elmo-make-search-engine): Use prefix
268         `elmo-search-' for require symbol instead of `else-'.
269         (elmo-search-engine-extprog): New class.
270         (elmo-search-engine-do-search): Remove nil from argument
271         list. Added argument pattern to evaluate element as function.
272         (elmo-search-engine-local-file): Derived from
273         `elmo-search-engine-extprog'.
274         (elmo-search-engine-create-message-entity): Check existance of file.
275         (elmo-search-engine-fetch-message): Ditto.
276         (elmo-search-namazu-index): Follow the API change.
277         (elmo-search-grep-target): Ditto.
278
279 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
280
281         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
282         characters of working buffer.
283
284         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
285         Does not bind `default-mime-charset'.
286         (elmo-msgdb-create-message-entity-from-buffer): Removed
287         unnecessary local bind.
288
289         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
290         function.
291         (modb-entity-extract-mailing-list-info-functions): Added it.
292
293 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
294
295         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
296         when number and message-id are non-nil.
297
298         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
299
300         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
301         conditional steatment.
302         (elmo-pop3-auth-apop): Likewise.
303         (elmo-network-authenticate-session): Likewise.
304
305 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
306
307         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
308         symbol `fill-column'.
309         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
310         decode field value.
311
312         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
313         (elmo-decoded-field-body): Ditto.
314
315 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
316
317         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
318         `tokens' to `params'.
319
320 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
321
322         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
323         working buffer.
324
325 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
326
327         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
328         decide index.
329
330 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
331
332         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
333         Set default value as nil.
334         (toplevel): Register search engines by
335         `elmo-search-register-engine' if there are not defined.
336
337         * elmo.el (autoload): Added autoload setting for
338         `elmo-search-register-engine'.
339
340 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
341
342         * elmo.el (toplevel): `[' is redefined as the prefix of the search
343         folder instead of nmz folder.
344         (elmo-nmz-default-index-path): Added obsolete variable setting.
345         (elmo-nmz-index-alias-alist): Ditto.
346         (elmo-nmz-use-drive-letter): Ditto.
347
348         * elmo-search.el (elmo-search-register-engine): New function.
349
350         * elmo-nmz.el: Removed.
351
352         * elmo-version.el (elmo-version): Up to 2.15.2.
353
354 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
355
356         * elmo-search.el: New file.
357
358 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
359
360         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
361         condition `larger' and `smaller'.
362
363 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
364
365         * elmo-util.el (elmo-safe-filename): Rewrite to replace
366         `"' (double quote) into "_Q_".
367
368 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
369
370         * elmo-net.el (elmo-net-quote-chars): Abolish.
371         (elmo-net-format-quoted): Ditto.
372
373 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
374
375         * elmo.el (elmo-get-folder-function): New variable.
376         (elmo-get-folder): New function.
377         (elmo-folder-rename): Call `elmo-make-folder' with specified
378         mime-charset.
379
380         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
381         `elmo-make-folder'.
382         (elmo-split-subr): Ditto.
383
384         * elmo-multi.el (elmo-folder-initialize): Ditto.
385
386         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
387
388         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
389         (elmo-flag-get-folder): Ditto.
390
391         * elmo-filter.el (elmo-folder-initialize): Ditto.
392
393         * elmo-access.el (elmo-folder-initialize): Ditto.
394         (elmo-access-folder-update-children): Ditto.
395
396         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
397         (elmo-dop-queue-flush): Ditto.
398         (elmo-folder-append-buffer-dop-delayed): Ditto.
399         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
400         mime-charset.
401
402         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
403         instead of `elmo-make-folder'.
404         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
405         destination folder instead of send `elmo-folder-rename-internal'.
406
407         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
408         slot of subfolder instead of create it.
409
410 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
411
412         * elmo-util.el (elmo-collect-separators): New function.
413         (elmo-collect-separators-internal): Ditto.
414         (elmo-collect-trail-separators): Ditto.
415         (elmo-parse-separated-tokens): Ditto.
416         (elmo-parse-separated-tokens-internal): Ditto.
417         (elmo-quote-syntactical-element): Ditto.
418
419         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
420         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
421
422         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
423         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
424         (elmo-nntp-folder-list-subfolders): Quote a user name.
425
426         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
427         (elmo-net-parse-network): Abolish.
428         (elmo-net-folder-set-parameters): New function.
429         (elmo-folder-initialize): Follow the above change.
430
431         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
432         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
433         (elmo-folder-list-subfolders): Use
434         `elmo-quote-syntactical-element' instead of
435         `elmo-net-format-quoted' to quote mailbox and user name.
436
437 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
438
439         * elmo-util.el (elmo-token-valid-p): New function.
440         (elmo-parse-token): Add optional argument `requirement'.
441         (elmo-parse-prefixed-element): Likewise.
442
443         * elmo-net.el (elmo-net-quote-chars): Renamed from
444         `elmo-net-quote-chars-regexp'.
445         (elmo-net-format-quoted): Add optional argument `extra-chars'.
446
447         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
448         by info document. Check token `uidl' is started an alphabet.
449
450         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
451         by info document. Check token `user' is started an alphabet.
452
453         * elmo-imap4.el (elmo-folder-initialize): Ditto.
454         (elmo-folder-list-subfolders): Quote user.
455
456 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
457
458         * elmo-util.el (elmo-quoted-specials-list): New constant.
459         (elmo-quoted-token): New function.
460
461         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
462         (elmo-net-format-quoted): New function.
463         (elmo-net-parse-network): Ditto.
464         (elmo-folder-initialize): Use it.
465
466         * elmo-nntp.el (elmo-folder-initialize): Use
467         `elmo-net-parse-network' to parse network specification instead of
468         `elmo-folder-initialize#elmo-net'.
469
470         * elmo-pop3.el (elmo-folder-initialize): Ditto.
471
472         * elmo-imap4.el (elmo-folder-initialize): Ditto.
473         (elmo-folder-list-subfolders): Quote folder name by
474         `elmo-net-format-quoted'.
475
476 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
477
478         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
479         (elmo-folder-search): Use it.
480
481 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
482
483         * modb-standard.el (modb-standard-loaded-message-id): Use
484         `elmo-msgdb-message-entity-field'.
485
486 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
487
488         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
489         without filename.
490
491 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
492
493         * elmo-util.el (elmo-set-auto-coding): New function.
494         (elmo-object-load): Use it.
495
496 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
497
498         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
499         (elmo-time<): Define as alias of `elmo-time-less-p'.
500         (elmo-time-to-datevec): New function.
501
502         * elmo-date.el (elmo-time-to-days): New function.
503
504 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
505
506         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
507         is not cons cell.
508
509 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
510
511         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
512         parenthesis.
513
514         * elmo-util.el (elmo-map-recursive): New function.
515
516         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
517         (modb-entity-encode-string-recursive): Ditto.
518
519 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
520
521         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
522         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
523         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
524         compare sequence number when last modified time is nil.
525
526 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
527
528         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
529
530         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
531
532 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
533
534         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
535         modification time of the file.
536
537 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
538
539         * elmo-util.el (elmo-condition-optimize): Discriminated against
540         preserved fields, extra fields and the other weight.
541
542 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
543
544         * modb-entity.el (initialize-instance): Define.
545         (modb-entity-handler-mime-charset): New internal function.
546         (modb-standard-entity-set-field): Use it.
547         (elmo-msgdb-message-entity-field): Ditto.
548         (elmo-msgdb-message-entity-field): Ditto.
549
550         * modb.el (elmo-msgdb-match-condition): Rewrite with
551         `elmo-condition-match'.
552         (elmo-msgdb-match-condition-primitive): New function.
553
554         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
555         arguments `flags' and `numbers'.
556         (elmo-msgdb-match-condition-primitive): Abolished (merged to
557         `elmo-msgdb-message-match-condition').
558         (modb-buffer-entity-handler): New class.
559
560         * elmo.el (elmo-folder-search): Optimize condition to use
561         `elmo-condition-optimize'.
562         (elmo-message-buffer-match-condition): New function.
563         (elmo-message-match-condition): Use
564         `elmo-message-buffer-match-condition' instead of
565         `elmo-buffer-field-condition-match'.
566
567         * elmo-util.el (elmo-condition-match): New function.
568         (elmo-condition-optimize): Ditto.
569         (elmo-buffer-field-primitive-condition-match): Abolish.
570         (elmo-buffer-field-condition-match): Ditto.
571
572         * elmo-archive.el (elmo-archive-field-condition-match): Use
573         `elmo-message-buffer-match-condition' instead of
574         `elmo-buffer-field-condition-match'.
575
576 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
577
578         * elmo-flag.el (elmo-global-flags-initialize): Check the
579         existence of the flag directory.
580
581 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
582
583         * elmo-access.el (elmo-folder-initialize): Call
584         `elmo-multi-connect-signals'.
585
586         * elmo-pipe.el (elmo-folder-close): Define.
587
588         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
589         children folders.
590
591         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
592         with target folder.
593
594         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
595         `number'.
596
597         * elmo-multi.el (elmo-message-entity): Don't use return value of
598         `elmo-message-entity-set-number'.
599
600 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
601
602         * modb.el (modb-generic): Added slot `mime-charset'.
603
604         * modb-standard.el (modb-standard): Added slot `overview-handler'.
605         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
606         and `modb-entity-handler-dump-parameters'.
607         (modb-standard-default-entity-handler): Abolish.
608         (elmo-msgdb-message-entity-handler): Save created handler by
609         instance slot.
610
611         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
612         (modb-entity-handler-list-parameters): New method.
613         (modb-entity-handler-equal-p): New function.
614         (modb-entity-handler-dump-parameters): Ditto.
615         (modb-entity-parse-address-string): Encode return value.
616         (modb-entity-make-address-string): Decode argument value.
617         (modb-entity-decode-string-recursive): New function.
618         (modb-entity-encode-string-recursive): Ditto.
619         (modb-standard-entity-normalizer): Set to encode field value.
620         (modb-standard-entity-specializer): Follow the above change.
621         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
622         mime-charset of handler.
623         (elmo-msgdb-message-entity-field): Ditto.
624         (elmo-msgdb-copy-message-entity): Fixed reference to internal
625         structure.
626         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
627
628         * elmo.el (elmo-folder): Added slot `mime-charset'.
629         (elmo-make-folder): Added argument `mime-charset'.
630         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
631         `mime-charest'.
632
633         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
634         (elmo-make-msgdb): Likewise.
635
636         * elmo-internal.el (elmo-internal-folder-initialize): Call
637         `luna-make-entity' with :mime-charset parameter.
638
639 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
640
641         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
642         encoded words in `from' and `subject' field.
643
644 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
645
646         * modb.el (elmo-msgdb-message-field): Add argument `type'.
647         (elmo-msgdb-match-condition): Get handler from entity instead of
648         msgdb.
649
650         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
651         (modb-standard-load-entity): Treat new file format.
652         (modb-standard-save-entity-1): Save as new file format.
653         (modb-standard-save-entity): Split messages into section here.
654         (elmo-msgdb-message-field): Follow the API change.
655         (modb-standard-default-entity-handler): New internal variable.
656         (elmo-msgdb-message-entity-handler): Define.
657
658         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
659         to `elmo-vars.el'.
660         (modb-entity-field-extractor-alist): New user option.
661         (elmo-msgdb-message-entity-field): Removed argument `decode' and
662         added argument `type'.
663         (elmo-msgdb-copy-message-entity): Add optional argument
664         `make-handler'.
665         (modb-set-field-converter): New function.
666         (modb-convert-field-value): Ditto.
667         (modb-entity-string-decoder): Ditto.
668         (modb-entity-string-encoder): Ditto.
669         (modb-entity-parse-date-string): Ditto.
670         (modb-entity-make-date-string): Ditto.
671         (modb-entity-mime-decoder): Ditto.
672         (modb-entity-mime-encoder): Ditto.
673         (modb-entity-address-list-decoder): Ditto.
674         (modb-entity-address-list-encoder): Ditto.
675         (modb-entity-parse-address-string): Ditto.
676         (modb-entity-make-address-string): Ditto.
677         (modb-entity-create-field-indices): Ditto.
678         (modb-legacy-entity-field-slots): New constant.
679         (modb-legacy-entity-field-indices): Ditto.
680         (modb-legacy-entity-normalizer): New variable.
681         (modb-legacy-entity-specializer): Ditto.
682         (modb-legacy-entity-field-index): New macro.
683         (modb-legacy-entity-set-field): New function.
684         (modb-legacy-make-message-entity): Rewrite.
685         (elmo-msgdb-create-message-entity-from-buffer): Use
686         `elmo-msgdb-get-references-from-buffer'. Use
687         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
688         Use `modb-legacy-entity-set-field' instead of
689         `elmo-msgdb-message-entity-set-field'.
690         (elmo-msgdb-message-entity-field): Rewrite.
691         (elmo-msgdb-message-entity-set-field): Ditto.
692         (elmo-msgdb-copy-message-entity): Make new entity by
693         `make-handler' if it specified.
694         (elmo-msgdb-message-match-condition): Define a method of
695         `modb-entity-handler' and follow the API change.
696         (modb-standard-entity-handler): New class.
697         (modb-entity-extract-ml-info-from-x-sequence): New function.
698         (modb-entity-extract-ml-info-from-subject): Ditto.
699         (modb-entity-extract-ml-info-from-return-path): Ditto.
700         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
701         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
702         (modb-entity-extract-mailing-list-info): Ditto.
703         (modb-entity-extract-mailing-list-info-functions): New variable.
704
705         * elmo.el (elmo-message-field): Add optional argument `type'.
706
707         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
708         from `modb-entity.el'.
709
710         * elmo-util.el (elmo-object-load): Decode by coding-system from
711         `set-auto-coding-function'.
712         (elmo-object-save): Use `detect-mime-charset-region' and add
713         coding cookie if encode.
714         (elmo-msgdb-get-references-from-buffer): New function.
715         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
716
717         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
718
719         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
720         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
721         instead of `shimbun-make-header' and follow the API change.
722         (elmo-shimbun-update-overview): Follow the API change.
723         (elmo-map-folder-list-message-locations): Ditto.
724
725         * elmo-pipe.el (elmo-message-field): Ditto.
726
727         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
728         Ditto.
729
730         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
731
732         * elmo-multi.el (elmo-message-field): Ditto.
733
734         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
735         (elmo-msgdb-sort-by-date): Ditto.
736         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
737         `elmo-message-entity-field'.
738         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
739         change.
740         (elmo-msgdb-overview-entity-get-from): Ditto.
741         (elmo-msgdb-overview-entity-get-subject): Ditto.
742         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
743         (elmo-msgdb-overview-entity-get-date): Ditto.
744         (elmo-msgdb-overview-entity-get-to): Ditto.
745         (elmo-msgdb-overview-entity-get-cc): Ditto.
746
747         * elmo-mime.el (elmo-message-mime-entity): Ditto.
748         (elmo-mime-collect-message/partial-pieces): Ditto.
749
750         * elmo-filter.el (elmo-message-field): Ditto.
751
752         * elmo-date.el (elmo-datevec-to-time): New function.
753         (elmo-time-parse-date-string): Ditto.
754         (elmo-time-make-date-string): Ditto.
755         (elmo-time<): Ditto.
756
757         * elmo-version.el (elmo-version): Up to 2.15.1.
758
759 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
760
761         * elmo-flag.el (elmo-global-flags-initialize): Don't include
762         member of elmo-local-flags.
763
764 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
765
766         * elmo-version.el (elmo-version): Up to 2.15.0.
767
768 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
769
770         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
771         `ignore-msgdb' is non-nil.
772
773 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
774
775         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
776         (elmo-condition-in-msgdb-p): Ditto.
777         (elmo-file-field-primitive-condition-match): Ditto.
778         (elmo-file-field-condition-match): Ditto.
779
780         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
781
782 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
783
784         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
785         subdirectories here.
786         (elmo-global-flags-initialize): New function.
787
788         * elmo.el (toplevel): Added autoload setting for
789         `elmo-global-flags-initialize'.
790
791 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
792
793         * elmo.el (message-number-changed): Define new signal.
794         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
795         message-number-changed signal.
796         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
797         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
798         Respect `elmo-pack-number-check-strict'.
799
800 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
801
802         * elmo-signal.el (elmo-connect-signal): Document.
803         (elmo-emit-signal): Ditto.
804         (elmo-emit-signal): It should pass source argument to filter and
805         handler, not slot-source.
806
807 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
808
809         * modb.el (elmo-msgdb-update-entity): New API and define generic
810         implement.
811
812         * modb-standard.el (elmo-msgdb-update-entity): Define.
813
814         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
815         API and define generic implement.
816
817         * elmo.el (update-overview): New singnal.
818
819         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
820         `elmo-msgdb-update-entity' and emit signal `update-overview'.
821         (elmo-message-entity-parent): Define.
822
823         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
824         `update-overview'.
825
826         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
827
828         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
829
830 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
831
832         * elmo.el (elmo-folder-synchronize): Sort the return value of
833         `elmo-list-diff'.
834
835         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
836         list.
837
838 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
839
840         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
841         `default-enable-multibyte-characters'.
842         (elmo-object-load): Use `with-temp-buffer' instead of
843         `elmo-set-work-buf'.
844         (elmo-object-save): Ditto.
845         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
846         `elmo-set-work-buf'.
847         (elmo-decoded-field-body): Ditto.
848
849         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
850
851         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
852         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
853
854         * elmo-version.el (elmo-version): Up to 2.13.3.
855
856 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
857
858         * elmo-util.el (elmo-list-diff): Fix the last change.
859         Reverse order of result lists.
860
861 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
862
863         * modb-standard.el (elmo-msgdb-set-flag): Use
864         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
865         (elmo-msgdb-unset-flag): Ditto.
866
867         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
868         `elmo-list-diff'.
869
870         * elmo-util.el (elmo-list-diff): Rewrite.
871         (elmo-list-diff-nonsortable): New function.
872
873 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
874
875         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
876         `elmo-multibypte-buffer-name'.  All referers are updated.
877
878 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
879
880         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
881         (elmo-mime-entity-fragment-p): New function.
882         (mime-elmo-buffer-entity): Added slot `reassembled'.
883         (elmo-message-mime-entity): Added 4th argument `reassemble'.
884         (elmo-message-mime-entity-internal): New function (renamed from
885         `elmo-message-mime-entity').
886         (elmo-mime-inherit-field-list-from-enclosed): New constant.
887         (elmo-mime-make-reassembled-mime-entity): New function.
888         (elmo-message-reassembled-mime-entity): Ditto.
889         (elmo-mime-collect-message/partial-pieces): Ditto.
890
891 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
892
893         * elmo.el (elmo-message-fetch-string): Disable multibyte.
894
895         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
896         (elmo-with-enable-multibyte): New macro.
897
898         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
899
900 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
901
902         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
903         argument `number'.
904         (elmo-filter-connect-signals): Follow the above change.
905
906 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
907
908         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
909
910         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
911         that only the first flag is used.
912
913 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
914
915         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
916         if available.
917
918 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
919
920         * elmo-signal.el: New file.
921
922         * elmo.el (toplevel): Require elmo-signal.
923         (flag-changing, flag-changed, cache-changed): New signal.
924         (elmo-folder): Remove slog `handlers'.
925         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
926         `elmo-folder-notify-event'.
927         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
928         (elmo-folder-unset-flag): Ditto.
929         (elmo-event-handler): Abolish.
930         (elmo-event-handler-flag-changed): Ditto.
931         (elmo-event-handler-cache-changed): Ditto.
932         (elmo-folder-add-handler): Ditto.
933         (elmo-folder-remove-handler): Ditto.
934         (elmo-folder-notify-event): Ditto.
935
936         * elmo-pipe.el (toplevel): Require elmo-signal.
937         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
938         (elmo-pipe-connect-signals): New function.
939         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
940         (elmo-folder-set-flag): Ditto.
941         (elmo-folder-unset-flag): Ditto.
942         (elmo-message-set-cached): Ditto.
943
944         * elmo-multi.el (toplevel): Require elmo-signal.
945         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
946         (elmo-multi-connect-signals): New function.
947         (elmo-multi-map-numbers): Ditto.
948         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
949         (elmo-message-fetch): Ditto.
950         (elmo-folder-set-flag): Ditto.
951         (elmo-folder-unset-flag): Ditto.
952
953         * elmo-filter.el (toplevel): Require elmo-signal.
954         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
955         (elmo-filter-connect-signals): New function.
956         (elmo-filter-add-flag-count): Ditto.
957         (elmo-message-fetch): Does not call
958         `elmo-filter-folder-countup-message-flags' and
959         `elmo-folder-notify-event'.
960         (elmo-message-set-cached): Ditto.
961         (elmo-folder-set-flag): Ditto.
962         (elmo-folder-unset-flag): Ditto.
963
964         * elmo-version.el (elmo-version): Up to 2.13.2.
965
966 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
967
968         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
969         `flags'.
970
971 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
972
973         * elmo-filter.el (elmo-message-set-cached): Call
974         `elmo-folder-notify-event' with event `cache-changed'.
975
976         * elmo-multi.el (elmo-message-set-cached): Ditto.
977
978         * elmo-pipe.el (elmo-message-set-cached): Ditto.
979
980 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
981
982         * elmo.el (elmo-folder-encache): Abolish.
983
984 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
985
986         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
987         (elmo-folder-next-message-number-dop): Return appropriate negative
988         integer.
989
990 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
991
992         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
993         clearing pending operations.
994         (elmo-folder-next-message-number-dop): Return appropriate negative
995         integer.
996
997 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
998
999         * elmo.el (toplevel): Added autoload setting for `md5'.
1000         (elmo-msgdb-path-encode-threshold): New user option.
1001         (elmo-folder-msgdb-path): Encode msgdb path if its length is
1002         longer than `elmo-msgdb-path-encode-threshold'.
1003
1004         * elmo-flag.el (elmo-global-mark-migrate): Use
1005         `elmo-folder-expand-msgdb-path' instead of
1006         `elmo-folder-msgdb-path'.
1007
1008 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1009
1010         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
1011         element of the difference is nil.
1012
1013 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
1014
1015         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
1016         to the check logic of file systems which are weak in colon character.
1017
1018 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
1019
1020         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
1021
1022 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
1023
1024         * elmo-maildir.el (elmo-maildir-move-file): New function.
1025         (elmo-folder-append-buffer): Use it.
1026         (elmo-folder-append-messages): Ditto.
1027         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
1028
1029         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
1030         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
1031
1032         * elmo-maildir.el (elmo-maildir-separator): New user option.
1033         (elmo-maildir-adjust-separator): New macro.
1034         (elmo-maildir-list-location): Use it.
1035         (elmo-maildir-update-current): Ditto.
1036         (elmo-maildir-set-mark): Ditto.
1037         (elmo-maildir-delete-mark): Ditto.
1038         (These changes are based on Hiroya Murata's patch [wl: 13437])
1039
1040 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1041
1042         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
1043
1044 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1045
1046         * elmo-flag.el (elmo-flag-valid-p): Simplify.
1047         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
1048         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
1049
1050 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1051
1052         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
1053         Use `with-temp-buffer'.
1054
1055 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1056
1057         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
1058
1059         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
1060         `wl-read-search-condition').
1061         (elmo-read-search-condition-internal): Likewise.
1062
1063         * elmo-flag.el (elmo-flag-char-regexp): New constant.
1064         (elmo-flag-valid-p): New function.
1065         (elmo-folder-initialize): Check flag name is valid.
1066
1067 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
1068
1069         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
1070         delimiter to obtain root mailbox itself.
1071
1072 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
1073
1074         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
1075         type mismatch.
1076
1077 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1078
1079         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
1080         as t.
1081
1082 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1083
1084         * elmo-shimbun.el (toplevel): Require cl at compile.
1085
1086         * elmo-nntp.el (toplevel): Ditto.
1087
1088         * elmo-nmz.el (toplevel): Ditto.
1089
1090         * elmo-multi.el (toplevel): Ditto.
1091
1092         * elmo-file.el (toplevel): Ditto.
1093
1094         * elmo-dop.el (toplevel): Ditto.
1095
1096         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1097
1098 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1099
1100         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1101         as nil.
1102
1103         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1104         size of elmo-message-fetch-internal is 0 byte.
1105
1106 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1107
1108         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1109
1110 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1111
1112         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1113         always plugged.
1114
1115 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1116
1117         * elmo-maildir.el (elmo-map-message-fetch): Call
1118         `elmo-map-folder-set-flag'.
1119
1120         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1121         (elmo-message-fetch): Merge from
1122         `elmo-message-fetch-with-cache-process'.
1123
1124         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1125         (elmo-message-fetch): Define.
1126
1127         * elmo-nntp.el (elmo-message-fetch): Renamed from
1128         `elmo-message-fetch-with-cache-process'.
1129
1130         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1131         (elmo-message-fetch): Define.
1132
1133         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1134         search-key.
1135
1136         * elmo-shimbun.el (shimbun-mua-search-id): Use
1137         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1138         (elmo-shimbun-folder-shimbun-header): Ditto.
1139         (elmo-shimbun-get-headers): Ditto.
1140         (elmo-shimbun-update-overview): Ditto.
1141
1142         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1143
1144         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1145         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1146
1147 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1148
1149         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1150         message is cached.
1151         (elmo-message-fetch-string): Fixed argument.
1152
1153 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1154
1155         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1156         exchange order of arguments `section' and `unread'.
1157         (elmo-message-encache): Follow the API change.
1158         (elmo-message-match-condition): Ditto.
1159         (elmo-generic-folder-append-messages): Ditto.
1160         (elmo-message-fetch-string): New function.
1161
1162         * elmo-split.el (elmo-split-subr): Ditto.
1163
1164         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1165
1166         * elmo-pipe.el (elmo-message-fetch): Ditto.
1167
1168         * elmo-multi.el (elmo-message-fetch): Ditto.
1169
1170         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1171
1172         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1173
1174         * elmo-filter.el (elmo-message-fetch): Ditto.
1175
1176         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1177
1178         * elmo-imap4.el (mime-imap-location-section-body): Use
1179         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1180         follow the API change.
1181
1182 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1183
1184         * elmo-access.el: New file.
1185
1186         * elmo-null.el: Ditto.
1187
1188         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1189
1190 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1191
1192         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1193         (elmo-network-session): New attribute `last-accessed'.
1194         (elmo-network-get-session): Discard network cache if elapsed time
1195         since last-accessed is larger than elmo-network-session-idle-timeout.
1196
1197 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1198
1199         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1200         and added `number', `require-entireness'.
1201         (elmo-find-fetch-strategy): Rewrite.
1202         (elmo-message-fetch): Unset `unread' flag when argument unread is
1203         non-nil.
1204
1205         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1206
1207         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1208         (elmo-message-fetch): Notify event `flag-changed'.
1209
1210         * elmo-pipe.el: Likewise.
1211
1212         * elmo-mime.el (elmo-mime-entity): New class.
1213         (elmo-mime-entity-display-p): New generic function.
1214         (elmo-mime-entity-display): Ditto.
1215         (elmo-mime-entity-display-as-is): Ditto.
1216         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1217         elmo-mime-entity.
1218         (elmo-make-mime-message-location): Removed.
1219         (elmo-mime-message-display): Ditto.
1220         (elmo-mime-display-as-is): Ditto.
1221         (elmo-message-mime-entity): New function.
1222
1223         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1224
1225         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1226         change.
1227         (elmo-message-fetch): Re-count flagged message number and notify
1228         event `flag-changed'.
1229
1230         * elmo-version.el (elmo-version): Up to 2.13.1.
1231
1232 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1233
1234         * elmo-filter.el (elmo-message-field): Define.
1235         (elmo-message-set-field): Ditto.
1236
1237 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1238
1239         * elmo.el (elmo-message-set-cached): Call
1240         `elmo-folder-notify-event' with cache-changed.
1241         (elmo-event-handler-cache-changed): New generic function.
1242
1243 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1244
1245         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1246         instead of elmo-add-name-to-file.
1247         (elmo-folder-append-messages): Ditto.
1248
1249 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1250
1251         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1252
1253 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1254
1255         * elmo-version.el (elmo-version): Up to 2.13.0.
1256
1257         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1258         `auto'.
1259
1260         * modb-standard.el (modb-standard-economize-entity-size): Changed
1261         default value to `t'.
1262
1263         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1264         `standard'.
1265
1266         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1267         after parsing greeting string.
1268
1269 2004-11-23  Daishi Kato <daishi@axlight.com>
1270
1271         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1272         New user option.
1273         (elmo-spam-spamoracle-call): Use it.
1274
1275 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1276
1277         * elmo.el (elmo-message-accessible-p): Message in dop spool
1278         is accessible.
1279
1280 2004-11-23  Daishi Kato <daishi@axlight.com>
1281
1282         * elsp-spamoracle.el: New file.
1283
1284 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1285
1286         * elmo.el (elmo-message-flags-for-append): New function.
1287         (elmo-generic-folder-append-messages): Use it.
1288
1289         * elmo-split.el (elmo-split-subr): Ditto.
1290
1291         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1292         `flags' and use elmo-folder-append-buffer instead of
1293         write-region-as-binary.
1294         (elmo-dop-filter-pending-messages): New function.
1295         (elmo-folder-append-buffer-dop): Call
1296         elmo-dop-spool-folder-append-buffer with `flag'.
1297         (elmo-folder-set-flag-dop): Filter messages by
1298         elmo-dop-filter-pending-messages.
1299         (elmo-folder-unset-flag-dop): Ditto.
1300         (elmo-folder-append-buffer-dop-delayed): Use
1301         elmo-message-flags-for-append to get flags of the message and
1302         simplify.
1303
1304 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1305
1306         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1307
1308 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1309
1310         * elmo.el (elmo-folder): Added handlers slot.
1311         (elmo-event-handler): New class.
1312         (elmo-event-handler-flag-changed): New API.
1313         (elmo-folder-add-handler): New function.
1314         (elmo-folder-remove-handler): Ditto.
1315         (elmo-folder-notify-event): Ditto.
1316         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1317         `flag-changed'.
1318         (elmo-folder-unset-flag): Ditto.
1319
1320         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1321         (elmo-folder-unset-flag): Ditto.
1322
1323         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1324         (elmo-folder-unset-flag): Ditto.
1325
1326         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1327         (elmo-folder-unset-flag): Ditto.
1328
1329         * elmo-version.el (elmo-version): Up to 2.11.33.
1330
1331 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1332
1333         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1334
1335 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1336
1337         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1338
1339         * elmo-flag.el (elmo-folder-unset-flag): Define.
1340         (elmo-global-flag-detach): Do process when the flag is not target
1341         flag.
1342
1343 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1344
1345         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1346         variable.
1347         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1348
1349 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1350
1351         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1352         function.
1353         (elmo-folder-delete-messages): Detach messages before delete
1354         messages from target folder.
1355         (elmo-folder-detach-messages): Set updated number-list to slot.
1356
1357 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1358
1359         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1360
1361 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1362
1363         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1364
1365 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1366
1367         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1368         internal use only).
1369         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1370         not modified.
1371         (elmo-folder-delete-messages): Define.
1372         (elmo-folder-move-messages): Don't call
1373         `elmo-folder-detach-messages'.
1374         (elmo-folder-synchronize): Rewrite.
1375         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1376
1377         * elmo-util.el (elmo-last): New function.
1378         (elmo-set-list): Ditto.
1379         (elmo-number-set-delete-list): Ditto.
1380         (elmo-number-set-delete): Ditto.
1381
1382         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1383
1384         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1385         `elmo-folder-delete-messages' and don't delete location map.
1386         (elmo-folder-detach-messages): Define.
1387
1388         * elmo-imap4.el (elmo-folder-delete): Use
1389         `elmo-folder-delete-messages-internal' instead of
1390         `elmo-folder-delete-messages'.
1391
1392         * elmo-filter.el (elmo-folder-delete-messages): Call
1393         `elmo-folder-detach-messages'.
1394         (elmo-folder-detach-messages): Don't call
1395         `elmo-folder-detach-messages' for target folder.
1396
1397         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1398         message deletion is succeeded.
1399
1400         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1401
1402         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1403         from `elmo-folder-delete-messages'.
1404
1405         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1406
1407         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1408
1409         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1410
1411         * elmo-version.el (elmo-version): Up to 2.11.32.
1412
1413 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1414
1415         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1416         (elmo-global-flag-list): Added obsolete variable setting.
1417
1418         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1419
1420         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1421         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1422         `elmo-mime-display-header-analysis' is nil.
1423
1424         * elmo-flag.el (elmo-global-flags): Renamed from
1425         `elmo-global-flag-list' (All other related portions are changed).
1426         (elmo-local-flags): New variable.
1427         (elmo-local-flag-p): New function.
1428         (elmo-global-flag-set-internal): Cause an error when flag is not
1429         global.
1430
1431 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1432
1433         * elmo-util.el (elmo-concat-path): Treat empty path.
1434
1435 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1436
1437         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1438         field-or-fields).
1439         (elmo-split-address-match): Ditto.
1440         (elmo-split-equal): Ditto.
1441         (elmo-split-match): Ditto.
1442
1443 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1444
1445         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1446         (elmo-generic-folder-append-messages): If src message exists but
1447         has no flag, pass (read) for the FLAG argument of
1448         `elmo-folder-append-buffer'. Otherwise, pass nil.
1449
1450         * elmo-split.el (elmo-split-subr): Likewise.
1451
1452         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1453
1454         * elmo-multi.el (elmo-message-flags): Ditto.
1455
1456         * elmo-filter.el (elmo-message-flags): Ditto.
1457
1458         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1459         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1460         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1461         
1462 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1463
1464         * elmo-split.el (elmo-split-rule): Update comment.
1465         (elmo-split-address-equal): Allow 2nd argument to be a list.
1466         (elmo-split-address-match): Ditto.
1467         (elmo-split-equal): Ditto.
1468         (elmo-split-match): Ditto.
1469
1470 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1471
1472         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1473         (elmo-folder-append-msgdb): Don't treat `read'.
1474         (elmo-message-flags): Don't return `read'.
1475
1476         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1477         (elmo-folder-unset-read-delayed): Ditto.
1478
1479         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1480
1481 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1482
1483         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1484         deletion.
1485
1486 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1487
1488         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1489         header.
1490
1491 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1492
1493         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1494         here.
1495         (elmo-msgdb-save): Bind inhibit-quit.
1496         (modb-standard-message-entity): Ditto.
1497
1498 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1499
1500         * elmo-database.el: No need to require elmo-msgdb.
1501
1502 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1503
1504         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1505         instead of `elmo-list-subdirectories'.
1506
1507 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1508
1509         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1510         group entry.
1511         (elmo-folder-exists-p): "[" is empty.
1512         (elmo-folder-list-subfolders): Define.
1513         (elmo-folder-have-subfolder-p): Ditto.
1514
1515 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1516
1517         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1518
1519 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1520
1521         * elmo-filter.el (elmo-folder-local-p): Define.
1522
1523 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1524
1525         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1526         when entity is garbaged.
1527         (modb-standard-save-entity-1): Don't modify the original entity.
1528
1529 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1530
1531         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1532
1533 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1534
1535         * elmo.el (elmo-strict-folder-diff): Use
1536         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1537
1538 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1539
1540         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1541         (elmo-msgdb-message-number): Ditto.
1542         (elmo-msgdb-message-field): Ditto.
1543
1544         * modb-standard.el (modb-standard-economize-entity-size): New user
1545         option.
1546         (modb-standard-loaded-message-id): New inline function.
1547         (modb-standard-load-entity): Use it.
1548         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1549         throw message-id string away.
1550         (elmo-msgdb-flag-available-p): Define.
1551         (elmo-msgdb-message-number): Ditto.
1552         (elmo-msgdb-message-field): Ditto.
1553
1554         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1555         (suppoted -> supported).
1556         (modb-legacy-supported-flag-p): Ditto.
1557         (elmo-msgdb-set-flag): Ditto.
1558         (elmo-msgdb-unset-flag): Ditto.
1559         (elmo-msgdb-flag-available-p): Define.
1560
1561         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1562         is `t', treat it as legacy entity.
1563         
1564         * elmo.el (elmo-message-flag-available-p): New generic function.
1565         (elmo-message-number): Ditto.
1566         (elmo-message-field): Use `elmo-msgdb-message-field'.
1567
1568         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1569
1570         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1571         (elmo-message-number): Ditto.
1572
1573         * elmo-multi.el (elmo-message-number): Define.
1574         (elmo-message-flag-available-p): Ditto.
1575
1576         * elmo-filter.el (elmo-message-flag-available-p): Define.
1577         (elmo-message-number): Ditto.
1578
1579         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1580         (elmo-folder-initialize): Load `max-number'.
1581         (elmo-folder-commit): Save it.
1582         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1583         (elmo-global-flag-set-internal): Set up max-number slot.
1584
1585 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1586
1587         * elmo-version.el (elmo-version): Up to 2.11.31.
1588
1589 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1590
1591         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1592         unibyte string of the current buffer for the argument of `md5'
1593         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1594
1595 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1596
1597         * modb-legacy.el (modb-legacy-flag-list): New constant.
1598         (modb-legacy-suppoted-flag-p): New internal function.
1599         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1600         (elmo-msgdb-unset-flag): Ditto.
1601
1602 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1603
1604         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1605
1606         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1607         from msgdb.
1608
1609 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1610
1611         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1612         (follow the API change).
1613
1614         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1615
1616 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1617
1618         * modb-standard.el (modb-standard-digest-flags): Abolish.
1619         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1620
1621         * elmo-vars.el (elmo-digest-flags): New variable.
1622         (elmo-preserved-flags): Moved from elmo-flag.el.
1623
1624         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1625         (elmo-imap4-flag-to-imap-criteria): Ditto.
1626         (elmo-imap4-folder-list-flagged): Use it.
1627
1628         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1629
1630         * elmo.el (elmo-folder-count-flags): Changed return value.
1631
1632         * elmo-flag.el (elmo-preserved-flags): New variable.
1633         (elmo-get-global-flags): Use it.
1634
1635         * modb-standard.el (modb-standard-digest-flags): New variable.
1636         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1637         Changed behavior of `any'.
1638
1639         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1640         which are defined the Internet draft
1641         (draft-melnikov-imap-keywords-03.txt).
1642         (elmo-imap4-flags-to-imap): New function.
1643         (elmo-folder-append-buffer): Use it.
1644
1645         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1646         in the docstring.
1647
1648         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1649         avoid the bug of Emacs 21.3.
1650
1651 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1652
1653         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1654         function find-coding-system does not exist.
1655
1656 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1657
1658         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1659         parsing.
1660
1661 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1662
1663         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1664         response codes.
1665
1666 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1667
1668         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1669         (elmo-network-close-session): Follow the changes in
1670         `elmo-pop3-read-response'.
1671         (elmo-pop3-auth-user): Ditto.
1672         (elmo-pop3-auth-apop): Ditto.
1673         (elmo-network-initialize-session): Ditto.
1674         (elmo-network-authenticate-session): Ditto.
1675         (elmo-network-setup-session): Ditto.
1676         (elmo-folder-status): Ditto.
1677         (elmo-message-fetch-plugged): Ditto.
1678         (elmo-pop3-delete-msg): Ditto.
1679
1680 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1681
1682         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1683         on failure.
1684
1685 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1686
1687         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1688         style.
1689         (elmo-bind-directory): Ditto.
1690
1691 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1692
1693         * elmo.el (elmo-folder-append-messages): Note on return value.
1694         * elmo-archive.el (elmo-folder-append-messages): Don't return
1695         message numbers which could not be appended.
1696
1697 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1698
1699         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1700
1701 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1702
1703         * elmo-version.el (elmo-version): Up to 2.11.30.
1704
1705 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1706
1707         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1708         `mask'.
1709
1710         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1711
1712         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1713         (elmo-multi-split-numbers): Add elmo-folder object into each
1714         element of return value at first.
1715         (elmo-folder-delete-messages): Follow the above change.
1716         (elmo-folder-detach-messages): Ditto.
1717
1718         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1719         number which is synchronized in target folder.
1720
1721 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1722
1723         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1724         Change default value to symbol `all'.
1725         (elmo-map-message-fetch): Change condition to update overview
1726         follow the above.
1727
1728 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1729
1730         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1731         behavior to update overview.
1732         (elmo-shimbun-update-overview-folder-list): Note it.
1733
1734 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1735
1736         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1737         recursive call.
1738
1739 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1740
1741         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1742         buffer-disable-undo, it is unnecessary.
1743         (elmo-spam-register-good-messages): Ditto.
1744
1745         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1746         Ditto.
1747
1748         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1749
1750 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1751
1752         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1753         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1754         elmo-set-buffer-multibyte.
1755         (elmo-object-load): Ditto.
1756         (elmo-save-buffer): Ditto.
1757         (elmo-delete-char): Ditto.
1758         (elmo-file-field-primitive-condition-match): Ditto.
1759         (elmo-mime-string): Ditto.
1760
1761         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1762         (elmo-archive-field-condition-match): Ditto.
1763
1764         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1765
1766         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1767
1768         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1769         (elmo-nntp-msgdb-create-message): Ditto.
1770
1771         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1772
1773         * elmo.el (elmo-message-match-condition): Ditto.
1774         (elmo-message-match-condition): Ditto.
1775
1776         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1777         Ditto.
1778
1779         * elmo-version.el (elmo-version): Up to 2.11.29.
1780
1781         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1782         (elsp-header): New backend.
1783
1784         * elmo-util.el (elmo-decoded-field-body): New function.
1785
1786 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1787
1788         * elmo-version.el (elmo-version): Up to 2.11.28.
1789
1790 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1791
1792         * elmo-filter.el: Rewrite.
1793
1794         * elmo-version.el (elmo-version): Up to 2.11.27.
1795
1796 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1797
1798         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1799         msgdb path for the localdir folder with absolute path.
1800
1801         * utf7.el: Synch up with latest gnus/utf7.el;
1802         Modified for latest Emacs.
1803
1804 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1805
1806         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1807         shimbun backend couldn't open.
1808
1809 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1810
1811         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1812         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1813         when a destination folder is a filter folder.
1814
1815 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1816
1817         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1818         (elmo-generic-folder-append-messages): Call elmo-message-flags
1819         with argument `msgid'.
1820
1821         * elmo-split.el (elmo-split-subr): Ditto.
1822
1823         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1824
1825         * elmo-multi.el (elmo-message-flags): Ditto.
1826
1827 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1828
1829         * elmo.el (elmo-folder): Add new slot `flag-table'.
1830         (elmo-folder-flag-table): New API.
1831         (elmo-folder-close-flag-table): Ditto.
1832         (elmo-folder-preserve-flags): New function.
1833         (elmo-generic-folder-append-messages): Use
1834         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1835         Flag of a non-registered message, it sets to nil.
1836         Does not set flag to flag-table.
1837
1838         * elmo-maildir.el (elmo-folder-append-buffer): Use
1839         `elmo-folder-preserve-flags'.
1840         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1841         `elmo-folder-close-flag-table'.
1842
1843         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1844         (elmo-archive-folder-append-buffer): Use
1845         `elmo-folder-preserve-flags'.
1846
1847         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1848
1849         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1850
1851         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1852         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1853         `elmo-folder-close-flag-table'.
1854
1855         * elmo-version.el (elmo-version): Up to 2.11.26.
1856
1857 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1858
1859         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1860
1861         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1862         md5's 4th and 5th argument (non-existent in flim one).
1863
1864 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1865
1866         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1867         message, It sets to nil.
1868
1869 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1870
1871         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1872         list is non-nil.
1873
1874 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1875
1876         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1877
1878         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1879
1880         * elmo-util.el (elmo-uniq-sorted-list): New function.
1881         (elmo-make-number-list): Ditto.
1882         (elmo-number-set-to-number-list): Use elmo-make-number-list
1883         and don't use nreverse.
1884
1885 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1886
1887         * elmo-version.el (elmo-version): Up to 2.11.25.
1888
1889 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1890
1891         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1892         field not exists in message, Use md5 message digest of header.
1893
1894 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1895
1896         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1897         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1898         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1899         * elmo-split.el (elmo-split-subr): Check return value of
1900         elmo-folder-append-buffer.
1901
1902         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1903         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1904
1905         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1906         message-id.
1907
1908 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1909
1910         * elmo-split.el (elmo-split-subr): Append message with flag.
1911
1912         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1913         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1914         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1915
1916 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1917
1918         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1919         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1920         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1921
1922 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1923
1924         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1925         with a function call of `process-buffer'.  All callers are updated.
1926         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1927         Remove redundant `set-buffer' in a while loop.
1928
1929 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1930
1931         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1932         calls.
1933
1934 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1935
1936         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1937         elsp-spamfilter-register-buffer-internal with current buffer.
1938         (elmo-spam-register-spam-buffer): Ditto.
1939         (elmo-spam-register-good-buffer): Ditto.
1940
1941 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1942
1943         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1944         if it is not contained in the response(A workaround for courier-imap).
1945
1946 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1947
1948         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1949         parenthesis.
1950
1951 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1952
1953         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1954         range.
1955
1956 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1957
1958         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1959         of nconc.
1960
1961         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1962         argument handler.
1963         (elmo-msgdb-message-match-condition): Follow the change above.
1964
1965 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1966
1967         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1968         folder name.
1969
1970 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1971
1972         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1973
1974 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1975
1976         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1977
1978 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1979
1980         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1981         not found.
1982
1983 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1984
1985         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1986         value.
1987         (elmo-file-command-argument): Undo last change for cygwin.
1988         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1989         Don't return nil.
1990         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1991
1992 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1993
1994         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1995         value returned from elmo-file-find is nil.
1996
1997 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1998
1999         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
2000         to elmo-vars.el.
2001
2002         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
2003         instead of insert-file-contents-as-binary.
2004         (elmo-message-set-field): New generic function.
2005
2006         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
2007         behavior change on `split-string'.
2008
2009         * elmo-file.el (elmo-file-find): New function.
2010         (elmo-file-command): New user option.
2011         (elmo-file-command-argument): Ditto.
2012         (elmo-file-fetch-max-size): Ditto.
2013         (elmo-file-detect-format): New function.
2014         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
2015         Use elmo-file-detect-format.
2016         (elmo-map-folder-list-message-locations): Don't treat directories.
2017
2018 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2019
2020         * elmo-util.el (elmo-string-partial-p): Removed unused function.
2021         (elmo-passwd-alist-clear): Shred password before clear.
2022         (elmo-remove-passwd): Remove all mached pair.
2023
2024 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2025
2026         * elmo.el (elmo-folder-synchronize): Fix description of the return
2027         value.
2028
2029 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
2030
2031         * elmo.el (elmo-message-fetch-bodystructure): New method.
2032         (elmo-message-fetch-bodystructure): Define default.
2033
2034         * elmo-imap4.el (mime-imap-location-bodystructure): Call
2035         elmo-message-fetch-bodystructure.
2036         (elmo-message-fetch-bodystructure): Define.
2037
2038         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
2039
2040 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
2041
2042         * elmo-filter.el (elmo-message-folder): Define.
2043
2044 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
2045
2046         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
2047         elmo-delete-cr-buffer.
2048
2049         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
2050
2051         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
2052
2053         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
2054
2055         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
2056         type seems to be a text.
2057
2058 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
2059
2060         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
2061         (elmo-spam-register-good-buffer): Ditto.
2062         (elmo-spam-spamassassin-register-messages): Ditto.
2063
2064         * elmo-util.el (elmo-string-member-ignore-case): Define with
2065         static-cond.
2066
2067 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
2068
2069         * elmo.el (elmo-folder-type): Undo last change.
2070
2071         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
2072
2073         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
2074         warnings.
2075
2076         * elmo-file.el: New file.
2077         
2078         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
2079
2080         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
2081         variable.
2082         (elmo-spam-spamassassin-register-messages): New inline function.
2083         (elmo-spam-register-spam-messages): Define.
2084         (elmo-spam-register-good-messages): Ditto.
2085
2086         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
2087         Fixed typo.
2088
2089         * elmo.el (toplevel): Added autoload setting for
2090         `elmo-get-global-flags'.
2091         (elmo-message-has-global-flag-p): New function.
2092         (elmo-message-set-global-flags): Ditto.
2093         (elmo-folder-type): Improvement for name: format.
2094
2095         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2096         availability of keyword flags.
2097         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2098         (elmo-folder-list-flagged-plugged): Renamed from
2099         elmo-folder-list-flagged-unplugged.
2100         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2101         accept any flag as keyword flag.
2102         (elmo-folder-set-flag-plugged): Accept keyword flags.
2103         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2104
2105         * elmo-flag.el (elmo-get-global-flags): New function.
2106
2107         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2108         folders.
2109
2110         * elmo-version.el (elmo-version): Up to 2.11.24.
2111
2112 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2113
2114         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2115         elmo-multiple-field-body instead of std11-field-body to check all
2116         headers.
2117
2118 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2119
2120         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2121         or "size".
2122
2123 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2124
2125         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2126         unintern is unbound.
2127
2128 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2129
2130         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2131         Protect from infinite loop.
2132
2133 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2134
2135         * elsp-bogofilter.el
2136         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2137         (elmo-spam-bogofilter-register-messages): New internal function.
2138         (elmo-spam-register-spam-messages): Define.
2139         (elmo-spam-register-good-messages): Ditto.
2140
2141 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2142
2143         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2144         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2145         (elmo-spam-bogofilter-call): Fixed the last change.
2146         (elmo-spam-bogofilter-arguments): Ditto.
2147
2148         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2149         Follow the options change of latest bogofilter.
2150
2151         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2152         (elmo-spam-bogofilter-good-switch): Ditto.
2153         (elmo-spam-bogofilter-arguments-alist): New user option.
2154         (elmo-spam-bogofilter-debug): Ditto.
2155         (elmo-spam-bogofilter-call): Renamed from
2156         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2157         is non-nil, insert output in buffer for debug.
2158         (elmo-spam-bogofilter-arguments): New macro.
2159         (elmo-spam-buffer-spam-p): Use it.
2160         (elsp-bogofilter-register-buffer): Ditto.
2161
2162 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2163
2164         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2165         regexp.
2166
2167 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2168
2169         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2170         value as "ruby".
2171         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2172         (elmo-spam-bsfilter-program): Set default value as full path for
2173         `bsfilter'.
2174         (elmo-spam-bsfilter-debug): New user option.
2175         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2176         non-nil, insert output in buffer for debug. Fix treating of
2177         argument.
2178
2179 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2180
2181         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2182         `elmo-maildir-flag-specs' element instead of one.
2183         (elmo-map-folder-unset-flag): Ditto.
2184         (Reported by Ken Makimura <macky@astem.or.jp>)
2185
2186         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2187         (elmo-folder-unset-flag-plugged): Ditto.
2188
2189 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2190
2191         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2192         to `reads' slot only if `in-msgdb' is nil.
2193
2194 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2195
2196         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2197         and complement argument list.
2198
2199 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2200
2201         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2202         instead of elmo-folder-list-flagged.
2203
2204 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2205
2206         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2207
2208         * elsp-bsfilter.el: New file.
2209
2210         * elmo-pipe.el (elmo-folder-list-unreads,
2211         elmo-folder-list-answereds,
2212         elmo-folder-list-importants,
2213         elmo-folder-flag-as-important,
2214         elmo-folder-unflag-important,
2215         elmo-folder-flag-as-read,
2216         elmo-folder-unflag-read,
2217         elmo-folder-flag-as-answered,
2218         elmo-folder-unflag-answered): Remove.
2219         (elmo-folder-set-flag): Define.
2220         (elmo-folder-unset-flag): Ditto.
2221
2222         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2223         (elmo-folder-set-flag): Define.
2224         (elmo-folder-unset-flag): Ditto.
2225         (elmo-folder-list-unreads): Remove.
2226         (elmo-folder-list-flagged): Define.
2227
2228         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2229         (elmo-folder-list-unreads,
2230         elmo-folder-list-importants,
2231         elmo-folder-list-answereds,
2232         elmo-folder-list-unreads-plugged,
2233         elmo-folder-list-importants-plugged,
2234         elmo-folder-list-answereds-plugged): Remove.
2235         (elmo-folder-list-flagged-plugged): New method.
2236         (elmo-folder-unflag-important,
2237         elmo-folder-flag-as-important,
2238         elmo-folder-unflag-read,
2239         elmo-folder-flag-as-read,
2240         elmo-folder-unflag-answered,
2241         elmo-folder-flag-as-answered,
2242         elmo-folder-flag-as-read-unplugged,
2243         elmo-folder-unflag-read-unplugged,
2244         elmo-folder-flag-as-important-unplugged,
2245         elmo-folder-unflag-important-unplugged,
2246         elmo-folder-flag-as-answered-unplugged,
2247         elmo-folder-unflag-answered-unplugged): Remove.
2248         (elmo-folder-set-flag): Define.
2249         (elmo-folder-unset-flag): Ditto.
2250         (elmo-folder-set-flag-unplugged): Ditto.
2251         (elmo-folder-unset-flag-unplugged): Ditto.
2252
2253         * elmo-multi.el (elmo-folder-list-unreads,
2254         elmo-folder-list-answereds,
2255         elmo-folder-list-importants,
2256         elmo-folder-flag-as-important,
2257         elmo-folder-unflag-important,
2258         elmo-folder-flag-as-read,
2259         elmo-folder-unflag-read,
2260         elmo-folder-flag-as-answered,
2261         elmo-folder-unflag-answered): Remove.
2262         (elmo-folder-set-flag): Define.
2263         (elmo-folder-unset-flag): Ditto.
2264
2265         * elmo-map.el (elmo-map-folder-unflag-important,
2266         elmo-map-folder-flag-as-important,
2267         elmo-map-folder-unflag-read,
2268         elmo-map-folder-flag-as-read,
2269         elmo-map-folder-unflag-answered,
2270         elmo-map-folder-flag-as-answered): Remove.
2271         (elmo-map-folder-set-flag): New method.
2272         (elmo-map-folder-unset-flag): Ditto.
2273         (elmo-map-folder-list-unreads,
2274         elmo-map-folder-list-importants,
2275         elmo-map-folder-list-answereds): Remove.
2276         (elmo-folder-list-flagged-internal): Define.
2277         (elmo-map-folder-list-flagged): New method.
2278
2279         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2280         (elmo-map-folder-list-unreads,
2281         elmo-map-folder-list-importants,
2282         elmo-map-folder-list-flagged): Remove.
2283         (elmo-map-folder-list-flagged): Define.
2284         (elmo-map-folder-flag-as-important,
2285         elmo-map-folder-unflag-important,
2286         elmo-map-folder-flag-as-read,
2287         elmo-map-folder-unflag-read,
2288         elmo-map-folder-flag-as-answered,
2289         elmo-map-folder-unflag-answered): Remove.
2290         (elmo-maildir-set-mark-messages): New internal function.
2291         (elmo-map-folder-set-flag): Define.
2292         (elmo-map-folder-unset-flag): Ditto.
2293
2294         * elmo.el (toplevel): Added autoload setting for
2295         `elmo-folder-list-global-flag-messages'.
2296         (elmo-folder-list-unreads,
2297         elmo-folder-list-importants,
2298         elmo-folder-list-answereds): Remove.
2299         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2300         Return a list whitch merged with messages have global flag.
2301         (elmo-folder-list-flagged-internal): New method.
2302         (elmo-folder-unflag-important,
2303         elmo-folder-flag-as-important,
2304         elmo-folder-unflag-read,
2305         elmo-folder-flag-as-read,
2306         elmo-folder-unflag-answered,
2307         elmo-folder-flag-as-answered): Remove.
2308         (elmo-folder-set-flag): New method.
2309         (elmo-folder-unset-flag): Ditto.
2310         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2311         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2312
2313         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2314         (elmo-folder-list-unreads-plugged,
2315         elmo-folder-list-importants-plugged,
2316         elmo-folder-list-answereds-plugged,
2317         elmo-folder-list-flagged-unplugged,
2318         elmo-folder-unflag-important-plugged,
2319         elmo-folder-flag-as-important-plugged,
2320         elmo-folder-unflag-read-plugged,
2321         elmo-folder-flag-as-read-plugged,
2322         elmo-folder-unflag-answered-plugged,
2323         elmo-folder-flag-as-answered-plugged): Remove.
2324         (elmo-folder-set-flag-plugged,
2325         elmo-folder-unset-flag-plugged): Define.
2326
2327         * elmo-flag.el (elmo-folder-initialize): Register to
2328         `elmo-global-flag-list' if flag is not global.
2329         (elmo-folder-append-messages): Set flag to source messages.
2330
2331         * elmo-filter.el (elmo-filter-folder-list-unreads,
2332         elmo-folder-list-unreads,
2333         elmo-filter-folder-list-importants,
2334         elmo-folder-list-importants,
2335         elmo-folder-flag-as-read,
2336         elmo-folder-unflag-read,
2337         elmo-folder-flag-as-important,
2338         elmo-folder-unflag-important,
2339         elmo-folder-flag-as-answered,
2340         elmo-folder-unflag-answered): Remove.
2341         (elmo-folder-set-flag): Define.
2342         (elmo-folder-unset-flag): Ditto.
2343
2344         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2345         elmo-folder-unflag-read-dop,
2346         elmo-folder-flag-as-important-dop,
2347         elmo-folder-unflag-important-dop,
2348         elmo-folder-flag-as-answered-dop,
2349         elmo-folder-unflag-answered-dop): Remove.
2350         (elmo-folder-set-flag-dop,
2351         elmo-folder-unset-flag-dop,
2352         elmo-folder-set-important-delayed,
2353         elmo-folder-unset-important-delayed,
2354         elmo-folder-set-read-delayed,
2355         elmo-folder-unset-read-delayed,
2356         elmo-folder-set-answered-delayed,
2357         elmo-folder-unset-answered-delayed): New function.
2358         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2359         (elmo-dop-queue-method-name-alist): Ditto.
2360
2361         * elmo-version.el (elmo-version): Up to 2.11.23.
2362
2363 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2364
2365         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2366
2367         * elsp-sa.el: New file.
2368
2369 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2370
2371         * modb-standard.el (modb-standard-message-entity): New function.
2372         (elmo-msgdb-message-entity): Use it.
2373
2374 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2375
2376         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2377         behavior when one-level is nil.
2378
2379         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2380
2381         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2382
2383 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2384
2385         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2386         get max number.
2387         (elmo-generic-folder-diff): Ditto.
2388
2389         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2390         (elmo-folder-update-number): Ditto.
2391
2392         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2393         (elmo-folder-next-message-number-dop): Ditto.
2394
2395 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2396
2397         * elmo-filter.el (elmo-folder-msgdb-create): Use
2398         `elmo-message-entity' and `elmo-message-flags' instead of
2399         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2400
2401 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2402
2403         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2404         `if-exists'.
2405
2406 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2407
2408         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2409
2410         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2411
2412         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2413
2414 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2415
2416         * elmo-version.el (elmo-version): Up to 2.11.22.
2417
2418 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2419
2420         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2421
2422 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2423
2424         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2425         if the message dose not exist.
2426
2427 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2428
2429         * elmo-version.el (elmo-version): Up to 2.11.21.
2430
2431 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2432
2433         * modb-standard.el (toplevel): Don't require mime.
2434
2435 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2436
2437         * elsp-bogofilter.el (toplevel): Don't require path-util.
2438         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2439         (elmo-spam-bogofilter-header): Abolish.
2440         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2441         (elmo-spam-bogofilter-args): New user option.
2442         (elsp-bogofilter-call-bogofilter): New internal function.
2443         (elmo-spam-buffer-spam-p): Use it.
2444         (elsp-bogofilter-register-buffer): Renamed from
2445         `elmo-spam-bogofilter-register-buffer';
2446         Use `elsp-bogofilter-call-bogofilter'.
2447         (elmo-spam-register-spam-buffer): Follow the change above.
2448         (elmo-spam-register-good-buffer): Ditto.
2449
2450 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2451
2452         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2453         message-id is nil do nothing.
2454
2455 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2456
2457         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2458         Revival.
2459         (elmo-imap4-session): Removed use-flag slot.
2460         (elmo-imap4-session-select-mailbox): Undo last change.
2461         (elmo-folder-use-flag-p): Use
2462         elmo-imap4-disuse-server-flag-mailbox-regexp.
2463
2464 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2465
2466         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2467         (elmo-imap4-session-select-mailbox): Set it up.
2468         (elmo-folder-use-flag-p): Return value of use-flag slot.
2469
2470 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2471
2472         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2473         message-id is nil.
2474         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2475
2476         * modb-entity.el (elmo-message-entity-handler): Likewise.
2477
2478 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2479
2480         * elmo.el (toplevel): Remove setting of autoloding for
2481         elmo-global-flag-initialize.
2482         (elmo-init): Don't call elmo-global-flag-initialize.
2483         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2484
2485         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2486         (elmo-global-mark-migrate): Don't call it.
2487         (elmo-global-mark-upgrade): Ditto.
2488
2489 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2490
2491         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2492         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2493
2494         * elmo-vars.el (elmo-init-hook): New user option.
2495
2496         * elmo.el (elmo-init): Run the elmo-init-hook.
2497
2498         * elmo-flag.el (elmo-global-mark-migrate): New function.
2499
2500 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2501
2502         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2503         Undo last change (move to elmo-msgdb-unset-flag).
2504         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2505         flag is unset.
2506
2507 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2508
2509         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2510         read flag is set.
2511         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2512         (elmo-msgdb-unset-flag): Ditto.
2513
2514 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2515
2516         * elmo-split.el (elmo-split): Return split message count.
2517
2518 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2519
2520         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2521         is nil.
2522
2523 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2524
2525         * elmo.el (elmo-folder-unflag-important): Call
2526         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2527         a symbol `always'.
2528
2529         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2530         before unset flag.
2531         (elmo-global-flag-detach): Delete the message from flag folder, if
2532         `delete-if-none' is a symbol `always'.
2533
2534 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2535
2536         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2537         `elmo-spam-spamfilter-decode-buffer'.
2538         (elsp-spamfilter-register-buffer-internal): New internal function.
2539         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2540         (elmo-spam-register-spam-buffer): Ditto.
2541         (elmo-spam-register-good-buffer): Ditto.
2542
2543         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2544         change.
2545         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2546         (elmo-spam-register-spam-buffer): Follow the API change.
2547         (elmo-spam-register-good-buffer): Ditto.
2548
2549         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2550         (elmo-split-spam-p): Added argument plist; Call
2551         `elmo-spam-buffer-spam-p' with new argument register.
2552
2553         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2554         `register'.
2555         (elmo-spam-message-spam-p): Ditto.
2556         (elmo-spam-register-spam-buffer): Added optional argument
2557         `restore'.
2558         (elmo-spam-register-good-buffer): Ditto.
2559         (elmo-spam-register-spam-messages): Ditto.
2560         (elmo-spam-register-good-messages): Ditto.
2561
2562 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2563
2564         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2565         register into good corpus.
2566         (elmo-spam-register-good-buffer): Fixed to register into bad
2567         corpus.
2568
2569 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2570
2571         * elmo-version.el (elmo-version): Up to 2.11.20.
2572
2573         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2574         change.
2575
2576         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2577         flag without depending on \Recent flag.
2578
2579 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2580
2581         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2582         (elmo-spam-modified-p): Defined.
2583         (elmo-spam-save-status): Set `modified' slot to nil.
2584         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2585         (elmo-spam-register-good-buffer): Ditto.
2586
2587         * elmo-spam.el (elmo-spam-modified-p): New API.
2588
2589 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2590
2591         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2592         duplicate definition.
2593
2594         * elmo-util.el (elmo-unfold-field-body): New function.
2595         (elmo-msgdb-get-message-id-from-buffer): Use it.
2596
2597         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2598         Fixed the last change; Use elmo-unfold-field-body.
2599
2600 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2601
2602         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2603         Unfold date value.
2604
2605 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2606
2607         * elmo-spam.el (elmo-spam-save-status): New API.
2608
2609         * elsp-spamfilter.el: New file.
2610
2611 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2612
2613         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2614
2615 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2616
2617         * elmo-split.el (elmo-split-spam-p): New function.
2618
2619         * elmo-spam.el: New file.
2620
2621         * elsp-bogofilter.el: Ditto.
2622
2623 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2624
2625         * elmo.el (elmo-folder-next-message-number): New API.
2626         (elmo-folder-next-message-number): Define.
2627         (elmo-message-field): Don't check folder length.
2628
2629         * elmo-net.el (elmo-folder-next-message-number): Define.
2630         (elmo-folder-next-message-number-unplugged): Define.
2631
2632         * elmo-map.el (elmo-folder-next-message-number): Define.
2633         (elmo-folder-delete-messages): Clear hash value.
2634
2635         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2636
2637         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2638         (elmo-folder-delete-messages-dop-delayed): Always return t.
2639
2640         * elmo-version.el (elmo-version): Up to 2.11.19.
2641
2642 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2643
2644         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2645         change.
2646
2647         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2648         identical cons cell into the mark-alist and the hash table.
2649
2650 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2651
2652         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2653         elmo-folder-list-messages with argument `visible-only' as t.
2654
2655         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2656         (elmo-folder-msgdb-create): Check the target folder.
2657
2658 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2659
2660         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2661         `permanentflag' instead of `flags'.
2662         (elmo-folder-open): Ditto.
2663         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2664         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2665         (elmo-folder-use-flag-p): Always return t.
2666         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2667         `permanentflags' does not exist.
2668         (elmo-folder-open): Ditto.
2669
2670 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2671
2672         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2673         is nil.
2674         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2675
2676         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2677         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2678         response.
2679         (elmo-folder-open): Ditto.
2680         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2681         slot of the session includes the flag.
2682         (elmo-imap4-session-flag-available-p): New function.
2683         (elmo-imap4-folder-list-flagged): Ditto.
2684         (elmo-folder-list-unreads-plugged): Use it.
2685         (elmo-folder-list-importants-plugged): Ditto.
2686         (elmo-folder-list-answereds-plugged): Ditto.
2687         (elmo-imap4-search-internal-primitive): Ditto.
2688         (elmo-imap4-folder-list-any-plugged,
2689         elmo-imap4-folder-list-digest-plugged): Abolish.
2690
2691         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2692         if numbers is nil.
2693
2694 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2695
2696         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2697
2698 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2699
2700         * elmo-util.el (elmo-get-hash-val): Simplify.
2701         (elmo-set-hash-val): Rewrite.
2702
2703 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2704
2705         * elmo.el (elmo-folder-list-messages): Append killed messages into
2706         result if `visible-only' is nil and `in-msgdb' is non-nil.
2707
2708         * elmo-util.el (elmo-uniq-list): Added optional argument
2709         `delete-function'.
2710
2711         * modb.el (elmo-msgdb-flag-count): New API.
2712
2713         * modb-standard.el (modb-standard): Added slot flag-count.
2714         (modb-standard-countup-flags): New function.
2715         (modb-standard-load-flag): Call it.
2716         (elmo-msgdb-append): Ditto.
2717         (elmo-msgdb-clear): Clear slot flag-count.
2718         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2719         (elmo-msgdb-unset-flag): Treat `all' flag and call
2720         modb-standard-countup-flags.
2721         (elmo-msgdb-flag-count): Define.
2722         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2723         (elmo-msgdb-delete-messages): Ditto.
2724
2725         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2726         (elmo-msgdb-flag-count): Define.
2727
2728         * elmo.el (elmo-folder-list-messages): Undo last change.
2729         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2730         (elmo-folder-kill-messages): Unset all flags to numbers.
2731
2732         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2733         elmo-folder-kill-messages.
2734
2735         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2736         (elmo-nntp-folder-delete-messages): Abolish.
2737
2738         * elmo-version.el (elmo-version): Up to 2.11.18.
2739
2740 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2741
2742         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2743         (elmo-folder-kill-messages-range): New function.
2744         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2745         instead of elmo-folder-kill-messages-before.
2746
2747 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2748
2749         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2750         elmo-imap4-current-msgdb to decide entity handler.
2751
2752 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2753
2754         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2755
2756         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2757         inline function.
2758         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2759         (elmo-msgdb-overview-entity-set-number,
2760         elmo-msgdb-overview-entity-get-references,
2761         elmo-msgdb-overview-entity-set-references,
2762         elmo-msgdb-overview-entity-get-from-no-decode,
2763         elmo-msgdb-overview-entity-get-from,
2764         elmo-msgdb-overview-entity-set-from,
2765         elmo-msgdb-overview-entity-get-subject,
2766         elmo-msgdb-overview-entity-get-subject-no-decode,
2767         elmo-msgdb-overview-entity-set-subject,
2768         elmo-msgdb-overview-entity-get-date,
2769         elmo-msgdb-overview-entity-set-date,
2770         elmo-msgdb-overview-entity-get-to,
2771         elmo-msgdb-overview-entity-get-cc,
2772         elmo-msgdb-overview-entity-get-size,
2773         elmo-msgdb-overview-entity-set-size,
2774         elmo-msgdb-overview-entity-get-extra,
2775         elmo-msgdb-overview-entity-set-extra,
2776         elmo-msgdb-overview-entity-get-extra-field,
2777         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2778         (elmo-msgdb-make-index): Use
2779         `elmo-msgdb-overview-entity-get-number-internal'.
2780         (elmo-msgdb-clear-index): Ditto.
2781         (elmo-msgdb-append-entity): Ditto;
2782         Use `elmo-msgdb-overview-entity-get-id-internal'.
2783
2784         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2785         elmo-msgdb-overview-entity-set-number,
2786         elmo-msgdb-overview-entity-get-references,
2787         elmo-msgdb-overview-entity-set-references,
2788         elmo-msgdb-overview-entity-get-from-no-decode,
2789         elmo-msgdb-overview-entity-get-from,
2790         elmo-msgdb-overview-entity-set-from,
2791         elmo-msgdb-overview-entity-get-subject,
2792         elmo-msgdb-overview-entity-get-subject-no-decode,
2793         elmo-msgdb-overview-entity-set-subject,
2794         elmo-msgdb-overview-entity-get-date,
2795         elmo-msgdb-overview-entity-set-date,
2796         elmo-msgdb-overview-entity-get-to,
2797         elmo-msgdb-overview-entity-get-cc,
2798         elmo-msgdb-overview-entity-get-size,
2799         elmo-msgdb-overview-entity-set-size,
2800         elmo-msgdb-overview-entity-get-extra,
2801         elmo-msgdb-overview-entity-set-extra,
2802         elmo-msgdb-overview-entity-get-extra-field,
2803         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2804         and rewrote for backward compatibility.
2805
2806 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2807
2808         * elmo.el (elmo-message-entity-number,
2809         elmo-message-entity-set-number,
2810         elmo-message-entity-field,
2811         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2812
2813         * elmo-msgdb.el (elmo-message-entity-number,
2814         elmo-message-entity-set-number,
2815         elmo-message-entity-field,
2816         elmo-message-entity-set-field): Moved from elmo.el.
2817
2818 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2819
2820         * elmo.el (toplevel): Changed definition orders.
2821
2822 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2823
2824         * modb.el (elmo-msgdb-search): New API .
2825         (elmo-msgdb-match-condition): Ditto.
2826
2827         * modb-standard.el (elmo-msgdb-search): Define.
2828
2829         * modb-legacy.el (elmo-msgdb-search): Ditto.
2830
2831         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2832         from elmo-msgdb-match-condition-internal.
2833
2834         * elmo.el (elmo-folder-search-fast): Abolish.
2835         (elmo-folder-search): Use elmo-msgdb-search and
2836         elmo-with-progress-display.
2837
2838         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2839         as msgdb API.
2840
2841         * elmo.el (elmo-folder): Remove slot message-modified and
2842         flag-modified.
2843         (elmo-folder-set-message-modified): Abolish.
2844         (elmo-generic-folder-commit): Follow the change above.
2845         (elmo-folder-synchronize): Ditto.
2846
2847         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2848
2849         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2850
2851         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2852
2853 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2854
2855         * modb-standard.el (modb-standard-make-message-entity,
2856         elmo-msgdb-make-message-entity,
2857         elmo-msgdb-create-message-entity-from-buffer,
2858         elmo-msgdb-message-entity-number,
2859         elmo-msgdb-message-entity-set-number,
2860         elmo-msgdb-message-entity-field,
2861         elmo-msgdb-message-entity-set-field,
2862         elmo-msgdb-copy-message-entity,
2863         elmo-msgdb-match-condition-internal): Remove.
2864
2865         * modb-entity.el: New file (again).
2866
2867         * modb.el (toplevel): Require modb-entity.
2868         (elmo-msgdb-message-entity-handler): New method.
2869
2870         * modb-standard.el (modb-standard-entity-id): Use
2871         elmo-message-entity-handler.
2872         (modb-standard-load-entity): Ditto.
2873         (elmo-msgdb-append-entity): Ditto.
2874         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2875
2876         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2877         elmo-msgdb-decoded-cache-hashtb,
2878         (modb-legacy-make-message-entity,
2879         elmo-msgdb-make-message-entity,
2880         elmo-msgdb-create-message-entity-from-buffer,
2881         elmo-msgdb-message-entity-number,
2882         elmo-msgdb-message-entity-set-number,
2883         elmo-msgdb-message-entity-field,
2884         elmo-msgdb-message-entity-set-field,
2885         elmo-msgdb-copy-message-entity,
2886         elmo-msgdb-match-condition-internal,
2887         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2888
2889         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2890         (elmo-message-entity-set-number): Ditto.
2891         (elmo-message-entity-field): Ditto.
2892         (elmo-message-entity-set-field): Ditto.
2893
2894         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2895
2896         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2897
2898         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2899
2900         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2901         (elmo-nntp-msgdb-create-message): Ditto.
2902
2903         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2904         (elmo-folder-msgdb-create): Add unread flag.
2905
2906         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2907
2908         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2909
2910         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2911
2912         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2913
2914         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2915         elmo-msgdb-messge-entity-handler.
2916         * elmo-version.el (elmo-version): Up to 2.11.17.
2917
2918 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2919
2920         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2921         change.
2922
2923 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2924
2925         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2926
2927         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2928         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2929         (elmo-msgdb-flag-table): Ditto.
2930         (elmo-msgdb-sort-by-date): Ditto.
2931
2932         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2933
2934         * modb-standard.el (toplevel): Require mime.
2935         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2936         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2937         elmo-msgdb-message-entity-number.
2938         (elmo-msgdb-append-entity): Ditto.
2939         (elmo-msgdb-create-message-entity-from-file): Remove.
2940         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2941         corresponds to the entity.
2942         (elmo-msgdb-message-entity-number): Do nothing currently.
2943         (elmo-msgdb-message-entity-field): Ditto.
2944         (elmo-msgdb-message-entity-set-field): Ditto.
2945         (elmo-msgdb-copy-message-entity): Ditto.
2946         (elmo-msgdb-match-condition-internal): Ditto.
2947
2948         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2949         elmo-util.el.
2950         (elmo-msgdb-create-message-entity-from-file): Remove.
2951
2952         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2953         modb-legacy.el.
2954         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2955
2956         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2957
2958 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2959
2960         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2961         (elmo-msgdb-message-entity-field): Ditto.
2962         (elmo-msgdb-message-entity-number): Ditto.
2963
2964 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2965
2966         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2967         Fixed how to set extra field into entity.
2968         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2969         symbol.
2970
2971         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2972         Fixed how to set extra field into entity.
2973         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2974         symbol.
2975
2976 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2977
2978         * modb.el (elmo-message-entity-db): New function.
2979         (elmo-msgdb-make-message-entity): New API.
2980         (elmo-msgdb-message-entity-number): Ditto.
2981         (elmo-msgdb-message-entity-set-number): Ditto.
2982         (elmo-msgdb-message-entity-field): Ditto.
2983         (elmo-msgdb-message-entity-set-field): Ditto.
2984         (elmo-msgdb-copy-message-entity): Ditto.
2985         (elmo-msgdb-create-message-entity-from-file): Ditto.
2986         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2987         (elmo-msgdb-match-condition-internal): Ditto.
2988
2989         * modb-standard.el (modb-legacy): Require modb-legacy.
2990         (modb-standard-make-message-entity): New inline function.
2991         (elmo-msgdb-make-message-entity): Define.
2992         (elmo-msgdb-create-message-entity-from-file): Ditto.
2993         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2994         (elmo-msgdb-message-entity-field): Ditto.
2995         (elmo-msgdb-message-entity-set-field): Ditto.
2996         (elmo-msgdb-copy-message-entity): Ditto.
2997         (elmo-msgdb-match-condition-internal): Ditto.
2998
2999         * modb-legacy.el: Don't require modb-entity.
3000         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
3001         (elmo-msgdb-match-condition-primitive): Ditto.
3002         (elmo-msgdb-get-decoded-cache): Ditto.
3003         (elmo-msgdb-overview-entity-get-id): Ditto.
3004         (elmo-msgdb-overview-entity-get-number): Ditto.
3005         (elmo-msgdb-overview-entity-set-number): Ditto.
3006         (elmo-msgdb-overview-entity-get-references): Ditto.
3007         (elmo-msgdb-overview-entity-set-references): Ditto.
3008         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
3009         (elmo-msgdb-overview-entity-get-from): Ditto.
3010         (elmo-msgdb-overview-entity-set-from): Ditto.
3011         (elmo-msgdb-overview-entity-get-subject): Ditto.
3012         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
3013         (elmo-msgdb-overview-entity-set-subject): Ditto.
3014         (elmo-msgdb-overview-entity-get-date): Ditto.
3015         (elmo-msgdb-overview-entity-set-date): Ditto.
3016         (elmo-msgdb-overview-entity-get-to): Ditto.
3017         (elmo-msgdb-overview-entity-get-cc): Ditto.
3018         (elmo-msgdb-overview-entity-get-size): Ditto.
3019         (elmo-msgdb-overview-entity-set-size): Ditto.
3020         (elmo-msgdb-overview-entity-get-extra): Ditto.
3021         (elmo-msgdb-overview-entity-set-extra): Ditto.
3022         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
3023         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3024         (elmo-msgdb-number-load): Ditto.
3025         (elmo-msgdb-overview-load): Ditto.
3026         (elmo-msgdb-mark-load): Ditto.
3027         (elmo-msgdb-number-save): Ditto.
3028         (elmo-msgdb-mark-save): Ditto.
3029         (elmo-msgdb-overview-save): Ditto.
3030         (modb-legacy-make-message-entity): New inline function.
3031         (elmo-msgdb-insert-file-header): Ditto.
3032         (elmo-msgdb-make-message-entity): Define.
3033         (elmo-msgdb-create-message-entity-from-file): Ditto.
3034         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
3035         (elmo-msgdb-message-entity-number): Ditto.
3036         (elmo-msgdb-message-entity-set-number): Ditto.
3037         (elmo-msgdb-message-entity-field): Ditto.
3038         (elmo-msgdb-message-entity-set-field): Ditto.
3039         (elmo-msgdb-copy-message-entity): Ditto.
3040         (elmo-msgdb-match-condition-internal): Ditto.
3041
3042         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
3043         (elmo-message-copy-entity): Rewrite.
3044         (elmo-message-entity-number): Ditto.
3045         (elmo-message-entity-set-number): Ditto.
3046         (elmo-message-entity-field): Use elmo-message-entity-db.
3047         (elmo-message-entity-set-field): Ditto.
3048         (elmo-message-field): Rewrite.
3049
3050         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
3051         elmo-msgdb.el
3052         (elmo-msgdb-get-message-id-from-buffer): Ditto.
3053
3054         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3055         elmo-message-entity-field.
3056         (elmo-shimbun-folder-shimbun-header): Ditto.
3057         (elmo-shimbun-entity-to-header): Ditto.
3058         (elmo-folder-msgdb-create): Ditto.
3059         (elmo-shimbun-msgdb-create-entity): Ditto;
3060         Use elmo-msgdb-create-message-entity-from-buffer.
3061         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
3062         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
3063
3064         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
3065         elmo-msgdb-create-message-entity-from-file and 
3066         elmo-message-entity-field.
3067
3068         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3069         elmo-message-entity-number.
3070         (elmo-pop3-msgdb-create-message): Use
3071         elmo-msgdb-create-message-entity-from-buffer,
3072         elmo-message-entity-set-field, elmo-message-entity-number and
3073         elmo-message-entity-set-number.
3074
3075         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
3076         the API change in elmo-msgdb-make-message-entity.
3077         (elmo-nntp-msgdb-create-message): Use
3078         elmo-msgdb-create-message-entity-from-buffer.
3079
3080         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
3081         elmo-message-entity-field and
3082         elmo-msgdb-create-message-entity-from-file.
3083
3084         * elmo-msgdb.el (toplevel): Don't require modb-entity.
3085         (elmo-msgdb-get-field): Abolish.
3086         (elmo-msgdb-get-number): Rewrite.
3087         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
3088         (elmo-msgdb-flag-table): Ditto.
3089         (elmo-msgdb-get-last-message-id,
3090         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3091         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3092         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3093         (elmo-msgdb-create-overview-from-buffer,
3094         elmo-msgdb-overview-get-parent-entity): Abolish.
3095
3096         * elmo-mime.el (elmo-mime-display-as-is): Use
3097         elmo-message-entity-field.
3098
3099         * elmo-map.el (elmo-folder-pack-numbers): Use
3100         elmo-message-entity-set-number.
3101
3102         * elmo-maildir.el (elmo-folder-msgdb-create): 
3103         elmo-msgdb-create-message-entity-from-file instead of
3104         elmo-msgdb-create-overview-entity-from-file.
3105
3106         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3107         msgdb.
3108         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3109         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3110
3111         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3112         elmo-messge-entity-field and elmo-message-entity-number.
3113         (elmo-imap4-fetch-callback-1): Call
3114         elmo-msgdb-create-message-entity-from-buffer instead of
3115         elmo-msgdb-create-overview-from-buffer. 
3116         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3117         (elmo-find-fetch-strategy): Likewise.
3118
3119         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3120         elmo-localdir-msgdb-create-entity with argument msgdb.
3121
3122         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3123         and elmo-message-entity-set-number.
3124
3125         * elmo-cache.el (elmo-folder-msgdb-create): Use
3126         elmo-message-entity-field.
3127         (elmo-folder-msgdb-create): Call
3128         elmo-msgdb-create-message-entity-from-file instead of
3129         elmo-msgdb-create-overview-entity-from-file.
3130
3131         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3132         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3133         instead of elmo-msgdb-create-overview-from-buffer.
3134         (elmo-archive-msgdb-create-entity): Ditto.
3135         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3136         elmo-message-entity-field.
3137         (elmo-archive-parse-mmdf): Ditto.
3138
3139         * modb-entity.el: Removed.
3140
3141         * elmo-version.el (elmo-version): Up to 2.11.16.
3142
3143 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3144
3145         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3146         `is-local'.
3147         (elmo-folder-flag-as-answered): Ditto.
3148
3149 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3150
3151         * modb-standard.el: New file.
3152
3153         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3154         elmo-msgdb-convert-type is `sync'.
3155
3156         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3157         (elmo-msgdb-convert-type): New user option.
3158
3159         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3160         (elmo-load-msgdb): Auto detect saved type.
3161
3162         * elmo-version.el (elmo-version): Up to 2.11.15.
3163
3164 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3165
3166         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3167
3168         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3169         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3170         with argument `delete-if-none' when dst-folder is 'null.
3171
3172         * elmo-flag.el (elmo-folder-append-messages): Defined.
3173         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3174
3175 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3176
3177         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3178
3179 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3180
3181         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3182         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3183         (elmo-folder-commit): Ditto.
3184
3185 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3186
3187         * elmo-flag.el: New file.
3188
3189         * elmo-mark.el: Removed.
3190
3191         * modb-legacy.el (modb-legacy-new-mark,
3192         modb-legacy-unread-uncached-mark,
3193         modb-legacy-unread-cached-mark,
3194         modb-legacy-read-uncached-mark,
3195         modb-legacy-answered-cached-mark,
3196         modb-legacy-answered-uncached-mark,
3197         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3198         All other related portions are changed.
3199
3200         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3201         (elmo-folder-list-messages-with-global-mark): Abolish.
3202         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3203         (elmo-folder-flag-as-important): Ditto.
3204         (elmo-folder-unflag-read): Ditto.
3205         (elmo-folder-flag-as-read): Ditto.
3206         (elmo-folder-unflag-answered): Ditto.
3207         (elmo-folder-flag-as-answered): Ditto.
3208         (elmo-message-encache): Return the cache path.
3209         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3210         (elmo-message-set-flag): Transitional implementation.
3211         (elmo-message-unset-flag): Ditto.
3212         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3213         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3214         (elmo-init): Call elmo-global-flag-initialize.
3215         (toplevel): Added autoload settings for elmo-flag.
3216
3217         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3218
3219         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3220         (elmo-file-cache-delete): Don't treat global-mark.
3221
3222         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3223
3224         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3225
3226         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3227         `elmo-global-flags-set'.
3228
3229         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3230         `flag'.
3231         (elmo-folder-unflag-read): Ditto.
3232         (elmo-folder-unflag-important): Ditto.
3233         (elmo-folder-flag-as-important): Ditto.
3234         (elmo-folder-unflag-answered): Ditto.
3235         (elmo-folder-flag-as-answered): Ditto.
3236
3237         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3238         `elmo-global-flags-set'.
3239         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3240
3241         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3242
3243         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3244         `flag'.
3245         (elmo-folder-flag-as-important): Ditto.
3246         (elmo-folder-unflag-important): Ditto.
3247         (elmo-folder-flag-as-important): Ditto.
3248         (elmo-folder-unflag-read): Ditto.
3249         (elmo-folder-flag-as-read): Ditto.
3250         (elmo-folder-unflag-answered): Ditto.
3251         (elmo-folder-flag-as-answered): Ditto.
3252
3253         * elmo-multi.el (elmo-folder-list-importants): Don't call
3254         elmo-folder-list-messages-with-global-mark.
3255         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3256         (elmo-folder-unflag-important): Ditto.
3257         (elmo-folder-flag-as-read): Ditto.
3258         (elmo-folder-unflag-read): Ditto.
3259         (elmo-folder-flag-as-answered): Ditto.
3260         (elmo-folder-unflag-answered): Ditto.
3261
3262         * elmo-msgdb.el (elmo-msgdb-new-mark,
3263         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3264         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3265         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3266         (Moved to modb-legacy.el).
3267         (elmo-flag-table-get): Treat important flag too.
3268
3269         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3270         `mark' to `flag'.
3271         (elmo-map-folder-flag-as-important): Ditto.
3272         (elmo-map-folder-unflag-read): Ditto.
3273         (elmo-map-folder-flag-as-read): Ditto.
3274         (elmo-map-folder-unflag-answered): Ditto.
3275         (elmo-map-folder-flag-as-answered): Ditto.
3276         (elmo-folder-unflag-important): Ditto.
3277         (elmo-folder-flag-as-important): Ditto.
3278         (elmo-folder-unflag-read): Ditto.
3279         (elmo-folder-flag-as-read): Ditto.
3280         (elmo-folder-unflag-answered): Ditto.
3281         (elmo-folder-flag-as-answered): Ditto.
3282
3283         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3284         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3285         `flag'.
3286         (elmo-map-folder-unflag-important): Ditto.
3287         (elmo-map-folder-flag-as-read): Ditto.
3288         (elmo-map-folder-unflag-read): Ditto.
3289         (elmo-map-folder-flag-as-answered): Ditto.
3290         (elmo-map-folder-unflag-answered): Ditto.
3291
3292         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3293         `elmo-global-flags-set'.
3294         (elmo-global-flags-set): Added autoload setting.
3295
3296         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3297         `flag'.
3298
3299         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3300         `elmo-msgdb-global-mark-set'.
3301         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3302         Call `elmo-global-flags-set'.
3303         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3304         `flag'.
3305         (elmo-folder-flag-as-important-plugged): Ditto.
3306         (elmo-folder-unflag-read-plugged): Ditto.
3307         (elmo-folder-flag-as-read-plugged): Ditto.
3308         (elmo-folder-unflag-answered-plugged): Ditto.
3309         (elmo-folder-flag-as-answered-plugged): Ditto.
3310         (elmo-global-flags-set): Added autoload setting.
3311
3312         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3313         `flag'.
3314         (elmo-folder-unflag-read): Ditto.
3315         (elmo-folder-flag-as-important): Ditto.
3316         (elmo-folder-unflag-important): Ditto.
3317         (elmo-folder-flag-as-answered): Ditto.
3318         (elmo-folder-unflag-answered): Ditto.
3319
3320         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3321         change of `mark'->`flag'.
3322         (elmo-dop-queue-method-name-alist): Ditto.
3323         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3324         (elmo-folder-unflag-read-dop): Ditto.
3325         (elmo-folder-flag-as-important-dop): Ditto.
3326         (elmo-folder-unflag-important-dop): Ditto.
3327         (elmo-folder-flag-as-answered-dop): Ditto.
3328         (elmo-folder-unflag-answered-dop): Ditto.
3329
3330         * elmo-cache.el (elmo-folder-msgdb-create): Call
3331         `elmo-global-flags-set'.
3332
3333         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3334         Call `elmo-global-flags-set'.
3335         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3336         elmo-archive-parse-mmdf with argument `folder'.
3337         (elmo-archive-parse-mmdf): Added argument `folder';
3338         Call `elmo-global-flags-set'.
3339
3340         * elmo-version.el (elmo-version): Up to 2.11.14.
3341
3342 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3343
3344         * modb.el (elmo-msgdb-length): Define.
3345
3346         * elmo.el (elmo-make-folder): Fixed.
3347         (elmo-generic-folder-append-messages): Follow the API change.
3348
3349         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3350         API change.
3351
3352 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3353
3354         * modb.el: New file.
3355
3356         * modb-entity.el: Ditto.
3357
3358         * modb-legacy.el: Ditto.
3359
3360         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3361         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3362         of `elmo-msgdb-overview-get-entity'.
3363         (elmo-msgdb-get-field): Ditto.
3364         (elmo-msgdb-merge): Moved to `elmo.el'.
3365         (elmo-msgdb-length): Removed; redefine as modb method.
3366         (elmo-msgdb-change-mark): Abolish.
3367         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3368         (elmo-msgdb-match-condition): Don't use mark.
3369         (elmo-msgdb-overview-get-entity): Abolish.
3370         Split modb part into `modb*.el'.
3371
3372         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3373
3374         * elmo-shimbun.el (shimbun-mua-search-id): Use
3375         `elmo-msgdb-message-entity' instead of
3376         `elmo-msgdb-overview-get-entity'.
3377         (elmo-shimbun-folder-shimbun-header): Ditto.
3378         (elmo-shimbun-get-headers): Ditto.
3379         (elmo-shimbun-update-overview): Ditto.
3380
3381         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3382
3383         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3384
3385         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3386         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3387
3388         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3389         `elmo-msgdb-mark-to-flags'.
3390
3391         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3392         `elmo-msgdb-set-path'.
3393
3394         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3395  
3396         * elmo-version.el (elmo-version): Up to 2.11.13.
3397
3398         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3399
3400         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3401         of mark.
3402
3403 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3404
3405         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3406         mismatch.
3407
3408 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3409
3410         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3411         instead of `elmo-msgdb-get-cached'.
3412         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3413
3414         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3415         (elmo-msgdb-set-cached): Ditto.
3416         (elmo-msgdb-set-flag): Rewrite.
3417         (elmo-msgdb-unset-flag): Ditto.
3418
3419         * elmo-msgdb.el: Rewrite with luna.
3420
3421         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3422         (elmo-folder-msgdb): Follow the change above.
3423         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3424         (elmo-folder-unmark-important): Follow the API change.
3425         (elmo-folder-mark-as-important): Ditto.
3426         (elmo-folder-unmark-read): Ditto.
3427         (elmo-folder-mark-as-read): Ditto.
3428         (elmo-folder-unmark-answered): Ditto.
3429         (elmo-folder-mark-as-answered): Ditto.
3430         (elmo-folder-clear): Likewise.
3431
3432         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3433         instead of `elmo-msgdb-load' (renamed).
3434
3435         * elmo-version.el (elmo-version): Up to 2.11.12.
3436
3437 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3438
3439         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3440         change.
3441         (elmo-message-mark): Abolish.
3442         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3443         instead of `elmo-msgdb-change-mark'.
3444
3445         * elmo-pipe.el (elmo-message-mark): Abolish.
3446
3447         * elmo-multi.el (elmo-message-mark): Ditto.
3448
3449         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3450         (elmo-msgdb-unread-uncached-mark): Ditto.
3451         (elmo-msgdb-unread-cached-mark): Ditto.
3452         (elmo-msgdb-read-uncached-mark): Ditto.
3453         (elmo-msgdb-answered-cached-mark): Ditto.
3454         (elmo-msgdb-answered-uncached-mark): Ditto.
3455         (elmo-msgdb-important-mark): Ditto.
3456         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3457         `use-cache'.
3458         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3459         `flags'.
3460         (elmo-flag-table-load): Changed flag to list of flag.
3461         (elmo-flag-table-set): If flags is nil, set read flag.
3462         (elmo-flag-table-get): Return derived flags from global mark,
3463         cache status and saved flags.
3464         (elmo-msgdb-flag-table): Follow the change above.
3465         (elmo-msgdb-out-of-date-messages): New function.
3466
3467         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3468
3469         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3470
3471         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3472
3473         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3474         (elmo-nntp-msgdb-create-message): Ditto.
3475
3476         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3477
3478         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3479         independent.
3480         (elmo-folder-msgdb-create): Follow the API change.
3481
3482         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3483         (elmo-folder-append-messages): Ditto.
3484
3485         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3486         (elmo-folder-append-buffer): Ditto.
3487
3488         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3489
3490         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3491
3492         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3493         (elmo-archive-parse-mmdf): Ditto.
3494
3495         * elmo-version.el (elmo-version): Up to 2.11.11.
3496
3497 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3498
3499         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3500         `elmo-msgdb-mark'.
3501
3502         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3503
3504         * elmo-pipe.el (elmo-message-flags): Defined.
3505
3506         * elmo-multi.el (elmo-message-flags): Ditto.
3507
3508 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3509
3510         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3511         `elmo-msgdb-delete-msgs'.
3512
3513         * elmo.el (elmo-folder-count-flags): Don't use
3514         `elmo-msgdb-get-mark-alist'.
3515         (elmo-folder-detach-messages): Follow the API change.
3516
3517         * elmo.el (elmo-folder-list-messages): Append killed messages into
3518         result if `visible-only' is nil.
3519
3520         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3521         canceled messages.
3522         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3523         (elmo-folder-update-number): Likewise.
3524
3525         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3526         (elmo-pop3-sort-msgdb-by-original-number): Use
3527         `elmo-msgdb-sort-entities'.
3528
3529         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3530         (elmo-msgdb-sort-by-date): Use it.
3531         (elmo-msgdb-overview-sort-by-date): Abolish.
3532
3533         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3534
3535         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3536         (elmo-msgdb-flags): New function.
3537         (elmo-msgdb-merge): Use elmo-msgdb-append.
3538
3539         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3540         change.
3541
3542         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3543
3544         * elmo-dop.el (elmo-folder-status-dop): Use
3545         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3546
3547 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3548
3549         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3550
3551         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3552
3553         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3554
3555         * elmo-util.el (elmo-with-progress-display): New macro.
3556
3557         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3558
3559 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3560
3561         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3562         `elmo-folder-list-message-entities' instead of
3563         `elmo-msgdb-get-overview'.
3564         (elmo-map-folder-list-message-locations): Ditto.
3565
3566         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3567         methods instead of treat directly).
3568         (elmo-msgdb-clear): Ditto.
3569         (elmo-msgdb-delete-msgs): Ditto.
3570         (elmo-msgdb-sort-by-date): Ditto.
3571
3572         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3573         local variables.
3574         (elmo-nntp-folder-msgdb-create): Follow the API change.
3575
3576         * elmo-version.el (elmo-version): Up to 2.11.10.
3577
3578 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3579
3580         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3581         (elmo-msgdb-flags-to-mark): Ditto.
3582         (elmo-msgdb-append-entity): Ditto.
3583
3584         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3585         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3586         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3587         (elmo-archive-parse-mmdf): Ditto.
3588
3589         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3590
3591         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3592
3593         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3594
3595         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3596
3597         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3598
3599         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3600
3601         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3602
3603         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3604
3605         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3606         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3607         to empty msgdb.
3608
3609         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3610         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3611         instead of directly construction.
3612         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3613         instead of construct msgdb.
3614
3615         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3616         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3617         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3618         instead of construct msgdb.
3619
3620 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3621
3622         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3623         when field is from or subject.
3624
3625 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3626
3627         * elmo-multi.el (elmo-message-entity-parent): Define.
3628         (elmo-folder-search): Rewrite.
3629
3630 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3631
3632         * elmo-multi.el (elmo-message-cached-p): Define.
3633
3634         * elmo.el (elmo-message-cached-p): New method.
3635         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3636         (elmo-message-flags): New method.
3637         (elmo-message-flagged-p): New function.
3638
3639         * elmo-version.el (elmo-version): Up to 2.11.9.
3640
3641 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3642
3643         * elmo-version.el (elmo-version): Up to 2.11.8.
3644
3645         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3646
3647         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3648
3649 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3650
3651         * elmo.el (elmo-folder-detach-messages): Undo last change.
3652
3653 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3654
3655         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3656
3657         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3658         only when src folder type is pop3.
3659
3660 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3661
3662         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3663         elmo-msgdb-overview-entity-get-number instead of
3664         elmo-message-entity-number.
3665
3666 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3667
3668         * elmo-version.el (elmo-version): Up to 2.11.7.
3669
3670 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3671
3672         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3673         function.
3674
3675         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3676         (elmo-msgdb-merge): New function.
3677         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3678         (elmo-msgdb-make-index): Rewrite.
3679
3680         * elmo-version.el (elmo-version): Up to 2.11.6.
3681
3682         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3683         use it as a the path for loading message entities.
3684
3685         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3686
3687 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3688
3689         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3690         message-modified slot of itself if it does not require target msgdb.
3691
3692         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3693         if folder length is zero.
3694         (elmo-mime-display-as-is): Ditto.
3695
3696         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3697
3698         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3699
3700 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3701
3702         * elmo.el (elmo-folder-set-message-modified): New method.
3703         (elmo-generic-folder-commit): Use it.
3704         (elmo-folder-synchronize): Ditto.
3705
3706         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3707         (elmo-folder-commit): Remove duplicate definition.
3708
3709 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3710
3711         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3712
3713 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3714
3715         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3716         (elmo-strict-folder-diff): Ditto.
3717         (elmo-folder-set-info-max-by-numdb): Simplify.
3718
3719         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3720         elmo-msgdb-list-messages.
3721
3722         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3723         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3724
3725 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3726
3727         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3728         visible-only is non-nil.
3729         (elmo-folder-confirm-appends): Changed message.
3730         (elmo-folder-synchronize): Added argument disable-killed.
3731
3732         * elmo-multi.el (elmo-folder-synchronize): Added argument
3733         disable-killed.
3734
3735         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3736
3737         * elmo-version.el (elmo-version): Up to 2.11.5.
3738
3739         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3740         elmo-list-filter.
3741
3742         * elmo-util.el (elmo-list-filter): Simplify.
3743
3744         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3745         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3746         (elmo-generic-folder-diff): Abolish argument.
3747         (elmo-msgdb-load): Don't use number-alist.
3748
3749         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3750
3751         * elmo-pipe.el (elmo-folder-diff): Ditto.
3752
3753         * elmo-nmz.el (elmo-folder-diff): Ditto.
3754
3755         * elmo-net.el (elmo-folder-diff): Ditto.
3756
3757         * elmo-maildir.el (elmo-folder-diff): Ditto.
3758
3759         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3760
3761         * elmo-multi.el (elmo-folder-diff): Ditto
3762         (elmo-multi-folder-diff): Rewrite.
3763
3764 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3765
3766         * elmo-pipe.el (elmo-folder-msgdb): Define.
3767
3768 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3769
3770         * elmo.el (elmo-message-set-cached): Define as a method.
3771
3772         * elmo-pipe.el (elmo-message-set-cached): Define.
3773         (elmo-find-fetch-strategy): Ditto.
3774
3775         * elmo-multi.el (elmo-message-set-cached): Define.
3776         (elmo-find-fetch-strategy): Rewrite.
3777
3778         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3779
3780         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3781
3782 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3783
3784         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3785         instead of number-alist.
3786
3787         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3788         mark nor message-id when msgdb of source folder is not loaded.
3789
3790         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3791
3792         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3793
3794 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3795
3796         * elmo.el (elmo-folder-length): Don't require msgdb.
3797
3798 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3799
3800         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3801         (elmo-message-field): Ditto.
3802
3803         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3804         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3805         slot.
3806         (elmo-map-folder-list-answereds): Define.
3807         (elmo-maildir-list-location): Treat 'R' info.
3808         (elmo-folder-msgdb-create): Treat flag-table.
3809         (elmo-folder-append-messages): Save flag-table.
3810
3811 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3812
3813         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3814         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3815
3816 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3817
3818         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3819
3820         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3821         'read when mark is null.
3822
3823 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3824
3825         * elmo-version.el (elmo-version): Up to 2.11.4.
3826
3827 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3828
3829         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3830         (elmo-folder-mark-as-answered): Ditto.
3831
3832 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3833
3834         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3835         (elmo-pop3-get-session): Make msgdb directory after session.
3836         (elmo-folder-exists-p): Check exactly at the first time even when the
3837         elmo-pop3-exists-exactly is nil.
3838
3839         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3840         (elmo-folder-list-messages): Define instead of
3841         elmo-folder-list-messages-internal.
3842         (elmo-folder-check): Check destination folder.
3843         (elmo-folder-synchronize): Drain the pipe.
3844
3845         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3846         when msgdb is not loaded.
3847
3848         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3849
3850         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3851         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3852         messages.
3853
3854         * elmo.el (elmo-folder-kill-messages-before): New function.
3855         (elmo-folder-kill-messages): Ditto.
3856         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3857
3858         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3859         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3860         killed not by synchronize (e.g. scoring).
3861
3862 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3863
3864         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3865         treated.
3866         (elmo-folder-search): Follow the change above.
3867
3868         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3869         into the candidates of search field.
3870
3871 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3872
3873         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3874         (elmo-msgdb-unset-flag): Ditto.
3875
3876         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3877
3878 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3879
3880         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3881         (elmo-folder-commit): Define.
3882         (elmo-folder-synchronize): Ditto.
3883         (elmo-folder-list-flagged): Ditto.
3884         (elmo-folder-commit): Ditto.
3885         (elmo-folder-length): Ditto.
3886         (elmo-folder-count-flags): Ditto.
3887         (elmo-message-mark): Ditto.
3888         (elmo-message-field): Ditto.
3889         (elmo-message-entity): Ditto.
3890         (elmo-message-folder): Ditto.
3891
3892 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3893
3894         * elmo.el (elmo-message-field): Define as a method.
3895
3896         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3897         (elmo-message-field): Define.
3898
3899         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3900         (elmo-folder-list-importants): Ditto.
3901         (elmo-folder-list-answereds): Ditto.
3902
3903         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3904         qualifier.
3905         (elmo-folder-mark-as-read): Ditto.
3906         (elmo-folder-unmark-read): Ditto.
3907         (elmo-folder-mark-as-answered): Ditto.
3908         (elmo-folder-unmark-answered): Ditto.
3909         (elmo-folder-list-flagged): Define.
3910         (elmo-folder-commit): Ditto.
3911         (elmo-folder-length): Ditto.
3912         (elmo-folder-count-flags): Ditto.
3913
3914 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3915
3916         * elmo.el (elmo-folder-detach-messages): New method.
3917         (elmo-folder-move-messages): Use it.
3918         (elmo-folder-synchronize): Ditto.
3919
3920         * elmo-multi.el (elmo-folder-detach-messages): Define.
3921
3922         * elmo.el (elmo-message-copy-entity): New function.
3923         (elmo-message-entity-set-number): Ditto.
3924         (elmo-message-mark): Define as method.
3925
3926         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3927         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3928         (elmo-message-entity): Fixed last change.
3929         (elmo-message-mark): Define.
3930         (elmo-folder-msgdb-create): Abolish.
3931         (elmo-multi-folder-append-msgdb): Ditto.
3932         (elmo-multi-folder-diff): Fixed.
3933         (elmo-multi-split-number-alist): Removed.
3934         (elmo-multi-split-mark-alist): Removed.
3935         (elmo-folder-list-messages): Define.
3936         (elmo-folder-list-messages-internal): Removed.
3937
3938         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3939         local file messages.
3940         (elmo-folder-msgdb-create): Fixed read mark.
3941
3942 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3943
3944         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3945         if mark is nil.
3946
3947 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3948
3949         * elmo.el (elmo-folder-list-message-entities): Define as inline
3950         function.
3951         (elmo-folder-messages): Abolish.
3952
3953         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3954         folder.
3955         (elmo-folder-synchronize): Define.
3956         (elmo-message-entity): Define.
3957
3958 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3959
3960         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3961         elmo-imap4-session-select-mailbox.
3962
3963         * elmo.el (elmo-folder-move-messages): Don't display any message.
3964
3965         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3966         parsing.
3967         (elmo-imap4-session-check): Don't wait CHECK response.
3968         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3969
3970 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3971
3972         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3973
3974 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3975
3976         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3977         API.
3978         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3979
3980
3981         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3982         (elmo-folder-list-message-entities): Added argument in-msgdb and
3983         numbers.
3984         (elmo-folder-synchronize): Define as a method.
3985
3986         * elmo-nntp.el (elmo-folder-initialize): Don't use
3987         elmo-nntp-default-user if zero-length username is specified
3988         explicitly.
3989
3990 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3991
3992         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3993         server name in case with username.
3994         (XXX: this is ad-hoc fix against username includes "@", it
3995         should be solved fundamentally)
3996
3997 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3998
3999         * elmo-nntp.el (elmo-nntp-debug): New function.
4000         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
4001         (elmo-network-authenticate-session): Hide auth-info from the log.
4002
4003         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
4004         user name if it is equal to elmo-nntp-default-user.
4005
4006 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4007
4008         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
4009         instead of shimbun-server-internal;
4010         Use shimbun-current-group instead of shimbun-current-group-internal.
4011         (elmo-folder-plugged-p): Use shimbun-server instead of
4012         shimbun-server-internal.
4013         (elmo-folder-set-plugged): Ditto.
4014         (elmo-net-port-info): Ditto.
4015         (elmo-folder-check): Ditto.
4016         (elmo-folder-expand-msgdb-path): Ditto.
4017         (elmo-folder-list-subfolders): Ditto.
4018
4019 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
4020
4021         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
4022         Convert field-name to lower case.
4023         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4024
4025 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
4026
4027         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
4028         `message' and `error' take format string.
4029
4030 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4031
4032         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
4033
4034 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4035
4036         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
4037         recursive call (can't byte compile on emacs 20.7).
4038
4039 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
4040
4041         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
4042         (elmo-folder-list-message-entities): New API.
4043         (elmo-message-entity): Ditto.
4044         (elmo-message-entity-parent): Ditto.
4045         (elmo-folder-do-each-message-entity): Ditto.
4046         (elmo-message-entity-number): Ditto.
4047         (elmo-message-entity-field): Ditto.
4048         (elmo-message-entity-set-field): Ditto.
4049         (elmo-folder-count-flags): Ditto.
4050         (elmo-folder-length): Ditto.
4051
4052         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
4053         not.
4054
4055         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
4056         (elmo-msgdb-count-marks): Abolish.
4057         (elmo-msgdb-make-entity): Ditto.
4058         (elmo-msgdb-do-each-entity): Ditto.
4059         (elmo-msgdb-message-entity): New inline function.
4060         (elmo-msgdb-message-entity-field): Ditto.
4061         (elmo-msgdb-message-entity-set-field): Ditto.
4062         (elmo-msgdb-make-message-entity): New function.
4063
4064 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
4065
4066         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
4067         to flag. (All other related portions are changed.)
4068         (elmo-folder-msgdb-create): Likewise.
4069         (elmo-generic-folder-append-messages): Use flag-table instead of
4070         seen-list.
4071         (elmo-folder-move-messages): Removed redundant process.
4072         (elmo-folder-synchronize): Likewise.
4073
4074         * elmo-msgdb.el (elmo-flag-table-get): New function.
4075         (elmo-flag-table-save): Fixed.
4076         (elmo-msgdb-length): New inline function.
4077         (elmo-msgdb-flag-table): New function.
4078         (elmo-msgdb-mark): Add optional argument new.
4079         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
4080         (elmo-msgdb-seen-list): Ditto.
4081         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4082
4083
4084 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
4085
4086         * elmo.el (elmo-message-set-mark): Abolish.
4087         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
4088         (All related portions are changed.)
4089
4090         * elmo-msgdb.el (toplevel): Added comment.
4091         (elmo-load-msgdb): Added 4th element `path'.
4092         (elmo-msgdb-append): Follow the change above.
4093         (elmo-msgdb-clear): Ditto.
4094         (elmo-msgdb-delete-msgs): Ditto.
4095         (elmo-msgdb-get-path): New inline function.
4096         (elmo-msgdb-set-path): Ditto.
4097         (elmo-flag-table-filename): New variable.
4098         (elmo-flag-table-load): New function.
4099         (elmo-flag-table-set): Ditto.
4100         (elmo-flag-table-save): Ditto.
4101         (elmo-msgdb-get-field-value): Abolish.
4102         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4103
4104 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4105
4106         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4107         the folder has been deleted successfully.
4108         * elmo-imap4.el (elmo-folder-delete): Ditto.
4109         * elmo-archive.el (elmo-folder-delete): Ditto.
4110         * elmo-localdir.el (elmo-folder-delete): Ditto.
4111         * elmo-maildir.el (elmo-folder-delete): Ditto.
4112
4113 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4114
4115         * elmo-util.el (elmo-string-member-ignore-case): New function.
4116         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4117         (elmo-imap4-fetch-callback-1-subr): Likewise.
4118
4119 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4120
4121         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4122         the case of the name attribute "\Noselect".
4123
4124 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4125
4126         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4127
4128         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4129         flist, is not always a member of onum-alist.
4130
4131 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4132
4133         * elmo-version.el (elmo-version): Up to 2.11.3.
4134
4135 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4136
4137         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4138         copied from localdir's one.
4139
4140         * elmo-pipe.el (elmo-folder-rename): New method, rename
4141         destination folder with leaving source folder as it is.
4142
4143 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4144
4145         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4146         replace-regexp.
4147
4148 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4149
4150         * elmo-version.el (elmo-version): Up to 2.11.2.
4151
4152 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4153
4154         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4155         shimbun-open in case of "@".
4156         (elmo-folder-open-internal): Cope with shimbun = nil case.
4157         (elmo-folder-plugged-p): Ditto.
4158         (elmo-folder-list-subfolders): Make list for "@/" group.
4159
4160 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4161
4162         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4163         mailbox (e.g. for %~/something).
4164
4165 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4166
4167         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4168         Replace nested conditional with guard clauses.
4169
4170 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4171
4172         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4173         error [wl:11327].
4174
4175         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4176         print-depth.
4177
4178 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4179
4180         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4181         Replace nested conditional with guard clauses.
4182
4183 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4184
4185         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4186         (elmo-passwd-alist-save): Ditto.
4187         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4188
4189 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4190
4191         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4192         dir-name only if it is absolute path.
4193         (TODO: distinguish +/something and +something)
4194
4195 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4196
4197         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4198         path for "+~/something".
4199
4200 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4201
4202         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4203         as non-directory, cause error before rename-file.
4204         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4205         apropriately, mimic localdir's one.
4206         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4207
4208 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4209
4210         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4211
4212 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4213
4214         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4215
4216         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4217         
4218         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4219         is included in the global-mark or not.
4220
4221 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4222
4223         * utf7.el (toplevel): Avoid error when the function
4224         find-coding-system does not exist.
4225
4226 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4227
4228         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4229         cache even if the folder is plugged.
4230         (elmo-nntp-search-primitive): Do nothing when body search is
4231         invoked (although it is not used by the change above).
4232         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4233
4234 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4235
4236         * elmo-version.el (elmo-version): Up to 2.11.1.
4237
4238 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4239
4240         * elmo-archive.el: Specify charset.
4241
4242 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4243
4244         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4245         process buffer lives or not.
4246
4247         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4248         while flushing queues (It causes infinite loop).
4249
4250 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4251
4252         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4253
4254 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4255
4256         * utf7.el (toplevel): Check the ucs features dynamically.
4257         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4258
4259         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4260         folder is creatabe or not if it already exists.
4261
4262 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4263
4264         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4265
4266         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4267
4268         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4269         (elmo-imap4-read-response): Take care of garbage response.
4270
4271 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4272
4273         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4274         just return nil instead of error.
4275
4276 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4277
4278         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4279         search-key is "body".
4280
4281 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4282
4283         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4284         of elmo-string-matched-assoc to use match-data.
4285         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4286
4287 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4288
4289         * elmo-split.el (elmo-split->): New function.
4290         (elmo-split-<): Ditto.
4291
4292 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4293
4294         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4295         workaround for invalid message-id.
4296
4297 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4298
4299         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4300         return normal pop3 session or pop3 biff session.
4301
4302 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4303
4304         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4305         info part to the cur files when the new files already have it.
4306         (Adviced by Jared Rhine <jared@wordzoo.com>)
4307
4308 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4309
4310         * elmo-split.el (elmo-split-default-action): New variable.
4311         (elmo-split-subr): Use it if all other conditions are passed.
4312         Extend `fname' and rename it as `action'. (implemented
4313         Teranishi-san's idea in [wl:10800])
4314
4315 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4316
4317         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4318         * elmo-util.el: Ditto.
4319
4320 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4321
4322         * elmo.el (elmo-message-accessible-p): Renamed from
4323         elmo-message-cached-p and rewritten.
4324
4325 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4326
4327         * elmo.el (elmo-folder-list-flagged): New generic function.
4328         (elmo-folder-list-importants): New implementation.
4329         (elmo-folder-list-answereds): Ditto.
4330         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4331         Added 'digest'.
4332         (elmo-message-cached-p): New function.
4333         (elmo-message-set-flag): Ditto (no content).
4334         (elmo-message-unset-flag): Ditto.
4335         (elmo-folder-list-messages-mark-match): Abolish.
4336
4337         * elmo-util.el (elmo-regexp-opt): New function.
4338
4339         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4340         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4341         Added 'digest'.
4342         (elmo-msgdb-list-flagged): New function.
4343
4344         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4345         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4346         Added 'digest'.
4347
4348         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4349
4350 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4351
4352         * elmo-version.el (elmo-version): Up to 2.11.0.
4353
4354 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4355
4356         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4357         `elmo-file-cache-exists-p'; use proper mark that depends on
4358         `use-cache'.
4359         (elmo-msgdb-unset-flag): Ditto.
4360         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4361
4362         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4363         with 4th argument `use-cache'.
4364
4365 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4366
4367         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4368         (elmo-folder-mark-as-important): Ditto.
4369         (elmo-folder-unmark-read): Ditto.
4370         (elmo-folder-mark-as-read): Ditto.
4371         (elmo-folder-unmark-answered): Ditto.
4372         (elmo-folder-mark-as-answered): Ditto.
4373
4374         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4375         message status.
4376         (elmo-msgdb-mark): Likewise.
4377         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4378         (elmo-msgdb-unset-flag): Likewise.
4379
4380         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4381
4382 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4383
4384         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4385         `last:' filter.
4386
4387 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4388
4389         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4390         set spool-length to 0.
4391
4392 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4393
4394         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4395         (elmo-dop-queue-flush): Fixed last change.
4396
4397 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4398
4399         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4400         if require-msgdb slot is nil.
4401         (elmo-folder-list-importants): Likewise.
4402
4403 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4404
4405         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4406         mark is changed.
4407
4408         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4409         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4410         is changed.
4411
4412 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4413
4414         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4415
4416 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4417
4418         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4419
4420         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4421
4422 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4423
4424         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4425         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4426
4427 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4428
4429         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4430         the problem reported by Sean Rima [wl-en:180].
4431
4432 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4433
4434         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4435
4436         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4437
4438         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4439
4440         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4441
4442         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4443
4444         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4445
4446         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4447
4448 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4449
4450         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4451         status number.
4452
4453 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4454
4455         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4456         (elmo-folder-mark-as-read): Follow the API change.
4457         (elmo-message-set-cached): New function.
4458
4459         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4460
4461         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4462
4463         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4464         (elmo-folder-mark-as-important): Ditto.
4465         (elmo-folder-unmark-read): Ditto.
4466         (elmo-folder-mark-as-read): Ditto.
4467         (elmo-folder-unmark-answered): Ditto.
4468         (elmo-folder-mark-as-answered): Ditto.
4469
4470         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4471         (elmo-folder-unmark-important): Ditto.
4472         (elmo-folder-mark-as-read): Ditto.
4473         (elmo-folder-unmark-read): Ditto.
4474         (elmo-folder-mark-as-answered): Ditto.
4475         (elmo-folder-unmark-answered): Ditto.
4476
4477         * elmo-mark.el (toplevel): Removed some mark method definitions.
4478
4479         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4480         (elmo-map-folder-mark-as-answered): Ditto.
4481         (elmo-folder-unmark-important): Add :before qualifier.
4482         (elmo-folder-mark-as-important): Ditto.
4483         (elmo-folder-unmark-read): Ditto.
4484         (elmo-folder-mark-as-read): Ditto.
4485         (elmo-folder-unmark-answered): Define.
4486         (elmo-folder-mark-as-answered): Ditto.
4487
4488         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4489         (elmo-map-folder-unmark-answered): Ditto.
4490
4491         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4492
4493         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4494         (elmo-folder-mark-as-important): Ditto.
4495         (elmo-folder-unmark-read): Ditto.
4496         (elmo-folder-mark-as-read): Ditto.
4497         (elmo-folder-unmark-answered): Ditto.
4498         (elmo-folder-mark-as-answered): Ditto.
4499
4500         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4501         `mark'; evaluate mark condition.
4502         (elmo-msgdb-match-condition-internal): New function.
4503         (elmo-msgdb-match-condition): Call it; changed argument.
4504
4505         * elmo.el (elmo-folder-search): Follow the API change on
4506         `elmo-msgdb-match-condition'.
4507
4508 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4509
4510         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4511         original mark is non-nil.
4512
4513 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4514
4515         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4516         (elmo-map-folder-list-answereds): New method.
4517         (elmo-folder-list-unreads): Add :around qualifier.
4518         (elmo-folder-list-importants): Ditto.
4519         (elmo-folder-list-answereds): Ditto.
4520
4521 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4522
4523         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4524
4525         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4526         method if msgdb is not required.
4527         (elmo-filter-folder-list-importants): Don't treat global-mark.
4528
4529         * elmo.el (elmo-folder-list-importants): Ditto.
4530
4531         * elmo-net.el (elmo-folder-list-importants): Ditto.
4532
4533         * elmo-map.el (elmo-folder-list-importants): Ditto.
4534
4535         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4536
4537         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4538         (elmo-imap4-folder-list-any-plugged): New function.
4539         (elmo-imap4-search-internal-primitive): Use it.
4540
4541         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4542         only when require-msgdb slot is non-nil.
4543         (elmo-folder-close): Clear target folder's msgdb.
4544
4545 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4546
4547         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4548         (elmo-pop3-msgdb-create-by-header): Ditto.
4549         (elmo-pop3-msgdb-create-message): Ditto.
4550
4551         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4552
4553         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4554
4555         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4556
4557         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4558         (elmo-folder-msgdb-create): Ditto.
4559         (elmo-nntp-folder-msgdb-create): Ditto.
4560         (elmo-nntp-msgdb-create-by-header): Ditto.
4561         (elmo-nntp-msgdb-create-message): Ditto.
4562         (elmo-folder-list-unreads): Define.
4563
4564         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4565         (elmo-folder-append-messages): Ditto.
4566         (elmo-folder-list-unreads): Define.
4567         (elmo-folder-list-importants): Ditto.
4568         (elmo-folder-list-answereds): Ditto.
4569
4570         * elmo-net.el (elmo-folder-list-unreads): Define.
4571         (elmo-folder-list-importants): Ditto.
4572         (elmo-folder-list-answereds): Ditto.
4573         (elmo-folder-list-answereds-plugged): Ditto.
4574         (elmo-folder-msgdb-create): Follow the API change.
4575         (elmo-folder-msgdb-create-unplugged): Ditto.
4576         (elmo-folder-unmark-answered): Define.
4577         (elmo-folder-mark-as-answered-unplugged): Ditto.
4578         (elmo-folder-unmark-answered-unplugged): Ditto.
4579
4580         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4581         (elmo-msgdb-unread-uncached-mark): Ditto.
4582         (elmo-msgdb-unread-cached-mark): Ditto.
4583         (elmo-msgdb-read-uncached-mark): Ditto.
4584         (elmo-msgdb-answered-cached-mark): Ditto.
4585         (elmo-msgdb-answered-uncached-mark): Ditto.
4586         (elmo-msgdb-important-mark): Ditto.
4587         (elmo-msgdb-set-mark): Rewrite.
4588         (elmo-msgdb-count-marks): Rewrite.
4589         (elmo-msgdb-mark-alist-set): Abolish.
4590         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4591         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4592
4593         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4594         (elmo-folder-close): Define.
4595         (elmo-folder-msgdb-create): Follow the API change.
4596         (elmo-folder-list-unreads): Rewrite.
4597         (elmo-folder-mark-as-important): Ditto.
4598         (elmo-folder-unmark-important): Ditto.
4599         (elmo-folder-mark-as-read): Ditto.
4600         (elmo-folder-unmark-read): Ditto.
4601         (elmo-folder-mark-as-answered): Define.
4602         (elmo-folder-unmark-answered): Ditto.
4603
4604         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4605         (elmo-folder-append-messages): Ditto.
4606
4607         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4608
4609         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4610         (elmo-folder-list-importants): Ditto.
4611
4612         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4613         (elmo-folder-append-messages): Ditto.
4614
4615         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4616         change.
4617         (elmo-folder-msgdb-create-plugged): Ditto.
4618         (elmo-folder-append-messages): Ditto.
4619         (elmo-folder-list-answereds-plugged): Define.
4620         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4621         (elmo-folder-unmark-answered-plugged): Define.
4622         (elmo-folder-mark-as-answered-plugged): Ditto.
4623         (elmo-folder-search-requires-msgdb-p): Ditto.
4624
4625         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4626         (elmo-folder-initialize): Set it.
4627         (elmo-folder-msgdb): Define.
4628         (elmo-folder-check): Call elmo-folder-synchronize.
4629         (elmo-folder-close): Define.
4630         (elmo-folder-commit): Ditto.
4631         (elmo-folder-msgdb-create): Rewrite.
4632         (elmo-folder-list-unreads): Ditto.
4633         (elmo-folder-list-importants): Ditto.
4634         (elmo-folder-mark-as-read): Ditto.
4635         (elmo-folder-unmark-read): Ditto.
4636         (elmo-folder-mark-as-important): Ditto.
4637         (elmo-folder-unmark-important): Ditto.
4638         (elmo-folder-mark-as-answered): Define.
4639         (elmo-folder-unmark-answered): Ditto.
4640
4641         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4642         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4643         (elmo-dop-queue-method-name-alist): Likewise.
4644         (elmo-folder-mark-as-answered-dop): New inline function.
4645         (elmo-folder-unmark-answered-dop): Ditto.
4646         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4647
4648         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4649         (elmo-folder-msgdb-create): Ditto.
4650         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4651         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4652         (elmo-archive-parse-mmdf): Ditto.
4653
4654         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4655         (elmo-folder-list-unreads-internal): Ditto.
4656
4657         * elmo.el (elmo-folder-msgdb): Define as generic function.
4658         (elmo-folder-list-messages): Added argument `in-msgdb'.
4659         (elmo-folder-list-unreads): Define as generic function.
4660         (elmo-folder-list-importants): Ditto.
4661         (elmo-folder-list-answereds): Ditto.
4662         (elmo-folder-list-messages-with-global-mark): New function.
4663         (elmo-folder-msgdb-create): Removed mark arguments.
4664         (elmo-folder-unmark-answered): New generic function.
4665         (elmo-folder-mark-as-answered): Ditto.
4666         (elmo-folder-append-messages): Removed argunment `unread-marks'
4667         (elmo-folder-list-unreads-internal): Abolish.
4668         (elmo-folder-list-importants-internal): Ditto.
4669         (elmo-folder-search-requires-msgdb-p): New generic function.
4670         (elmo-folder-search-requires-msgdb-p-internal): New function.
4671         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4672         elmo-msgdb-load.
4673         (elmo-folder-search-fast): Added key 'mark'.
4674         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4675         instead of unread-marks argument.
4676         (elmo-folder-move-messages): Removed argunment `unread-marks'
4677         (elmo-folder-unmark-important): Define.
4678         (elmo-folder-mark-as-important): Ditto.
4679         (elmo-folder-unmark-read): Ditto.
4680         (elmo-folder-mark-as-read): Ditto.
4681         (elmo-folder-unmark-answered): Ditto.
4682         (elmo-folder-mark-as-answered): Ditto.
4683         (elmo-folder-replace-marks): Abolish.
4684         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4685         duplicates.
4686         (elmo-folder-synchronize): Removed mark arguments;
4687         return crosspost only number.
4688
4689 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4690
4691         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4692         Remove redundunt connectivity check.
4693
4694 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4695
4696         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4697         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4698
4699 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4700
4701         * pldap.el (ldap-decode-string): Return string as-is if
4702         `ldap-coding-system' is nil.
4703         (ldap-encode-string): Ditto.
4704         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4705         (ldap-default-host): Fixed docstring.
4706
4707 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4708
4709         * elmo-util.el (elmo-warning): Define as a macro which uses
4710         `display-warning' if it is defined as a function.
4711
4712         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4713         (elmo-split-equal): Use it.
4714         (elmo-split-match): Ditto.
4715         (elmo-split-message-entity): New buffer-local variable.
4716         (elmo-split-subr): Set it.
4717
4718         * elmo-version.el (elmo-version): Up to 2.9.15.
4719
4720 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4721
4722         * elmo-imap4.el (elmo-network-initialize-session):
4723         Check capability after starttls.
4724
4725 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4726
4727         * elmo-util.el (elmo-list-delete): Added optional argument
4728         DELETE-FUNCTION.
4729
4730         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4731
4732         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4733
4734         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4735
4736         * elmo-imap4.el (elmo-folder-initialize): Don't use
4737         elmo-imap4-default-mailbox.
4738
4739 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4740
4741         * elmo-split.el (toplevel): Use `product-provide'.
4742         (elmo-split): Checkdoc.
4743
4744 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4745
4746         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4747         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4748         the function `elmo-imap4-debug-1'.
4749
4750 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4751
4752         * elmo-split.el (elmo-split): Moved to run hooks and to show
4753         message from elmo-split-subr.
4754         (elmo-split-subr): Follow the change above.
4755
4756         * elmo-split.el (elmo-split-subr): New function (renamed from
4757         elmo-split-subr).
4758         (elmo-split): Changed to call elmo-split-subr by element of
4759         elmo-split-folder.
4760         (elmo-split-folder): Changed customization type to choice.
4761
4762 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4763
4764         * elmo-split.el (elmo-split-and): Fixed condition.
4765
4766 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4767
4768         * elmo-split.el: New file.
4769         (elmo-split): Fixed logic.
4770         Display "Test:" instead of "Folder:" when reharsal.
4771
4772         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4773         explicitly.
4774
4775         * elmo-version.el (elmo-version): Up to 2.9.14.
4776
4777         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4778         wl-expand-newtext).
4779
4780 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4781
4782         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4783         message with no message-id field.
4784
4785 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4786
4787         * elmo-version.el (elmo-version): Up to 2.9.13.
4788
4789         * elmo-dop.el (elmo-folder-status-dop): Fix.
4790
4791 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4792
4793         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4794
4795         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4796         changing default value of default-mime-charset.
4797         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4798
4799         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4800
4801         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4802         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4803         instead of elmo-dop-queue-method-name-alist to check merging queue.
4804         (elmo-folder-delete-messages-dop): Delete from queue if negative
4805         message number.
4806         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4807         file is already removed.
4808
4809 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4810
4811         * elmo-vars.el: Bind colon keywords for old Emacsen.
4812
4813 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4814
4815         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4816         against non-exsisting charset.
4817
4818 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4819
4820         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4821         Use eword-decode-and-unfold-unstructured-field-body.
4822
4823         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4824         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4825         exists to decode raw subject string.
4826         (toplevel): Require 'mime.
4827
4828         * elmo-version.el (elmo-version): Up to 2.9.12.
4829
4830 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4831
4832         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4833         (elmo-msgdb-set-mark): Ditto.
4834
4835         * elmo-version.el (elmo-version): Up to 2.9.11.
4836
4837 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4838
4839         * elmo-util.el (elmo-delete-match-files): New function.
4840
4841         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4842         instead of elmo-delete-directory.
4843
4844         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4845         elmo-hash-minimun-size as 63.
4846
4847         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4848         elmo-diff-unread is nil.
4849
4850         * elmo-imap4.el (elmo-folder-open): Fix.
4851
4852         * elmo.el (elmo-message-mark): Rewrite.
4853         (elmo-message-field): Ditto.
4854         (elmo-message-set-mark): Ditto.
4855         (elmo-folder-replace-marks): New function.
4856         (elmo-generic-folder-append-msgdb): Removed third argument for
4857         elmo-msgdb-append.
4858         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4859         (elmo-msgdb-load): New implementation.
4860
4861         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4862
4863         * elmo-util.el (elmo-list-insert): New implementation.
4864
4865         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4866         argument for elmo-msgdb-append.
4867         
4868
4869         * elmo-msgdb.el (elmo-load-msgdb): New function.
4870         (elmo-make-msgdb): Ditto.
4871         (elmo-msgdb-get-index): New inline function.
4872         (elmo-msgdb-set-index): Ditto.
4873         (elmo-msgdb-get-entity-hashtb): Ditto.
4874         (elmo-msgdb-get-mark-hashtb): Ditto.
4875         (elmo-msgdb-get-mark): Ditto.
4876         (elmo-msgdb-set-mark): Ditto.
4877         (elmo-msgdb-count-marks): Ditto.
4878         (elmo-msgdb-get-number): Ditto.
4879         (elmo-msgdb-get-field): Ditto.
4880         (elmo-msgdb-seen-list): Ditto.
4881         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4882         (elmo-msgdb-delete-msgs): Follow the changes above.
4883         (elmo-msgdb-overview-get-entity): Ditto.
4884         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4885         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4886         and rewritten.
4887         (elmo-msgdb-make-index): Likewise.
4888         (elmo-msgdb-append): Removed third argument.
4889         (elmo-msgdb-clear): Clear index as nil.
4890         (elmo-folder-set-info-hashtb): Removed.
4891         (elmo-folder-set-info-max-by-numdb): Ditto.
4892         (elmo-folder-info-make-hashtb): Ditto.
4893
4894         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4895
4896         * elmo-map.el (elmo-folder-pack-number): Ditto.
4897
4898 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4899
4900         * elmo-version.el (elmo-version): Up to 2.9.10.
4901
4902         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4903
4904         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4905
4906 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4907
4908         * elmo-utils.el (elmo-make-directory): Add option.
4909         Default file mode is 700.
4910
4911 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4912
4913         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4914
4915 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4916
4917         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4918         mime-charset.
4919
4920         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4921         and "smaller".
4922
4923 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4924
4925         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4926         (elmo-shimbun-folder-entity-hash): New function.
4927         (elmo-shimbun-folder-shimbun-header): Ditto.
4928         (elmo-shimbun-entity-to-header): Ditto.
4929         (elmo-shimbun-msgdb-to-headers): Removed.
4930         (elmo-shimbun-folder-setup): Ditto.
4931         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4932         for hash key.
4933         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4934         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4935         Removed useless local bind.
4936         (elmo-folder-open-internal): Don't call
4937         `elmo-shimbun-folder-setup'.
4938         (elmo-folder-close-internal): Clear entity-hash slot.
4939         (elmo-folder-clear): Ditto.
4940         (elmo-shimbun-msgdb-create-entity): Use
4941         `elmo-shimbun-folder-shimbun-header'.
4942         (elmo-map-message-fetch): Ditto.
4943         (elmo-shimbun-update-overview): Use overview entity instead of
4944         shimbun header to lookup id by references.
4945         (elmo-map-folder-list-message-locations): Use not only headers but
4946         also overviews to list locations.
4947
4948 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4949
4950         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4951         msgdb path.
4952
4953         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4954
4955 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4956
4957         * elmo-util.el (elmo-read-search-condition-internal): Give default
4958         value for date.
4959
4960 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4961
4962         * elmo-util.el (elmo-condition-parse-search-value): Accept
4963         YYYY-MM-DD format to search.
4964         * elmo-date.el (elmo-date-get-datevec): Likewise.
4965
4966 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4967
4968         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4969         debugging code.
4970
4971 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4972
4973         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4974         from t.
4975
4976         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4977
4978         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4979         case from `elmo-folder-exists-p'.
4980         (elmo-folder-exists-p): Removed.
4981         (elmo-folder-creatable-p) Ditto.
4982
4983         * elmo-net.el (elmo-folder-create): Defined.
4984         (elmo-folder-create-unplugged): New function.
4985         (elmo-folder-exists-p): Changed default value to nil from t.
4986
4987         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4988         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4989
4990         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4991         `elmo-create-folder-dop' and append queue
4992         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4993         (elmo-folder-create-dop-delayed): New function.
4994
4995         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4996
4997         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4998
4999         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
5000         (elmo-folder-writable-p) : Ditto.
5001
5002         * elmo-version.el (elmo-version): Up to 2.9.9.
5003
5004 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5005
5006         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
5007         `elmo-message-use-cache-p' returns nil.
5008         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
5009         (ignore cache file and refer the substance in local folders)
5010
5011 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5012
5013         * elmo-version.el (elmo-version): Up to 2.9.8.
5014
5015 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
5016
5017         * elmo-version.el (elmo-version): Up to 2.9.7.
5018
5019         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
5020
5021 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
5022
5023         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
5024
5025 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
5026
5027         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
5028         from --early.
5029         (elmo-map-folder-list-message-locations): Reverse location list.
5030
5031 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
5032
5033         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
5034
5035 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
5036
5037         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
5038         as a key.
5039         (elmo-nntp-folder-list-subfolders): Follow the change above.
5040
5041 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
5042
5043         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
5044         name if authentication type is specified.
5045
5046 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
5047
5048         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
5049         variable.
5050         (elmo-default-nntp-stream-type): Ditto.
5051         (elmo-default-pop3-stream-type): Ditto.
5052
5053 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
5054
5055         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
5056
5057 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5058
5059         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
5060         elmo-vars.el.
5061         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
5062
5063         * elmo-vars.el (elmo-localnews-folder-path): Removed.
5064         (elmo-maildir-folder-path): Ditto.
5065         (elmo-maildir-list): Ditto (abolished).
5066
5067 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
5068
5069         * elmo-version.el (elmo-version): Up to 2.9.6.
5070
5071 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5072
5073         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
5074         (elmo-maildir-folder-path): Ditto.
5075         (elmo-msgdb-directory): Ditto.
5076         (elmo-passwd-life-time): Ditto.
5077         (elmo-msgdb-extra-fields): Ditto.
5078         (elmo-enable-disconnected-operation): Ditto.
5079
5080 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5081
5082         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5083         other choices.
5084         (elmo-pop3-default-authenticate-type): Ditto.
5085
5086 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5087
5088         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
5089         choices for custom.
5090         (elmo-pop3-default-authenticate-type): Ditto.
5091
5092 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5093
5094         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5095         mailbox to new-folder.
5096
5097 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5098
5099         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5100         less than new, set new as unread.
5101
5102         * elmo-util.el (elmo-string): Don't put text-property if nil.
5103
5104 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5105
5106         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5107         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5108
5109 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5110
5111         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5112         is nil on `completing-read'.
5113
5114 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5115
5116         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5117         for namespace part.
5118         (elmo-imap4-parse-namespace-subr): Ditto.
5119         (elmo-folder-list-subfolders): Append a delimiter when the specified
5120         folder path is a root with namespace and does not end with delimiter.
5121
5122 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5123
5124         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5125         was used.
5126
5127 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5128
5129         * elmo-util.el (elmo-save-buffer): The first argument of message
5130         is a format control string.
5131
5132 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5133
5134         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5135         `elmo-folder-diff').
5136         (elmo-diff-unread): Likewise.
5137
5138 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5139
5140         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5141         is t on `completing-read'.
5142
5143 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5144
5145         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5146         method of target folder with self mark-alist if MARK-ALIST is nil.
5147
5148 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5149
5150         * elmo-version.el (elmo-version): Up to 2.9.5.
5151
5152 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5153
5154         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5155         (elmo-dop-merge-funcs): Remove.
5156
5157 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5158
5159         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5160         Return t if PATH is directory, too.
5161         Use `dolist' instead of while loop.
5162
5163 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5164
5165         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5166         is deleted.
5167
5168 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5169
5170         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5171         return value to t.
5172         (elmo-folder-list-messages-unplugged): Return t if
5173         elmo-enable-disconnected-operation is nil.
5174
5175         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5176         `elmo-folder-list-messages-internal'.
5177
5178 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5179
5180         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5181         Change to looking-at `[23][0-9]+'.
5182         (elmo-network-initialize-session): Use 'error-msg'
5183         * elmo-net.el (elmo-network-open-session): Set unplugged
5184         if elmo-network-initialize-session returns 'elmo-open-err.
5185
5186 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5187
5188         * elmo-version.el (elmo-version): Up to 2.9.4.
5189
5190 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5191
5192         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5193         `elmo-folder-list-messages-internal'.
5194
5195 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5196
5197         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5198         (elmo-message-match-condition): New method.
5199         (elmo-folder-search-fast): New inline function.
5200         (elmo-msgdb-search): Removed.
5201
5202         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5203         target folder if it is unplugged.
5204         (elmo-folder-list-messages-internal): Return t if target folder is
5205         unplugged and itself is persistent; In this case, use list be
5206         searched already.
5207
5208         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5209         (elmo-msgdb-search-internal-primitive): Ditto.
5210         (elmo-msgdb-match-condition): New function.
5211         (elmo-msgdb-match-condition-primitive): Ditto.
5212
5213         * elmo-util.el (elmo-filter-condition-p): New macro.
5214
5215         * elmo-cache.el (elmo-folder-search): Removed.
5216
5217         * elmo-localdir.el (elmo-folder-search): Ditto.
5218
5219         * elmo-maildir.el (elmo-folder-search): Ditto.
5220
5221         * elmo-mark.el (elmo-folder-search): Ditto.
5222
5223         * elmo-nmz.el (elmo-folder-search): Ditto.
5224
5225         * elmo-sendlog.el (elmo-folder-search): Ditto.
5226
5227         * elmo-shimbun.el (elmo-folder-search): Ditto.
5228
5229         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5230         if folder is unplugged.
5231
5232         * elmo-nntp.el (elmo-folder-search): Likewise.
5233         (elmo-nntp-search-internal): New function.
5234
5235         * elmo-version.el (elmo-version): Up to 2.9.3.
5236
5237 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5238
5239         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5240
5241 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5242
5243         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5244
5245 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5246
5247         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5248
5249 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5250
5251         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5252         (elmo-map-folder-list-message-locations): Do drive letter conversion
5253         on Windows environment.
5254         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5255         (elmo-map-message-fetch): Ditto.
5256
5257 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5258
5259         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5260         (elmo-network-initialize-session): Ditto.
5261
5262 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5263
5264         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5265
5266         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5267
5268         * elmo-util.el (elmo-progress-clear): Ditto.
5269
5270         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5271         `DD-Mon-YYYY' type date.
5272
5273 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5274
5275         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5276         `elmo-date-make-sortable-string' instead of
5277         `timezone-make-date-sortable'.
5278
5279         * elmo-date.el (elmo-date-make-sortable-string): Use
5280         `timezone-make-time-string'.
5281
5282 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5283
5284         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5285
5286         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5287         `since'; Fix timezone.
5288
5289         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5290
5291         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5292
5293 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5294
5295         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5296
5297 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5298
5299         * elmo.el (elmo-generic-folder-append-messages): Make
5300         fetch-strategy with `use-cache' as 'maybe. Check return value of
5301         `elmo-message-fetch'.
5302         (elmo-message-fetch): Return return value of
5303         `elmo-message-fetch-with-cache-process'.
5304         (elmo-message-fetch-with-cache-process): Return non-nil if
5305         fetching was succeed. Load cache when fetching was failed and
5306         fetch-strategy-use-cache is 'maybe.
5307
5308         * elmo-util.el (elmo-file-cache-load): New function.
5309
5310         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5311         defun.
5312
5313         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5314         non-nil if fetching was succeed.
5315
5316         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5317
5318         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5319
5320         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5321         (elmo-message-fetch-with-cache-process): Likwise.
5322
5323         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5324
5325         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5326
5327         * elmo-version.el (elmo-version): Up to 2.9.2.
5328
5329 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5330
5331         * elmo.el (elmo-folder-delete): Delete msgdb path.
5332
5333         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5334
5335         * elmo-maildir.el (elmo-folder-delete): Ditto.
5336
5337         * elmo-localdir.el (elmo-folder-delete): Ditto.
5338
5339         * elmo-imap4.el (elmo-folder-delete): Ditto.
5340
5341 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5342
5343         * elmo.el (luna-define-class): Added `biff' slot.
5344
5345         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5346         (elmo-pop3-debug-inhibit-logging): Abolished.
5347         (elmo-network-close-session): Eliminated needless let.
5348         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5349         (elmo-pop3-send-command): Added `no-log' argument.
5350         (elmo-pop3-process-filter): Use `with-current-buffer'.
5351         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5352         if login failure.
5353         (elmo-pop3-auth-apop): Likewise.
5354         (elmo-network-authenticate-session): Likewise.
5355
5356         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5357         if biff folder.
5358
5359         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5360         string to determine protocol.
5361         (elmo-network-session-name-prefix): Abolished.
5362         (elmo-network-session-cache-key): Follow the change above.
5363         (elmo-network-open-session): Ditto.
5364
5365         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5366         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5367
5368         * elmo-version.el (elmo-version): Up to 2.9.1.
5369
5370         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5371         unmatch condition checking.
5372
5373         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5374         condition.
5375
5376 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5377
5378         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5379
5380 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5381
5382         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5383         test for while loop to execute at least one SEARCH command.
5384
5385 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5386
5387         * elmo-version.el (elmo-version): Up to 2.9.0.
5388
5389 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5390
5391         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5392         (elmo-archive-folder-path): Define.
5393         (elmo-folder-initialize): Setup `dir-name' slot.
5394         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5395         Use `dir-name' as prefix of each subfolders.
5396         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5397
5398 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5399
5400         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5401         (elmo-pipe-folder-list-target-messages): New internal function.
5402         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5403         `killed-list'.
5404         (elmo-pipe-folder-copied-list-load): New function.
5405         (elmo-pipe-folder-copied-list-save): Ditto.
5406         (elmo-folder-open-internal): Follow the change above.
5407         (elmo-folder-status): Fixed for copy.
5408
5409 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5410
5411         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5412
5413 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5414
5415         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5416         elmo-copy-file instead of elmo-add-name-to-file.
5417
5418         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5419
5420         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5421         "file://..." index.
5422
5423         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5424         of accept-process-output as 1.
5425         (elmo-pop3-read-contents): Ditto.
5426         (elmo-pop3-read-body): Ditto.
5427
5428 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5429
5430         * elmo-version.el (product-version-as-string): Remove define.
5431
5432 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5433
5434         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5435         (elmo-imap4-copy-messages): Chop number set using
5436         `elmo-imap4-number-set-chop-length'.
5437         (elmo-imap4-set-flag): Ditto.
5438         (elmo-imap4-search-internal-primitive): Ditto.
5439
5440 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5441
5442         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5443         `elmo-folder-make-temp-dir'
5444
5445         * elmo-vars.el (elmo-cache-directory): New variable.
5446         (elmo-cache-dir): Abolished.
5447         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5448
5449         * elmo-version.el (elmo-version): Up to 2.7.7.
5450
5451 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5452
5453         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5454         defcustom; Set default value as t.
5455
5456 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5457
5458         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5459         (ldap-search-program-arguments): Changed default value.
5460         (ldap-search-basic): Accept exit status 4.
5461         (ldap/field-body): Parse options.
5462         (ldap/collect-field): Ditto.
5463         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5464
5465         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5466         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5467         (elmo-imap4-accept-ok): Ditto.
5468         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5469         'notify-bye, only BYE error is reported.
5470         (elmo-folder-exists-p-plugged): Set no-error argument of
5471         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5472
5473         * elmo.el (elmo-imap4-bye-error): Changed message.
5474
5475         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5476         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5477         queues (It causes infinite loop).
5478
5479 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5480
5481         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5482         (RECENT UNSEEN MESSAGES) extension.
5483
5484 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5485
5486         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5487         Check number of overview fields.
5488
5489 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5490
5491         * elmo.el (elmo-folder-confirm-appends): Changed message.
5492         (elmo-folder-confirm-appends): Ditto.
5493
5494         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5495         `with-temp-buffer'.
5496         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5497
5498 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5499
5500         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5501         of elmo-folder-update-threshold is nil, which can be set by
5502         wl-summary-update-confirm-threshold.
5503
5504 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5505
5506         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5507         (elmo-nmz-index-alias-alist): Ditto.
5508         (elmo-map-folder-list-message-locations): Follow the change above.
5509
5510 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5511
5512         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5513
5514         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5515
5516         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5517
5518         * elmo-util.el (elmo-read): Ditto.
5519         (elmo-display-error): Ditto.
5520
5521         * elmo-vars.el (elmo-date-match): Ditto.
5522
5523         * pldap.el (ldap-coding-system): Ditto.
5524
5525         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5526         `elmo-inhibit-number-mapping' as nil.
5527
5528 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5529
5530         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5531         space delimiter for list response.
5532
5533 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5534
5535         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5536
5537 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5538
5539         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5540         (elmo-map-message-fetch): Fix.
5541         * elmo-map.el (elmo-folder-status): Fix for killed.
5542
5543 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5544
5545         * elmo-sendlog.el: New file.
5546         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5547
5548 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5549
5550         * acap.el (acap-logging-out): New buffer local variable.
5551         (acap-close): Set it.
5552         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5553         an error.
5554
5555 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5556
5557         * acap.el (acap-response-bye-p): New function.
5558         (acap-response-bye-message): Ditto.
5559         (acap-wait-for-response): If bye response is received, cause an error.
5560         (acap-parse-response): Make bye response when 'Bye' is received.
5561
5562 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5563
5564         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5565
5566 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5567
5568         * elmo-util.el (elmo-copy-file): Added argument
5569         `ok-if-already-exists'.
5570         (elmo-copy-file): Fixed typo.
5571
5572 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5573
5574         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5575
5576 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5577
5578         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5579
5580 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5581
5582         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5583         to killed-list.
5584
5585 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5586
5587         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5588         (elmo-folder-initialize): Fix for `copy'.
5589         (elmo-pipe-drain): Ditto.
5590         (elmo-folder-open-internal): Ditto.
5591         (elmo-folder-newsgroups): Fix.
5592
5593 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5594
5595         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5596         for each message.
5597
5598         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5599         recent value is returned from imap folder.
5600
5601         * elmo.el (elmo-folder-newsgroups): New generic function.
5602
5603         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5604         (elmo-folder-initialize): Set it.
5605         (elmo-folder-expand-msgdb-path): Use it.
5606         (elmo-folder-newsgroups): Define.
5607
5608         * elmo-filter.el (elmo-folder-newsgroups): Define.
5609
5610         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5611
5612         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5613
5614         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5615
5616 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5617
5618         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5619         user option.
5620         (elmo-shimbun-header-extra-field): New inline function.
5621         (elmo-shimbun-header-set-extra-field): Ditto.
5622         (elmo-shimbun-folder-header-hash-setup): Ditto.
5623         (elmo-shimbun-update-overview): Ditto.
5624         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5625         (elmo-shimbun-folder-setup): Use
5626         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5627         (elmo-shimbun-get-headers): Ditto.
5628         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5629         Insert `X-Shimbun-Id:' header if extra field is set.
5630         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5631         field's value instead of `shimbun-header-id'.
5632
5633         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5634         inline function.
5635         (elmo-msgdb-overview-entity-set-date): Ditto.
5636         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5637
5638 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5639
5640         * mmimap.el (mmimap-entity-section): Changed body node number from
5641         "0" to "1".
5642
5643 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5644
5645         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5646         `elmo-folder-delete-messages'.
5647
5648         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5649         (elmo-folder-initialize): Changed to expand alias into index path.
5650
5651         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5652         `elmo-mime-insert-header-from-buffer' with 6th arg
5653         `sorted-fields'.
5654
5655 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5656
5657         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5658
5659         * elmo.el (elmo-diff-new): New inline function.
5660         (elmo-diff-unread): Ditto.
5661         (elmo-diff-all): Ditto.
5662
5663         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5664         value from responseb.
5665         (elmo-imap4-folder-diff-plugged): Ditto.
5666         (elmo-imap4-server-diff-async): Added recent argument.
5667         (elmo-server-diff-async): Ditto.
5668         (elmo-imap4-folder-diff-plugged): Ditto.
5669
5670         * elmo-version.el (elmo-version): Up to 2.7.6.
5671
5672 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5673
5674         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5675         in quoted-stirng.
5676
5677 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5678
5679         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5680
5681         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5682
5683         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5684
5685         * elmo-multi.el (elmo-folder-initialize): Ditto.
5686
5687         * elmo-util.el (elmo-parse-token): New function.
5688         (elmo-parse-prefixed-element): Ditto.
5689
5690 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5691
5692         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5693         delete process.
5694         (elmo-imap4-accept-ok): Ditto.
5695
5696 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5697
5698         * mmimap.el (mime-imap-entity-header-string): Don't check first
5699         element of node-id is `0' (Follow last change).
5700
5701 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5702
5703         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5704         assigned irregular node-id to nested multipart section.
5705         (initialize-instance): Followed above change.
5706
5707 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5708
5709         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5710         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5711         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5712         `elmo-shimbun-get-headers');
5713         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5714         visible article on summary exists in headers).
5715         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5716
5717 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5718
5719         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5720         definition.
5721
5722 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5723
5724         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5725
5726 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5727
5728         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5729         header separator into loop condition.
5730
5731 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5732
5733         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5734         Return duplicate folder if it has subfolder.
5735
5736 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5737
5738         * elmo.el (elmo-make-folder): Add folder name error check.
5739
5740         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5741         (elmo-nntp-encode-group-string): New inline function.
5742         (elmo-nntp-decode-group-string): Ditto.
5743         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5744         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5745         Use `not' instead of `null';
5746         Use elmo-nntp-decode-group-string.
5747
5748         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5749
5750         * elmo-version.el (elmo-version): Up to 2.7.5.
5751
5752 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5753
5754         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5755         Hide progress gauge if `elmo-folder-move-messages' exits
5756         nonlocally.
5757
5758 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5759
5760         * elmo-imap4.el (elmo-folder-initialize): Use
5761         `elmo-imap4-encode-folder-string' for folder name.
5762
5763 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5764
5765         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5766         `done'.
5767
5768 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5769
5770         * elmo-util.el (elmo-progress-counter-alist): New internal
5771         variable.
5772         (elmo-progress-counter-value): New macro.
5773         (elmo-progress-counter-all-value): Ditto.
5774         (elmo-progress-counter-format): Ditto.
5775         (elmo-progress-counter-set-value): Ditto.
5776         (elmo-progress-set): New function.
5777         (elmo-progress-clear): Ditto.
5778         (elmo-progress-notify): Ditto.
5779
5780         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5781         counter.
5782
5783         * elmo.el (elmo-generic-folder-append-messages): Call
5784         `elmo-progress-notify'.
5785         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5786
5787         * elmo-archive.el (elmo-folder-append-messages): Call
5788         `elmo-progress-notify'.
5789
5790         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5791
5792         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5793
5794         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5795
5796 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5797
5798         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5799         'Create'.
5800         (elmo-message-encache-dop): Added argument `read'.
5801
5802         * elmo-shimbun.el (elmo-message-encache): Ditto.
5803
5804         * elmo-net.el (elmo-message-encache): Ditto.
5805
5806         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5807         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5808         elmo-imap4-seen-messages.
5809         (elmo-folder-msgdb-create-plugged): Initialize
5810         elmo-imap4-seen-messages;
5811         Set seen mark on elmo-imap4-seen-messages.
5812
5813         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5814
5815         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5816         elmo-folder-append-buffer.
5817         (elmo-folder-encache): Added optional argument `read'.
5818         (elmo-message-encache): Ditto.
5819
5820         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5821
5822         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5823
5824         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5825         if append buffer content succeds.
5826
5827 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5828
5829         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5830         elmo-display-progress.
5831
5832         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5833         Set 4th argument of mime-display-message.
5834         (elmo-mime-display-as-is): Ditto.
5835
5836 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5837
5838         * elmo-nmz.el (toplevel): Require 'mime-edit.
5839         (elmo-nmz-content-type-alist): Abolished.
5840         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5841         content is not a message.
5842         (elmo-map-message-fetch): Changed behavior exept for message content;
5843         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5844         content-type, Add From: and Subject: field.
5845
5846 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5847
5848         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5849         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5850         not a message.
5851
5852 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5853
5854         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5855         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5856
5857         * elmo-archive.el (elmo-folder-writable-p): Defined.
5858
5859         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5860
5861         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5862
5863         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5864
5865         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5866
5867         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5868
5869         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5870
5871         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5872
5873         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5874
5875 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5876
5877         * elmo-util.el (elmo-address-quote-specials): New function;
5878         Renamed from `wl-address-quote-specials'.
5879
5880 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5881
5882         * elmo-version.el (elmo-version): Up to 2.7.4.
5883
5884 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5885
5886         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5887
5888 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5889
5890         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5891         both compile-time and run-time to avoid byte-compile warning.
5892
5893 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5894
5895         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5896
5897 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5898
5899         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5900         option.
5901         (elmo-mime-display-as-is-internal): Use it.
5902
5903         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5904         if `read-passwd' is not defined.
5905
5906 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5907
5908         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5909         by original number.
5910         (elmo-folder-status): Call `elmo-folder-open-internal';
5911         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5912         (elmo-folder-close-internal): Set location-alist as nil.
5913         (elmo-folder-clear): Define.
5914         (elmo-folder-check): Don't set location-alist as nil.
5915
5916         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5917
5918 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5919
5920         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5921         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5922
5923         * mmimap.el (mime-imap-entity::requested): New slot.
5924         (mime-imap-location-fetch-entity-p): New generic function.
5925         (mime-decode-parameters): Define using `defun-maybe'.
5926         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5927         content-type structure.
5928         (mime-entity-body): Return empty body if
5929         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5930
5931         * elmo.el (elmo-message-displaying): New variable.
5932
5933         * elmo-mime.el (elmo-mime-message-display): Bind
5934         elmo-message-displaying as t.
5935
5936         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5937
5938 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5939
5940         * acap.el (acap-open): erase buffer before starting network process.
5941         (acap-store): Rewrite.
5942
5943 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5944
5945         * elmo-imap4.el (elmo-imap4-default-mailbox,
5946         elmo-imap4-default-server
5947         elmo-imap4-default-authenticate-type,
5948         elmo-imap4-default-user,
5949         elmo-imap4-default-port,
5950         elmo-imap4-default-stream-type,
5951         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5952
5953         * elmo-pop3.el (elmo-pop3-default-user,
5954         elmo-pop3-default-server,
5955         elmo-pop3-default-authenticate-type,
5956         elmo-pop3-default-port,
5957         elmo-pop3-default-stream-type,
5958         elmo-pop3-stream-type-alist): Ditto.
5959
5960         * elmo-nntp.el (elmo-nntp-default-server,
5961         elmo-nntp-default-user,
5962         elmo-nntp-default-port,
5963         elmo-nntp-default-stream-type,
5964         elmo-nntp-stream-type-alist): Ditto.
5965
5966         * elmo-vars.el: Follow changes above.
5967         (elmo-setting): New custom group; added 'elmo-setting group to
5968         above variables.
5969
5970         * elmo-version.el (elmo-version): Up to 2.7.3.
5971
5972         * acap.el (acap-parse-response): Don't delete process when BYE
5973         response (It causes hang-up on slow network environment).
5974         (toplevel): Added comment.
5975
5976 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5977
5978         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5979
5980         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5981         parsing NIL.
5982         (acap-parse-return-metadata): Ditto.
5983
5984         * slp.el: New file.
5985         (toplevel): Fixed typo.
5986
5987         * acap.el: New file.
5988         (acap-network-stream-open): Show "Connecting..." message.
5989         (acap-parse-response): Fixed problem for BYE untagged response.
5990         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5991         (toplevel): Added tiny comments.
5992
5993 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5994
5995         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5996         space delimiter for uidl response.
5997
5998 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5999
6000         * elmo-vars.el (elmo-use-semi): Eliminated.
6001
6002         * elmo-util.el (elmo-string-assoc-all): New function.
6003
6004 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6005
6006         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
6007         property 'mime-preview-situation for `mime-preview-quit'.
6008
6009 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6010
6011         * elmo.el (elmo-message-fetch-with-cache-process): Call
6012         elmo-message-fetch-internal instead of causing an error when fetch
6013         strategy is 'entire but only 'section cache is available.
6014
6015 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
6016
6017         * elmo-version.el (elmo-version): Up to 2.7.2.
6018
6019         * elmo.el (elmo-generic-folder-append-messages): Make
6020         fetch-strategy with `use-cache'.
6021
6022         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
6023         (elmo-dop-queue-method-name): New macro.
6024
6025 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6026
6027         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
6028         unbalanced parenthesis.
6029
6030 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
6031
6032         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
6033
6034 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
6035
6036         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
6037         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
6038
6039 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
6040
6041         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
6042         local variables.
6043
6044 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
6045
6046         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
6047         (elmo-message-use-cache-p): Define.
6048         (elmo-folder-msgdb-create): Treat cache.
6049
6050 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
6051
6052         * elmo-nntp.el (elmo-network-initialize-session): Call
6053         `elmo-nntp-send-mode-reader'.
6054         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
6055
6056 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
6057
6058         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
6059         alist.
6060         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
6061         assoc.
6062
6063         * elmo-net.el (elmo-network-get-session): Set stream-type argument
6064         for `elmo-plugged-p'.
6065         (elmo-open-network-stream): Fixed stream-type argument.
6066
6067 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
6068
6069         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
6070         unknown archive type is specified.
6071
6072 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
6073
6074         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
6075
6076         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
6077         while loading msgdb.
6078
6079         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
6080         (elmo-folder-open-internal): Rewrite.
6081
6082 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
6083
6084         * elmo-mime.el (elmo-mime-display-as-is-internal):
6085         Adjust buffer-multibyte status.
6086
6087 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
6088
6089         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
6090         of elmo-condition-find-key.
6091
6092         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6093         (elmo-condition-in-msgdb-p): Ditto.
6094         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6095         argument.
6096
6097 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6098
6099         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6100
6101 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6102
6103         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6104         label for elmo-display-progress.
6105
6106 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6107
6108         * elmo.el (elmo-folder-clear): New method.
6109         (elmo-folder-clear): Define.
6110         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6111
6112         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6113         (elmo-folder-clear): Define.
6114
6115         * elmo-map.el (elmo-folder-clear): Define.
6116
6117         * elmo-version.el (elmo-version): Up to 2.7.1.
6118
6119 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6120
6121         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6122         updates.
6123
6124 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6125
6126         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6127         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6128
6129 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6130
6131         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6132
6133         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6134         and re-written.
6135
6136         * elmo-imap4.el (elmo-folder-initialize): Use
6137         elmo-get-network-stream-type.
6138
6139         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6140
6141         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6142
6143 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6144
6145         * elmo.el (elmo-message-encache): Set unread argument for
6146         elmo-message-fetch.
6147
6148         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6149
6150         * elmo.el (elmo-net-port-info): New method.
6151
6152         * elmo-shimbun.el (elmo-net-port-info): Define.
6153         (elmo-message-encache): Ditto.
6154
6155         * elmo-net.el (elmo-net-port-info): Define as method.
6156
6157         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6158         unplugged status when elmo-enable-disconnected-operation is t.
6159
6160         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6161         of spool folder before checking new number.
6162
6163 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6164
6165         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6166         (elmo-network-setup-session): Ditto.
6167         (elmo-message-fetch-plugged): Ditto.
6168         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6169         (elmo-network-initialize-session): Ditto.
6170         (elmo-pop3-read-response): Abolish 3rd argument.
6171         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6172         (elmo-pop3-read-contents): Ditto.
6173         (elmo-pop3-read-body): Ditto.
6174         (elmo-folder-status): Call elmo-folder-close.
6175         (elmo-pop3-lock): Abolish.
6176         (elmo-pop3-unlock): Ditto.
6177         (elmo-pop3-locked-p): Ditto.
6178         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6179
6180 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6181
6182         * elmo-version.el (elmo-version): Up to 2.7.0.
6183
6184         * elmo-pop3.el (elmo-pop3-debug): New variable.
6185         (elmo-pop3-debug-inhibit-logging): Ditto.
6186         (elmo-pop3-debug): New function.
6187         (elmo-pop3-send-command): Call elmo-pop3-debug.
6188         (elmo-pop3-read-response): Added keep-lock optional argument;
6189         Don't unlock if keep-lock is non-nil.
6190         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6191         (elmo-network-authenticate-session): Bind
6192         elmo-pop3-debug-inhibit-logging as t.
6193         (elmo-network-setup-session): Call elmo-pop3-read-response with
6194         keep-lock argument.
6195         (elmo-pop3-read-msg): Ditto.
6196         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6197         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6198         (elmo-network-initialize-session): Call elmo-pop3-lock.
6199         (elmo-folder-close-internal): Don't clear location-alist slot.
6200         (elmo-folder-check): Clear location-alist slot.
6201
6202 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6203
6204         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6205         (elmo-pop3-send-command): Call elmo-pop3-lock.
6206         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6207         (elmo-pop3-read-contents): Ditto.
6208         (elmo-pop3-lock): New function.
6209         (elmo-pop3-unlock): Ditto.
6210         (elmo-pop3-locked-p): Ditto.
6211         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6212         returns t.
6213
6214 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6215
6216         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6217
6218         * elmo-util.el (elmo-file-field-primitive-condition-match):
6219         New inline function (Don't fetch file content if "first" or "last").
6220         (elmo-file-field-condition-match): Use
6221         elmo-file-field-primitive-condition-match.
6222
6223         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6224         "first".
6225
6226         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6227         (elmo-message-fetch-plugged): Fixed.
6228
6229         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6230
6231 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6232
6233         * elmo.el (elmo-folder-move-messages): Bind
6234         elmo-inhibit-display-retrieval-progress as t while moving messages.
6235
6236         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6237         New variable.
6238         (elmo-inhibit-display-retrieval-progress): Ditto.
6239
6240         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6241         for retrieval progress;
6242         Don't display progress when total buffer size is smaller than
6243         elmo-display-retrieval-progress-threshold.
6244         (elmo-message-fetch-plugged): Don't display progress when
6245         elmo-inhibit-display-retrieval-progress is non-nil.
6246
6247         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6248         for retrieval progress;
6249         Don't display progress when literal size is smaller than
6250         elmo-display-retrieval-progress-threshold.
6251         (elmo-imap4-message-fetch): Don't display progress when
6252         elmo-inhibit-display-retrieval-progress is non-nil.
6253
6254 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6255
6256         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6257         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6258         (elmo-imap4-message-fetch): Likewise.
6259
6260         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6261         (elmo-shimbun-index-range-alist): Ditto.
6262         (elmo-shimbun-use-entire-index): Abolish.
6263         (shimbun-mua-use-entire-index): Ditto.
6264         (elmo-shimbun-folder): Added new slot `range'.
6265         (elmo-folder-initialize): Setup slot `range'.
6266
6267 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6268
6269         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6270         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6271         (elmo-shimbun-get-headers): Use return value of
6272         `shimbun-article-expiration-days'.
6273         (elmo-folder-close-internal): Clean up last-check slot.
6274
6275         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6276         (elmo-pop3-total-size): New variable.
6277         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6278
6279         * elmo.el (elmo-folder-reserve-status-p): New method.
6280
6281         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6282         (elmo-shimbun-use-entire-index): New user option.
6283         (shimbun-elmo-mua): New class.
6284         (shimbun-mua-search-id): Define.
6285         (shimbun-mua-use-entire-index): Ditto.
6286         (elmo-shimbun-folder:last-check): New slot.
6287         (elmo-shimbun-headers-cache-header-list): Abolish.
6288         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6289         (elmo-shimbun-headers-cache-header-hash): Ditto.
6290         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6291         (elmo-shimbun-headers-cache-last-check): Ditto.
6292         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6293         (elmo-shimbun-headers-check-p): Rewrite.
6294         (elmo-shimbun-msgdb-to-headers): New function.
6295         (elmo-shimbun-get-headers): Rewrite.
6296         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6297         (elmo-folder-open-internal): Get headers only if
6298         `elmo-shimbun-headers-check-p' is non-nil.
6299         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6300         is non-nil.
6301         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6302         (elmo-quit): Removed.
6303
6304         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6305         function.
6306         (elmo-msgdb-overview-entity-set-extra): Ditto.
6307         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6308
6309         * elmo-map.el (elmo-folder-status): Don't call
6310         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6311         is non-nil.
6312
6313 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6314
6315         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6316         of `elmo-msgdb-search-internal-primitive' when condition's car is
6317         `and' or `or'.
6318
6319 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6320
6321         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6322
6323 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6324
6325         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6326         call `elmo-pipe-drain'.
6327
6328 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6329
6330         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6331         typo. (elmo-cache-folder -> elmo-mark-folder)
6332
6333 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6334
6335         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6336         `elmo-message-fetch'.
6337
6338 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6339
6340         * elmo-net.el (elmo-message-encache): Fixed typo.
6341         (elmo-message-fetch-unplugged): Changed call
6342         `elmo-message-fetch-internal' without argument `outbuf'.
6343
6344 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6345
6346         * elmo.el (elmo-message-encache): Define as generic function.
6347         (elmo-message-fetch-field): New generic function.
6348         (elmo-message-fetch-with-cache-process): Cause an error when
6349         fetch strategy is 'entire but only 'section cache is available.
6350         (toplevel): Fixed nmz folder definition.
6351
6352         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6353         (elmo-msgdb-resume-list-filename): Ditto.
6354         (elmo-queue-filename): Ditto.
6355         (elmo-enable-disconnected-operation): Changed default value to t.
6356
6357         * elmo-util.el (elmo-cache-path-section-p): New function.
6358         (elmo-file-cache-get): Use it.
6359         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6360         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6361         (elmo-dop-queue-save): Ditto.
6362
6363         * elmo-net.el (elmo-folder-status-unplugged): Call
6364         elmo-folder-status-dop.
6365         (elmo-folder-list-messages-unplugged): Implemented.
6366         (elmo-folder-delete-messages-unplugged): Define.
6367         (elmo-folder-msgdb-create): Define.
6368         (elmo-folder-msgdb-create-unplugged): Define.
6369         (elmo-folder-mark-as-read-unplugged): Ditto.
6370         (elmo-folder-unmark-read-unplugged): Ditto.
6371         (elmo-folder-mark-as-important-unplugged): Ditto.
6372         (elmo-folder-unmark-important-unplugged): Ditto.
6373         (elmo-message-encache): Ditto.
6374
6375         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6376         (elmo-dop-queue-save): Ditto.
6377
6378         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6379         `elmo-folder-msgdb-create'.
6380         (elmo-folder-append-buffer): Implemented unplugged operation.
6381         (elmo-folder-append-messages): Call parent method in unplugged status.
6382         (elmo-message-fetch-unplugged): Removed definition.
6383         (elmo-message-fetch-field): Implemented.
6384
6385         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6386         (elmo-dop-folder): Removed variable definition.
6387         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6388         (elmo-dop-queue-flush): Implemented.
6389         (elmo-dop-queue-merge): Removed definition (TODO).
6390         (elmo-dop-spool-folder): New function.
6391         (elmo-dop-spool-folder-append-buffer): Ditto.
6392         (elmo-dop-spool-folder-list-messages): Ditto.
6393         (elmo-dop-list-deleting-messages): Ditto.
6394         (elmo-folder-append-buffer-dop): Ditto.
6395         (elmo-folder-delete-messages-dop): Ditto.
6396         (elmo-message-encache-dop): New inline function.
6397         (elmo-create-folder-dop): Ditto.
6398         (elmo-folder-mark-as-read-dop): Ditto.
6399         (elmo-folder-unmark-read-dop): Ditto.
6400         (elmo-folder-mark-as-important-dop): Ditto.
6401         (elmo-folder-unmark-important-dop): Ditto.
6402         (elmo-folder-status-dop): Fixed.
6403         (elmo-folder-append-buffer-dop-delayed): New function.
6404         (elmo-folder-delete-messages-dop-delayed): Ditto.
6405         (elmo-dop-msgdb): Ditto.
6406
6407 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6408
6409         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6410
6411 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6412
6413         * elmo.el (elmo-folder-move-messages): Fixed problem when
6414         `dst-folder' is 'null.
6415
6416 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6417
6418         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6419         instead of current mark.
6420
6421         * elmo-multi.el (elmo-folder-list-importants-internal): No
6422         operation if importants is not list.
6423
6424         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6425         Return t if importants is not list.
6426
6427         * elmo-map.el (elmo-map-folder-list-importants): Define.
6428         (elmo-folder-list-importants-internal): Check return value of
6429         `elmo-map-folder-list-importants-internal'.
6430
6431         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6432
6433         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6434
6435         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6436
6437         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6438
6439 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6440
6441         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6442         (Patch is provided by <kita@coe.nttdata.co.jp>).
6443
6444 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6445
6446         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6447         mark folder.
6448
6449 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6450
6451         * elmo.el (elmo-message-fetch): Define.
6452         (elmo-message-fetch-with-cache-process): New generic method.
6453         (elmo-message-fetch-internal): New generic method.
6454         (elmo-folder-synchronize):
6455
6456         * elmo-archive.el (elmo-message-fetch-internal): Define.
6457         (elmo-message-fetch): Eliminated.
6458
6459         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6460         (elmo-message-fetch): Eliminated.
6461
6462         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6463         argument OUTBUF.
6464         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6465
6466         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6467         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6468
6469         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6470         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6471
6472         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6473
6474         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6475
6476         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6477
6478         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6479         (elmo-message-fetch-unplugged): New generic method.
6480         (elmo-message-fetch-internal): Remove cache process (Renamed from
6481         `elmo-message-fetch').
6482
6483         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6484         (elmo-message-fetch): Eliminated.
6485         (elmo-message-fetch-unplugged): Ditto.
6486
6487         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6488
6489 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6490
6491         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6492         of `to-be-deleted' from number-alist to number-list.
6493
6494 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6495
6496         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6497         (elmo-folder-mark-as-important): Ditto.
6498
6499 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6500
6501         * elmo.el (elmo-folder): Added process-duplicates slot.
6502
6503         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6504         (elmo-folder-unmark-read): Ditto.
6505         (elmo-folder-unmark-important): Ditto.
6506         (elmo-folder-mark-as-important): Ditto.
6507
6508         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6509         duplicated message processing.
6510
6511         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6512
6513 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6514
6515         * elmo-util.el (elmo-list-subdirectories-1): New function.
6516         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6517         (elmo-mapcar-list-of-list): New function.
6518
6519         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6520         `elmo-mapcar-list-of-list' instead of `mapcar'.
6521
6522         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6523
6524         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6525         `elmo-have-link-count'. Return the fully qualified folder name.
6526
6527 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6528
6529         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6530         (elmo-shimbun-headers-cache): New internal variable.
6531         (elmo-shimbun-headers-cache-header-list): New inline function.
6532         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6533         (elmo-shimbun-headers-cache-header-hash): Ditto.
6534         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6535         (elmo-shimbun-headers-cache-last-check): Ditto.
6536         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6537         (elmo-shimbun-lapse-seconds): Ditto.
6538         (elmo-shimbun-headers-cache-check-p): Ditto.
6539         (elmo-shimbun-get-headers): New function.
6540         (elmo-folder-open-internal): Call it.
6541         (elmo-quit): Define (Clear headers-cache).
6542
6543 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6544
6545         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6546
6547         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6548         (elmo-msgdb-flist-save): Ditto.
6549
6550         * elmo-shimbun.el (elmo-folder-list-subfolders):
6551         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6552         (elmo-folder-exists-p): Ditto.
6553
6554         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6555         argument for `shimbun-header-insert'.
6556
6557 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6558
6559         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6560         at first time.
6561
6562         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6563         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6564
6565 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6566
6567         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6568         (elmo-folder-plugged-p): Define.
6569         (elmo-folder-set-plugged): Ditto.
6570         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6571         (elmo-folder-list-messages-internal): Return t if unplugged.
6572         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6573
6574         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6575         when elmo-folder-list-messages-internal method of children returns t.
6576
6577         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6578         pair is nil.
6579         (elmo-folder-open-internal): Don't update if unplugged status.
6580
6581 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6582
6583         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6584         new message.
6585
6586 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6587
6588         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6589
6590         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6591         saving.
6592
6593 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6594
6595         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6596
6597         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6598         (elmo-folder-open-internal): Set up headers slot.
6599         (elmo-folder-check): Call elmo-folder-close-internal and
6600         elmo-folder-open-internal.
6601         (elmo-folder-close-internal): Clean up headers slot.
6602
6603 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6604
6605         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6606         exactly folder list.
6607         (elmo-folder-append-messages): Fixed append archive with prefix.
6608
6609         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6610         make temp files with start-number.
6611
6612         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6613
6614 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6615
6616         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6617         argument `visible-only'.
6618         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6619         instead of `if'.
6620
6621         * elmo-pop3.el (elmo-folder-open-internal): Check
6622         `elmo-inhibit-number-mapping' is non-nil.
6623
6624         * elmo-pipe.el (elmo-folder-status): Fixed.
6625
6626 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6627
6628         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6629
6630         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6631         (elmo-folder-open-internal): Setup `header-hash' slot.
6632         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6633         information.
6634         (elmo-map-message-fetch): Ditto.
6635
6636 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6637
6638         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6639         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6640         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6641         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6642
6643         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6644
6645 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6646
6647         * sb-airs.el: Added footer.
6648
6649         * shimbun.el (shimbun-article): Define as luna-method.
6650
6651         * sb-tcup.el: New file.
6652
6653         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6654         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6655
6656 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6657
6658         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6659         (shimbun-get-headers): Ditto.
6660
6661         * elmo.el: Moved obsolete variable definitions from
6662         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6663
6664         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6665         groups.
6666
6667         * shimbun.el: New file.
6668
6669         * elmo-shimbun.el: New file.
6670
6671         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6672         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6673         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6674         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6675
6676 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6677
6678         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6679         hierarchy is t.
6680
6681 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6682
6683         * elmo.el (elmo-folder-msgdb): Define as macro.
6684         (elmo-folder-open): Added argument `load-msgdb'.
6685         (elmo-generic-folder-open): Ditto.
6686         (elmo-folder-encache): New function.
6687
6688         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6689
6690         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6691
6692         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6693         Eliminated argument FOLDER and added argument MSGDB.
6694         (elmo-dop-queue-load): Moved from elmo-dop.el.
6695         (elmo-dop-queue-save): Ditto.
6696
6697         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6698
6699         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6700
6701         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6702         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6703         (elmo-filter-folder-list-importants-internal): Ditto.
6704
6705         * elmo-map.el (elmo-folder-pack-number): Ditto.
6706
6707         * elmo-mime.el (elmo-mime-message-display): Ditto.
6708
6709         * elmo.el (elmo-generic-folder-commit): Ditto.
6710         (elmo-folder-list-unreads): Ditto.
6711         (elmo-folder-list-importants): Ditto.
6712         (elmo-generic-folder-commit): Ditto.
6713         (elmo-message-set-mark): Ditto.
6714         (elmo-generic-folder-append-msgdb): Ditto.
6715         (elmo-folder-synchronize): Ditto.
6716         (elmo-folder-messages): Ditto.
6717         (elmo-init): Call elmo-dop-queue-load.
6718         (elmo-folder-list-messages): Ditto.
6719
6720         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6721         (elmo-nntp-folder-process-crosspost): Ditto.
6722         (elmo-folder-list-unreads-internal): Ditto.
6723
6724         * elmo-dop.el: Removed old functions.
6725
6726 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6727
6728         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6729         `folder' to `msgdb'.
6730
6731 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6732
6733         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6734         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6735
6736         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6737         case-fold-search.
6738
6739 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6740
6741         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6742         defined.
6743
6744         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6745         (mmimap-parse-parameters-from-list): Define as alias for
6746         `mime-decode-parameter-plist' if it is defined as function.
6747         (mmimap-make-mime-entity): Added argument `number'.
6748         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6749         as 0.
6750         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6751
6752         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6753
6754         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6755
6756         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6757
6758 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6759
6760         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6761
6762         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6763         when elmo-imap4-default-authenticate-type is nil.
6764         (elmo-folder-list-subfolders): Ditto
6765         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6766         (elmo-imap4-fetch-callback-1-subr): Renamed from
6767         `elmo-imap4-fetch-callback-1' and define as inline function.
6768         (elmo-imap4-fetch-callback-1):
6769         Renamed from `elmo-imap4-fetch-callback'.
6770         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6771
6772         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6773         msgdb path (To keep compatibility with main trunk).
6774
6775         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6776
6777         * elmo-util.el (elmo-make-file-cache): Moved position of
6778         some macros.
6779
6780         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6781         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6782         instead of `elmo-pop3-inhibit-uidl'.
6783         (elmo-folder-exists-p): Ditto.
6784         (elmo-pop3-folder-list-messages): Ditto.
6785
6786         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6787         instead of `elmo-pop3-inhibit-uidl'.
6788         (elmo-folder-status): Ditto.
6789
6790         * elmo-dop.el (elmo-dop-folder): New variable.
6791         (elmo-dop-lock-message): Eliminated.
6792         (elmo-dop-unlock-message): Ditto.
6793         (elmo-dop-lock-list-load): Ditto.
6794         (elmo-dop-lock-list-save): Ditto.
6795         (elmo-dop-delete-folder): Ditto.
6796         (elmo-dop-rename-folder): Ditto.
6797
6798         * elmo.el: Removed incomplete commentary.
6799
6800 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6801
6802         * elmo.el (toplevel): Require 'elmo-version first;
6803         for little `recursive-load-depth' settings.
6804         Fix "ends here" comment.
6805
6806 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6807
6808         * elmo-util.el (toplevel): Require 'poem;
6809         Some functions are moved from elmo-cache.el.
6810
6811         * elmo-net.el (toplevel): Require 'elmo-cache.
6812
6813         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6814
6815         * elmo.el (toplevel): Ditto.
6816
6817         * elmo-cache.el: Rewrite with luna;
6818         Some functions are moved to elmo-util.el.
6819
6820         * elmo-internal.el (elmo-internal-folder-list): New variable.
6821         (elmo-internal-folder-initialize): Rewrite.
6822         (elmo-folder-list-subfolders): Ditto.
6823
6824         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6825         (elmo-cache-collect-sub-directories): Ditto.
6826
6827 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6828
6829         * elmo-version.el (elmo-version): Up to 2.5.8.
6830
6831         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6832
6833         * elmo-util.el (elmo-list-insert): New function.
6834
6835 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6836
6837         * elmo.el (elmo-init): New function.
6838         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6839
6840         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6841         (Renamed from `elmo-localdir-header-chop-length').
6842
6843         * elmo-pop3.el (elmo-pop3-use-cache,
6844         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6845
6846         * elmo-nntp.el (elmo-message-fetch): Define.
6847         (elmo-message-fetch-unplugged): Ditto.
6848         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6849         (elmo-nntp-use-cache): Ditto.
6850         (elmo-nntp-max-number-precedes-list-active): Ditto.
6851
6852         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6853
6854         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6855         `elmo-msgdb-insert-file-header'.
6856         Use `elmo-msgdb-file-header-chop-length'.
6857
6858         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6859         `elmo-vars.el'.
6860
6861         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6862         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6863         `elmo-msgdb-insert-file-header'.
6864
6865         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6866         Use new variable;
6867         Define obsolete variables with `elmo-define-obsolete-variable',
6868
6869         * elmo-util.el (elmo-warning-buffer-name): New constant.
6870         (elmo-warning): New function.
6871         (elmo-obsolete-variable-alist): New variable.
6872         (elmo-obsolete-variable-show-warnings): New variable.
6873         (elmo-define-obsolete-variable): New function.
6874         (elmo-resque-obsolete-variable): Ditto.
6875         (elmo-resque-obsolete-variables): Ditto.
6876
6877 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6878
6879         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6880         Eliminated.
6881
6882         * elmo-pop3.el, elmo-nntp.el: Use custom.
6883
6884 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6885
6886         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6887         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6888
6889 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6890
6891         * Luna-fy Kenichi OKADA's following changes.
6892         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6893         `nohide'.
6894         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6895
6896 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6897
6898         * elmo-util.el (elmo-display-progress): Prefer
6899         `progress-feedback-with-label' to `lprogress-display'.
6900
6901 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6902
6903         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6904
6905 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6906
6907         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6908         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6909         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6910         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6911         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6912         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6913         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6914         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6915         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6916         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6917         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6918         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6919         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6920
6921 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6922
6923         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6924         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6925
6926 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6927
6928         * elmo.el (elmo-folder-process-crosspost): New generic method.
6929         (elmo-folder-writable-p): Ditto.
6930         (elmo-folder-message-appendable-p): Eliminated.
6931         (elmo-generic-folder-append-msgdb): Rewrite.
6932         (elmo-newsgroups-hashtb): New internal variable.
6933         (elmo-crosspost-message-set): Eliminated.
6934         (elmo-crosspost-message-delete): Ditto.
6935         (elmo-setup-subscribed-newsgroups): New function.
6936         (elmo-crosspost-message-alist-modified): New internal variable.
6937         (elmo-crosspost-message-alist-load): New function (Renamed from
6938         `wl-crosspost-alist-load').
6939         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6940         `wl-crosspost-alist-save').
6941
6942         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6943
6944         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6945         `unreads'.
6946         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6947         elmo-newsgroups-hashtb).
6948         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6949         `elmo-nntp-folder-update-crosspost-message-alist'.
6950         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6951         `elmo-nntp-groups-hashtb'.
6952         (elmo-nntp-make-groups-hashtb): Eliminated.
6953         (elmo-nntp-parse-newsgroups): New function (Renamed from
6954         `wl-parse-newsgroups').
6955         (elmo-folder-creatable-p, elmo-folder-writable-p,
6956         elmo-folder-close-internal, elmo-folder-mark-as-read,
6957         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6958         Define.
6959         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6960
6961         * elmo-net.el (elmo-message-fetch): Check buffer size.
6962
6963         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6964
6965         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6966
6967         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6968         before `close' command.
6969
6970         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6971         `mark-alist' (All other related portions are changed).
6972
6973 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6974
6975         * elmo-util.el (elmo-create-hash-size): Eliminated.
6976         (elmo-make-hash) Make a hash with `one less than a power of two'
6977         length.
6978
6979         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6980         (elmo-hash-maximum-size): Changed value.
6981
6982 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6983
6984         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6985         (elmo-mime-message-display-as-is): Ditto.
6986
6987 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6988
6989         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6990         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6991
6992 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6993
6994         * elmo-mark.el: New file.
6995
6996         * elmo-internal.el: Rewrite (Almost empty).
6997
6998 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6999
7000         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
7001         (mime-imap-entity-header-string): Ditto.
7002         (mmimap-entity-section): Rewrite.
7003
7004 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7005
7006         * elmo-nmz.el: New file.
7007
7008         * elmo-pipe.el: Rewrite with luna.
7009
7010 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
7011
7012         * elmo-archive.el: Rewrite with luna.
7013
7014         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
7015         (elmo-folder-list-importants-internal): Ditto.
7016
7017 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
7018
7019         * elmo-archive.el (elmo-archive-version): Abolish.
7020         (toplevel) Removed `boso' comment.
7021
7022 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
7023
7024         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
7025         elmo-msgdb-add-msgs-to-seen-list-subr;
7026         Changed argument seen-marks to unread-marks.
7027
7028         * elmo-nntp.el: Rewrite with luna.
7029
7030 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
7031
7032         * elmo-filter.el: Rewrite with luna.
7033
7034 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7035
7036         * elmo-pop3.el: Rewrite with luna.
7037
7038 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
7039
7040         * elmo-multi.el: Rewrite with luna.
7041
7042         * elmo-vars.el (elmo-use-killed-list): Abolish.
7043         All other related portions are changed.
7044         (elmo-filename-replace-string-alist): Renamed from
7045         elmo-msgid-replace-string-alist.
7046
7047 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7048
7049         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
7050
7051         * elmo-map.el: New file.
7052         * elmo-maildir.el: Rewrite with luna.
7053
7054 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
7055
7056         * elmo.el: Changed meaning of `elmo-folder-commit'.
7057         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
7058
7059 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
7060
7061         * elmo.el (elmo-folder-append-buffer): New function.
7062         (Renamed from `elmo-append-msg')
7063
7064 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7065
7066         * elmo-mime.el: New file.
7067
7068 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
7069
7070         * elmo-cache.el: Rewrite.
7071
7072 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
7073
7074         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
7075
7076 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
7077
7078         * elmo-vars.el (elmo): New group.
7079         (elmo-strict-diff-folder-regexp): New variable.
7080
7081         * elmo-util.el (elmo-call-func): Abolish.
7082         (elmo-folder-get-type): Ditto.
7083         (elmo-*-get-spec): Ditto.
7084         (elmo-*-spec-*): Ditto.
7085         (elmo-imap4-identical-name-space-p): Ditto.
7086         (elmo-folder-identical-system-p): Ditto.
7087         (elmo-folder-direct-copy-alist): Ditto.
7088         (elmo-folder-direct-copy-p): Ditto.
7089
7090         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7091         (elmo-folder-initialize): Define.
7092         (elmo-folder-get-primitive-list): Ditto.
7093
7094         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7095         (elmo-folder-initialize): Define.
7096         Renamed `elmo-network-session-host-internal' to
7097         `elmo-network-session-server-internal'.
7098
7099         * elmo-multi.el (elmo-multi-folder): New luna class.
7100         (elmo-folder-initialize): Define.
7101         (elmo-folder-get-primitive-list): Ditto.
7102         (elmo-folder-contains-type): Ditto.
7103         (elmo-message-use-cache-p): Ditto.
7104
7105         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7106         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7107
7108         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7109         (elmo-folder-initialize): Define.
7110
7111         * elmo-filter.el (elmo-filter-folder): New luna class.
7112         (elmo-folder-initialize): Define.
7113         (elmo-folder-get-primitive-list): Ditto.
7114         (elmo-folder-contains-type): Ditto.
7115
7116 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7117
7118         * elmo-imap4.el: Rewrite with luna.
7119
7120         * mmimap.el: New file.
7121
7122         * mmelmo.el, mmelmo-imap4.el: Removed.
7123
7124         * elmo-net.el: Ditto.
7125
7126         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7127         (elmo-folder-initialize): Define.
7128
7129         * elmo-archive.el (elmo-archive-folder): New luna class.
7130         (elmo-folder-initialize): Define.
7131
7132         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7133         `elmo-folder-msgdb-path'.
7134         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7135         `elmo-make-folder'.
7136
7137 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7138
7139         * elmo.el: New file.
7140
7141         * elmo2.el: Renamed to elmo.el.
7142
7143 \f
7144 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7145
7146         * elmo-cache.el (elmo-cache-expire-by-size): Count
7147         a disk usage for a cache file entry in KB even when
7148         its kind is a directory.
7149
7150 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7151
7152         * elmo-version.el (elmo-version): Up to 2.5.7.
7153
7154 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7155
7156         * elmo-version.el (elmo-version): Up to 2.5.6.
7157
7158 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7159
7160         * elmo-version.el (elmo-version): Up to 2.5.5.
7161
7162 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7163
7164         * elmo-imap4.el (elmo-network-authenticate-session):
7165         Fixed a logic for response checking.
7166
7167 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7168
7169         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7170         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7171         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7172         `sasl-mechanisms'.
7173
7174         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7175         for `starttls-open-stream' and `starttls-negotiate'.
7176
7177         * elmo-nntp.el: Remove autoload settings for
7178         `starttls-open-stream' and `starttls-negotiate'.
7179
7180         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7181         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7182         `luna-define-class' with `eval-and-compile'.
7183
7184 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7185
7186         * elmo-util.el (elmo-read-search-condition-internal):
7187         Require an element of table for searching field.
7188
7189 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7190
7191         * elmo-version.el (elmo-version): Up to 2.5.4.
7192
7193 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7194
7195         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7196
7197 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7198
7199         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7200
7201 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7202
7203         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7204         before greeting.
7205
7206 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7207
7208         * elmo-imap4.el (elmo-imap4-delete-folder):
7209         Send "close" before "delete" (Use commented out line).
7210         (elmo-imap4-rename-folder): Ditto.
7211
7212         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7213         folder string itself.
7214         (elmo-dop-list-deleted): New function.
7215         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7216         killed.
7217
7218         * elmo-util.el (elmo-string-rassoc-all): New function.
7219
7220 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7221
7222         * elmo-version.el (elmo-version): Up to 2.5.3.
7223
7224         * elmo-net.el (elmo-network-get-session): Changed logic for
7225         checking process status.
7226
7227         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7228         process is nil;
7229         Changed logic for checking process status.
7230
7231 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7232
7233         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7234         before greeting.
7235         (elmo-network-setup-session): Set UIDL hash size according to
7236         the length of list response.
7237         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7238         according to the length of list response;
7239         Return the length of list response.
7240         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7241
7242 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7243
7244         * elmo-imap4.el (toplevel): Require 'ssl.
7245         Add autoload 'starttls.
7246         * elmo-pop3.el (toplevel): Ditto.
7247         * elmo-nntp.el (toplevel): Ditto.
7248
7249 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7250
7251         * elmo-imap4.el (toplevel): defun at compile time.
7252         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7253         sasl-next-step, sasl-step-data, sasl-step-set-data.
7254         * elmo-pop3.el (toplevel): Ditto.
7255
7256 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7257
7258         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7259
7260 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7261
7262         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7263         if error.
7264         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7265         and `elmo-pop-auth-apop'.
7266
7267 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7268
7269         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7270
7271 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7272
7273         * elmo-pop3.el (elmo-network-authenticate-session): Split
7274         encoded response value.
7275
7276 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7277
7278         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7279         `elmo-pop3-force-login'.
7280         Redefine `sasl-mechanisms'.
7281         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7282
7283 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7284
7285         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7286         Delete `elmo-imap4-authenticator-alist'.
7287         (elmo-imap4-auth-cram-md5): Delete.
7288         (elmo-imap4-auth-digest-md5): Delete.
7289
7290 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7291
7292         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7293         (elmo-pop3-auth-scram-md5): Ditto.
7294         (elmo-pop3-auth-cram-md5): Ditto.
7295
7296 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7297
7298         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7299         Delete `elmo-pop3-authenticator-alist'.
7300
7301 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7302
7303         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7304         new SASL API.
7305         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7306
7307 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7308
7309         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7310
7311 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7312
7313         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7314         Fixed problem when `elmo-pop3-use-uidl' is nil.
7315         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7316
7317 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7318
7319         * elmo-version.el (elmo-version): Up to 2.5.2.
7320
7321 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7322
7323         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7324         New function.
7325         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7326         (elmo-pop3-msgdb-create-as-numlist): Use it.
7327
7328         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7329         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7330
7331         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7332         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7333
7334 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7335
7336         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7337         when elmo-mark-as-read is called with second argument nil.
7338
7339 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7340
7341         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7342         Moved to elmo-util.el.
7343
7344         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7345         Moved from elmo-pipe.el
7346
7347         * elmo-archive.el (elmo-archive-call-process): Enclose with
7348         static-if.
7349
7350         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7351         "RFC822" (because RFC822.PEEK is obsolete).
7352         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7353
7354 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7355
7356         * elmo-archive.el (elmo-archive-call-process): Don't check for
7357         the exit status when Nemacs is running.
7358
7359 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7360
7361         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7362         'plain.
7363
7364         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7365         (elmo-pop3-get-spec): Set default of auth to 'user.
7366
7367         * elmo-imap4.el (elmo-imap4-session-check):
7368         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7369         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7370         (elmo-imap4-auth-login): New function; Revival.
7371         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7372         `elmo-imap4-auth-login'.
7373
7374 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7375
7376         * elmo2.el (toplevel): Move `product-provide' declare.
7377         * mmelmo.el (toplevel): Ditto.
7378
7379 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7380
7381         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7382
7383 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7384
7385         * elmo-util.el (elmo-folder-get-store-type): New function.
7386         (elmo-folder-direct-copy-p): Use it.
7387
7388 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7389
7390         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7391         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7392         and result of `elmo-imap4-use-flag-p'.
7393         (elmo-imap4-fetch-callback-1): Set mark according to
7394         the result of `elmo-imap4-use-flag-p'.
7395
7396 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7397
7398         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7399         (elmo-generic-list-folder-unread): Ditto.
7400         (elmo-folder-get-info): Ditto.
7401         (elmo-folder-set-info-max-by-numdb): Ditto.
7402         (elmo-folder-get-info-max): Ditto.
7403         (elmo-folder-get-info-length): Ditto.
7404         (elmo-folder-get-info-unread): Ditto.
7405         (elmo-folder-info-make-hashtb): Ditto.
7406
7407         * elmo2.el: Removed above functions.
7408
7409 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7410
7411         * elmo-imap4.el (toplevel): Require 'ssl.
7412         Add autoload 'starttls.
7413         * elmo-pop3.el (toplevel): Ditto.
7414         * elmo-nntp.el (toplevel): Ditto.
7415
7416 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7417
7418         * elmo-imap4.el (toplevel): defun at compile time.
7419         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7420         sasl-next-step, sasl-step-data, sasl-step-set-data.
7421         * elmo-pop3.el (toplevel): Ditto.
7422
7423 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7424
7425         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7426
7427 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7428
7429         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7430         if error.
7431         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7432         and `elmo-pop-auth-apop'.
7433
7434 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7435
7436         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7437
7438 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7439
7440         * elmo-pop3.el (elmo-network-authenticate-session): Split
7441         encoded response value.
7442
7443 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7444
7445         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7446         `elmo-pop3-force-login'.
7447         Redefine `sasl-mechanisms'.
7448         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7449
7450 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7451
7452         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7453         Delete `elmo-imap4-authenticator-alist'.
7454         (elmo-imap4-auth-cram-md5): Delete.
7455         (elmo-imap4-auth-digest-md5): Delete.
7456
7457 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7458
7459         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7460         (elmo-pop3-auth-scram-md5): Ditto.
7461         (elmo-pop3-auth-cram-md5): Ditto.
7462
7463 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7464
7465         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7466         Delete `elmo-pop3-authenticator-alist'.
7467
7468 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7469
7470         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7471         new SASL API.
7472         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7473
7474 \f
7475 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7476
7477         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7478
7479 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7480
7481         * elmo-nntp.el (elmo-nntp-get-folders-info):
7482         Fixed problem when '\' character is contained in user-id.
7483         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7484
7485 \f
7486 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7487
7488         * elmo-imap4.el (elmo-imap4-delete-folder):
7489         Send "close" before "delete" (Use commented out line).
7490         (elmo-imap4-rename-folder): Ditto.
7491
7492         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7493         folder string itself.
7494         (elmo-dop-list-deleted): New function.
7495         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7496         killed.
7497
7498         * elmo-util.el (elmo-string-rassoc-all): New function.
7499
7500         * elmo-version.el (elmo-version): Up to 2.5.1.
7501
7502 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7503
7504         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7505
7506         * elmo-internal.el (elmo-internal-search): Fix last change.
7507
7508 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7509
7510         * elmo-internal.el (elmo-internal-search): Rewrite.
7511         (Fixed problem which is pointed out by Akihiro MOTOKI
7512         <motoki@da.jp.nec.com>)
7513
7514         * elmo-version.el (elmo-version): Up to 2.5.0.
7515
7516 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7517
7518         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7519
7520 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7521
7522         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7523         non-nil, make hierarchy.
7524
7525 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7526
7527         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7528         `elmo-pop3-use-uidl' must be bound to nil.
7529         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7530
7531 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7532
7533         * elmo-util.el (elmo-copy-file): Don't cause an error after
7534         `add-name-to-file' failed.
7535
7536         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7537         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7538
7539 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7540
7541         * elmo-version.el (elmo-version): Up to 2.3.93.
7542
7543 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7544
7545         * elmo-util.el (elmo-flatten): New function.
7546
7547 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7548
7549         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7550         sync Author header.
7551         * elmo-cache.el (toplevel): Ditto.
7552         * elmo-database.el (toplevel): Ditto.
7553         * elmo-date.el (toplevel): Ditto.
7554         * elmo-dop.el (toplevel): Ditto.
7555         * elmo-filter.el (toplevel): Ditto.
7556         * elmo-imap4.el (toplevel): Ditto.
7557         * elmo-internal.el (toplevel): Ditto.
7558         * elmo-localdir.el (toplevel): Ditto.
7559         * elmo-localnews.el (toplevel): Ditto.
7560         * elmo-maildir.el (toplevel): Ditto.
7561         * elmo-msgdb.el (toplevel): Ditto.
7562         * elmo-multi.el (toplevel): Ditto.
7563         * elmo-net.el (toplevel): Ditto.
7564         * elmo-nntp.el (toplevel): Ditto.
7565         * elmo-pipe.el (toplevel): Ditto.
7566         * elmo-pop3.el (toplevel): Ditto.
7567         * elmo-util.el (toplevel): Ditto.
7568         * elmo-vars.el (toplevel): Ditto.
7569         * elmo2.el (toplevel): Ditto.
7570         * mmelmo-imap4.el (toplevel): Ditto.
7571         * mmelmo.el (toplevel): Ditto.
7572
7573         * elmo-version.el (elmo-version): Move to top.
7574
7575         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7576         * elmo-imap4.el (toplevel): Ditto.
7577         * elmo-localdir.el (toplevel): Ditto.
7578         * elmo-msgdb.el (toplevel): Ditto.
7579         * elmo-nntp.el (toplevel): Ditto.
7580         * elmo-pop3.el (toplevel): Ditto.
7581         * elmo-version.el (toplevel): Ditto.
7582
7583         * elmo-localnews.el (toplevel): Added Keyword header.
7584
7585 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7586
7587         * elmo-version.el (product-version-as-string): Defined using
7588         `defun-maybe'.
7589         (toplevel): Use it.
7590
7591         * elmo-localdir.el (toplevel): Updated copyright notice.
7592         * elmo-version.el (toplevel): Ditto.
7593         * elmo-msgdb.el (toplevel): Ditto.
7594         * elmo-imap4.el (toplevel): Ditto.
7595         * elmo-nntp.el (toplevel): Ditto.
7596         * elmo-pop3.el (toplevel): Ditto.
7597
7598 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7599
7600         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7601         messages.
7602
7603         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7604         parameter value (It sometimes contains raw kanji).
7605
7606 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7607
7608         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7609         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7610
7611 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7612
7613         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7614
7615 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7616
7617         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7618         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7619
7620 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7621
7622         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7623         value if selecting folder succceeded.
7624         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7625
7626 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7627
7628         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7629         representation.
7630
7631         * elmo-util.el (elmo-string-matched-member): New function.
7632
7633 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7634
7635         * elmo-util.el (elmo-unintern): New macro.
7636         (elmo-number-set-member): Fixed docstring.
7637
7638         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7639         tag token.
7640
7641 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7642
7643         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7644         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7645
7646 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7647
7648         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7649         `no-error'.
7650         Added docstring.
7651         Return non-nil if selecting folder succeeded.
7652         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7653
7654 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7655
7656         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7657         `file-name-completion' returns t.
7658         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7659         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7660         directory if it does not exist.
7661         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7662         for iteration.
7663
7664 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7665
7666         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7667         enclosure (It's harmful in unplugged status).
7668
7669         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7670
7671         * mmelmo-1.el: Removed.
7672
7673         * mmelmo-2.el: Ditto.
7674
7675         * mmelmo-imap4-1.el: Ditto.
7676
7677         * mmelmo-imap4-2.el: Ditto.
7678
7679         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7680
7681         * mmelmo.el: Merged mmelmo-2.el.
7682
7683         * elmo-version.el (elmo-version): Up to 2.3.92.
7684
7685 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7686
7687         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7688         elmo-update-number): Remove last period in "...done." message.
7689         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7690         Ditto.
7691         * elmo-cache.el (elmo-cache-expire-by-size,
7692         elmo-cache-get-sorted-cache-file-list,
7693         elmo-cache-msgdb-create-as-numlist): Ditto.
7694         * elmo-dop.el (elmo-dop-save-pending-messages,
7695         (elmo-dop-flush-pending-append-operations): Ditto.
7696         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7697         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7698         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7699         (elmo-localdir-pack-number): Ditto.
7700         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7701         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7702         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7703         mime-write-entity-content): Ditto.
7704         * pldap.el (ldap-search-basic): Ditto.
7705
7706 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7707
7708         * elmo-version.el (elmo-version): Up to 2.3.91.
7709
7710         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7711         Only when filter is 'last'.
7712
7713         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7714         (elmo-condition-parse-search-value): Use it.
7715         (elmo-read-search-condition-internal): Quote value only when
7716         it is not an atom.
7717
7718 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7719
7720         * elmo2.el (elmo-generic-folder-diff): Fix.
7721
7722 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7723
7724         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7725         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7726         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7727         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7728         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7729         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7730
7731 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7732
7733         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7734         extra-fields.
7735
7736 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7737
7738         * elmo-version.el (elmo-version): Up to 2.3.90.
7739
7740         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7741         (elmo-imap4-list-folder-important): Ditto.
7742
7743 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7744
7745         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7746
7747 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7748
7749         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7750
7751 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7752
7753         * elmo-nntp.el (elmo-network-initialize-session):
7754         Add starttls negotiation.
7755
7756 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7757
7758         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7759         response.
7760         (elmo-network-setup-session): Define.
7761         Call `elmo-nntp-send-mode-reader' when session opened.
7762
7763 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7764
7765         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7766
7767 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7768
7769         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7770         an invalid SPACE character ahead of `SEARCH' command.  Move
7771         a valid SPACE character following `SEARCH' from conditional
7772         `format' arguments to control-strings.
7773
7774 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7775
7776         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7777         was succeeded.
7778
7779         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7780
7781 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7782
7783         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7784         `w32-get-true-file-link-count' as t.
7785
7786         * elmo-imap4.el (elmo-imap4-read): Abolished.
7787         (Renamed to `elmo-read' and moved to elmo-util.el)
7788         All other related portions are changed.
7789
7790         * elmo-util.el (elmo-read): New function.
7791         (elmo-condition-parse-search-value): Use it.
7792
7793 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7794
7795         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7796
7797         * elmo-nntp.el (elmo-nntp-session): Define.
7798         (elmo-nntp-setting): Abolished.
7799         All other related portions are changed.
7800         (elmo-nntp-get-server-command): Changed argument.
7801         (elmo-nntp-set-server-command): Ditto.
7802         (elmo-nntp-xover-p): Ditto.
7803         (elmo-nntp-set-xover): Ditto.
7804         (elmo-nntp-listgroup-p): Ditto.
7805         (elmo-nntp-set-listgroup): Ditto.
7806         (elmo-nntp-list-active-p): Ditto.
7807         (elmo-nntp-set-list-active): Ditto.
7808         (elmo-nntp-xhdr-p): Ditto.
7809         (elmo-nntp-set-xhdr): Ditto.
7810         (elmo-nntp-flush-connection): Abolished.
7811         (elmo-nntp-get-connection): Abolished.
7812         (elmo-nntp-get-session): New function.
7813         (elmo-network-initialize-session): Defined.
7814         (elmo-network-authenticate-session): Ditto.
7815         (elmo-nntp-send-mode-reader): Changed argument.
7816         (elmo-nntp-send-command): Changed argument.
7817         All other related portions are changed.
7818         (elmo-nntp-read-response): Ditto.
7819         (elmo-nntp-read-raw-response): Ditto.
7820         (elmo-nntp-read-contents): Ditto.
7821         (elmo-nntp-read-body): Ditto.
7822         (elmo-nntp-goto-folder): Abolished.
7823         (elmo-nntp-select-group): New function.
7824         All other related portions are changed.
7825         (This function substitutes `elmo-nntp-goto-folder')
7826         (elmo-nntp-msgdb-create-by-header): Rewrite.
7827         (elmo-nntp-get-overview): Eliminated.
7828         (elmo-nntp-get-message): Ditto.
7829         (elmo-nntp-open-connection) Abolished.
7830         (elmo-nntp-read-msg): Rewrite.
7831         (elmo-nntp-post): Ditto.
7832         (elmo-nntp-send-data): Abolished.
7833         (elmo-nntp-send-buffer): New function.
7834         (elmo-nntp-send-data-line): Define as inline function.
7835         (elmo-nntp-get-folders-info-prepare): Use session as key.
7836         (elmo-nntp-groups-read-response): Changed argument.
7837         (elmo-nntp-retrieve-headers): Ditto.
7838         (elmo-nntp-msgdb-create-message): Ditto.
7839
7840         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7841         when searching by 'since' or 'before'.
7842
7843 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7844
7845         * elmo-version.el (toplevel): Use product-version-as-string for set
7846         verstion-string, if defined.
7847
7848 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7849
7850         * elmo-util.el: Doc fixes.
7851
7852 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7853
7854         * elmo-archive.el (toplevel): Use product-provide.
7855         * elmo-cache.el (toplevel): Ditto.
7856         * elmo-database.el (toplevel): Ditto.
7857         * elmo-date.el (toplevel): Ditto.
7858         * elmo-dop.el (toplevel): Ditto.
7859         * elmo-filter.el (toplevel): Ditto.
7860         * elmo-imap4.el (toplevel): Ditto.
7861         * elmo-internal.el (toplevel): Ditto.
7862         * elmo-localdir.el (toplevel): Ditto.
7863         * elmo-localnews.el (toplevel): Ditto.
7864         * elmo-maildir.el (toplevel): Ditto.
7865         * elmo-msgdb.el (toplevel): Ditto.
7866         * elmo-multi.el (toplevel): Ditto.
7867         * elmo-net.el (toplevel): Ditto.
7868         * elmo-nntp.el (toplevel): Ditto.
7869         * elmo-pipe.el (toplevel): Ditto.
7870         * elmo-pop3.el (toplevel): Ditto.
7871         * elmo-util.el (toplevel): Ditto.
7872         * elmo-vars.el (toplevel): Ditto.
7873         * elmo2.el (toplevel): Ditto.
7874         * mmelmo-1.el (toplevel): Ditto.
7875         * mmelmo-2.el (toplevel): Ditto.
7876         * mmelmo-imap4-1.el (toplevel): Ditto.
7877         * mmelmo-imap4-2.el (toplevel): Ditto.
7878         * mmelmo-imap4.el (toplevel): Ditto.
7879         * mmelmo.el (toplevel): Ditto.
7880
7881 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7882
7883         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7884         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7885
7886 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7887
7888         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7889         before splitting.
7890         (elmo-multi-split-number-alist): Ditto.
7891
7892 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7893
7894         * elmo-version.el: New file.  Use product.el.
7895         * elmo2.el: Add (require 'elmo-version).
7896         * elmo-vars.el (elmo-appname, elmo-version): Move to
7897         elmo-version.el
7898
7899 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7900
7901         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7902         `elmo-msgdb-expand-path'.
7903         (elmo-msgdb-load): Ditto.
7904         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7905         (elmo-generic-list-folder-unread): Rewrite.
7906         (elmo-generic-list-folder-important): Changed argument.
7907         (elmo-list-folder-unread): Ditto.
7908         (elmo-list-folder-important): Ditto.
7909         (elmo-folder-diff): Rewrite.
7910         (elmo-generic-folder-diff): New function.
7911         (elmo-multi-get-number-alist-list): Abolished
7912         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7913         (elmo-multi-folder-diff): Moved to elmo-multi.el
7914         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7915
7916         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7917         `elmo-msgdb-expand-path'.
7918         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7919         (elmo-pop3-read-msg): Ditto.
7920         (elmo-pop3-delete-msgs): Ditto.
7921         (elmo-pop3-folder-diff): New alias.
7922
7923         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7924         `elmo-msgdb-expand-path'.
7925         (elmo-pipe-list-folder-unread): Changed arguments.
7926         (elmo-pipe-list-folder-important): Ditto.
7927         (elmo-pipe-folder-diff): New alias.
7928
7929         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7930         `elmo-msgdb-expand-path'.
7931         (elmo-nntp-max-of-folder): Ditto.
7932         (elmo-nntp-msgdb-create): Ditto.
7933         (elmo-nntp-delete-msgs): Ditto.
7934         (elmo-nntp-folder-diff): New alias.
7935
7936         * elmo-multi.el (elmo-multi-folder-diff): New function.
7937         (elmo-multi-split-mark-alist): Ditto.
7938         (elmo-multi-split-number-alist): Ditto.
7939         (elmo-multi-mark-alist-list): Abolished (Renamed to
7940         elmo-multi-split-mark-alist).
7941         (elmo-multi-list-folder-unread): Rewrite.
7942         (elmo-multi-list-folder-important): Ditto.
7943         (elmo-multi-list-folder): Set `spec' as 1st argument for
7944         `elmo-msgdb-expand-path'.
7945         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7946         instead of `elmo-multi-get-number-alist-list'.
7947
7948         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7949         If 1st argument is not string, treat as spec.
7950         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7951         `elmo-msgdb-expand-path'.
7952         (elmo-msgdb-flist-load): Ditto.
7953         (elmo-msgdb-flist-save): Ditto.
7954         (elmo-msgdb-delete-path): Ditto.
7955         (elmo-msgdb-rename-path): Ditto.
7956
7957         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7958         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7959         (elmo-maildir-delete-mark-msgs): Ditto.
7960         (elmo-maildir-msgdb-create): Ditto.
7961         (elmo-maildir-read-msg): Ditto.
7962         (elmo-maildir-delete-msgs): Ditto.
7963         (elmo-maildir-list-folder-subr): Ditto.
7964         (elmo-maildir-search): Ditto.
7965         (elmo-maildir-get-msg-filename): Ditto.
7966         (elmo-maildir-pack-number): Ditto.
7967         (elmo-maildir-folder-diff): New alias.
7968
7969         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7970
7971         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7972         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7973         (elmo-localdir-folder-diff): New alias.
7974
7975         * elmo-internal.el (elmo-internal-list-folder-subr):
7976         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7977         (elmo-internal-list-folder-by-location): Ditto.
7978         (elmo-internal-msgdb-create): Ditto.
7979         (elmo-internal-delete-msgs): Ditto.
7980         (elmo-internal-read-msg): Ditto.
7981         (elmo-internal-folder-diff): New alias.
7982
7983         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7984         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7985         `elmo-msgdb-expand-path'.
7986         (elmo-imap4-list-folder-unread): Changed arguments.
7987         (elmo-imap4-list-folder-important): Ditto.
7988
7989         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7990         (elmo-filter-list-folder-important): Ditto.
7991         (elmo-filter-folder-diff): New function.
7992
7993         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7994
7995         * elmo-cache.el (elmo-cache-list-folder):
7996         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7997         (elmo-cache-copy-msgs): Ditto.
7998         (elmo-cache-folder-diff): New alias.
7999
8000         * elmo-archive.el (elmo-archive-list-folder-subr):
8001         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
8002         (elmo-archive-get-archive-name): Ditto.
8003         (elmo-archive-create-file): Ditto.
8004         (elmo-archive-append-msg): Ditto.
8005         (elmo-archive-copy-msgs): Ditto.
8006         (elmo-archive-copy-msgs-froms): Ditto.
8007         (elmo-archive-get-msg-filename): Ditto.
8008         (elmo-archive-folder-diff): New alias.
8009
8010 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
8011
8012         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
8013         (elmo-pop3-stream-type-alist): New variable.
8014         (elmo-nntp-stream-type-alist): New variable.
8015
8016         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
8017         (elmo-kill-buffer): Ditto.
8018         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
8019         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
8020         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
8021         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
8022         (elmo-imap4-get-spec): Take into account
8023         `elmo-imap4-stream-type-alist'.
8024
8025 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
8026
8027         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
8028         (elmo-nntp-list-folders-get-cache): Ditto.
8029
8030 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
8031
8032         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
8033         character before 'uid'.
8034
8035 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
8036
8037         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
8038
8039         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
8040
8041         * elmo-util.el (elmo-number-set-member): New function.
8042         (elmo-number-set-append-list): Ditto.
8043         (elmo-number-set-append): Ditto.
8044
8045         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
8046         Use `elmo-number-set-member'.
8047         (elmo-living-messages): Ditto.
8048         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
8049         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
8050
8051         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
8052         (elmo-imap4-add-to-cont-list): Abolished.
8053         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
8054         instead of elmo-imap4-add-to-cont-list.
8055
8056         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
8057         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
8058
8059         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
8060
8061 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
8062
8063         * elmo-util.el (elmo-condition-parse-search-value):
8064         Fixed date parsing.
8065
8066 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
8067
8068         * elmo-util.el (elmo-condition-find-key-internal): New function.
8069         (elmo-condition-find-key): Ditto.
8070
8071         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
8072         (elmo-msgdb-search-internal): Ditto.
8073         (elmo-msgdb-search): Ditto.
8074
8075 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
8076
8077         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
8078         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
8079
8080         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
8081         (elmo-nntp-search-primitive): Fixed problem when condition is
8082         'unmatch'.
8083
8084         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
8085
8086         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
8087         (elmo-nntp-xhdr-p): New macro.
8088         (elmo-nntp-set-xhdr): Ditto.
8089         (elmo-nntp-parse-xhdr-response): New function.
8090         (elmo-nntp-retrieve-field): Ditto.
8091         (elmo-nntp-search-primitive): Ditto.
8092         (elmo-nntp-search): Implemented.
8093
8094         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8095
8096         * elmo-archive.el (elmo-archive-search): Set all number list to
8097         `elmo-archive-field-condition-match'
8098
8099         * elmo-localdir.el (elmo-localdir-search): Likewise.
8100
8101         * elmo-maildir.el (elmo-maildir-search): Likewise.
8102
8103 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8104
8105         * elmo-msgdb.el (elmo-living-messages): New function.
8106         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8107         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8108         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8109         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8110         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8111         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8112         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8113         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8114         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8115         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8116         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8117
8118 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8119
8120         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8121
8122         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8123
8124         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8125
8126         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8127         arguments for `SEARCH' command.
8128         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8129         All other related portions are changed.
8130
8131         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8132
8133         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8134         (elmo-list-folder-unread): Rewrite.
8135         (elmo-list-folder-important): Ditto.
8136
8137         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8138         (elmo-condition-parse-error): New inline function.
8139         (elmo-read-search-condition): New function.
8140         (elmo-read-search-condition-internal): Ditto.
8141         (elmo-parse-search-condition): Rewrite.
8142         (elmo-condition-parse): New function.
8143         (elmo-condition-parse-or-expr): Ditto.
8144         (elmo-condition-parse-and-expr): Ditto.
8145         (elmo-condition-parse-primitive): Ditto.
8146         (elmo-condition-parse-search-value): Ditto.
8147         (elmo-buffer-field-primitive-condition-match): Ditto.
8148         (elmo-buffer-field-condition-match): Rewrite.
8149         (elmo-file-field-condition-match): Ditto.
8150
8151         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8152         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8153
8154         * elmo-internal.el (elmo-internal-search): Set `number' and
8155         `number-list' argument of `elmo-file-field-condition-match'.
8156
8157         * elmo-maildir.el (elmo-maildir-search): Ditto.
8158
8159         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8160         `msgdb' as argument instead of `mark-alist'.
8161         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8162         `overview'.
8163
8164         * elmo-multi.el: Likewise.
8165
8166         * elmo-pipe.el: Likewise.
8167
8168         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8169         (elmo-imap4-search-internal): Rewrite.
8170         (elmo-imap4-search): Ditto.
8171
8172         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8173         (elmo-filter-list-folder-unread): Ditto.
8174         (elmo-filter-list-folder-important): Ditto.
8175         (elmo-filter-search): Rewrite.
8176
8177         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8178         `number-list' argument of `elmo-file-field-condition-match'.
8179         (elmo-cache-search): Ditto.
8180
8181         * elmo-localdir.el: Likewise.
8182
8183         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8184         number-list and pass it to `elmo-buffer-field-condition-match'.
8185         (elmo-archive-field-condition-match): Pass `number-list' to
8186         `elmo-archive-field-condition-match'
8187
8188 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8189
8190         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8191         `listgroup'.
8192
8193         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8194         (elmo-folder-diff-async-callback-data): Ditto.
8195         (elmo-folder-diff-async): New function.
8196
8197         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8198         (elmo-network-session-cache-key): Use it as a prefix of the session
8199         name.
8200         (elmo-network-open-session): Ditto.
8201
8202         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8203         (elmo-imap4-status-callback-data): Ditto.
8204         (elmo-imap4-server-diff-async-callback): New variable.
8205         (elmo-imap4-server-diff-async-callback-data): Ditto.
8206         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8207         `elmo-imap4-status-callback-data'.
8208         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8209         `elmo-imap4-status-callback-data' as nil.
8210         (elmo-imap4-server-diff): Ditto.
8211         (elmo-imap4-server-diff-async-callback-1): New function.
8212         (elmo-imap4-server-diff-async): Ditto.
8213         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8214
8215 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8216
8217         * elmo-util.el (elmo-list-delete): Doc fix.
8218         (elmo-delete-lists): Abolish.
8219         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8220         instead of `elmo-delete-lists'.
8221
8222 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8223
8224         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8225         before `sort'.
8226
8227 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8228
8229         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8230         `elmo-imap4-literal-subr'.
8231         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8232         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8233
8234 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8235
8236         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8237         (elmo-archive-list-folder): Fix.
8238         (elmo-archive-max-of-folder): Fix.
8239
8240 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8241
8242         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8243          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8244         (elmo-localdir-append-msg): Ditto.
8245         (elmo-localdir-list-folder): Fix for `nonsort'.
8246         (elmo-localdir-list-folder-subr): Fix for `killed'.
8247         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8248         (elmo-maildir-list-folder-subr): Ditto.
8249         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8250         (elmo-archive-list-folder-subr): Ditto.
8251         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8252         (elmo-internal-list-folder-subr): Ditto.
8253
8254 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8255
8256         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8257
8258 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8259
8260         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8261
8262 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8263
8264         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8265         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8266
8267         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8268         before greeting.
8269         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8270         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8271
8272 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8273
8274         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8275
8276         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8277         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8278         before STORE command.
8279
8280 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8281
8282         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8283
8284         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8285         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8286         of `response'.
8287         (elmo-imap4-list-folders): Removed unused local variable.
8288         (elmo-network-initialize-session): Ditto.
8289         (elmo-imap4-delete-msg-by-id): Ditto.
8290         (elmo-imap4-parse-fetch): Ditto.
8291         (elmo-imap4-copy-msgs): Ditto.
8292         Use `dst-spec' instead of `dst-folder'.
8293         (elmo-network-authenticate-session): Check authenticate type `plain'.
8294
8295 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8296
8297         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8298         garbage checking.
8299         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8300         `elmo-imap4-response-value'.
8301         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8302
8303 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8304
8305         * elmo-imap4.el (elmo-imap4-send-command):
8306         Cause elmo-imap4-bye-error when current response is BYE.
8307         (elmo-imap4-arrival-filter): Changed greeting response value.
8308
8309         * elmo2.el (elmo-imap4-bye-error): Define.
8310
8311         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8312         (elmo-imap4-server-diff): Ditto.
8313         (elmo-imap4-response-bye-p): New macro.
8314         (elmo-imap4-response-error-text): Get text from BYE response.
8315         (elmo-imap4-read-response): Return if BYE response.
8316         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8317         (elmo-imap4-folder-exists-p): Ditto.
8318         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8319         (elmo-imap4-parse-bye): New function.
8320         (elmo-imap4-parse-response): Remove needless let.
8321         Call `elmo-imap4-parse-bye'.
8322
8323 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8324
8325         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8326         the mailbox does not exist.
8327         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8328
8329 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8330
8331         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8332
8333 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8334
8335         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8336
8337         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8338         (elmo-network-initialize-session-buffer): Defined.
8339
8340         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8341         Abolished.
8342         (mmelmo-imap4-get-mime-entity): Rewrite.
8343
8344         * elmo2.el (elmo-error): Capitalize error message.
8345
8346         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8347         (elmo-network-session-buffer): New macro.
8348         (elmo-network-open-session): Use it.
8349
8350         * elmo-imap4.el: Rewrite.
8351
8352 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8353
8354         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8355
8356 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8357
8358         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8359         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8360         (elmo-imap4-create-msgdb-from-overview-string): Use
8361         `elmo-msgdb-create-overview-from-buffer'.
8362
8363 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8364
8365         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8366         (elmo-imap4-default-hierarchy-delimiter): New variable.
8367         (elmo-imap4-list-folders): Use it.
8368
8369 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8370
8371         * elmo-net.el (elmo-network-open-session): Add user and
8372         stream-type for process-buffer name.
8373
8374         * elmo-pop3.el (elmo-network-initialize-session): Call
8375         buffer-disable-undo.
8376
8377         * elmo-imap4.el (elmo-network-initialize-session):
8378         Set current-buffer as an argument for `buffer-disable-undo'.
8379
8380         * elmo-pop3.el (elmo-network-close-session): Don't use
8381         `process-live-p'.
8382
8383         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8384         Set default as 'user.
8385
8386         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8387
8388         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8389         and `elmo-imap4-flush-connection'.
8390
8391         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8392         (elmo-pop3-get-spec): Assume auth as symbol.
8393         (elmo-open-network-stream): Moved to `elmo-net'.
8394
8395         * elmo-pop3.el (toplevel): Require 'elmo-net.
8396         Define `sasl-cram-md5' to silence byte compilier.
8397         (elmo-pop3-connection-cache) Abolished.
8398         (elmo-pop3-authenticator-alist) New variable.
8399         (elmo-pop3-session): Define.
8400         (elmo-pop3-connection-get-process): Abolished.
8401         (elmo-pop3-connection-get-buffer): Ditto.
8402         (elmo-pop3-close-connection): Ditto.
8403         (elmo-pop3-flush-connection): Ditto.
8404         (elmo-pop3-get-connection): Ditto.
8405         (elmo-pop3-get-session): New function.
8406         (Replacement for `elmo-pop3-get-connection').
8407         All other related modules are changed.
8408         (elmo-network-close-session): Define.
8409         (elmo-pop3-send-command): Abolished argument `buffer'.
8410         All other related modules are changed.
8411         (elmo-pop3-read-response): Likewise.
8412         (elmo-pop3-open-connection): Abolished.
8413         (elmo-pop3-auth-user): New function.
8414         (elmo-pop3-auth-apop): Ditto.
8415         (elmo-pop3-auth-cram-md5): Ditto.
8416         (elmo-pop3-auth-scram-md5): Ditto.
8417         (elmo-pop3-auth-digest-md5): Ditto.
8418         (elmo-network-initialize-session): Define.
8419         (elmo-network-authenticate-session): Ditto.
8420         (elmo-network-setup-session): Ditto.
8421
8422         * elmo-imap4.el (toplevel): Require 'elmo-net.
8423         (elmo-imap4-session): Define.
8424         (elmo-imap4-connection-cache): Abolished.
8425         (elmo-imap4-password-key): Ditto.
8426         (elmo-imap4-flush-connection): Ditto.
8427         (elmo-imap4-get-connection): Ditto.
8428         All other related modules are changed.
8429         (elmo-imap4-get-session): New function
8430         (Replacement for `elmo-imap4-get-connection').
8431         (elmo-imap4-read-response): Abolished argument `buffer'.
8432         All other related modules are changed.
8433         (elmo-imap4-send-command): Likewise.
8434         (elmo-imap4-select-folder): Abolished.
8435         All other related modules are changed.
8436         (elmo-imap4-select-mailbox): New function.
8437         (Replacement for `elmo-imap4-select-folder').
8438         (elmo-imap4-auth-login): Simplify.
8439         (Assume current buffer as process buffer)
8440         (elmo-imap4-auth-cram-md5): Ditto.
8441         (elmo-imap4-auth-digest-md5): Ditto.
8442         (elmo-imap4-login): Ditto.
8443         (elmo-imap4-open-connection): Abolished.
8444         (elmo-imap4-open-connection-1): Abolished.
8445         (elmo-network-initialize-sessoin): Define.
8446         (elmo-network-authenticate-session): Ditto.
8447         (elmo-network-setup-session): Ditto.
8448
8449         * elmo-net.el: New module.
8450
8451 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8452
8453         * elmo-util.el (elmo-define-error): New function.
8454
8455         * elmo2.el (elmo-error): Define.
8456         (elmo-open-error): Define.
8457         (elmo-authenticate-error): Define.
8458
8459         * elmo-imap4.el (elmo-imap4-error): Abolish.
8460         (elmo-imap4-error-type): Abolish.
8461         (elmo-imap4-error-process): Abolish.
8462         (elmo-imap4-error-message): Abolish
8463         (elmo-imap4-list-folders): Don't quote lambda.
8464         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8465         (elmo-imap4-parse-namespace): Ditto.
8466         (elmo-imap4-open-connection): Rewrite.
8467         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8468         (elmo-imap4-get-connection): Abolish local variable `result'.
8469
8470 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8471
8472         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8473         wrong-type-argument error when auth is nil.
8474
8475 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8476
8477         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8478         (elmo-default-nntp-stream-type): Ditto.
8479         (elmo-default-pop3-stream-type): Ditto.
8480         (elmo-network-stream-type-alist): Ditto.
8481         (elmo-default-imap4-ssl): Abolished.
8482         (elmo-default-nntp-ssl): Ditto.
8483         (elmo-default-pop3-ssl): Ditto.
8484
8485         * elmo-util.el: (toplevel): Removed needless requires.
8486         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8487         (elmo-open-network-stream): Open network stream according to
8488         the value of `elmo-network-stream-type-alist'.
8489         (elmo-get-network-stream-type): New function.
8490         (elmo-network-stream-type-spec-string): New macro.
8491         (elmo-network-stream-type-symbol): Ditto.
8492         (elmo-network-stream-type-function): Ditto.
8493
8494         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8495         network-stream-type. All other related portions are changed.
8496         (elmo-pop3-open-connection): Ditto.
8497
8498         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8499         network-stream-type. All other related portions are changed.
8500
8501         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8502         network-stream-type.All other related portions are changed.
8503         (elmo-imap4-error): New macro.
8504         (elmo-imap4-error-type): Ditto.
8505         (elmo-imap4-error-process): Ditto.
8506         (elmo-imap4-error-message): Ditto.
8507         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8508         (elmo-imap4-auth-cram-md5): Ditto.
8509         (elmo-imap4-auth-digest-md5): Ditto.
8510         (elmo-imap4-login): Ditto.
8511         (elmo-imap4-open-connection): Remove password entry if authentication
8512         was in vain.
8513         (elmo-imap4-user-at-host): Abolished.
8514         (elmo-imap4-password-key): New buffer local variable.
8515         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8516         using protocol, port, auth and stream-type.
8517
8518         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8519
8520 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8521
8522         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8523
8524         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8525
8526         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8527         (elmo-imap4-authenticator-alist): New variable.
8528         (elmo-imap4-open-connection-1): Rename from
8529         elmo-imap4-open-connection.
8530         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8531         only wraps elmo-imap4-open-connection-1.
8532         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8533         user-at-host.
8534         (elmo-imap4-auth-login): New function.
8535         (elmo-imap4-auth-cram-md5): New function.
8536         (elmo-imap4-auth-digest-md5): New function.
8537         (elmo-imap4-login): New function.
8538
8539 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8540
8541         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8542         function `error'.
8543
8544 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8545
8546         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8547
8548 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8549
8550         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8551
8552 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8553
8554         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8555         for server responses, quote `*' regardless of where it appears.
8556
8557 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8558
8559         * elmo-maildir.el (elmo-maildir-commit): New alias.
8560
8561 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8562
8563         * elmo-util.el (elmo-display-progress):
8564                 Use `progress-feedback-with-label'.
8565
8566 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8567
8568         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8569         (elmo-imap4-non-atom-char-regex): Ditto.
8570         (elmo-imap4-non-text-char-regex): Ditto.
8571         (elmo-imap4-literal-threshold): Ditto.
8572         (elmo-imap4-atom-p): New function.
8573         (elmo-imap4-quotable-p): Ditto.
8574         (elmo-imap4-nil): Ditto.
8575         (elmo-imap4-atom): Ditto.
8576         (elmo-imap4-quoted): Ditto.
8577         (elmo-imap4-literal-subr): Ditto.
8578         (elmo-imap4-literal): Ditto.
8579         (elmo-imap4-buffer-literal): Ditto.
8580         (elmo-imap4-string-subr): Ditto.
8581         (elmo-imap4-string): Ditto.
8582         (elmo-imap4-buffer-string): Ditto.
8583         (elmo-imap4-astring-subr): Ditto.
8584         (elmo-imap4-astring): Ditto.
8585         (elmo-imap4-buffer-astring): Ditto.
8586         (elmo-imap4-nstring): Ditto.
8587         (elmo-imap4-buffer-nstring): Ditto.
8588         (elmo-imap4-mailbox): New alias.
8589         (elmo-imap4-field-body): Ditto.
8590         (elmo-imap4-userid): Ditto.
8591         (elmo-imap4-password): Ditto.
8592         (elmo-imap4-format-quoted): New function.
8593         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8594         arguments and handle "atom", "quoted" and "literal" string here.
8595         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8596         `elmo-imap4-send-command'.
8597         (elmo-imap4-folder-exists-p): Likewise.
8598         (elmo-imap4-create-folder): Likewise.
8599         (elmo-imap4-delete-folder): Likewise.
8600         (elmo-imap4-rename-folder): Likewise.
8601         (elmo-imap4-max-of-folder): Likewise.
8602         (elmo-imap4-check-validity): Likewise.
8603         (elmo-imap4-sync-validity): Likewise.
8604         (elmo-imap4-server-diff): Likewise.
8605         (elmo-imap4-select-folder): Likewise.
8606         (elmo-imap4-copy-msgs): Likewise.
8607         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8608         (elmo-imap4-mark-set-on-msgs): Likewise.
8609         (elmo-imap4-read-part): Likewise.
8610         (elmo-imap4-read-msg): Likewise.
8611         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8612         `elmo-imap4-password' for `elmo-imap4-send-command'.
8613         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8614         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8615         `elmo-imap4-buffer-literal'.
8616         (elmo-imap4-append-msg): Likewise.
8617
8618         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8619         `delete' for removing dead connection from the connection cache.
8620         Move deletion of the process buffer after that.
8621         (elmo-imap4-list): Change `defsubst' to `defun'.
8622         (elmo-imap4-commit): Make error message verbose.
8623         (elmo-imap4-search): Ditto.
8624         (elmo-imap4-list): Ditto.
8625         (elmo-imap4-select-folder): Ditto.
8626         (elmo-imap4-copy-msgs): Ditto.
8627         (elmo-imap4-delete-msg-by-id): Ditto.
8628         (elmo-imap4-append-msg-by-id): Ditto.
8629         (elmo-imap4-append-msg): Ditto.
8630
8631 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8632
8633         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8634         when dired is used on XEmacs.
8635
8636 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8637
8638         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8639         instead of `append'.
8640         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8641         `elmo-plugged-p' directly.
8642         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8643         of `elmo-plugged-p' directly.
8644
8645         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8646         Eliminate unused variable.  Use `memq' for checking a process status.
8647         Use `cons' instead of `append' for updating the connection cache.
8648         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8649         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8650
8651 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8652
8653         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8654         `elmo-imap4-read-point' exactly.
8655
8656         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8657         the local variable `folder' to `mailbox'.
8658         Rename the argument `fld' to `folder'.
8659
8660 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8661
8662         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8663         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8664
8665 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8666
8667         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8668         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8669         (elmo-pop3-uidl-number-hash): Ditto.
8670         (elmo-pop3-size-hash): Ditto.
8671         (elmo-pop3-uidl-done): Ditto.
8672         (elmo-pop3-list-done): Ditto.
8673         (elmo-pop3-connection-get-process): New defmacro.
8674         (elmo-pop3-connection-get-buffer): Ditto.
8675         (elmo-pop3-close-connection): Delete buffer and process.
8676         (elmo-pop3-flush-connection): Don't delete buffer and process.
8677         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8678         Setup UIDL and size hash.
8679         (elmo-pop3-send-command-no-erase): Deleted
8680         (elmo-pop3-send-command): Added optional argument `no-erase'.
8681         (elmo-pop3-parse-uidl-response): New function.
8682         (elmo-pop3-parse-list-response): Set size hash.
8683         (elmo-pop3-list-location): New function.
8684         (elmo-pop3-list-by-uidl-subr): Ditto.
8685         (elmo-pop3-list-by-list): Ditto.
8686         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8687         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8688         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8689         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8690         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8691         Use uidl.
8692         (elmo-pop3-uidl-to-number): New function.
8693         (elmo-pop3-number-to-uidl): Ditto.
8694         (elmo-pop3-number-to-size): Ditto.
8695         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8696         Set number by use of uidl.
8697         (elmo-pop3-msgdb-create-message): Likewise.
8698         Set size, loc-alist in msgdb.
8699         (elmo-pop3-read-msg): Set number by use of uidl.
8700         Added optional argument `msgdb'.
8701         (elmo-pop3-delete-msg): Ditto.
8702         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8703         (elmo-pop3-commit): Close connection.
8704
8705         * elmo-pipe.el (elmo-pipe-max-of-folder):
8706         Bind `elmo-pop3-use-uidl' as nil.
8707         (elmo-pipe-drain): Ditto.
8708         Call `elmo-commit'.
8709
8710         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8711         (elmo-msgdb-overview-entity-set-size): New defsubst.
8712
8713 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8714
8715         * elmo-vars.el (elmo-use-killed-list): New variable
8716         (Renamed from `elmo-nntp-use-killed-list').
8717         (elmo-nntp-use-killed-list): Eliminated.
8718
8719         * elmo-msgdb.el (elmo-msgdb-expand-path):
8720         Changed expanding msgdb path for elmo-multi.
8721
8722         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8723         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8724         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8725         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8726         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8727         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8728         (toplevel): Deleted time-stamp line.
8729
8730         * elmo2.el (elmo-clear-killed ): Defined as function
8731         (Abolished defining as a backend function).
8732         All other related modules are changed.
8733
8734 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8735
8736         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8737
8738 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8739
8740         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8741
8742 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8743
8744         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8745
8746 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8747
8748         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8749         asynchronous folder check.
8750
8751         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8752
8753         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8754         `elmo-nntp-use-killed-list'.
8755         (elmo-nntp-list-folder): Use killed list.
8756         (elmo-nntp-max-of-folder): Ditto.
8757         (elmo-nntp-msgdb-create): Set killed list.
8758
8759         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8760
8761         * elmo2.el (elmo-clear-killed): New backend function.
8762         All other related modules are changed.
8763
8764 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8765
8766         * elmo-util.el (elmo-imap4-spec-folder): Use
8767         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8768         All callers changed.
8769
8770 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8771
8772         * mmelmo-2.el (initialize-instance):
8773         Use `mime-buffer-entity-buffer-internal' instead of
8774         `mime-entity-buffer'.
8775
8776         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8777         (mime-entity-body): Implemented.
8778         (mime-goto-header-start-point): Deleted.
8779         (mime-goto-body-end-point): Ditto.
8780         (mime-entity-point-min): Ditto.
8781         (mime-entity-point-max): Ditto.
8782         (mime-entity-children): Ditto.
8783         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8784         instead of `mime-entity-buffer'.
8785         (mime-entity-header-buffer): Ditto.
8786         (mime-entity-body-buffer): Ditto.
8787         (mime-write-entity-content): Ditto.
8788
8789         * pldap.el (ldap-static-if): New macro.
8790         (toplevel): Use it instead of `static-if'.
8791
8792 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8793
8794         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8795         included in `attrs' argument.
8796
8797 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8798
8799         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8800
8801         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8802         (ldap-ldif-safe-init-char-regexp): Ditto.
8803         (ldap-ldif-safe-string-regexp): Ditto.
8804         (ldap/ldif-safe-string-p): New macro.
8805         (ldap/ldif-insert-field): Ditto.
8806         (ldap-modify): Use it.
8807         (ldap-add): Ditto.
8808         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8809         (ldap-decode-attribute): Decode only when `attr' is consp.
8810         (ldap-delete): Bind `ret'.
8811         (toplevel): Require 'cl at compile time.
8812         Removed (require 'poe) and (require 'std11).
8813         (pldap-version): Eliminated.
8814         (ldap-search-basic): Removed auth and dn binding.
8815         (ldap-ldif-field-name-regexp): New constant.
8816         (ldap-ldif-field-head-regexp): Ditto.
8817         (ldap-ldif-next-field-head-regexp): Ditto.
8818         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8819         (ldap/field-end): New function.
8820         (ldap/field-body): Use it.
8821         (ldap/collect-field): Ditto.
8822         (ldap-search-basic): Use `ldap/field-body'.
8823
8824 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8825
8826         * pldap.el (ldap-default-attribute-encoder): New user option.
8827         (ldap/field-body): Decode base64 string.
8828         (ldap/collect-field): Ditto.
8829         (ldap-encode-attribute): New function.
8830         (ldap-add-entries): Use it.
8831         (ldap-modify-entries): Ditto.
8832         (ldap-search-entries): Enclosed decoding function with
8833         `with-temp-buffer' and set as unibyte.
8834         (ldap-search-basic): Set process buffer as unibyte.
8835
8836         * elmo-util.el (elmo-folder-identical-system-p):
8837         Eliminated name space checking.
8838
8839         * pldap.el: New module.
8840         toplevel: Changed condition to detect built-in ldap feature.
8841         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8842         (ldap-add): Added error handling.
8843         (ldap-modify): Ditto.
8844         (ldap-delete): Ditto.
8845
8846 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8847
8848         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8849         Initialize local variables with `let'.  Inline a temporary
8850         variable for the progress percentage.  Sort `setq' to reduce
8851         function call in the while-loop.
8852
8853         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8854         into the conditional branch.
8855
8856 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8857
8858         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8859         Move a conditional out of the while-loop.
8860
8861 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8862
8863         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8864         elmo-msgdb-overview-get-entity-by-number.
8865         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8866         throw.
8867
8868 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8869
8870         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8871         the local variable for a packed number self descriptively.
8872
8873 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8874
8875         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8876         * elmo-localdir.el (elmo-localdir-pack-number): Use
8877         `elmo-msgdb-overview-get-entity' instead of
8878         `elmo-msgdb-overview-get-entity-by-number'.
8879         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8880         (elmo-msgdb-search-overview-entity): Removed.
8881         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8882         by message-id or number.
8883         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8884         instead of `elmo-msgdb-overview-get-entity-by-number'.
8885
8886 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8887
8888         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8889         non-nil, use hash table for overview.
8890         (elmo-hash-maximum-size): New variable.
8891         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8892         (elmo-msgdb-make-overview-hashtb): New function.
8893         (elmo-msgdb-clear-overview-hashtb): New function.
8894         (elmo-clear-hash-val): New macro.
8895         All other related modules are changed.
8896
8897 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8898
8899         * elmo2.el (elmo-move-msgs): If there's other message with
8900         same message-id, don't use cache.
8901
8902 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8903
8904         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8905         number is already packed.
8906
8907 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8908
8909         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8910
8911 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8912
8913         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8914         All other related modules are changed.
8915
8916 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8917
8918         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8919         of refiling failure on Maildir.
8920
8921 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8922
8923         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8924         decoded mime-charset with cache.
8925         (elmo-msgdb-overview-entity-get-from): Ditto.
8926         (elmo-msgdb-overview-entity-get-subject): Ditto.
8927         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8928
8929 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8930
8931         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8932         (elmo-remove-passwd): Fill password with 0 before erase.
8933         * elmo-vars.el (elmo-passwd-life-time): New variable.
8934
8935 \f
8936 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8937
8938         * elmo-cache.el (elmo-buffer-cache-add):
8939         Set message cache buffer as unibyte.
8940
8941 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8942
8943         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8944         become nil.
8945
8946 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8947
8948         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8949         when display is finished.
8950         (elmo-nntp-msgdb-create): Ditto.
8951         (elmo-nntp-groups-read-response): Ditto.
8952         (elmo-nntp-retrieve-headers): Ditto.
8953         (elmo-nntp-msgdb-create-message): Ditto.
8954         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8955         (elmo-pop3-msgdb-create-message): Ditto.
8956
8957 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8958
8959         * elmo-maildir.el (elmo-maildir-msgdb-create):
8960         Use `elmo-msgdb-sort-by-date'.
8961
8962 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8963
8964         * elmo2.el (elmo-read-msg-no-cache):
8965         Eliminated arguments after `outbuf'.
8966         Don't use cache even if it exists.
8967         (elmo-read-msg): Don't pass arguments after `outbuf' to
8968         `elmo-read-msg-no-cache'.
8969
8970 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8971
8972         * elmo-archive.el (elmo-archive-list-folders):
8973         Use `file-name-directory' if base folder does not exist.
8974
8975 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8976
8977         * elmo-archive.el (elmo-archive-list-folders): Don't use
8978         `file-name-directory'.
8979
8980 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8981
8982         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8983         If `force' is non-nil, try flushing all operation queues.
8984
8985 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8986
8987         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8988         as-binary-process.
8989
8990 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8991
8992         * elmo-util.el (elmo-display-progress): Fixed.
8993
8994 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8995
8996         * elmo-util.el (elmo-display-progress): New function.
8997         All other related modules are changed.