(elmo-passwd-alist-load): Move point to min
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-util.el (elmo-passwd-alist-load): Move point to min
4         position before read.
5
6 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
7
8         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
9         (elmo-global-flags-initialize): Ditto.
10
11 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
12
13         * elmo-archive.el (toplevel): Don't require emu, std11
14         and elmo-localdir.
15
16         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
17         definition.
18
19 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
20
21         * elmo.el (elmo-folder-confirm-appends): Display folder name.
22
23 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
24
25         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
26         literals.
27
28 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
29
30         * elmo-maildir.el (elmo-maildir-list-location): Reduce
31         `elmo-get-last-modification-time' call.
32
33 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
34
35         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
36         expression.
37         (elmo-maildir-set-mark): Ditto.
38         (elmo-maildir-delete-mark): Ditto.
39
40 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
41
42         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
43         optional argument `separators'.
44
45 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
46
47         * elmo.el (cache-changed): Abolish.
48         (status-changed): New signal.
49         (elmo-message-killed-p): New generic function and define for
50         elmo-folder.
51         (elmo-folder-recover-messages): Ditto.
52         (elmo-message-set-cached): Emit signal `status-changed' instead of
53         `cache-changed'.
54         (elmo-message-status): New macro.
55         (elmo-message-status-folder): Ditto.
56         (elmo-message-status-number): Ditto.
57         (elmo-message-status-set-flags): Ditto.
58         (elmo-message-status-set-killed): Ditto.
59         (elmo-message-status-flags): New function.
60         (elmo-message-status-cached-p): Ditto.
61         (elmo-message-status-killed-p): Ditto.
62
63         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
64         `status-changed' instead of `cache-changed'.
65         (elmo-folder-recover-messages): Define.
66         (elmo-message-killed-p): Ditto.
67
68         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
69         `status-changed' instead of `cache-changed'.
70
71         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
72         (elmo-message-killed-p): Define.
73         (elmo-folder-recover-messages): Ditto.
74
75         * elmo-version.el (elmo-version): Up to 2.15.3.
76
77 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
78
79         * elmo-signal.el (elmo-signal-bindings): Use cons to append
80         element into list.
81         (elmo-define-signal-handler): Add docstring.
82         (elmo-define-signal-filter): Ditto.
83
84         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
85
86 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
87
88         * elmo-util.el (elmo-flatten): Don't use recursive call.
89
90         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
91         assignment.
92         (elmo-folder-message-make-temp-files): Use `number-to-string'
93         instead of `int-to-string'.
94
95 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
96
97         * elmo-search.el (elmo-folder-delete-messages): Define.
98
99 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
100
101         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
102         customization type.
103         (elmo-mailing-list-count-spec-list): Ditto.
104
105         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
106         for `list-id'.
107
108 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
109
110         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
111         handling.
112
113 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
114
115         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
116         (elmo-mailing-list-count-spec-list): Ditto.
117
118         * elmo-util.el (elmo-map-until-success): New function.
119         (elmo-string-match-substring): Ditto.
120         (elmo-find-list-match-value): Ditto.
121
122         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
123         Removed.
124         (modb-entity-extract-ml-info-from-subject): Ditto.
125         (modb-entity-extract-ml-info-from-return-path): Ditto.
126         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
127         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
128         (modb-entity-extract-ml-info-from-mailman): Ditto.
129         (modb-entity-extract-mailing-list-info-functions): Ditto.
130         (modb-entity-extract-mailing-list-info): Rewrite with
131         `elmo-find-list-match-value'.
132
133 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
134
135         * elmo-net.el (elmo-network-session-retry-count): New user option.
136         (elmo-network-session-buffer-name): New internal function.
137         (elmo-network-session-buffer-create): Ditto.
138         (elmo-network-open-session): Retry open network session
139         `elmo-network-session-retry-count' times.
140
141 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
142
143         * elmo-util.el (elmo-list-filter): Rewritten.
144
145 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
146
147         * elmo-util.el (elmo-string-member): Allow symbol element in list.
148
149 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
150
151         * elmo-search.el (elmo-make-search-engine): Use prefix
152         `elmo-search-' for require symbol instead of `else-'.
153         (elmo-search-engine-extprog): New class.
154         (elmo-search-engine-do-search): Remove nil from argument
155         list. Added argument pattern to evaluate element as function.
156         (elmo-search-engine-local-file): Derived from
157         `elmo-search-engine-extprog'.
158         (elmo-search-engine-create-message-entity): Check existance of file.
159         (elmo-search-engine-fetch-message): Ditto.
160         (elmo-search-namazu-index): Follow the API change.
161         (elmo-search-grep-target): Ditto.
162
163 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
164
165         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
166         characters of working buffer.
167
168         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
169         Does not bind `default-mime-charset'.
170         (elmo-msgdb-create-message-entity-from-buffer): Removed
171         unnecessary local bind.
172
173         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
174         function.
175         (modb-entity-extract-mailing-list-info-functions): Added it.
176
177 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
178
179         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
180         when number and message-id are non-nil.
181
182         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
183
184         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
185         conditional steatment.
186         (elmo-pop3-auth-apop): Likewise.
187         (elmo-network-authenticate-session): Likewise.
188
189 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
190
191         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
192         symbol `fill-column'.
193         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
194         decode field value.
195
196         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
197         (elmo-decoded-field-body): Ditto.
198
199 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
200
201         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
202         `tokens' to `params'.
203
204 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
205
206         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
207         working buffer.
208
209 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
210
211         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
212         decide index.
213
214 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
215
216         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
217         Set default value as nil.
218         (toplevel): Register search engines by
219         `elmo-search-register-engine' if there are not defined.
220
221         * elmo.el (autoload): Added autoload setting for
222         `elmo-search-register-engine'.
223
224 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
225
226         * elmo.el (toplevel): `[' is redefined as the prefix of the search
227         folder instead of nmz folder.
228         (elmo-nmz-default-index-path): Added obsolete variable setting.
229         (elmo-nmz-index-alias-alist): Ditto.
230         (elmo-nmz-use-drive-letter): Ditto.
231
232         * elmo-search.el (elmo-search-register-engine): New function.
233
234         * elmo-nmz.el: Removed.
235
236         * elmo-version.el (elmo-version): Up to 2.15.2.
237
238 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
239
240         * elmo-search.el: New file.
241
242 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
243
244         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
245         condition `larger' and `smaller'.
246
247 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
248
249         * elmo-util.el (elmo-safe-filename): Rewrite to replace
250         `"' (double quote) into "_Q_".
251
252 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
253
254         * elmo-net.el (elmo-net-quote-chars): Abolish.
255         (elmo-net-format-quoted): Ditto.
256
257 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
258
259         * elmo.el (elmo-get-folder-function): New variable.
260         (elmo-get-folder): New function.
261         (elmo-folder-rename): Call `elmo-make-folder' with specified
262         mime-charset.
263
264         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
265         `elmo-make-folder'.
266         (elmo-split-subr): Ditto.
267
268         * elmo-multi.el (elmo-folder-initialize): Ditto.
269
270         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
271
272         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
273         (elmo-flag-get-folder): Ditto.
274
275         * elmo-filter.el (elmo-folder-initialize): Ditto.
276
277         * elmo-access.el (elmo-folder-initialize): Ditto.
278         (elmo-access-folder-update-children): Ditto.
279
280         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
281         (elmo-dop-queue-flush): Ditto.
282         (elmo-folder-append-buffer-dop-delayed): Ditto.
283         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
284         mime-charset.
285
286         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
287         instead of `elmo-make-folder'.
288         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
289         destination folder instead of send `elmo-folder-rename-internal'.
290
291         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
292         slot of subfolder instead of create it.
293
294 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
295
296         * elmo-util.el (elmo-collect-separators): New function.
297         (elmo-collect-separators-internal): Ditto.
298         (elmo-collect-trail-separators): Ditto.
299         (elmo-parse-separated-tokens): Ditto.
300         (elmo-parse-separated-tokens-internal): Ditto.
301         (elmo-quote-syntactical-element): Ditto.
302
303         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
304         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
305
306         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
307         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
308         (elmo-nntp-folder-list-subfolders): Quote a user name.
309
310         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
311         (elmo-net-parse-network): Abolish.
312         (elmo-net-folder-set-parameters): New function.
313         (elmo-folder-initialize): Follow the above change.
314
315         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
316         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
317         (elmo-folder-list-subfolders): Use
318         `elmo-quote-syntactical-element' instead of
319         `elmo-net-format-quoted' to quote mailbox and user name.
320
321 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
322
323         * elmo-util.el (elmo-token-valid-p): New function.
324         (elmo-parse-token): Add optional argument `requirement'.
325         (elmo-parse-prefixed-element): Likewise.
326
327         * elmo-net.el (elmo-net-quote-chars): Renamed from
328         `elmo-net-quote-chars-regexp'.
329         (elmo-net-format-quoted): Add optional argument `extra-chars'.
330
331         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
332         by info document. Check token `uidl' is started an alphabet.
333
334         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
335         by info document. Check token `user' is started an alphabet.
336
337         * elmo-imap4.el (elmo-folder-initialize): Ditto.
338         (elmo-folder-list-subfolders): Quote user.
339
340 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
341
342         * elmo-util.el (elmo-quoted-specials-list): New constant.
343         (elmo-quoted-token): New function.
344
345         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
346         (elmo-net-format-quoted): New function.
347         (elmo-net-parse-network): Ditto.
348         (elmo-folder-initialize): Use it.
349
350         * elmo-nntp.el (elmo-folder-initialize): Use
351         `elmo-net-parse-network' to parse network specification instead of
352         `elmo-folder-initialize#elmo-net'.
353
354         * elmo-pop3.el (elmo-folder-initialize): Ditto.
355
356         * elmo-imap4.el (elmo-folder-initialize): Ditto.
357         (elmo-folder-list-subfolders): Quote folder name by
358         `elmo-net-format-quoted'.
359
360 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
361
362         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
363         (elmo-folder-search): Use it.
364
365 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
366
367         * modb-standard.el (modb-standard-loaded-message-id): Use
368         `elmo-msgdb-message-entity-field'.
369
370 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
371
372         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
373         without filename.
374
375 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
376
377         * elmo-util.el (elmo-set-auto-coding): New function.
378         (elmo-object-load): Use it.
379
380 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
381
382         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
383         (elmo-time<): Define as alias of `elmo-time-less-p'.
384         (elmo-time-to-datevec): New function.
385
386         * elmo-date.el (elmo-time-to-days): New function.
387
388 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
389
390         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
391         is not cons cell.
392
393 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
394
395         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
396         parenthesis.
397
398         * elmo-util.el (elmo-map-recursive): New function.
399
400         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
401         (modb-entity-encode-string-recursive): Ditto.
402
403 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
404
405         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
406         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
407         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
408         compare sequence number when last modified time is nil.
409
410 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
411
412         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
413
414         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
415
416 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
417
418         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
419         modification time of the file.
420
421 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
422
423         * elmo-util.el (elmo-condition-optimize): Discriminated against
424         preserved fields, extra fields and the other weight.
425
426 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
427
428         * modb-entity.el (initialize-instance): Define.
429         (modb-entity-handler-mime-charset): New internal function.
430         (modb-standard-entity-set-field): Use it.
431         (elmo-msgdb-message-entity-field): Ditto.
432         (elmo-msgdb-message-entity-field): Ditto.
433
434         * modb.el (elmo-msgdb-match-condition): Rewrite with
435         `elmo-condition-match'.
436         (elmo-msgdb-match-condition-primitive): New function.
437
438         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
439         arguments `flags' and `numbers'.
440         (elmo-msgdb-match-condition-primitive): Abolished (merged to
441         `elmo-msgdb-message-match-condition').
442         (modb-buffer-entity-handler): New class.
443
444         * elmo.el (elmo-folder-search): Optimize condition to use
445         `elmo-condition-optimize'.
446         (elmo-message-buffer-match-condition): New function.
447         (elmo-message-match-condition): Use
448         `elmo-message-buffer-match-condition' instead of
449         `elmo-buffer-field-condition-match'.
450
451         * elmo-util.el (elmo-condition-match): New function.
452         (elmo-condition-optimize): Ditto.
453         (elmo-buffer-field-primitive-condition-match): Abolish.
454         (elmo-buffer-field-condition-match): Ditto.
455
456         * elmo-archive.el (elmo-archive-field-condition-match): Use
457         `elmo-message-buffer-match-condition' instead of
458         `elmo-buffer-field-condition-match'.
459
460 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
461
462         * elmo-flag.el (elmo-global-flags-initialize): Check the
463         existence of the flag directory.
464
465 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
466
467         * elmo-access.el (elmo-folder-initialize): Call
468         `elmo-multi-connect-signals'.
469
470         * elmo-pipe.el (elmo-folder-close): Define.
471
472         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
473         children folders.
474
475         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
476         with target folder.
477
478         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
479         `number'.
480
481         * elmo-multi.el (elmo-message-entity): Don't use return value of
482         `elmo-message-entity-set-number'.
483
484 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
485
486         * modb.el (modb-generic): Added slot `mime-charset'.
487
488         * modb-standard.el (modb-standard): Added slot `overview-handler'.
489         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
490         and `modb-entity-handler-dump-parameters'.
491         (modb-standard-default-entity-handler): Abolish.
492         (elmo-msgdb-message-entity-handler): Save created handler by
493         instance slot.
494
495         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
496         (modb-entity-handler-list-parameters): New method.
497         (modb-entity-handler-equal-p): New function.
498         (modb-entity-handler-dump-parameters): Ditto.
499         (modb-entity-parse-address-string): Encode return value.
500         (modb-entity-make-address-string): Decode argument value.
501         (modb-entity-decode-string-recursive): New function.
502         (modb-entity-encode-string-recursive): Ditto.
503         (modb-standard-entity-normalizer): Set to encode field value.
504         (modb-standard-entity-specializer): Follow the above change.
505         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
506         mime-charset of handler.
507         (elmo-msgdb-message-entity-field): Ditto.
508         (elmo-msgdb-copy-message-entity): Fixed reference to internal
509         structure.
510         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
511
512         * elmo.el (elmo-folder): Added slot `mime-charset'.
513         (elmo-make-folder): Added argument `mime-charset'.
514         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
515         `mime-charest'.
516
517         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
518         (elmo-make-msgdb): Likewise.
519
520         * elmo-internal.el (elmo-internal-folder-initialize): Call
521         `luna-make-entity' with :mime-charset parameter.
522
523 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
524
525         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
526         encoded words in `from' and `subject' field.
527
528 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
529
530         * modb.el (elmo-msgdb-message-field): Add argument `type'.
531         (elmo-msgdb-match-condition): Get handler from entity instead of
532         msgdb.
533
534         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
535         (modb-standard-load-entity): Treat new file format.
536         (modb-standard-save-entity-1): Save as new file format.
537         (modb-standard-save-entity): Split messages into section here.
538         (elmo-msgdb-message-field): Follow the API change.
539         (modb-standard-default-entity-handler): New internal variable.
540         (elmo-msgdb-message-entity-handler): Define.
541
542         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
543         to `elmo-vars.el'.
544         (modb-entity-field-extractor-alist): New user option.
545         (elmo-msgdb-message-entity-field): Removed argument `decode' and
546         added argument `type'.
547         (elmo-msgdb-copy-message-entity): Add optional argument
548         `make-handler'.
549         (modb-set-field-converter): New function.
550         (modb-convert-field-value): Ditto.
551         (modb-entity-string-decoder): Ditto.
552         (modb-entity-string-encoder): Ditto.
553         (modb-entity-parse-date-string): Ditto.
554         (modb-entity-make-date-string): Ditto.
555         (modb-entity-mime-decoder): Ditto.
556         (modb-entity-mime-encoder): Ditto.
557         (modb-entity-address-list-decoder): Ditto.
558         (modb-entity-address-list-encoder): Ditto.
559         (modb-entity-parse-address-string): Ditto.
560         (modb-entity-make-address-string): Ditto.
561         (modb-entity-create-field-indices): Ditto.
562         (modb-legacy-entity-field-slots): New constant.
563         (modb-legacy-entity-field-indices): Ditto.
564         (modb-legacy-entity-normalizer): New variable.
565         (modb-legacy-entity-specializer): Ditto.
566         (modb-legacy-entity-field-index): New macro.
567         (modb-legacy-entity-set-field): New function.
568         (modb-legacy-make-message-entity): Rewrite.
569         (elmo-msgdb-create-message-entity-from-buffer): Use
570         `elmo-msgdb-get-references-from-buffer'. Use
571         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
572         Use `modb-legacy-entity-set-field' instead of
573         `elmo-msgdb-message-entity-set-field'.
574         (elmo-msgdb-message-entity-field): Rewrite.
575         (elmo-msgdb-message-entity-set-field): Ditto.
576         (elmo-msgdb-copy-message-entity): Make new entity by
577         `make-handler' if it specified.
578         (elmo-msgdb-message-match-condition): Define a method of
579         `modb-entity-handler' and follow the API change.
580         (modb-standard-entity-handler): New class.
581         (modb-entity-extract-ml-info-from-x-sequence): New function.
582         (modb-entity-extract-ml-info-from-subject): Ditto.
583         (modb-entity-extract-ml-info-from-return-path): Ditto.
584         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
585         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
586         (modb-entity-extract-mailing-list-info): Ditto.
587         (modb-entity-extract-mailing-list-info-functions): New variable.
588
589         * elmo.el (elmo-message-field): Add optional argument `type'.
590
591         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
592         from `modb-entity.el'.
593
594         * elmo-util.el (elmo-object-load): Decode by coding-system from
595         `set-auto-coding-function'.
596         (elmo-object-save): Use `detect-mime-charset-region' and add
597         coding cookie if encode.
598         (elmo-msgdb-get-references-from-buffer): New function.
599         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
600
601         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
602
603         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
604         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
605         instead of `shimbun-make-header' and follow the API change.
606         (elmo-shimbun-update-overview): Follow the API change.
607         (elmo-map-folder-list-message-locations): Ditto.
608
609         * elmo-pipe.el (elmo-message-field): Ditto.
610
611         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
612         Ditto.
613
614         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
615
616         * elmo-multi.el (elmo-message-field): Ditto.
617
618         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
619         (elmo-msgdb-sort-by-date): Ditto.
620         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
621         `elmo-message-entity-field'.
622         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
623         change.
624         (elmo-msgdb-overview-entity-get-from): Ditto.
625         (elmo-msgdb-overview-entity-get-subject): Ditto.
626         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
627         (elmo-msgdb-overview-entity-get-date): Ditto.
628         (elmo-msgdb-overview-entity-get-to): Ditto.
629         (elmo-msgdb-overview-entity-get-cc): Ditto.
630
631         * elmo-mime.el (elmo-message-mime-entity): Ditto.
632         (elmo-mime-collect-message/partial-pieces): Ditto.
633
634         * elmo-filter.el (elmo-message-field): Ditto.
635
636         * elmo-date.el (elmo-datevec-to-time): New function.
637         (elmo-time-parse-date-string): Ditto.
638         (elmo-time-make-date-string): Ditto.
639         (elmo-time<): Ditto.
640
641         * elmo-version.el (elmo-version): Up to 2.15.1.
642
643 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
644
645         * elmo-flag.el (elmo-global-flags-initialize): Don't include
646         member of elmo-local-flags.
647
648 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
649
650         * elmo-version.el (elmo-version): Up to 2.15.0.
651
652 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
653
654         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
655         `ignore-msgdb' is non-nil.
656
657 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
658
659         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
660         (elmo-condition-in-msgdb-p): Ditto.
661         (elmo-file-field-primitive-condition-match): Ditto.
662         (elmo-file-field-condition-match): Ditto.
663
664         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
665
666 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
667
668         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
669         subdirectories here.
670         (elmo-global-flags-initialize): New function.
671
672         * elmo.el (toplevel): Added autoload setting for
673         `elmo-global-flags-initialize'.
674
675 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
676
677         * elmo.el (message-number-changed): Define new signal.
678         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
679         message-number-changed signal.
680         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
681         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
682         Respect `elmo-pack-number-check-strict'.
683
684 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
685
686         * elmo-signal.el (elmo-connect-signal): Document.
687         (elmo-emit-signal): Ditto.
688         (elmo-emit-signal): It should pass source argument to filter and
689         handler, not slot-source.
690
691 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
692
693         * modb.el (elmo-msgdb-update-entity): New API and define generic
694         implement.
695
696         * modb-standard.el (elmo-msgdb-update-entity): Define.
697
698         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
699         API and define generic implement.
700
701         * elmo.el (update-overview): New singnal.
702
703         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
704         `elmo-msgdb-update-entity' and emit signal `update-overview'.
705         (elmo-message-entity-parent): Define.
706
707         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
708         `update-overview'.
709
710         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
711
712         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
713
714 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
715
716         * elmo.el (elmo-folder-synchronize): Sort the return value of
717         `elmo-list-diff'.
718
719         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
720         list.
721
722 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
723
724         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
725         `default-enable-multibyte-characters'.
726         (elmo-object-load): Use `with-temp-buffer' instead of
727         `elmo-set-work-buf'.
728         (elmo-object-save): Ditto.
729         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
730         `elmo-set-work-buf'.
731         (elmo-decoded-field-body): Ditto.
732
733         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
734
735         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
736         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
737
738         * elmo-version.el (elmo-version): Up to 2.13.3.
739
740 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
741
742         * elmo-util.el (elmo-list-diff): Fix the last change.
743         Reverse order of result lists.
744
745 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
746
747         * modb-standard.el (elmo-msgdb-set-flag): Use
748         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
749         (elmo-msgdb-unset-flag): Ditto.
750
751         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
752         `elmo-list-diff'.
753
754         * elmo-util.el (elmo-list-diff): Rewrite.
755         (elmo-list-diff-nonsortable): New function.
756
757 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
758
759         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
760         `elmo-multibypte-buffer-name'.  All referers are updated.
761
762 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
763
764         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
765         (elmo-mime-entity-fragment-p): New function.
766         (mime-elmo-buffer-entity): Added slot `reassembled'.
767         (elmo-message-mime-entity): Added 4th argument `reassemble'.
768         (elmo-message-mime-entity-internal): New function (renamed from
769         `elmo-message-mime-entity').
770         (elmo-mime-inherit-field-list-from-enclosed): New constant.
771         (elmo-mime-make-reassembled-mime-entity): New function.
772         (elmo-message-reassembled-mime-entity): Ditto.
773         (elmo-mime-collect-message/partial-pieces): Ditto.
774
775 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
776
777         * elmo.el (elmo-message-fetch-string): Disable multibyte.
778
779         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
780         (elmo-with-enable-multibyte): New macro.
781
782         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
783
784 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
785
786         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
787         argument `number'.
788         (elmo-filter-connect-signals): Follow the above change.
789
790 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
791
792         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
793
794         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
795         that only the first flag is used.
796
797 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
798
799         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
800         if available.
801
802 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
803
804         * elmo-signal.el: New file.
805
806         * elmo.el (toplevel): Require elmo-signal.
807         (flag-changing, flag-changed, cache-changed): New signal.
808         (elmo-folder): Remove slog `handlers'.
809         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
810         `elmo-folder-notify-event'.
811         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
812         (elmo-folder-unset-flag): Ditto.
813         (elmo-event-handler): Abolish.
814         (elmo-event-handler-flag-changed): Ditto.
815         (elmo-event-handler-cache-changed): Ditto.
816         (elmo-folder-add-handler): Ditto.
817         (elmo-folder-remove-handler): Ditto.
818         (elmo-folder-notify-event): Ditto.
819
820         * elmo-pipe.el (toplevel): Require elmo-signal.
821         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
822         (elmo-pipe-connect-signals): New function.
823         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
824         (elmo-folder-set-flag): Ditto.
825         (elmo-folder-unset-flag): Ditto.
826         (elmo-message-set-cached): Ditto.
827
828         * elmo-multi.el (toplevel): Require elmo-signal.
829         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
830         (elmo-multi-connect-signals): New function.
831         (elmo-multi-map-numbers): Ditto.
832         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
833         (elmo-message-fetch): Ditto.
834         (elmo-folder-set-flag): Ditto.
835         (elmo-folder-unset-flag): Ditto.
836
837         * elmo-filter.el (toplevel): Require elmo-signal.
838         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
839         (elmo-filter-connect-signals): New function.
840         (elmo-filter-add-flag-count): Ditto.
841         (elmo-message-fetch): Does not call
842         `elmo-filter-folder-countup-message-flags' and
843         `elmo-folder-notify-event'.
844         (elmo-message-set-cached): Ditto.
845         (elmo-folder-set-flag): Ditto.
846         (elmo-folder-unset-flag): Ditto.
847
848         * elmo-version.el (elmo-version): Up to 2.13.2.
849
850 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
851
852         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
853         `flags'.
854
855 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
856
857         * elmo-filter.el (elmo-message-set-cached): Call
858         `elmo-folder-notify-event' with event `cache-changed'.
859
860         * elmo-multi.el (elmo-message-set-cached): Ditto.
861
862         * elmo-pipe.el (elmo-message-set-cached): Ditto.
863
864 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
865
866         * elmo.el (elmo-folder-encache): Abolish.
867
868 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
869
870         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
871         (elmo-folder-next-message-number-dop): Return appropriate negative
872         integer.
873
874 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
875
876         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
877         clearing pending operations.
878         (elmo-folder-next-message-number-dop): Return appropriate negative
879         integer.
880
881 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
882
883         * elmo.el (toplevel): Added autoload setting for `md5'.
884         (elmo-msgdb-path-encode-threshold): New user option.
885         (elmo-folder-msgdb-path): Encode msgdb path if its length is
886         longer than `elmo-msgdb-path-encode-threshold'.
887
888         * elmo-flag.el (elmo-global-mark-migrate): Use
889         `elmo-folder-expand-msgdb-path' instead of
890         `elmo-folder-msgdb-path'.
891
892 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
893
894         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
895         element of the difference is nil.
896
897 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
898
899         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
900         to the check logic of file systems which are weak in colon character.
901
902 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
903
904         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
905
906 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
907
908         * elmo-maildir.el (elmo-maildir-move-file): New function.
909         (elmo-folder-append-buffer): Use it.
910         (elmo-folder-append-messages): Ditto.
911         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
912
913         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
914         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
915
916         * elmo-maildir.el (elmo-maildir-separator): New user option.
917         (elmo-maildir-adjust-separator): New macro.
918         (elmo-maildir-list-location): Use it.
919         (elmo-maildir-update-current): Ditto.
920         (elmo-maildir-set-mark): Ditto.
921         (elmo-maildir-delete-mark): Ditto.
922         (These changes are based on Hiroya Murata's patch [wl: 13437])
923
924 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
925
926         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
927
928 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
929
930         * elmo-flag.el (elmo-flag-valid-p): Simplify.
931         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
932         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
933
934 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
935
936         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
937         Use `with-temp-buffer'.
938
939 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
940
941         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
942
943         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
944         `wl-read-search-condition').
945         (elmo-read-search-condition-internal): Likewise.
946
947         * elmo-flag.el (elmo-flag-char-regexp): New constant.
948         (elmo-flag-valid-p): New function.
949         (elmo-folder-initialize): Check flag name is valid.
950
951 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
952
953         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
954         delimiter to obtain root mailbox itself.
955
956 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
957
958         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
959         type mismatch.
960
961 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
962
963         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
964         as t.
965
966 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
967
968         * elmo-shimbun.el (toplevel): Require cl at compile.
969
970         * elmo-nntp.el (toplevel): Ditto.
971
972         * elmo-nmz.el (toplevel): Ditto.
973
974         * elmo-multi.el (toplevel): Ditto.
975
976         * elmo-file.el (toplevel): Ditto.
977
978         * elmo-dop.el (toplevel): Ditto.
979
980         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
981
982 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
983
984         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
985         as nil.
986
987         * elmo.el (elmo-message-fetch): Return t even when the output buffer
988         size of elmo-message-fetch-internal is 0 byte.
989
990 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
991
992         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
993
994 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
995
996         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
997         always plugged.
998
999 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1000
1001         * elmo-maildir.el (elmo-map-message-fetch): Call
1002         `elmo-map-folder-set-flag'.
1003
1004         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1005         (elmo-message-fetch): Merge from
1006         `elmo-message-fetch-with-cache-process'.
1007
1008         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1009         (elmo-message-fetch): Define.
1010
1011         * elmo-nntp.el (elmo-message-fetch): Renamed from
1012         `elmo-message-fetch-with-cache-process'.
1013
1014         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1015         (elmo-message-fetch): Define.
1016
1017         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1018         search-key.
1019
1020         * elmo-shimbun.el (shimbun-mua-search-id): Use
1021         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1022         (elmo-shimbun-folder-shimbun-header): Ditto.
1023         (elmo-shimbun-get-headers): Ditto.
1024         (elmo-shimbun-update-overview): Ditto.
1025
1026         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1027
1028         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1029         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1030
1031 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1032
1033         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1034         message is cached.
1035         (elmo-message-fetch-string): Fixed argument.
1036
1037 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1038
1039         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1040         exchange order of arguments `section' and `unread'.
1041         (elmo-message-encache): Follow the API change.
1042         (elmo-message-match-condition): Ditto.
1043         (elmo-generic-folder-append-messages): Ditto.
1044         (elmo-message-fetch-string): New function.
1045
1046         * elmo-split.el (elmo-split-subr): Ditto.
1047
1048         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1049
1050         * elmo-pipe.el (elmo-message-fetch): Ditto.
1051
1052         * elmo-multi.el (elmo-message-fetch): Ditto.
1053
1054         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1055
1056         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1057
1058         * elmo-filter.el (elmo-message-fetch): Ditto.
1059
1060         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1061
1062         * elmo-imap4.el (mime-imap-location-section-body): Use
1063         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1064         follow the API change.
1065
1066 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1067
1068         * elmo-access.el: New file.
1069
1070         * elmo-null.el: Ditto.
1071
1072         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1073
1074 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1075
1076         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1077         (elmo-network-session): New attribute `last-accessed'.
1078         (elmo-network-get-session): Discard network cache if elapsed time
1079         since last-accessed is larger than elmo-network-session-idle-timeout.
1080
1081 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1082
1083         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1084         and added `number', `require-entireness'.
1085         (elmo-find-fetch-strategy): Rewrite.
1086         (elmo-message-fetch): Unset `unread' flag when argument unread is
1087         non-nil.
1088
1089         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1090
1091         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1092         (elmo-message-fetch): Notify event `flag-changed'.
1093
1094         * elmo-pipe.el: Likewise.
1095
1096         * elmo-mime.el (elmo-mime-entity): New class.
1097         (elmo-mime-entity-display-p): New generic function.
1098         (elmo-mime-entity-display): Ditto.
1099         (elmo-mime-entity-display-as-is): Ditto.
1100         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1101         elmo-mime-entity.
1102         (elmo-make-mime-message-location): Removed.
1103         (elmo-mime-message-display): Ditto.
1104         (elmo-mime-display-as-is): Ditto.
1105         (elmo-message-mime-entity): New function.
1106
1107         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1108
1109         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1110         change.
1111         (elmo-message-fetch): Re-count flagged message number and notify
1112         event `flag-changed'.
1113
1114         * elmo-version.el (elmo-version): Up to 2.13.1.
1115
1116 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1117
1118         * elmo-filter.el (elmo-message-field): Define.
1119         (elmo-message-set-field): Ditto.
1120
1121 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1122
1123         * elmo.el (elmo-message-set-cached): Call
1124         `elmo-folder-notify-event' with cache-changed.
1125         (elmo-event-handler-cache-changed): New generic function.
1126
1127 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1128
1129         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1130         instead of elmo-add-name-to-file.
1131         (elmo-folder-append-messages): Ditto.
1132
1133 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1134
1135         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1136
1137 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1138
1139         * elmo-version.el (elmo-version): Up to 2.13.0.
1140
1141         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1142         `auto'.
1143
1144         * modb-standard.el (modb-standard-economize-entity-size): Changed
1145         default value to `t'.
1146
1147         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1148         `standard'.
1149
1150         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1151         after parsing greeting string.
1152
1153 2004-11-23  Daishi Kato <daishi@axlight.com>
1154
1155         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1156         New user option.
1157         (elmo-spam-spamoracle-call): Use it.
1158
1159 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1160
1161         * elmo.el (elmo-message-accessible-p): Message in dop spool
1162         is accessible.
1163
1164 2004-11-23  Daishi Kato <daishi@axlight.com>
1165
1166         * elsp-spamoracle.el: New file.
1167
1168 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1169
1170         * elmo.el (elmo-message-flags-for-append): New function.
1171         (elmo-generic-folder-append-messages): Use it.
1172
1173         * elmo-split.el (elmo-split-subr): Ditto.
1174
1175         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1176         `flags' and use elmo-folder-append-buffer instead of
1177         write-region-as-binary.
1178         (elmo-dop-filter-pending-messages): New function.
1179         (elmo-folder-append-buffer-dop): Call
1180         elmo-dop-spool-folder-append-buffer with `flag'.
1181         (elmo-folder-set-flag-dop): Filter messages by
1182         elmo-dop-filter-pending-messages.
1183         (elmo-folder-unset-flag-dop): Ditto.
1184         (elmo-folder-append-buffer-dop-delayed): Use
1185         elmo-message-flags-for-append to get flags of the message and
1186         simplify.
1187
1188 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1189
1190         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1191
1192 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1193
1194         * elmo.el (elmo-folder): Added handlers slot.
1195         (elmo-event-handler): New class.
1196         (elmo-event-handler-flag-changed): New API.
1197         (elmo-folder-add-handler): New function.
1198         (elmo-folder-remove-handler): Ditto.
1199         (elmo-folder-notify-event): Ditto.
1200         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1201         `flag-changed'.
1202         (elmo-folder-unset-flag): Ditto.
1203
1204         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1205         (elmo-folder-unset-flag): Ditto.
1206
1207         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1208         (elmo-folder-unset-flag): Ditto.
1209
1210         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1211         (elmo-folder-unset-flag): Ditto.
1212
1213         * elmo-version.el (elmo-version): Up to 2.11.33.
1214
1215 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1216
1217         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1218
1219 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1220
1221         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1222
1223         * elmo-flag.el (elmo-folder-unset-flag): Define.
1224         (elmo-global-flag-detach): Do process when the flag is not target
1225         flag.
1226
1227 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1228
1229         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1230         variable.
1231         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1232
1233 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1234
1235         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1236         function.
1237         (elmo-folder-delete-messages): Detach messages before delete
1238         messages from target folder.
1239         (elmo-folder-detach-messages): Set updated number-list to slot.
1240
1241 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1242
1243         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1244
1245 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1246
1247         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1248
1249 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1250
1251         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1252         internal use only).
1253         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1254         not modified.
1255         (elmo-folder-delete-messages): Define.
1256         (elmo-folder-move-messages): Don't call
1257         `elmo-folder-detach-messages'.
1258         (elmo-folder-synchronize): Rewrite.
1259         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1260
1261         * elmo-util.el (elmo-last): New function.
1262         (elmo-set-list): Ditto.
1263         (elmo-number-set-delete-list): Ditto.
1264         (elmo-number-set-delete): Ditto.
1265
1266         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1267
1268         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1269         `elmo-folder-delete-messages' and don't delete location map.
1270         (elmo-folder-detach-messages): Define.
1271
1272         * elmo-imap4.el (elmo-folder-delete): Use
1273         `elmo-folder-delete-messages-internal' instead of
1274         `elmo-folder-delete-messages'.
1275
1276         * elmo-filter.el (elmo-folder-delete-messages): Call
1277         `elmo-folder-detach-messages'.
1278         (elmo-folder-detach-messages): Don't call
1279         `elmo-folder-detach-messages' for target folder.
1280
1281         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1282         message deletion is succeeded.
1283
1284         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1285
1286         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1287         from `elmo-folder-delete-messages'.
1288
1289         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1290
1291         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1292
1293         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1294
1295         * elmo-version.el (elmo-version): Up to 2.11.32.
1296
1297 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1298
1299         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1300         (elmo-global-flag-list): Added obsolete variable setting.
1301
1302         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1303
1304         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1305         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1306         `elmo-mime-display-header-analysis' is nil.
1307
1308         * elmo-flag.el (elmo-global-flags): Renamed from
1309         `elmo-global-flag-list' (All other related portions are changed).
1310         (elmo-local-flags): New variable.
1311         (elmo-local-flag-p): New function.
1312         (elmo-global-flag-set-internal): Cause an error when flag is not
1313         global.
1314
1315 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1316
1317         * elmo-util.el (elmo-concat-path): Treat empty path.
1318
1319 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1320
1321         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1322         field-or-fields).
1323         (elmo-split-address-match): Ditto.
1324         (elmo-split-equal): Ditto.
1325         (elmo-split-match): Ditto.
1326
1327 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1328
1329         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1330         (elmo-generic-folder-append-messages): If src message exists but
1331         has no flag, pass (read) for the FLAG argument of
1332         `elmo-folder-append-buffer'. Otherwise, pass nil.
1333
1334         * elmo-split.el (elmo-split-subr): Likewise.
1335
1336         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1337
1338         * elmo-multi.el (elmo-message-flags): Ditto.
1339
1340         * elmo-filter.el (elmo-message-flags): Ditto.
1341
1342         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1343         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1344         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1345         
1346 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1347
1348         * elmo-split.el (elmo-split-rule): Update comment.
1349         (elmo-split-address-equal): Allow 2nd argument to be a list.
1350         (elmo-split-address-match): Ditto.
1351         (elmo-split-equal): Ditto.
1352         (elmo-split-match): Ditto.
1353
1354 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1355
1356         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1357         (elmo-folder-append-msgdb): Don't treat `read'.
1358         (elmo-message-flags): Don't return `read'.
1359
1360         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1361         (elmo-folder-unset-read-delayed): Ditto.
1362
1363         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1364
1365 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1366
1367         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1368         deletion.
1369
1370 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1371
1372         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1373         header.
1374
1375 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1376
1377         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1378         here.
1379         (elmo-msgdb-save): Bind inhibit-quit.
1380         (modb-standard-message-entity): Ditto.
1381
1382 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1383
1384         * elmo-database.el: No need to require elmo-msgdb.
1385
1386 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1387
1388         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1389         instead of `elmo-list-subdirectories'.
1390
1391 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1392
1393         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1394         group entry.
1395         (elmo-folder-exists-p): "[" is empty.
1396         (elmo-folder-list-subfolders): Define.
1397         (elmo-folder-have-subfolder-p): Ditto.
1398
1399 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1400
1401         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1402
1403 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1404
1405         * elmo-filter.el (elmo-folder-local-p): Define.
1406
1407 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1408
1409         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1410         when entity is garbaged.
1411         (modb-standard-save-entity-1): Don't modify the original entity.
1412
1413 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1414
1415         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1416
1417 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1418
1419         * elmo.el (elmo-strict-folder-diff): Use
1420         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1421
1422 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1423
1424         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1425         (elmo-msgdb-message-number): Ditto.
1426         (elmo-msgdb-message-field): Ditto.
1427
1428         * modb-standard.el (modb-standard-economize-entity-size): New user
1429         option.
1430         (modb-standard-loaded-message-id): New inline function.
1431         (modb-standard-load-entity): Use it.
1432         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1433         throw message-id string away.
1434         (elmo-msgdb-flag-available-p): Define.
1435         (elmo-msgdb-message-number): Ditto.
1436         (elmo-msgdb-message-field): Ditto.
1437
1438         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1439         (suppoted -> supported).
1440         (modb-legacy-supported-flag-p): Ditto.
1441         (elmo-msgdb-set-flag): Ditto.
1442         (elmo-msgdb-unset-flag): Ditto.
1443         (elmo-msgdb-flag-available-p): Define.
1444
1445         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1446         is `t', treat it as legacy entity.
1447         
1448         * elmo.el (elmo-message-flag-available-p): New generic function.
1449         (elmo-message-number): Ditto.
1450         (elmo-message-field): Use `elmo-msgdb-message-field'.
1451
1452         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1453
1454         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1455         (elmo-message-number): Ditto.
1456
1457         * elmo-multi.el (elmo-message-number): Define.
1458         (elmo-message-flag-available-p): Ditto.
1459
1460         * elmo-filter.el (elmo-message-flag-available-p): Define.
1461         (elmo-message-number): Ditto.
1462
1463         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1464         (elmo-folder-initialize): Load `max-number'.
1465         (elmo-folder-commit): Save it.
1466         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1467         (elmo-global-flag-set-internal): Set up max-number slot.
1468
1469 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1470
1471         * elmo-version.el (elmo-version): Up to 2.11.31.
1472
1473 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1474
1475         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1476         unibyte string of the current buffer for the argument of `md5'
1477         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1478
1479 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1480
1481         * modb-legacy.el (modb-legacy-flag-list): New constant.
1482         (modb-legacy-suppoted-flag-p): New internal function.
1483         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1484         (elmo-msgdb-unset-flag): Ditto.
1485
1486 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1487
1488         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1489
1490         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1491         from msgdb.
1492
1493 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1494
1495         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1496         (follow the API change).
1497
1498         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1499
1500 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1501
1502         * modb-standard.el (modb-standard-digest-flags): Abolish.
1503         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1504
1505         * elmo-vars.el (elmo-digest-flags): New variable.
1506         (elmo-preserved-flags): Moved from elmo-flag.el.
1507
1508         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1509         (elmo-imap4-flag-to-imap-criteria): Ditto.
1510         (elmo-imap4-folder-list-flagged): Use it.
1511
1512         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1513
1514         * elmo.el (elmo-folder-count-flags): Changed return value.
1515
1516         * elmo-flag.el (elmo-preserved-flags): New variable.
1517         (elmo-get-global-flags): Use it.
1518
1519         * modb-standard.el (modb-standard-digest-flags): New variable.
1520         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1521         Changed behavior of `any'.
1522
1523         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1524         which are defined the Internet draft
1525         (draft-melnikov-imap-keywords-03.txt).
1526         (elmo-imap4-flags-to-imap): New function.
1527         (elmo-folder-append-buffer): Use it.
1528
1529         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1530         in the docstring.
1531
1532         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1533         avoid the bug of Emacs 21.3.
1534
1535 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1536
1537         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1538         function find-coding-system does not exist.
1539
1540 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1541
1542         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1543         parsing.
1544
1545 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1546
1547         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1548         response codes.
1549
1550 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1551
1552         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1553         (elmo-network-close-session): Follow the changes in
1554         `elmo-pop3-read-response'.
1555         (elmo-pop3-auth-user): Ditto.
1556         (elmo-pop3-auth-apop): Ditto.
1557         (elmo-network-initialize-session): Ditto.
1558         (elmo-network-authenticate-session): Ditto.
1559         (elmo-network-setup-session): Ditto.
1560         (elmo-folder-status): Ditto.
1561         (elmo-message-fetch-plugged): Ditto.
1562         (elmo-pop3-delete-msg): Ditto.
1563
1564 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1565
1566         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1567         on failure.
1568
1569 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1570
1571         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1572         style.
1573         (elmo-bind-directory): Ditto.
1574
1575 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1576
1577         * elmo.el (elmo-folder-append-messages): Note on return value.
1578         * elmo-archive.el (elmo-folder-append-messages): Don't return
1579         message numbers which could not be appended.
1580
1581 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1582
1583         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1584
1585 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1586
1587         * elmo-version.el (elmo-version): Up to 2.11.30.
1588
1589 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1590
1591         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1592         `mask'.
1593
1594         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1595
1596         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1597         (elmo-multi-split-numbers): Add elmo-folder object into each
1598         element of return value at first.
1599         (elmo-folder-delete-messages): Follow the above change.
1600         (elmo-folder-detach-messages): Ditto.
1601
1602         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1603         number which is synchronized in target folder.
1604
1605 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1606
1607         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1608         Change default value to symbol `all'.
1609         (elmo-map-message-fetch): Change condition to update overview
1610         follow the above.
1611
1612 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1613
1614         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1615         behavior to update overview.
1616         (elmo-shimbun-update-overview-folder-list): Note it.
1617
1618 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1619
1620         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1621         recursive call.
1622
1623 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1624
1625         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1626         buffer-disable-undo, it is unnecessary.
1627         (elmo-spam-register-good-messages): Ditto.
1628
1629         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1630         Ditto.
1631
1632         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1633
1634 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1635
1636         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1637         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1638         elmo-set-buffer-multibyte.
1639         (elmo-object-load): Ditto.
1640         (elmo-save-buffer): Ditto.
1641         (elmo-delete-char): Ditto.
1642         (elmo-file-field-primitive-condition-match): Ditto.
1643         (elmo-mime-string): Ditto.
1644
1645         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1646         (elmo-archive-field-condition-match): Ditto.
1647
1648         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1649
1650         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1651
1652         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1653         (elmo-nntp-msgdb-create-message): Ditto.
1654
1655         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1656
1657         * elmo.el (elmo-message-match-condition): Ditto.
1658         (elmo-message-match-condition): Ditto.
1659
1660         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1661         Ditto.
1662
1663         * elmo-version.el (elmo-version): Up to 2.11.29.
1664
1665         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1666         (elsp-header): New backend.
1667
1668         * elmo-util.el (elmo-decoded-field-body): New function.
1669
1670 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1671
1672         * elmo-version.el (elmo-version): Up to 2.11.28.
1673
1674 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1675
1676         * elmo-filter.el: Rewrite.
1677
1678         * elmo-version.el (elmo-version): Up to 2.11.27.
1679
1680 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1681
1682         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1683         msgdb path for the localdir folder with absolute path.
1684
1685         * utf7.el: Synch up with latest gnus/utf7.el;
1686         Modified for latest Emacs.
1687
1688 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1689
1690         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1691         shimbun backend couldn't open.
1692
1693 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1694
1695         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1696         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1697         when a destination folder is a filter folder.
1698
1699 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1700
1701         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1702         (elmo-generic-folder-append-messages): Call elmo-message-flags
1703         with argument `msgid'.
1704
1705         * elmo-split.el (elmo-split-subr): Ditto.
1706
1707         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1708
1709         * elmo-multi.el (elmo-message-flags): Ditto.
1710
1711 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1712
1713         * elmo.el (elmo-folder): Add new slot `flag-table'.
1714         (elmo-folder-flag-table): New API.
1715         (elmo-folder-close-flag-table): Ditto.
1716         (elmo-folder-preserve-flags): New function.
1717         (elmo-generic-folder-append-messages): Use
1718         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1719         Flag of a non-registered message, it sets to nil.
1720         Does not set flag to flag-table.
1721
1722         * elmo-maildir.el (elmo-folder-append-buffer): Use
1723         `elmo-folder-preserve-flags'.
1724         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1725         `elmo-folder-close-flag-table'.
1726
1727         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1728         (elmo-archive-folder-append-buffer): Use
1729         `elmo-folder-preserve-flags'.
1730
1731         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1732
1733         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1734
1735         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1736         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1737         `elmo-folder-close-flag-table'.
1738
1739         * elmo-version.el (elmo-version): Up to 2.11.26.
1740
1741 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1742
1743         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1744
1745         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1746         md5's 4th and 5th argument (non-existent in flim one).
1747
1748 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1749
1750         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1751         message, It sets to nil.
1752
1753 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1754
1755         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1756         list is non-nil.
1757
1758 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1759
1760         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1761
1762         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1763
1764         * elmo-util.el (elmo-uniq-sorted-list): New function.
1765         (elmo-make-number-list): Ditto.
1766         (elmo-number-set-to-number-list): Use elmo-make-number-list
1767         and don't use nreverse.
1768
1769 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1770
1771         * elmo-version.el (elmo-version): Up to 2.11.25.
1772
1773 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1774
1775         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1776         field not exists in message, Use md5 message digest of header.
1777
1778 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1779
1780         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1781         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1782         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1783         * elmo-split.el (elmo-split-subr): Check return value of
1784         elmo-folder-append-buffer.
1785
1786         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1787         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1788
1789         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1790         message-id.
1791
1792 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1793
1794         * elmo-split.el (elmo-split-subr): Append message with flag.
1795
1796         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1797         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1798         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1799
1800 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1801
1802         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1803         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1804         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1805
1806 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1807
1808         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1809         with a function call of `process-buffer'.  All callers are updated.
1810         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1811         Remove redundant `set-buffer' in a while loop.
1812
1813 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1814
1815         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1816         calls.
1817
1818 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1819
1820         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1821         elsp-spamfilter-register-buffer-internal with current buffer.
1822         (elmo-spam-register-spam-buffer): Ditto.
1823         (elmo-spam-register-good-buffer): Ditto.
1824
1825 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1826
1827         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1828         if it is not contained in the response(A workaround for courier-imap).
1829
1830 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1831
1832         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1833         parenthesis.
1834
1835 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1836
1837         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1838         range.
1839
1840 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1841
1842         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1843         of nconc.
1844
1845         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1846         argument handler.
1847         (elmo-msgdb-message-match-condition): Follow the change above.
1848
1849 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1850
1851         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1852         folder name.
1853
1854 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1855
1856         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1857
1858 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1859
1860         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1861
1862 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1863
1864         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1865         not found.
1866
1867 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1868
1869         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1870         value.
1871         (elmo-file-command-argument): Undo last change for cygwin.
1872         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1873         Don't return nil.
1874         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1875
1876 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1877
1878         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1879         value returned from elmo-file-find is nil.
1880
1881 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1882
1883         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1884         to elmo-vars.el.
1885
1886         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1887         instead of insert-file-contents-as-binary.
1888         (elmo-message-set-field): New generic function.
1889
1890         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1891         behavior change on `split-string'.
1892
1893         * elmo-file.el (elmo-file-find): New function.
1894         (elmo-file-command): New user option.
1895         (elmo-file-command-argument): Ditto.
1896         (elmo-file-fetch-max-size): Ditto.
1897         (elmo-file-detect-format): New function.
1898         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1899         Use elmo-file-detect-format.
1900         (elmo-map-folder-list-message-locations): Don't treat directories.
1901
1902 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1903
1904         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1905         (elmo-passwd-alist-clear): Shred password before clear.
1906         (elmo-remove-passwd): Remove all mached pair.
1907
1908 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1909
1910         * elmo.el (elmo-folder-synchronize): Fix description of the return
1911         value.
1912
1913 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1914
1915         * elmo.el (elmo-message-fetch-bodystructure): New method.
1916         (elmo-message-fetch-bodystructure): Define default.
1917
1918         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1919         elmo-message-fetch-bodystructure.
1920         (elmo-message-fetch-bodystructure): Define.
1921
1922         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1923
1924 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1925
1926         * elmo-filter.el (elmo-message-folder): Define.
1927
1928 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1929
1930         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1931         elmo-delete-cr-buffer.
1932
1933         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1934
1935         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1936
1937         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1938
1939         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1940         type seems to be a text.
1941
1942 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1943
1944         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1945         (elmo-spam-register-good-buffer): Ditto.
1946         (elmo-spam-spamassassin-register-messages): Ditto.
1947
1948         * elmo-util.el (elmo-string-member-ignore-case): Define with
1949         static-cond.
1950
1951 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1952
1953         * elmo.el (elmo-folder-type): Undo last change.
1954
1955         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1956
1957         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1958         warnings.
1959
1960         * elmo-file.el: New file.
1961         
1962         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1963
1964         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1965         variable.
1966         (elmo-spam-spamassassin-register-messages): New inline function.
1967         (elmo-spam-register-spam-messages): Define.
1968         (elmo-spam-register-good-messages): Ditto.
1969
1970         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1971         Fixed typo.
1972
1973         * elmo.el (toplevel): Added autoload setting for
1974         `elmo-get-global-flags'.
1975         (elmo-message-has-global-flag-p): New function.
1976         (elmo-message-set-global-flags): Ditto.
1977         (elmo-folder-type): Improvement for name: format.
1978
1979         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1980         availability of keyword flags.
1981         (elmo-imap4-folder-list-flagged): Treat keyword flags.
1982         (elmo-folder-list-flagged-plugged): Renamed from
1983         elmo-folder-list-flagged-unplugged.
1984         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1985         accept any flag as keyword flag.
1986         (elmo-folder-set-flag-plugged): Accept keyword flags.
1987         (toplevel): Added autoload setting for `elmo-get-global-flags'.
1988
1989         * elmo-flag.el (elmo-get-global-flags): New function.
1990
1991         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1992         folders.
1993
1994         * elmo-version.el (elmo-version): Up to 2.11.24.
1995
1996 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1997
1998         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1999         elmo-multiple-field-body instead of std11-field-body to check all
2000         headers.
2001
2002 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2003
2004         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2005         or "size".
2006
2007 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2008
2009         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2010         unintern is unbound.
2011
2012 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2013
2014         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2015         Protect from infinite loop.
2016
2017 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2018
2019         * elsp-bogofilter.el
2020         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2021         (elmo-spam-bogofilter-register-messages): New internal function.
2022         (elmo-spam-register-spam-messages): Define.
2023         (elmo-spam-register-good-messages): Ditto.
2024
2025 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2026
2027         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2028         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2029         (elmo-spam-bogofilter-call): Fixed the last change.
2030         (elmo-spam-bogofilter-arguments): Ditto.
2031
2032         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2033         Follow the options change of latest bogofilter.
2034
2035         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2036         (elmo-spam-bogofilter-good-switch): Ditto.
2037         (elmo-spam-bogofilter-arguments-alist): New user option.
2038         (elmo-spam-bogofilter-debug): Ditto.
2039         (elmo-spam-bogofilter-call): Renamed from
2040         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2041         is non-nil, insert output in buffer for debug.
2042         (elmo-spam-bogofilter-arguments): New macro.
2043         (elmo-spam-buffer-spam-p): Use it.
2044         (elsp-bogofilter-register-buffer): Ditto.
2045
2046 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2047
2048         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2049         regexp.
2050
2051 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2052
2053         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2054         value as "ruby".
2055         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2056         (elmo-spam-bsfilter-program): Set default value as full path for
2057         `bsfilter'.
2058         (elmo-spam-bsfilter-debug): New user option.
2059         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2060         non-nil, insert output in buffer for debug. Fix treating of
2061         argument.
2062
2063 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2064
2065         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2066         `elmo-maildir-flag-specs' element instead of one.
2067         (elmo-map-folder-unset-flag): Ditto.
2068         (Reported by Ken Makimura <macky@astem.or.jp>)
2069
2070         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2071         (elmo-folder-unset-flag-plugged): Ditto.
2072
2073 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2074
2075         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2076         to `reads' slot only if `in-msgdb' is nil.
2077
2078 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2079
2080         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2081         and complement argument list.
2082
2083 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2084
2085         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2086         instead of elmo-folder-list-flagged.
2087
2088 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2089
2090         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2091
2092         * elsp-bsfilter.el: New file.
2093
2094         * elmo-pipe.el (elmo-folder-list-unreads,
2095         elmo-folder-list-answereds,
2096         elmo-folder-list-importants,
2097         elmo-folder-flag-as-important,
2098         elmo-folder-unflag-important,
2099         elmo-folder-flag-as-read,
2100         elmo-folder-unflag-read,
2101         elmo-folder-flag-as-answered,
2102         elmo-folder-unflag-answered): Remove.
2103         (elmo-folder-set-flag): Define.
2104         (elmo-folder-unset-flag): Ditto.
2105
2106         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2107         (elmo-folder-set-flag): Define.
2108         (elmo-folder-unset-flag): Ditto.
2109         (elmo-folder-list-unreads): Remove.
2110         (elmo-folder-list-flagged): Define.
2111
2112         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2113         (elmo-folder-list-unreads,
2114         elmo-folder-list-importants,
2115         elmo-folder-list-answereds,
2116         elmo-folder-list-unreads-plugged,
2117         elmo-folder-list-importants-plugged,
2118         elmo-folder-list-answereds-plugged): Remove.
2119         (elmo-folder-list-flagged-plugged): New method.
2120         (elmo-folder-unflag-important,
2121         elmo-folder-flag-as-important,
2122         elmo-folder-unflag-read,
2123         elmo-folder-flag-as-read,
2124         elmo-folder-unflag-answered,
2125         elmo-folder-flag-as-answered,
2126         elmo-folder-flag-as-read-unplugged,
2127         elmo-folder-unflag-read-unplugged,
2128         elmo-folder-flag-as-important-unplugged,
2129         elmo-folder-unflag-important-unplugged,
2130         elmo-folder-flag-as-answered-unplugged,
2131         elmo-folder-unflag-answered-unplugged): Remove.
2132         (elmo-folder-set-flag): Define.
2133         (elmo-folder-unset-flag): Ditto.
2134         (elmo-folder-set-flag-unplugged): Ditto.
2135         (elmo-folder-unset-flag-unplugged): Ditto.
2136
2137         * elmo-multi.el (elmo-folder-list-unreads,
2138         elmo-folder-list-answereds,
2139         elmo-folder-list-importants,
2140         elmo-folder-flag-as-important,
2141         elmo-folder-unflag-important,
2142         elmo-folder-flag-as-read,
2143         elmo-folder-unflag-read,
2144         elmo-folder-flag-as-answered,
2145         elmo-folder-unflag-answered): Remove.
2146         (elmo-folder-set-flag): Define.
2147         (elmo-folder-unset-flag): Ditto.
2148
2149         * elmo-map.el (elmo-map-folder-unflag-important,
2150         elmo-map-folder-flag-as-important,
2151         elmo-map-folder-unflag-read,
2152         elmo-map-folder-flag-as-read,
2153         elmo-map-folder-unflag-answered,
2154         elmo-map-folder-flag-as-answered): Remove.
2155         (elmo-map-folder-set-flag): New method.
2156         (elmo-map-folder-unset-flag): Ditto.
2157         (elmo-map-folder-list-unreads,
2158         elmo-map-folder-list-importants,
2159         elmo-map-folder-list-answereds): Remove.
2160         (elmo-folder-list-flagged-internal): Define.
2161         (elmo-map-folder-list-flagged): New method.
2162
2163         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2164         (elmo-map-folder-list-unreads,
2165         elmo-map-folder-list-importants,
2166         elmo-map-folder-list-flagged): Remove.
2167         (elmo-map-folder-list-flagged): Define.
2168         (elmo-map-folder-flag-as-important,
2169         elmo-map-folder-unflag-important,
2170         elmo-map-folder-flag-as-read,
2171         elmo-map-folder-unflag-read,
2172         elmo-map-folder-flag-as-answered,
2173         elmo-map-folder-unflag-answered): Remove.
2174         (elmo-maildir-set-mark-messages): New internal function.
2175         (elmo-map-folder-set-flag): Define.
2176         (elmo-map-folder-unset-flag): Ditto.
2177
2178         * elmo.el (toplevel): Added autoload setting for
2179         `elmo-folder-list-global-flag-messages'.
2180         (elmo-folder-list-unreads,
2181         elmo-folder-list-importants,
2182         elmo-folder-list-answereds): Remove.
2183         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2184         Return a list whitch merged with messages have global flag.
2185         (elmo-folder-list-flagged-internal): New method.
2186         (elmo-folder-unflag-important,
2187         elmo-folder-flag-as-important,
2188         elmo-folder-unflag-read,
2189         elmo-folder-flag-as-read,
2190         elmo-folder-unflag-answered,
2191         elmo-folder-flag-as-answered): Remove.
2192         (elmo-folder-set-flag): New method.
2193         (elmo-folder-unset-flag): Ditto.
2194         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2195         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2196
2197         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2198         (elmo-folder-list-unreads-plugged,
2199         elmo-folder-list-importants-plugged,
2200         elmo-folder-list-answereds-plugged,
2201         elmo-folder-list-flagged-unplugged,
2202         elmo-folder-unflag-important-plugged,
2203         elmo-folder-flag-as-important-plugged,
2204         elmo-folder-unflag-read-plugged,
2205         elmo-folder-flag-as-read-plugged,
2206         elmo-folder-unflag-answered-plugged,
2207         elmo-folder-flag-as-answered-plugged): Remove.
2208         (elmo-folder-set-flag-plugged,
2209         elmo-folder-unset-flag-plugged): Define.
2210
2211         * elmo-flag.el (elmo-folder-initialize): Register to
2212         `elmo-global-flag-list' if flag is not global.
2213         (elmo-folder-append-messages): Set flag to source messages.
2214
2215         * elmo-filter.el (elmo-filter-folder-list-unreads,
2216         elmo-folder-list-unreads,
2217         elmo-filter-folder-list-importants,
2218         elmo-folder-list-importants,
2219         elmo-folder-flag-as-read,
2220         elmo-folder-unflag-read,
2221         elmo-folder-flag-as-important,
2222         elmo-folder-unflag-important,
2223         elmo-folder-flag-as-answered,
2224         elmo-folder-unflag-answered): Remove.
2225         (elmo-folder-set-flag): Define.
2226         (elmo-folder-unset-flag): Ditto.
2227
2228         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2229         elmo-folder-unflag-read-dop,
2230         elmo-folder-flag-as-important-dop,
2231         elmo-folder-unflag-important-dop,
2232         elmo-folder-flag-as-answered-dop,
2233         elmo-folder-unflag-answered-dop): Remove.
2234         (elmo-folder-set-flag-dop,
2235         elmo-folder-unset-flag-dop,
2236         elmo-folder-set-important-delayed,
2237         elmo-folder-unset-important-delayed,
2238         elmo-folder-set-read-delayed,
2239         elmo-folder-unset-read-delayed,
2240         elmo-folder-set-answered-delayed,
2241         elmo-folder-unset-answered-delayed): New function.
2242         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2243         (elmo-dop-queue-method-name-alist): Ditto.
2244
2245         * elmo-version.el (elmo-version): Up to 2.11.23.
2246
2247 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2248
2249         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2250
2251         * elsp-sa.el: New file.
2252
2253 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2254
2255         * modb-standard.el (modb-standard-message-entity): New function.
2256         (elmo-msgdb-message-entity): Use it.
2257
2258 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2259
2260         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2261         behavior when one-level is nil.
2262
2263         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2264
2265         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2266
2267 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2268
2269         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2270         get max number.
2271         (elmo-generic-folder-diff): Ditto.
2272
2273         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2274         (elmo-folder-update-number): Ditto.
2275
2276         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2277         (elmo-folder-next-message-number-dop): Ditto.
2278
2279 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2280
2281         * elmo-filter.el (elmo-folder-msgdb-create): Use
2282         `elmo-message-entity' and `elmo-message-flags' instead of
2283         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2284
2285 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2286
2287         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2288         `if-exists'.
2289
2290 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2291
2292         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2293
2294         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2295
2296         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2297
2298 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2299
2300         * elmo-version.el (elmo-version): Up to 2.11.22.
2301
2302 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2303
2304         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2305
2306 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2307
2308         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2309         if the message dose not exist.
2310
2311 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2312
2313         * elmo-version.el (elmo-version): Up to 2.11.21.
2314
2315 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2316
2317         * modb-standard.el (toplevel): Don't require mime.
2318
2319 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2320
2321         * elsp-bogofilter.el (toplevel): Don't require path-util.
2322         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2323         (elmo-spam-bogofilter-header): Abolish.
2324         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2325         (elmo-spam-bogofilter-args): New user option.
2326         (elsp-bogofilter-call-bogofilter): New internal function.
2327         (elmo-spam-buffer-spam-p): Use it.
2328         (elsp-bogofilter-register-buffer): Renamed from
2329         `elmo-spam-bogofilter-register-buffer';
2330         Use `elsp-bogofilter-call-bogofilter'.
2331         (elmo-spam-register-spam-buffer): Follow the change above.
2332         (elmo-spam-register-good-buffer): Ditto.
2333
2334 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2335
2336         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2337         message-id is nil do nothing.
2338
2339 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2340
2341         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2342         Revival.
2343         (elmo-imap4-session): Removed use-flag slot.
2344         (elmo-imap4-session-select-mailbox): Undo last change.
2345         (elmo-folder-use-flag-p): Use
2346         elmo-imap4-disuse-server-flag-mailbox-regexp.
2347
2348 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2349
2350         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2351         (elmo-imap4-session-select-mailbox): Set it up.
2352         (elmo-folder-use-flag-p): Return value of use-flag slot.
2353
2354 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2355
2356         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2357         message-id is nil.
2358         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2359
2360         * modb-entity.el (elmo-message-entity-handler): Likewise.
2361
2362 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2363
2364         * elmo.el (toplevel): Remove setting of autoloding for
2365         elmo-global-flag-initialize.
2366         (elmo-init): Don't call elmo-global-flag-initialize.
2367         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2368
2369         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2370         (elmo-global-mark-migrate): Don't call it.
2371         (elmo-global-mark-upgrade): Ditto.
2372
2373 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2374
2375         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2376         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2377
2378         * elmo-vars.el (elmo-init-hook): New user option.
2379
2380         * elmo.el (elmo-init): Run the elmo-init-hook.
2381
2382         * elmo-flag.el (elmo-global-mark-migrate): New function.
2383
2384 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2385
2386         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2387         Undo last change (move to elmo-msgdb-unset-flag).
2388         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2389         flag is unset.
2390
2391 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2392
2393         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2394         read flag is set.
2395         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2396         (elmo-msgdb-unset-flag): Ditto.
2397
2398 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2399
2400         * elmo-split.el (elmo-split): Return split message count.
2401
2402 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2403
2404         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2405         is nil.
2406
2407 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2408
2409         * elmo.el (elmo-folder-unflag-important): Call
2410         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2411         a symbol `always'.
2412
2413         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2414         before unset flag.
2415         (elmo-global-flag-detach): Delete the message from flag folder, if
2416         `delete-if-none' is a symbol `always'.
2417
2418 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2419
2420         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2421         `elmo-spam-spamfilter-decode-buffer'.
2422         (elsp-spamfilter-register-buffer-internal): New internal function.
2423         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2424         (elmo-spam-register-spam-buffer): Ditto.
2425         (elmo-spam-register-good-buffer): Ditto.
2426
2427         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2428         change.
2429         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2430         (elmo-spam-register-spam-buffer): Follow the API change.
2431         (elmo-spam-register-good-buffer): Ditto.
2432
2433         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2434         (elmo-split-spam-p): Added argument plist; Call
2435         `elmo-spam-buffer-spam-p' with new argument register.
2436
2437         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2438         `register'.
2439         (elmo-spam-message-spam-p): Ditto.
2440         (elmo-spam-register-spam-buffer): Added optional argument
2441         `restore'.
2442         (elmo-spam-register-good-buffer): Ditto.
2443         (elmo-spam-register-spam-messages): Ditto.
2444         (elmo-spam-register-good-messages): Ditto.
2445
2446 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2447
2448         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2449         register into good corpus.
2450         (elmo-spam-register-good-buffer): Fixed to register into bad
2451         corpus.
2452
2453 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2454
2455         * elmo-version.el (elmo-version): Up to 2.11.20.
2456
2457         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2458         change.
2459
2460         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2461         flag without depending on \Recent flag.
2462
2463 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2464
2465         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2466         (elmo-spam-modified-p): Defined.
2467         (elmo-spam-save-status): Set `modified' slot to nil.
2468         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2469         (elmo-spam-register-good-buffer): Ditto.
2470
2471         * elmo-spam.el (elmo-spam-modified-p): New API.
2472
2473 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2474
2475         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2476         duplicate definition.
2477
2478         * elmo-util.el (elmo-unfold-field-body): New function.
2479         (elmo-msgdb-get-message-id-from-buffer): Use it.
2480
2481         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2482         Fixed the last change; Use elmo-unfold-field-body.
2483
2484 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2485
2486         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2487         Unfold date value.
2488
2489 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2490
2491         * elmo-spam.el (elmo-spam-save-status): New API.
2492
2493         * elsp-spamfilter.el: New file.
2494
2495 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2496
2497         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2498
2499 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2500
2501         * elmo-split.el (elmo-split-spam-p): New function.
2502
2503         * elmo-spam.el: New file.
2504
2505         * elsp-bogofilter.el: Ditto.
2506
2507 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2508
2509         * elmo.el (elmo-folder-next-message-number): New API.
2510         (elmo-folder-next-message-number): Define.
2511         (elmo-message-field): Don't check folder length.
2512
2513         * elmo-net.el (elmo-folder-next-message-number): Define.
2514         (elmo-folder-next-message-number-unplugged): Define.
2515
2516         * elmo-map.el (elmo-folder-next-message-number): Define.
2517         (elmo-folder-delete-messages): Clear hash value.
2518
2519         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2520
2521         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2522         (elmo-folder-delete-messages-dop-delayed): Always return t.
2523
2524         * elmo-version.el (elmo-version): Up to 2.11.19.
2525
2526 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2527
2528         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2529         change.
2530
2531         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2532         identical cons cell into the mark-alist and the hash table.
2533
2534 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2535
2536         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2537         elmo-folder-list-messages with argument `visible-only' as t.
2538
2539         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2540         (elmo-folder-msgdb-create): Check the target folder.
2541
2542 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2543
2544         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2545         `permanentflag' instead of `flags'.
2546         (elmo-folder-open): Ditto.
2547         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2548         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2549         (elmo-folder-use-flag-p): Always return t.
2550         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2551         `permanentflags' does not exist.
2552         (elmo-folder-open): Ditto.
2553
2554 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2555
2556         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2557         is nil.
2558         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2559
2560         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2561         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2562         response.
2563         (elmo-folder-open): Ditto.
2564         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2565         slot of the session includes the flag.
2566         (elmo-imap4-session-flag-available-p): New function.
2567         (elmo-imap4-folder-list-flagged): Ditto.
2568         (elmo-folder-list-unreads-plugged): Use it.
2569         (elmo-folder-list-importants-plugged): Ditto.
2570         (elmo-folder-list-answereds-plugged): Ditto.
2571         (elmo-imap4-search-internal-primitive): Ditto.
2572         (elmo-imap4-folder-list-any-plugged,
2573         elmo-imap4-folder-list-digest-plugged): Abolish.
2574
2575         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2576         if numbers is nil.
2577
2578 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2579
2580         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2581
2582 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2583
2584         * elmo-util.el (elmo-get-hash-val): Simplify.
2585         (elmo-set-hash-val): Rewrite.
2586
2587 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2588
2589         * elmo.el (elmo-folder-list-messages): Append killed messages into
2590         result if `visible-only' is nil and `in-msgdb' is non-nil.
2591
2592         * elmo-util.el (elmo-uniq-list): Added optional argument
2593         `delete-function'.
2594
2595         * modb.el (elmo-msgdb-flag-count): New API.
2596
2597         * modb-standard.el (modb-standard): Added slot flag-count.
2598         (modb-standard-countup-flags): New function.
2599         (modb-standard-load-flag): Call it.
2600         (elmo-msgdb-append): Ditto.
2601         (elmo-msgdb-clear): Clear slot flag-count.
2602         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2603         (elmo-msgdb-unset-flag): Treat `all' flag and call
2604         modb-standard-countup-flags.
2605         (elmo-msgdb-flag-count): Define.
2606         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2607         (elmo-msgdb-delete-messages): Ditto.
2608
2609         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2610         (elmo-msgdb-flag-count): Define.
2611
2612         * elmo.el (elmo-folder-list-messages): Undo last change.
2613         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2614         (elmo-folder-kill-messages): Unset all flags to numbers.
2615
2616         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2617         elmo-folder-kill-messages.
2618
2619         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2620         (elmo-nntp-folder-delete-messages): Abolish.
2621
2622         * elmo-version.el (elmo-version): Up to 2.11.18.
2623
2624 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2625
2626         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2627         (elmo-folder-kill-messages-range): New function.
2628         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2629         instead of elmo-folder-kill-messages-before.
2630
2631 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2632
2633         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2634         elmo-imap4-current-msgdb to decide entity handler.
2635
2636 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2637
2638         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2639
2640         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2641         inline function.
2642         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2643         (elmo-msgdb-overview-entity-set-number,
2644         elmo-msgdb-overview-entity-get-references,
2645         elmo-msgdb-overview-entity-set-references,
2646         elmo-msgdb-overview-entity-get-from-no-decode,
2647         elmo-msgdb-overview-entity-get-from,
2648         elmo-msgdb-overview-entity-set-from,
2649         elmo-msgdb-overview-entity-get-subject,
2650         elmo-msgdb-overview-entity-get-subject-no-decode,
2651         elmo-msgdb-overview-entity-set-subject,
2652         elmo-msgdb-overview-entity-get-date,
2653         elmo-msgdb-overview-entity-set-date,
2654         elmo-msgdb-overview-entity-get-to,
2655         elmo-msgdb-overview-entity-get-cc,
2656         elmo-msgdb-overview-entity-get-size,
2657         elmo-msgdb-overview-entity-set-size,
2658         elmo-msgdb-overview-entity-get-extra,
2659         elmo-msgdb-overview-entity-set-extra,
2660         elmo-msgdb-overview-entity-get-extra-field,
2661         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2662         (elmo-msgdb-make-index): Use
2663         `elmo-msgdb-overview-entity-get-number-internal'.
2664         (elmo-msgdb-clear-index): Ditto.
2665         (elmo-msgdb-append-entity): Ditto;
2666         Use `elmo-msgdb-overview-entity-get-id-internal'.
2667
2668         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2669         elmo-msgdb-overview-entity-set-number,
2670         elmo-msgdb-overview-entity-get-references,
2671         elmo-msgdb-overview-entity-set-references,
2672         elmo-msgdb-overview-entity-get-from-no-decode,
2673         elmo-msgdb-overview-entity-get-from,
2674         elmo-msgdb-overview-entity-set-from,
2675         elmo-msgdb-overview-entity-get-subject,
2676         elmo-msgdb-overview-entity-get-subject-no-decode,
2677         elmo-msgdb-overview-entity-set-subject,
2678         elmo-msgdb-overview-entity-get-date,
2679         elmo-msgdb-overview-entity-set-date,
2680         elmo-msgdb-overview-entity-get-to,
2681         elmo-msgdb-overview-entity-get-cc,
2682         elmo-msgdb-overview-entity-get-size,
2683         elmo-msgdb-overview-entity-set-size,
2684         elmo-msgdb-overview-entity-get-extra,
2685         elmo-msgdb-overview-entity-set-extra,
2686         elmo-msgdb-overview-entity-get-extra-field,
2687         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2688         and rewrote for backward compatibility.
2689
2690 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2691
2692         * elmo.el (elmo-message-entity-number,
2693         elmo-message-entity-set-number,
2694         elmo-message-entity-field,
2695         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2696
2697         * elmo-msgdb.el (elmo-message-entity-number,
2698         elmo-message-entity-set-number,
2699         elmo-message-entity-field,
2700         elmo-message-entity-set-field): Moved from elmo.el.
2701
2702 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2703
2704         * elmo.el (toplevel): Changed definition orders.
2705
2706 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2707
2708         * modb.el (elmo-msgdb-search): New API .
2709         (elmo-msgdb-match-condition): Ditto.
2710
2711         * modb-standard.el (elmo-msgdb-search): Define.
2712
2713         * modb-legacy.el (elmo-msgdb-search): Ditto.
2714
2715         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2716         from elmo-msgdb-match-condition-internal.
2717
2718         * elmo.el (elmo-folder-search-fast): Abolish.
2719         (elmo-folder-search): Use elmo-msgdb-search and
2720         elmo-with-progress-display.
2721
2722         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2723         as msgdb API.
2724
2725         * elmo.el (elmo-folder): Remove slot message-modified and
2726         flag-modified.
2727         (elmo-folder-set-message-modified): Abolish.
2728         (elmo-generic-folder-commit): Follow the change above.
2729         (elmo-folder-synchronize): Ditto.
2730
2731         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2732
2733         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2734
2735         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2736
2737 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2738
2739         * modb-standard.el (modb-standard-make-message-entity,
2740         elmo-msgdb-make-message-entity,
2741         elmo-msgdb-create-message-entity-from-buffer,
2742         elmo-msgdb-message-entity-number,
2743         elmo-msgdb-message-entity-set-number,
2744         elmo-msgdb-message-entity-field,
2745         elmo-msgdb-message-entity-set-field,
2746         elmo-msgdb-copy-message-entity,
2747         elmo-msgdb-match-condition-internal): Remove.
2748
2749         * modb-entity.el: New file (again).
2750
2751         * modb.el (toplevel): Require modb-entity.
2752         (elmo-msgdb-message-entity-handler): New method.
2753
2754         * modb-standard.el (modb-standard-entity-id): Use
2755         elmo-message-entity-handler.
2756         (modb-standard-load-entity): Ditto.
2757         (elmo-msgdb-append-entity): Ditto.
2758         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2759
2760         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2761         elmo-msgdb-decoded-cache-hashtb,
2762         (modb-legacy-make-message-entity,
2763         elmo-msgdb-make-message-entity,
2764         elmo-msgdb-create-message-entity-from-buffer,
2765         elmo-msgdb-message-entity-number,
2766         elmo-msgdb-message-entity-set-number,
2767         elmo-msgdb-message-entity-field,
2768         elmo-msgdb-message-entity-set-field,
2769         elmo-msgdb-copy-message-entity,
2770         elmo-msgdb-match-condition-internal,
2771         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2772
2773         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2774         (elmo-message-entity-set-number): Ditto.
2775         (elmo-message-entity-field): Ditto.
2776         (elmo-message-entity-set-field): Ditto.
2777
2778         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2779
2780         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2781
2782         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2783
2784         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2785         (elmo-nntp-msgdb-create-message): Ditto.
2786
2787         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2788         (elmo-folder-msgdb-create): Add unread flag.
2789
2790         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2791
2792         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2793
2794         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2795
2796         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2797
2798         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2799         elmo-msgdb-messge-entity-handler.
2800         * elmo-version.el (elmo-version): Up to 2.11.17.
2801
2802 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2803
2804         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2805         change.
2806
2807 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2808
2809         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2810
2811         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2812         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2813         (elmo-msgdb-flag-table): Ditto.
2814         (elmo-msgdb-sort-by-date): Ditto.
2815
2816         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2817
2818         * modb-standard.el (toplevel): Require mime.
2819         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2820         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2821         elmo-msgdb-message-entity-number.
2822         (elmo-msgdb-append-entity): Ditto.
2823         (elmo-msgdb-create-message-entity-from-file): Remove.
2824         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2825         corresponds to the entity.
2826         (elmo-msgdb-message-entity-number): Do nothing currently.
2827         (elmo-msgdb-message-entity-field): Ditto.
2828         (elmo-msgdb-message-entity-set-field): Ditto.
2829         (elmo-msgdb-copy-message-entity): Ditto.
2830         (elmo-msgdb-match-condition-internal): Ditto.
2831
2832         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2833         elmo-util.el.
2834         (elmo-msgdb-create-message-entity-from-file): Remove.
2835
2836         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2837         modb-legacy.el.
2838         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2839
2840         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2841
2842 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2843
2844         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2845         (elmo-msgdb-message-entity-field): Ditto.
2846         (elmo-msgdb-message-entity-number): Ditto.
2847
2848 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2849
2850         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2851         Fixed how to set extra field into entity.
2852         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2853         symbol.
2854
2855         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2856         Fixed how to set extra field into entity.
2857         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2858         symbol.
2859
2860 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2861
2862         * modb.el (elmo-message-entity-db): New function.
2863         (elmo-msgdb-make-message-entity): New API.
2864         (elmo-msgdb-message-entity-number): Ditto.
2865         (elmo-msgdb-message-entity-set-number): Ditto.
2866         (elmo-msgdb-message-entity-field): Ditto.
2867         (elmo-msgdb-message-entity-set-field): Ditto.
2868         (elmo-msgdb-copy-message-entity): Ditto.
2869         (elmo-msgdb-create-message-entity-from-file): Ditto.
2870         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2871         (elmo-msgdb-match-condition-internal): Ditto.
2872
2873         * modb-standard.el (modb-legacy): Require modb-legacy.
2874         (modb-standard-make-message-entity): New inline function.
2875         (elmo-msgdb-make-message-entity): Define.
2876         (elmo-msgdb-create-message-entity-from-file): Ditto.
2877         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2878         (elmo-msgdb-message-entity-field): Ditto.
2879         (elmo-msgdb-message-entity-set-field): Ditto.
2880         (elmo-msgdb-copy-message-entity): Ditto.
2881         (elmo-msgdb-match-condition-internal): Ditto.
2882
2883         * modb-legacy.el: Don't require modb-entity.
2884         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2885         (elmo-msgdb-match-condition-primitive): Ditto.
2886         (elmo-msgdb-get-decoded-cache): Ditto.
2887         (elmo-msgdb-overview-entity-get-id): Ditto.
2888         (elmo-msgdb-overview-entity-get-number): Ditto.
2889         (elmo-msgdb-overview-entity-set-number): Ditto.
2890         (elmo-msgdb-overview-entity-get-references): Ditto.
2891         (elmo-msgdb-overview-entity-set-references): Ditto.
2892         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2893         (elmo-msgdb-overview-entity-get-from): Ditto.
2894         (elmo-msgdb-overview-entity-set-from): Ditto.
2895         (elmo-msgdb-overview-entity-get-subject): Ditto.
2896         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2897         (elmo-msgdb-overview-entity-set-subject): Ditto.
2898         (elmo-msgdb-overview-entity-get-date): Ditto.
2899         (elmo-msgdb-overview-entity-set-date): Ditto.
2900         (elmo-msgdb-overview-entity-get-to): Ditto.
2901         (elmo-msgdb-overview-entity-get-cc): Ditto.
2902         (elmo-msgdb-overview-entity-get-size): Ditto.
2903         (elmo-msgdb-overview-entity-set-size): Ditto.
2904         (elmo-msgdb-overview-entity-get-extra): Ditto.
2905         (elmo-msgdb-overview-entity-set-extra): Ditto.
2906         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2907         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2908         (elmo-msgdb-number-load): Ditto.
2909         (elmo-msgdb-overview-load): Ditto.
2910         (elmo-msgdb-mark-load): Ditto.
2911         (elmo-msgdb-number-save): Ditto.
2912         (elmo-msgdb-mark-save): Ditto.
2913         (elmo-msgdb-overview-save): Ditto.
2914         (modb-legacy-make-message-entity): New inline function.
2915         (elmo-msgdb-insert-file-header): Ditto.
2916         (elmo-msgdb-make-message-entity): Define.
2917         (elmo-msgdb-create-message-entity-from-file): Ditto.
2918         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2919         (elmo-msgdb-message-entity-number): Ditto.
2920         (elmo-msgdb-message-entity-set-number): Ditto.
2921         (elmo-msgdb-message-entity-field): Ditto.
2922         (elmo-msgdb-message-entity-set-field): Ditto.
2923         (elmo-msgdb-copy-message-entity): Ditto.
2924         (elmo-msgdb-match-condition-internal): Ditto.
2925
2926         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2927         (elmo-message-copy-entity): Rewrite.
2928         (elmo-message-entity-number): Ditto.
2929         (elmo-message-entity-set-number): Ditto.
2930         (elmo-message-entity-field): Use elmo-message-entity-db.
2931         (elmo-message-entity-set-field): Ditto.
2932         (elmo-message-field): Rewrite.
2933
2934         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2935         elmo-msgdb.el
2936         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2937
2938         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2939         elmo-message-entity-field.
2940         (elmo-shimbun-folder-shimbun-header): Ditto.
2941         (elmo-shimbun-entity-to-header): Ditto.
2942         (elmo-folder-msgdb-create): Ditto.
2943         (elmo-shimbun-msgdb-create-entity): Ditto;
2944         Use elmo-msgdb-create-message-entity-from-buffer.
2945         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2946         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2947
2948         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2949         elmo-msgdb-create-message-entity-from-file and 
2950         elmo-message-entity-field.
2951
2952         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2953         elmo-message-entity-number.
2954         (elmo-pop3-msgdb-create-message): Use
2955         elmo-msgdb-create-message-entity-from-buffer,
2956         elmo-message-entity-set-field, elmo-message-entity-number and
2957         elmo-message-entity-set-number.
2958
2959         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2960         the API change in elmo-msgdb-make-message-entity.
2961         (elmo-nntp-msgdb-create-message): Use
2962         elmo-msgdb-create-message-entity-from-buffer.
2963
2964         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2965         elmo-message-entity-field and
2966         elmo-msgdb-create-message-entity-from-file.
2967
2968         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2969         (elmo-msgdb-get-field): Abolish.
2970         (elmo-msgdb-get-number): Rewrite.
2971         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2972         (elmo-msgdb-flag-table): Ditto.
2973         (elmo-msgdb-get-last-message-id,
2974         elmo-msgdb-number-load, elmo-msgdb-overview-load,
2975         elmo-msgdb-mark-load, elmo-msgdb-number-save,
2976         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2977         (elmo-msgdb-create-overview-from-buffer,
2978         elmo-msgdb-overview-get-parent-entity): Abolish.
2979
2980         * elmo-mime.el (elmo-mime-display-as-is): Use
2981         elmo-message-entity-field.
2982
2983         * elmo-map.el (elmo-folder-pack-numbers): Use
2984         elmo-message-entity-set-number.
2985
2986         * elmo-maildir.el (elmo-folder-msgdb-create): 
2987         elmo-msgdb-create-message-entity-from-file instead of
2988         elmo-msgdb-create-overview-entity-from-file.
2989
2990         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2991         msgdb.
2992         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2993         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2994
2995         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2996         elmo-messge-entity-field and elmo-message-entity-number.
2997         (elmo-imap4-fetch-callback-1): Call
2998         elmo-msgdb-create-message-entity-from-buffer instead of
2999         elmo-msgdb-create-overview-from-buffer. 
3000         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3001         (elmo-find-fetch-strategy): Likewise.
3002
3003         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3004         elmo-localdir-msgdb-create-entity with argument msgdb.
3005
3006         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3007         and elmo-message-entity-set-number.
3008
3009         * elmo-cache.el (elmo-folder-msgdb-create): Use
3010         elmo-message-entity-field.
3011         (elmo-folder-msgdb-create): Call
3012         elmo-msgdb-create-message-entity-from-file instead of
3013         elmo-msgdb-create-overview-entity-from-file.
3014
3015         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3016         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3017         instead of elmo-msgdb-create-overview-from-buffer.
3018         (elmo-archive-msgdb-create-entity): Ditto.
3019         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3020         elmo-message-entity-field.
3021         (elmo-archive-parse-mmdf): Ditto.
3022
3023         * modb-entity.el: Removed.
3024
3025         * elmo-version.el (elmo-version): Up to 2.11.16.
3026
3027 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3028
3029         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3030         `is-local'.
3031         (elmo-folder-flag-as-answered): Ditto.
3032
3033 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3034
3035         * modb-standard.el: New file.
3036
3037         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3038         elmo-msgdb-convert-type is `sync'.
3039
3040         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3041         (elmo-msgdb-convert-type): New user option.
3042
3043         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3044         (elmo-load-msgdb): Auto detect saved type.
3045
3046         * elmo-version.el (elmo-version): Up to 2.11.15.
3047
3048 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3049
3050         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3051
3052         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3053         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3054         with argument `delete-if-none' when dst-folder is 'null.
3055
3056         * elmo-flag.el (elmo-folder-append-messages): Defined.
3057         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3058
3059 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3060
3061         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3062
3063 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3064
3065         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3066         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3067         (elmo-folder-commit): Ditto.
3068
3069 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3070
3071         * elmo-flag.el: New file.
3072
3073         * elmo-mark.el: Removed.
3074
3075         * modb-legacy.el (modb-legacy-new-mark,
3076         modb-legacy-unread-uncached-mark,
3077         modb-legacy-unread-cached-mark,
3078         modb-legacy-read-uncached-mark,
3079         modb-legacy-answered-cached-mark,
3080         modb-legacy-answered-uncached-mark,
3081         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3082         All other related portions are changed.
3083
3084         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3085         (elmo-folder-list-messages-with-global-mark): Abolish.
3086         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3087         (elmo-folder-flag-as-important): Ditto.
3088         (elmo-folder-unflag-read): Ditto.
3089         (elmo-folder-flag-as-read): Ditto.
3090         (elmo-folder-unflag-answered): Ditto.
3091         (elmo-folder-flag-as-answered): Ditto.
3092         (elmo-message-encache): Return the cache path.
3093         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3094         (elmo-message-set-flag): Transitional implementation.
3095         (elmo-message-unset-flag): Ditto.
3096         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3097         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3098         (elmo-init): Call elmo-global-flag-initialize.
3099         (toplevel): Added autoload settings for elmo-flag.
3100
3101         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3102
3103         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3104         (elmo-file-cache-delete): Don't treat global-mark.
3105
3106         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3107
3108         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3109
3110         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3111         `elmo-global-flags-set'.
3112
3113         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3114         `flag'.
3115         (elmo-folder-unflag-read): Ditto.
3116         (elmo-folder-unflag-important): Ditto.
3117         (elmo-folder-flag-as-important): Ditto.
3118         (elmo-folder-unflag-answered): Ditto.
3119         (elmo-folder-flag-as-answered): Ditto.
3120
3121         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3122         `elmo-global-flags-set'.
3123         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3124
3125         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3126
3127         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3128         `flag'.
3129         (elmo-folder-flag-as-important): Ditto.
3130         (elmo-folder-unflag-important): Ditto.
3131         (elmo-folder-flag-as-important): Ditto.
3132         (elmo-folder-unflag-read): Ditto.
3133         (elmo-folder-flag-as-read): Ditto.
3134         (elmo-folder-unflag-answered): Ditto.
3135         (elmo-folder-flag-as-answered): Ditto.
3136
3137         * elmo-multi.el (elmo-folder-list-importants): Don't call
3138         elmo-folder-list-messages-with-global-mark.
3139         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3140         (elmo-folder-unflag-important): Ditto.
3141         (elmo-folder-flag-as-read): Ditto.
3142         (elmo-folder-unflag-read): Ditto.
3143         (elmo-folder-flag-as-answered): Ditto.
3144         (elmo-folder-unflag-answered): Ditto.
3145
3146         * elmo-msgdb.el (elmo-msgdb-new-mark,
3147         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3148         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3149         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3150         (Moved to modb-legacy.el).
3151         (elmo-flag-table-get): Treat important flag too.
3152
3153         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3154         `mark' to `flag'.
3155         (elmo-map-folder-flag-as-important): Ditto.
3156         (elmo-map-folder-unflag-read): Ditto.
3157         (elmo-map-folder-flag-as-read): Ditto.
3158         (elmo-map-folder-unflag-answered): Ditto.
3159         (elmo-map-folder-flag-as-answered): Ditto.
3160         (elmo-folder-unflag-important): Ditto.
3161         (elmo-folder-flag-as-important): Ditto.
3162         (elmo-folder-unflag-read): Ditto.
3163         (elmo-folder-flag-as-read): Ditto.
3164         (elmo-folder-unflag-answered): Ditto.
3165         (elmo-folder-flag-as-answered): Ditto.
3166
3167         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3168         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3169         `flag'.
3170         (elmo-map-folder-unflag-important): Ditto.
3171         (elmo-map-folder-flag-as-read): Ditto.
3172         (elmo-map-folder-unflag-read): Ditto.
3173         (elmo-map-folder-flag-as-answered): Ditto.
3174         (elmo-map-folder-unflag-answered): Ditto.
3175
3176         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3177         `elmo-global-flags-set'.
3178         (elmo-global-flags-set): Added autoload setting.
3179
3180         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3181         `flag'.
3182
3183         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3184         `elmo-msgdb-global-mark-set'.
3185         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3186         Call `elmo-global-flags-set'.
3187         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3188         `flag'.
3189         (elmo-folder-flag-as-important-plugged): Ditto.
3190         (elmo-folder-unflag-read-plugged): Ditto.
3191         (elmo-folder-flag-as-read-plugged): Ditto.
3192         (elmo-folder-unflag-answered-plugged): Ditto.
3193         (elmo-folder-flag-as-answered-plugged): Ditto.
3194         (elmo-global-flags-set): Added autoload setting.
3195
3196         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3197         `flag'.
3198         (elmo-folder-unflag-read): Ditto.
3199         (elmo-folder-flag-as-important): Ditto.
3200         (elmo-folder-unflag-important): Ditto.
3201         (elmo-folder-flag-as-answered): Ditto.
3202         (elmo-folder-unflag-answered): Ditto.
3203
3204         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3205         change of `mark'->`flag'.
3206         (elmo-dop-queue-method-name-alist): Ditto.
3207         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3208         (elmo-folder-unflag-read-dop): Ditto.
3209         (elmo-folder-flag-as-important-dop): Ditto.
3210         (elmo-folder-unflag-important-dop): Ditto.
3211         (elmo-folder-flag-as-answered-dop): Ditto.
3212         (elmo-folder-unflag-answered-dop): Ditto.
3213
3214         * elmo-cache.el (elmo-folder-msgdb-create): Call
3215         `elmo-global-flags-set'.
3216
3217         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3218         Call `elmo-global-flags-set'.
3219         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3220         elmo-archive-parse-mmdf with argument `folder'.
3221         (elmo-archive-parse-mmdf): Added argument `folder';
3222         Call `elmo-global-flags-set'.
3223
3224         * elmo-version.el (elmo-version): Up to 2.11.14.
3225
3226 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3227
3228         * modb.el (elmo-msgdb-length): Define.
3229
3230         * elmo.el (elmo-make-folder): Fixed.
3231         (elmo-generic-folder-append-messages): Follow the API change.
3232
3233         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3234         API change.
3235
3236 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3237
3238         * modb.el: New file.
3239
3240         * modb-entity.el: Ditto.
3241
3242         * modb-legacy.el: Ditto.
3243
3244         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3245         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3246         of `elmo-msgdb-overview-get-entity'.
3247         (elmo-msgdb-get-field): Ditto.
3248         (elmo-msgdb-merge): Moved to `elmo.el'.
3249         (elmo-msgdb-length): Removed; redefine as modb method.
3250         (elmo-msgdb-change-mark): Abolish.
3251         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3252         (elmo-msgdb-match-condition): Don't use mark.
3253         (elmo-msgdb-overview-get-entity): Abolish.
3254         Split modb part into `modb*.el'.
3255
3256         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3257
3258         * elmo-shimbun.el (shimbun-mua-search-id): Use
3259         `elmo-msgdb-message-entity' instead of
3260         `elmo-msgdb-overview-get-entity'.
3261         (elmo-shimbun-folder-shimbun-header): Ditto.
3262         (elmo-shimbun-get-headers): Ditto.
3263         (elmo-shimbun-update-overview): Ditto.
3264
3265         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3266
3267         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3268
3269         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3270         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3271
3272         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3273         `elmo-msgdb-mark-to-flags'.
3274
3275         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3276         `elmo-msgdb-set-path'.
3277
3278         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3279  
3280         * elmo-version.el (elmo-version): Up to 2.11.13.
3281
3282         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3283
3284         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3285         of mark.
3286
3287 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3288
3289         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3290         mismatch.
3291
3292 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3293
3294         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3295         instead of `elmo-msgdb-get-cached'.
3296         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3297
3298         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3299         (elmo-msgdb-set-cached): Ditto.
3300         (elmo-msgdb-set-flag): Rewrite.
3301         (elmo-msgdb-unset-flag): Ditto.
3302
3303         * elmo-msgdb.el: Rewrite with luna.
3304
3305         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3306         (elmo-folder-msgdb): Follow the change above.
3307         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3308         (elmo-folder-unmark-important): Follow the API change.
3309         (elmo-folder-mark-as-important): Ditto.
3310         (elmo-folder-unmark-read): Ditto.
3311         (elmo-folder-mark-as-read): Ditto.
3312         (elmo-folder-unmark-answered): Ditto.
3313         (elmo-folder-mark-as-answered): Ditto.
3314         (elmo-folder-clear): Likewise.
3315
3316         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3317         instead of `elmo-msgdb-load' (renamed).
3318
3319         * elmo-version.el (elmo-version): Up to 2.11.12.
3320
3321 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3322
3323         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3324         change.
3325         (elmo-message-mark): Abolish.
3326         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3327         instead of `elmo-msgdb-change-mark'.
3328
3329         * elmo-pipe.el (elmo-message-mark): Abolish.
3330
3331         * elmo-multi.el (elmo-message-mark): Ditto.
3332
3333         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3334         (elmo-msgdb-unread-uncached-mark): Ditto.
3335         (elmo-msgdb-unread-cached-mark): Ditto.
3336         (elmo-msgdb-read-uncached-mark): Ditto.
3337         (elmo-msgdb-answered-cached-mark): Ditto.
3338         (elmo-msgdb-answered-uncached-mark): Ditto.
3339         (elmo-msgdb-important-mark): Ditto.
3340         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3341         `use-cache'.
3342         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3343         `flags'.
3344         (elmo-flag-table-load): Changed flag to list of flag.
3345         (elmo-flag-table-set): If flags is nil, set read flag.
3346         (elmo-flag-table-get): Return derived flags from global mark,
3347         cache status and saved flags.
3348         (elmo-msgdb-flag-table): Follow the change above.
3349         (elmo-msgdb-out-of-date-messages): New function.
3350
3351         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3352
3353         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3354
3355         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3356
3357         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3358         (elmo-nntp-msgdb-create-message): Ditto.
3359
3360         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3361
3362         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3363         independent.
3364         (elmo-folder-msgdb-create): Follow the API change.
3365
3366         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3367         (elmo-folder-append-messages): Ditto.
3368
3369         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3370         (elmo-folder-append-buffer): Ditto.
3371
3372         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3373
3374         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3375
3376         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3377         (elmo-archive-parse-mmdf): Ditto.
3378
3379         * elmo-version.el (elmo-version): Up to 2.11.11.
3380
3381 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3382
3383         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3384         `elmo-msgdb-mark'.
3385
3386         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3387
3388         * elmo-pipe.el (elmo-message-flags): Defined.
3389
3390         * elmo-multi.el (elmo-message-flags): Ditto.
3391
3392 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3393
3394         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3395         `elmo-msgdb-delete-msgs'.
3396
3397         * elmo.el (elmo-folder-count-flags): Don't use
3398         `elmo-msgdb-get-mark-alist'.
3399         (elmo-folder-detach-messages): Follow the API change.
3400
3401         * elmo.el (elmo-folder-list-messages): Append killed messages into
3402         result if `visible-only' is nil.
3403
3404         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3405         canceled messages.
3406         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3407         (elmo-folder-update-number): Likewise.
3408
3409         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3410         (elmo-pop3-sort-msgdb-by-original-number): Use
3411         `elmo-msgdb-sort-entities'.
3412
3413         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3414         (elmo-msgdb-sort-by-date): Use it.
3415         (elmo-msgdb-overview-sort-by-date): Abolish.
3416
3417         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3418
3419         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3420         (elmo-msgdb-flags): New function.
3421         (elmo-msgdb-merge): Use elmo-msgdb-append.
3422
3423         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3424         change.
3425
3426         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3427
3428         * elmo-dop.el (elmo-folder-status-dop): Use
3429         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3430
3431 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3432
3433         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3434
3435         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3436
3437         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3438
3439         * elmo-util.el (elmo-with-progress-display): New macro.
3440
3441         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3442
3443 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3444
3445         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3446         `elmo-folder-list-message-entities' instead of
3447         `elmo-msgdb-get-overview'.
3448         (elmo-map-folder-list-message-locations): Ditto.
3449
3450         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3451         methods instead of treat directly).
3452         (elmo-msgdb-clear): Ditto.
3453         (elmo-msgdb-delete-msgs): Ditto.
3454         (elmo-msgdb-sort-by-date): Ditto.
3455
3456         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3457         local variables.
3458         (elmo-nntp-folder-msgdb-create): Follow the API change.
3459
3460         * elmo-version.el (elmo-version): Up to 2.11.10.
3461
3462 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3463
3464         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3465         (elmo-msgdb-flags-to-mark): Ditto.
3466         (elmo-msgdb-append-entity): Ditto.
3467
3468         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3469         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3470         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3471         (elmo-archive-parse-mmdf): Ditto.
3472
3473         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3474
3475         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3476
3477         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3478
3479         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3480
3481         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3482
3483         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3484
3485         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3486
3487         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3488
3489         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3490         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3491         to empty msgdb.
3492
3493         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3494         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3495         instead of directly construction.
3496         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3497         instead of construct msgdb.
3498
3499         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3500         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3501         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3502         instead of construct msgdb.
3503
3504 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3505
3506         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3507         when field is from or subject.
3508
3509 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3510
3511         * elmo-multi.el (elmo-message-entity-parent): Define.
3512         (elmo-folder-search): Rewrite.
3513
3514 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3515
3516         * elmo-multi.el (elmo-message-cached-p): Define.
3517
3518         * elmo.el (elmo-message-cached-p): New method.
3519         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3520         (elmo-message-flags): New method.
3521         (elmo-message-flagged-p): New function.
3522
3523         * elmo-version.el (elmo-version): Up to 2.11.9.
3524
3525 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3526
3527         * elmo-version.el (elmo-version): Up to 2.11.8.
3528
3529         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3530
3531         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3532
3533 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3534
3535         * elmo.el (elmo-folder-detach-messages): Undo last change.
3536
3537 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3538
3539         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3540
3541         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3542         only when src folder type is pop3.
3543
3544 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3545
3546         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3547         elmo-msgdb-overview-entity-get-number instead of
3548         elmo-message-entity-number.
3549
3550 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3551
3552         * elmo-version.el (elmo-version): Up to 2.11.7.
3553
3554 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3555
3556         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3557         function.
3558
3559         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3560         (elmo-msgdb-merge): New function.
3561         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3562         (elmo-msgdb-make-index): Rewrite.
3563
3564         * elmo-version.el (elmo-version): Up to 2.11.6.
3565
3566         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3567         use it as a the path for loading message entities.
3568
3569         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3570
3571 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3572
3573         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3574         message-modified slot of itself if it does not require target msgdb.
3575
3576         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3577         if folder length is zero.
3578         (elmo-mime-display-as-is): Ditto.
3579
3580         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3581
3582         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3583
3584 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3585
3586         * elmo.el (elmo-folder-set-message-modified): New method.
3587         (elmo-generic-folder-commit): Use it.
3588         (elmo-folder-synchronize): Ditto.
3589
3590         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3591         (elmo-folder-commit): Remove duplicate definition.
3592
3593 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3594
3595         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3596
3597 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3598
3599         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3600         (elmo-strict-folder-diff): Ditto.
3601         (elmo-folder-set-info-max-by-numdb): Simplify.
3602
3603         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3604         elmo-msgdb-list-messages.
3605
3606         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3607         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3608
3609 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3610
3611         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3612         visible-only is non-nil.
3613         (elmo-folder-confirm-appends): Changed message.
3614         (elmo-folder-synchronize): Added argument disable-killed.
3615
3616         * elmo-multi.el (elmo-folder-synchronize): Added argument
3617         disable-killed.
3618
3619         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3620
3621         * elmo-version.el (elmo-version): Up to 2.11.5.
3622
3623         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3624         elmo-list-filter.
3625
3626         * elmo-util.el (elmo-list-filter): Simplify.
3627
3628         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3629         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3630         (elmo-generic-folder-diff): Abolish argument.
3631         (elmo-msgdb-load): Don't use number-alist.
3632
3633         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3634
3635         * elmo-pipe.el (elmo-folder-diff): Ditto.
3636
3637         * elmo-nmz.el (elmo-folder-diff): Ditto.
3638
3639         * elmo-net.el (elmo-folder-diff): Ditto.
3640
3641         * elmo-maildir.el (elmo-folder-diff): Ditto.
3642
3643         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3644
3645         * elmo-multi.el (elmo-folder-diff): Ditto
3646         (elmo-multi-folder-diff): Rewrite.
3647
3648 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3649
3650         * elmo-pipe.el (elmo-folder-msgdb): Define.
3651
3652 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3653
3654         * elmo.el (elmo-message-set-cached): Define as a method.
3655
3656         * elmo-pipe.el (elmo-message-set-cached): Define.
3657         (elmo-find-fetch-strategy): Ditto.
3658
3659         * elmo-multi.el (elmo-message-set-cached): Define.
3660         (elmo-find-fetch-strategy): Rewrite.
3661
3662         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3663
3664         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3665
3666 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3667
3668         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3669         instead of number-alist.
3670
3671         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3672         mark nor message-id when msgdb of source folder is not loaded.
3673
3674         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3675
3676         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3677
3678 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3679
3680         * elmo.el (elmo-folder-length): Don't require msgdb.
3681
3682 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3683
3684         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3685         (elmo-message-field): Ditto.
3686
3687         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3688         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3689         slot.
3690         (elmo-map-folder-list-answereds): Define.
3691         (elmo-maildir-list-location): Treat 'R' info.
3692         (elmo-folder-msgdb-create): Treat flag-table.
3693         (elmo-folder-append-messages): Save flag-table.
3694
3695 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3696
3697         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3698         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3699
3700 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3701
3702         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3703
3704         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3705         'read when mark is null.
3706
3707 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3708
3709         * elmo-version.el (elmo-version): Up to 2.11.4.
3710
3711 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3712
3713         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3714         (elmo-folder-mark-as-answered): Ditto.
3715
3716 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3717
3718         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3719         (elmo-pop3-get-session): Make msgdb directory after session.
3720         (elmo-folder-exists-p): Check exactly at the first time even when the
3721         elmo-pop3-exists-exactly is nil.
3722
3723         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3724         (elmo-folder-list-messages): Define instead of
3725         elmo-folder-list-messages-internal.
3726         (elmo-folder-check): Check destination folder.
3727         (elmo-folder-synchronize): Drain the pipe.
3728
3729         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3730         when msgdb is not loaded.
3731
3732         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3733
3734         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3735         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3736         messages.
3737
3738         * elmo.el (elmo-folder-kill-messages-before): New function.
3739         (elmo-folder-kill-messages): Ditto.
3740         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3741
3742         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3743         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3744         killed not by synchronize (e.g. scoring).
3745
3746 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3747
3748         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3749         treated.
3750         (elmo-folder-search): Follow the change above.
3751
3752         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3753         into the candidates of search field.
3754
3755 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3756
3757         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3758         (elmo-msgdb-unset-flag): Ditto.
3759
3760         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3761
3762 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3763
3764         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3765         (elmo-folder-commit): Define.
3766         (elmo-folder-synchronize): Ditto.
3767         (elmo-folder-list-flagged): Ditto.
3768         (elmo-folder-commit): Ditto.
3769         (elmo-folder-length): Ditto.
3770         (elmo-folder-count-flags): Ditto.
3771         (elmo-message-mark): Ditto.
3772         (elmo-message-field): Ditto.
3773         (elmo-message-entity): Ditto.
3774         (elmo-message-folder): Ditto.
3775
3776 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3777
3778         * elmo.el (elmo-message-field): Define as a method.
3779
3780         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3781         (elmo-message-field): Define.
3782
3783         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3784         (elmo-folder-list-importants): Ditto.
3785         (elmo-folder-list-answereds): Ditto.
3786
3787         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3788         qualifier.
3789         (elmo-folder-mark-as-read): Ditto.
3790         (elmo-folder-unmark-read): Ditto.
3791         (elmo-folder-mark-as-answered): Ditto.
3792         (elmo-folder-unmark-answered): Ditto.
3793         (elmo-folder-list-flagged): Define.
3794         (elmo-folder-commit): Ditto.
3795         (elmo-folder-length): Ditto.
3796         (elmo-folder-count-flags): Ditto.
3797
3798 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3799
3800         * elmo.el (elmo-folder-detach-messages): New method.
3801         (elmo-folder-move-messages): Use it.
3802         (elmo-folder-synchronize): Ditto.
3803
3804         * elmo-multi.el (elmo-folder-detach-messages): Define.
3805
3806         * elmo.el (elmo-message-copy-entity): New function.
3807         (elmo-message-entity-set-number): Ditto.
3808         (elmo-message-mark): Define as method.
3809
3810         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3811         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3812         (elmo-message-entity): Fixed last change.
3813         (elmo-message-mark): Define.
3814         (elmo-folder-msgdb-create): Abolish.
3815         (elmo-multi-folder-append-msgdb): Ditto.
3816         (elmo-multi-folder-diff): Fixed.
3817         (elmo-multi-split-number-alist): Removed.
3818         (elmo-multi-split-mark-alist): Removed.
3819         (elmo-folder-list-messages): Define.
3820         (elmo-folder-list-messages-internal): Removed.
3821
3822         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3823         local file messages.
3824         (elmo-folder-msgdb-create): Fixed read mark.
3825
3826 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3827
3828         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3829         if mark is nil.
3830
3831 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3832
3833         * elmo.el (elmo-folder-list-message-entities): Define as inline
3834         function.
3835         (elmo-folder-messages): Abolish.
3836
3837         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3838         folder.
3839         (elmo-folder-synchronize): Define.
3840         (elmo-message-entity): Define.
3841
3842 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3843
3844         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3845         elmo-imap4-session-select-mailbox.
3846
3847         * elmo.el (elmo-folder-move-messages): Don't display any message.
3848
3849         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3850         parsing.
3851         (elmo-imap4-session-check): Don't wait CHECK response.
3852         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3853
3854 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3855
3856         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3857
3858 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3859
3860         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3861         API.
3862         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3863
3864
3865         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3866         (elmo-folder-list-message-entities): Added argument in-msgdb and
3867         numbers.
3868         (elmo-folder-synchronize): Define as a method.
3869
3870         * elmo-nntp.el (elmo-folder-initialize): Don't use
3871         elmo-nntp-default-user if zero-length username is specified
3872         explicitly.
3873
3874 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3875
3876         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3877         server name in case with username.
3878         (XXX: this is ad-hoc fix against username includes "@", it
3879         should be solved fundamentally)
3880
3881 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3882
3883         * elmo-nntp.el (elmo-nntp-debug): New function.
3884         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3885         (elmo-network-authenticate-session): Hide auth-info from the log.
3886
3887         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3888         user name if it is equal to elmo-nntp-default-user.
3889
3890 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3891
3892         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3893         instead of shimbun-server-internal;
3894         Use shimbun-current-group instead of shimbun-current-group-internal.
3895         (elmo-folder-plugged-p): Use shimbun-server instead of
3896         shimbun-server-internal.
3897         (elmo-folder-set-plugged): Ditto.
3898         (elmo-net-port-info): Ditto.
3899         (elmo-folder-check): Ditto.
3900         (elmo-folder-expand-msgdb-path): Ditto.
3901         (elmo-folder-list-subfolders): Ditto.
3902
3903 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3904
3905         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3906         Convert field-name to lower case.
3907         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3908
3909 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3910
3911         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3912         `message' and `error' take format string.
3913
3914 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3915
3916         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3917
3918 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3919
3920         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3921         recursive call (can't byte compile on emacs 20.7).
3922
3923 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3924
3925         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3926         (elmo-folder-list-message-entities): New API.
3927         (elmo-message-entity): Ditto.
3928         (elmo-message-entity-parent): Ditto.
3929         (elmo-folder-do-each-message-entity): Ditto.
3930         (elmo-message-entity-number): Ditto.
3931         (elmo-message-entity-field): Ditto.
3932         (elmo-message-entity-set-field): Ditto.
3933         (elmo-folder-count-flags): Ditto.
3934         (elmo-folder-length): Ditto.
3935
3936         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3937         not.
3938
3939         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3940         (elmo-msgdb-count-marks): Abolish.
3941         (elmo-msgdb-make-entity): Ditto.
3942         (elmo-msgdb-do-each-entity): Ditto.
3943         (elmo-msgdb-message-entity): New inline function.
3944         (elmo-msgdb-message-entity-field): Ditto.
3945         (elmo-msgdb-message-entity-set-field): Ditto.
3946         (elmo-msgdb-make-message-entity): New function.
3947
3948 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3949
3950         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3951         to flag. (All other related portions are changed.)
3952         (elmo-folder-msgdb-create): Likewise.
3953         (elmo-generic-folder-append-messages): Use flag-table instead of
3954         seen-list.
3955         (elmo-folder-move-messages): Removed redundant process.
3956         (elmo-folder-synchronize): Likewise.
3957
3958         * elmo-msgdb.el (elmo-flag-table-get): New function.
3959         (elmo-flag-table-save): Fixed.
3960         (elmo-msgdb-length): New inline function.
3961         (elmo-msgdb-flag-table): New function.
3962         (elmo-msgdb-mark): Add optional argument new.
3963         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3964         (elmo-msgdb-seen-list): Ditto.
3965         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3966
3967
3968 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3969
3970         * elmo.el (elmo-message-set-mark): Abolish.
3971         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3972         (All related portions are changed.)
3973
3974         * elmo-msgdb.el (toplevel): Added comment.
3975         (elmo-load-msgdb): Added 4th element `path'.
3976         (elmo-msgdb-append): Follow the change above.
3977         (elmo-msgdb-clear): Ditto.
3978         (elmo-msgdb-delete-msgs): Ditto.
3979         (elmo-msgdb-get-path): New inline function.
3980         (elmo-msgdb-set-path): Ditto.
3981         (elmo-flag-table-filename): New variable.
3982         (elmo-flag-table-load): New function.
3983         (elmo-flag-table-set): Ditto.
3984         (elmo-flag-table-save): Ditto.
3985         (elmo-msgdb-get-field-value): Abolish.
3986         (elmo-msgdb-overview-get-entity-by-number): Ditto.
3987
3988 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
3989
3990         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3991         the folder has been deleted successfully.
3992         * elmo-imap4.el (elmo-folder-delete): Ditto.
3993         * elmo-archive.el (elmo-folder-delete): Ditto.
3994         * elmo-localdir.el (elmo-folder-delete): Ditto.
3995         * elmo-maildir.el (elmo-folder-delete): Ditto.
3996
3997 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
3998
3999         * elmo-util.el (elmo-string-member-ignore-case): New function.
4000         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4001         (elmo-imap4-fetch-callback-1-subr): Likewise.
4002
4003 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4004
4005         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4006         the case of the name attribute "\Noselect".
4007
4008 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4009
4010         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4011
4012         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4013         flist, is not always a member of onum-alist.
4014
4015 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4016
4017         * elmo-version.el (elmo-version): Up to 2.11.3.
4018
4019 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4020
4021         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4022         copied from localdir's one.
4023
4024         * elmo-pipe.el (elmo-folder-rename): New method, rename
4025         destination folder with leaving source folder as it is.
4026
4027 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4028
4029         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4030         replace-regexp.
4031
4032 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4033
4034         * elmo-version.el (elmo-version): Up to 2.11.2.
4035
4036 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4037
4038         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4039         shimbun-open in case of "@".
4040         (elmo-folder-open-internal): Cope with shimbun = nil case.
4041         (elmo-folder-plugged-p): Ditto.
4042         (elmo-folder-list-subfolders): Make list for "@/" group.
4043
4044 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4045
4046         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4047         mailbox (e.g. for %~/something).
4048
4049 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4050
4051         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4052         Replace nested conditional with guard clauses.
4053
4054 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4055
4056         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4057         error [wl:11327].
4058
4059         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4060         print-depth.
4061
4062 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4063
4064         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4065         Replace nested conditional with guard clauses.
4066
4067 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4068
4069         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4070         (elmo-passwd-alist-save): Ditto.
4071         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4072
4073 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4074
4075         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4076         dir-name only if it is absolute path.
4077         (TODO: distinguish +/something and +something)
4078
4079 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4080
4081         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4082         path for "+~/something".
4083
4084 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4085
4086         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4087         as non-directory, cause error before rename-file.
4088         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4089         apropriately, mimic localdir's one.
4090         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4091
4092 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4093
4094         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4095
4096 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4097
4098         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4099
4100         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4101         
4102         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4103         is included in the global-mark or not.
4104
4105 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4106
4107         * utf7.el (toplevel): Avoid error when the function
4108         find-coding-system does not exist.
4109
4110 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4111
4112         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4113         cache even if the folder is plugged.
4114         (elmo-nntp-search-primitive): Do nothing when body search is
4115         invoked (although it is not used by the change above).
4116         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4117
4118 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4119
4120         * elmo-version.el (elmo-version): Up to 2.11.1.
4121
4122 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4123
4124         * elmo-archive.el: Specify charset.
4125
4126 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4127
4128         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4129         process buffer lives or not.
4130
4131         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4132         while flushing queues (It causes infinite loop).
4133
4134 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4135
4136         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4137
4138 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4139
4140         * utf7.el (toplevel): Check the ucs features dynamically.
4141         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4142
4143         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4144         folder is creatabe or not if it already exists.
4145
4146 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4147
4148         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4149
4150         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4151
4152         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4153         (elmo-imap4-read-response): Take care of garbage response.
4154
4155 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4156
4157         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4158         just return nil instead of error.
4159
4160 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4161
4162         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4163         search-key is "body".
4164
4165 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4166
4167         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4168         of elmo-string-matched-assoc to use match-data.
4169         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4170
4171 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4172
4173         * elmo-split.el (elmo-split->): New function.
4174         (elmo-split-<): Ditto.
4175
4176 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4177
4178         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4179         workaround for invalid message-id.
4180
4181 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4182
4183         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4184         return normal pop3 session or pop3 biff session.
4185
4186 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4187
4188         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4189         info part to the cur files when the new files already have it.
4190         (Adviced by Jared Rhine <jared@wordzoo.com>)
4191
4192 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4193
4194         * elmo-split.el (elmo-split-default-action): New variable.
4195         (elmo-split-subr): Use it if all other conditions are passed.
4196         Extend `fname' and rename it as `action'. (implemented
4197         Teranishi-san's idea in [wl:10800])
4198
4199 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4200
4201         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4202         * elmo-util.el: Ditto.
4203
4204 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4205
4206         * elmo.el (elmo-message-accessible-p): Renamed from
4207         elmo-message-cached-p and rewritten.
4208
4209 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4210
4211         * elmo.el (elmo-folder-list-flagged): New generic function.
4212         (elmo-folder-list-importants): New implementation.
4213         (elmo-folder-list-answereds): Ditto.
4214         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4215         Added 'digest'.
4216         (elmo-message-cached-p): New function.
4217         (elmo-message-set-flag): Ditto (no content).
4218         (elmo-message-unset-flag): Ditto.
4219         (elmo-folder-list-messages-mark-match): Abolish.
4220
4221         * elmo-util.el (elmo-regexp-opt): New function.
4222
4223         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4224         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4225         Added 'digest'.
4226         (elmo-msgdb-list-flagged): New function.
4227
4228         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4229         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4230         Added 'digest'.
4231
4232         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4233
4234 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4235
4236         * elmo-version.el (elmo-version): Up to 2.11.0.
4237
4238 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4239
4240         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4241         `elmo-file-cache-exists-p'; use proper mark that depends on
4242         `use-cache'.
4243         (elmo-msgdb-unset-flag): Ditto.
4244         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4245
4246         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4247         with 4th argument `use-cache'.
4248
4249 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4250
4251         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4252         (elmo-folder-mark-as-important): Ditto.
4253         (elmo-folder-unmark-read): Ditto.
4254         (elmo-folder-mark-as-read): Ditto.
4255         (elmo-folder-unmark-answered): Ditto.
4256         (elmo-folder-mark-as-answered): Ditto.
4257
4258         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4259         message status.
4260         (elmo-msgdb-mark): Likewise.
4261         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4262         (elmo-msgdb-unset-flag): Likewise.
4263
4264         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4265
4266 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4267
4268         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4269         `last:' filter.
4270
4271 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4272
4273         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4274         set spool-length to 0.
4275
4276 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4277
4278         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4279         (elmo-dop-queue-flush): Fixed last change.
4280
4281 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4282
4283         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4284         if require-msgdb slot is nil.
4285         (elmo-folder-list-importants): Likewise.
4286
4287 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4288
4289         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4290         mark is changed.
4291
4292         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4293         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4294         is changed.
4295
4296 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4297
4298         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4299
4300 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4301
4302         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4303
4304         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4305
4306 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4307
4308         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4309         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4310
4311 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4312
4313         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4314         the problem reported by Sean Rima [wl-en:180].
4315
4316 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4317
4318         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4319
4320         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4321
4322         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4323
4324         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4325
4326         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4327
4328         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4329
4330         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4331
4332 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4333
4334         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4335         status number.
4336
4337 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4338
4339         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4340         (elmo-folder-mark-as-read): Follow the API change.
4341         (elmo-message-set-cached): New function.
4342
4343         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4344
4345         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4346
4347         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4348         (elmo-folder-mark-as-important): Ditto.
4349         (elmo-folder-unmark-read): Ditto.
4350         (elmo-folder-mark-as-read): Ditto.
4351         (elmo-folder-unmark-answered): Ditto.
4352         (elmo-folder-mark-as-answered): Ditto.
4353
4354         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4355         (elmo-folder-unmark-important): Ditto.
4356         (elmo-folder-mark-as-read): Ditto.
4357         (elmo-folder-unmark-read): Ditto.
4358         (elmo-folder-mark-as-answered): Ditto.
4359         (elmo-folder-unmark-answered): Ditto.
4360
4361         * elmo-mark.el (toplevel): Removed some mark method definitions.
4362
4363         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4364         (elmo-map-folder-mark-as-answered): Ditto.
4365         (elmo-folder-unmark-important): Add :before qualifier.
4366         (elmo-folder-mark-as-important): Ditto.
4367         (elmo-folder-unmark-read): Ditto.
4368         (elmo-folder-mark-as-read): Ditto.
4369         (elmo-folder-unmark-answered): Define.
4370         (elmo-folder-mark-as-answered): Ditto.
4371
4372         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4373         (elmo-map-folder-unmark-answered): Ditto.
4374
4375         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4376
4377         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4378         (elmo-folder-mark-as-important): Ditto.
4379         (elmo-folder-unmark-read): Ditto.
4380         (elmo-folder-mark-as-read): Ditto.
4381         (elmo-folder-unmark-answered): Ditto.
4382         (elmo-folder-mark-as-answered): Ditto.
4383
4384         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4385         `mark'; evaluate mark condition.
4386         (elmo-msgdb-match-condition-internal): New function.
4387         (elmo-msgdb-match-condition): Call it; changed argument.
4388
4389         * elmo.el (elmo-folder-search): Follow the API change on
4390         `elmo-msgdb-match-condition'.
4391
4392 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4393
4394         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4395         original mark is non-nil.
4396
4397 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4398
4399         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4400         (elmo-map-folder-list-answereds): New method.
4401         (elmo-folder-list-unreads): Add :around qualifier.
4402         (elmo-folder-list-importants): Ditto.
4403         (elmo-folder-list-answereds): Ditto.
4404
4405 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4406
4407         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4408
4409         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4410         method if msgdb is not required.
4411         (elmo-filter-folder-list-importants): Don't treat global-mark.
4412
4413         * elmo.el (elmo-folder-list-importants): Ditto.
4414
4415         * elmo-net.el (elmo-folder-list-importants): Ditto.
4416
4417         * elmo-map.el (elmo-folder-list-importants): Ditto.
4418
4419         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4420
4421         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4422         (elmo-imap4-folder-list-any-plugged): New function.
4423         (elmo-imap4-search-internal-primitive): Use it.
4424
4425         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4426         only when require-msgdb slot is non-nil.
4427         (elmo-folder-close): Clear target folder's msgdb.
4428
4429 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4430
4431         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4432         (elmo-pop3-msgdb-create-by-header): Ditto.
4433         (elmo-pop3-msgdb-create-message): Ditto.
4434
4435         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4436
4437         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4438
4439         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4440
4441         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4442         (elmo-folder-msgdb-create): Ditto.
4443         (elmo-nntp-folder-msgdb-create): Ditto.
4444         (elmo-nntp-msgdb-create-by-header): Ditto.
4445         (elmo-nntp-msgdb-create-message): Ditto.
4446         (elmo-folder-list-unreads): Define.
4447
4448         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4449         (elmo-folder-append-messages): Ditto.
4450         (elmo-folder-list-unreads): Define.
4451         (elmo-folder-list-importants): Ditto.
4452         (elmo-folder-list-answereds): Ditto.
4453
4454         * elmo-net.el (elmo-folder-list-unreads): Define.
4455         (elmo-folder-list-importants): Ditto.
4456         (elmo-folder-list-answereds): Ditto.
4457         (elmo-folder-list-answereds-plugged): Ditto.
4458         (elmo-folder-msgdb-create): Follow the API change.
4459         (elmo-folder-msgdb-create-unplugged): Ditto.
4460         (elmo-folder-unmark-answered): Define.
4461         (elmo-folder-mark-as-answered-unplugged): Ditto.
4462         (elmo-folder-unmark-answered-unplugged): Ditto.
4463
4464         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4465         (elmo-msgdb-unread-uncached-mark): Ditto.
4466         (elmo-msgdb-unread-cached-mark): Ditto.
4467         (elmo-msgdb-read-uncached-mark): Ditto.
4468         (elmo-msgdb-answered-cached-mark): Ditto.
4469         (elmo-msgdb-answered-uncached-mark): Ditto.
4470         (elmo-msgdb-important-mark): Ditto.
4471         (elmo-msgdb-set-mark): Rewrite.
4472         (elmo-msgdb-count-marks): Rewrite.
4473         (elmo-msgdb-mark-alist-set): Abolish.
4474         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4475         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4476
4477         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4478         (elmo-folder-close): Define.
4479         (elmo-folder-msgdb-create): Follow the API change.
4480         (elmo-folder-list-unreads): Rewrite.
4481         (elmo-folder-mark-as-important): Ditto.
4482         (elmo-folder-unmark-important): Ditto.
4483         (elmo-folder-mark-as-read): Ditto.
4484         (elmo-folder-unmark-read): Ditto.
4485         (elmo-folder-mark-as-answered): Define.
4486         (elmo-folder-unmark-answered): Ditto.
4487
4488         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4489         (elmo-folder-append-messages): Ditto.
4490
4491         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4492
4493         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4494         (elmo-folder-list-importants): Ditto.
4495
4496         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4497         (elmo-folder-append-messages): Ditto.
4498
4499         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4500         change.
4501         (elmo-folder-msgdb-create-plugged): Ditto.
4502         (elmo-folder-append-messages): Ditto.
4503         (elmo-folder-list-answereds-plugged): Define.
4504         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4505         (elmo-folder-unmark-answered-plugged): Define.
4506         (elmo-folder-mark-as-answered-plugged): Ditto.
4507         (elmo-folder-search-requires-msgdb-p): Ditto.
4508
4509         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4510         (elmo-folder-initialize): Set it.
4511         (elmo-folder-msgdb): Define.
4512         (elmo-folder-check): Call elmo-folder-synchronize.
4513         (elmo-folder-close): Define.
4514         (elmo-folder-commit): Ditto.
4515         (elmo-folder-msgdb-create): Rewrite.
4516         (elmo-folder-list-unreads): Ditto.
4517         (elmo-folder-list-importants): Ditto.
4518         (elmo-folder-mark-as-read): Ditto.
4519         (elmo-folder-unmark-read): Ditto.
4520         (elmo-folder-mark-as-important): Ditto.
4521         (elmo-folder-unmark-important): Ditto.
4522         (elmo-folder-mark-as-answered): Define.
4523         (elmo-folder-unmark-answered): Ditto.
4524
4525         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4526         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4527         (elmo-dop-queue-method-name-alist): Likewise.
4528         (elmo-folder-mark-as-answered-dop): New inline function.
4529         (elmo-folder-unmark-answered-dop): Ditto.
4530         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4531
4532         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4533         (elmo-folder-msgdb-create): Ditto.
4534         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4535         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4536         (elmo-archive-parse-mmdf): Ditto.
4537
4538         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4539         (elmo-folder-list-unreads-internal): Ditto.
4540
4541         * elmo.el (elmo-folder-msgdb): Define as generic function.
4542         (elmo-folder-list-messages): Added argument `in-msgdb'.
4543         (elmo-folder-list-unreads): Define as generic function.
4544         (elmo-folder-list-importants): Ditto.
4545         (elmo-folder-list-answereds): Ditto.
4546         (elmo-folder-list-messages-with-global-mark): New function.
4547         (elmo-folder-msgdb-create): Removed mark arguments.
4548         (elmo-folder-unmark-answered): New generic function.
4549         (elmo-folder-mark-as-answered): Ditto.
4550         (elmo-folder-append-messages): Removed argunment `unread-marks'
4551         (elmo-folder-list-unreads-internal): Abolish.
4552         (elmo-folder-list-importants-internal): Ditto.
4553         (elmo-folder-search-requires-msgdb-p): New generic function.
4554         (elmo-folder-search-requires-msgdb-p-internal): New function.
4555         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4556         elmo-msgdb-load.
4557         (elmo-folder-search-fast): Added key 'mark'.
4558         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4559         instead of unread-marks argument.
4560         (elmo-folder-move-messages): Removed argunment `unread-marks'
4561         (elmo-folder-unmark-important): Define.
4562         (elmo-folder-mark-as-important): Ditto.
4563         (elmo-folder-unmark-read): Ditto.
4564         (elmo-folder-mark-as-read): Ditto.
4565         (elmo-folder-unmark-answered): Ditto.
4566         (elmo-folder-mark-as-answered): Ditto.
4567         (elmo-folder-replace-marks): Abolish.
4568         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4569         duplicates.
4570         (elmo-folder-synchronize): Removed mark arguments;
4571         return crosspost only number.
4572
4573 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4574
4575         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4576         Remove redundunt connectivity check.
4577
4578 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4579
4580         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4581         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4582
4583 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4584
4585         * pldap.el (ldap-decode-string): Return string as-is if
4586         `ldap-coding-system' is nil.
4587         (ldap-encode-string): Ditto.
4588         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4589         (ldap-default-host): Fixed docstring.
4590
4591 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4592
4593         * elmo-util.el (elmo-warning): Define as a macro which uses
4594         `display-warning' if it is defined as a function.
4595
4596         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4597         (elmo-split-equal): Use it.
4598         (elmo-split-match): Ditto.
4599         (elmo-split-message-entity): New buffer-local variable.
4600         (elmo-split-subr): Set it.
4601
4602         * elmo-version.el (elmo-version): Up to 2.9.15.
4603
4604 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4605
4606         * elmo-imap4.el (elmo-network-initialize-session):
4607         Check capability after starttls.
4608
4609 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4610
4611         * elmo-util.el (elmo-list-delete): Added optional argument
4612         DELETE-FUNCTION.
4613
4614         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4615
4616         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4617
4618         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4619
4620         * elmo-imap4.el (elmo-folder-initialize): Don't use
4621         elmo-imap4-default-mailbox.
4622
4623 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4624
4625         * elmo-split.el (toplevel): Use `product-provide'.
4626         (elmo-split): Checkdoc.
4627
4628 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4629
4630         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4631         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4632         the function `elmo-imap4-debug-1'.
4633
4634 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4635
4636         * elmo-split.el (elmo-split): Moved to run hooks and to show
4637         message from elmo-split-subr.
4638         (elmo-split-subr): Follow the change above.
4639
4640         * elmo-split.el (elmo-split-subr): New function (renamed from
4641         elmo-split-subr).
4642         (elmo-split): Changed to call elmo-split-subr by element of
4643         elmo-split-folder.
4644         (elmo-split-folder): Changed customization type to choice.
4645
4646 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4647
4648         * elmo-split.el (elmo-split-and): Fixed condition.
4649
4650 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4651
4652         * elmo-split.el: New file.
4653         (elmo-split): Fixed logic.
4654         Display "Test:" instead of "Folder:" when reharsal.
4655
4656         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4657         explicitly.
4658
4659         * elmo-version.el (elmo-version): Up to 2.9.14.
4660
4661         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4662         wl-expand-newtext).
4663
4664 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4665
4666         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4667         message with no message-id field.
4668
4669 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4670
4671         * elmo-version.el (elmo-version): Up to 2.9.13.
4672
4673         * elmo-dop.el (elmo-folder-status-dop): Fix.
4674
4675 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4676
4677         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4678
4679         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4680         changing default value of default-mime-charset.
4681         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4682
4683         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4684
4685         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4686         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4687         instead of elmo-dop-queue-method-name-alist to check merging queue.
4688         (elmo-folder-delete-messages-dop): Delete from queue if negative
4689         message number.
4690         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4691         file is already removed.
4692
4693 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4694
4695         * elmo-vars.el: Bind colon keywords for old Emacsen.
4696
4697 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4698
4699         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4700         against non-exsisting charset.
4701
4702 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4703
4704         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4705         Use eword-decode-and-unfold-unstructured-field-body.
4706
4707         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4708         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4709         exists to decode raw subject string.
4710         (toplevel): Require 'mime.
4711
4712         * elmo-version.el (elmo-version): Up to 2.9.12.
4713
4714 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4715
4716         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4717         (elmo-msgdb-set-mark): Ditto.
4718
4719         * elmo-version.el (elmo-version): Up to 2.9.11.
4720
4721 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4722
4723         * elmo-util.el (elmo-delete-match-files): New function.
4724
4725         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4726         instead of elmo-delete-directory.
4727
4728         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4729         elmo-hash-minimun-size as 63.
4730
4731         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4732         elmo-diff-unread is nil.
4733
4734         * elmo-imap4.el (elmo-folder-open): Fix.
4735
4736         * elmo.el (elmo-message-mark): Rewrite.
4737         (elmo-message-field): Ditto.
4738         (elmo-message-set-mark): Ditto.
4739         (elmo-folder-replace-marks): New function.
4740         (elmo-generic-folder-append-msgdb): Removed third argument for
4741         elmo-msgdb-append.
4742         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4743         (elmo-msgdb-load): New implementation.
4744
4745         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4746
4747         * elmo-util.el (elmo-list-insert): New implementation.
4748
4749         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4750         argument for elmo-msgdb-append.
4751         
4752
4753         * elmo-msgdb.el (elmo-load-msgdb): New function.
4754         (elmo-make-msgdb): Ditto.
4755         (elmo-msgdb-get-index): New inline function.
4756         (elmo-msgdb-set-index): Ditto.
4757         (elmo-msgdb-get-entity-hashtb): Ditto.
4758         (elmo-msgdb-get-mark-hashtb): Ditto.
4759         (elmo-msgdb-get-mark): Ditto.
4760         (elmo-msgdb-set-mark): Ditto.
4761         (elmo-msgdb-count-marks): Ditto.
4762         (elmo-msgdb-get-number): Ditto.
4763         (elmo-msgdb-get-field): Ditto.
4764         (elmo-msgdb-seen-list): Ditto.
4765         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4766         (elmo-msgdb-delete-msgs): Follow the changes above.
4767         (elmo-msgdb-overview-get-entity): Ditto.
4768         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4769         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4770         and rewritten.
4771         (elmo-msgdb-make-index): Likewise.
4772         (elmo-msgdb-append): Removed third argument.
4773         (elmo-msgdb-clear): Clear index as nil.
4774         (elmo-folder-set-info-hashtb): Removed.
4775         (elmo-folder-set-info-max-by-numdb): Ditto.
4776         (elmo-folder-info-make-hashtb): Ditto.
4777
4778         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4779
4780         * elmo-map.el (elmo-folder-pack-number): Ditto.
4781
4782 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4783
4784         * elmo-version.el (elmo-version): Up to 2.9.10.
4785
4786         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4787
4788         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4789
4790 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4791
4792         * elmo-utils.el (elmo-make-directory): Add option.
4793         Default file mode is 700.
4794
4795 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4796
4797         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4798
4799 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4800
4801         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4802         mime-charset.
4803
4804         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4805         and "smaller".
4806
4807 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4808
4809         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4810         (elmo-shimbun-folder-entity-hash): New function.
4811         (elmo-shimbun-folder-shimbun-header): Ditto.
4812         (elmo-shimbun-entity-to-header): Ditto.
4813         (elmo-shimbun-msgdb-to-headers): Removed.
4814         (elmo-shimbun-folder-setup): Ditto.
4815         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4816         for hash key.
4817         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4818         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4819         Removed useless local bind.
4820         (elmo-folder-open-internal): Don't call
4821         `elmo-shimbun-folder-setup'.
4822         (elmo-folder-close-internal): Clear entity-hash slot.
4823         (elmo-folder-clear): Ditto.
4824         (elmo-shimbun-msgdb-create-entity): Use
4825         `elmo-shimbun-folder-shimbun-header'.
4826         (elmo-map-message-fetch): Ditto.
4827         (elmo-shimbun-update-overview): Use overview entity instead of
4828         shimbun header to lookup id by references.
4829         (elmo-map-folder-list-message-locations): Use not only headers but
4830         also overviews to list locations.
4831
4832 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4833
4834         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4835         msgdb path.
4836
4837         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4838
4839 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4840
4841         * elmo-util.el (elmo-read-search-condition-internal): Give default
4842         value for date.
4843
4844 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4845
4846         * elmo-util.el (elmo-condition-parse-search-value): Accept
4847         YYYY-MM-DD format to search.
4848         * elmo-date.el (elmo-date-get-datevec): Likewise.
4849
4850 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4851
4852         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4853         debugging code.
4854
4855 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4856
4857         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4858         from t.
4859
4860         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4861
4862         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4863         case from `elmo-folder-exists-p'.
4864         (elmo-folder-exists-p): Removed.
4865         (elmo-folder-creatable-p) Ditto.
4866
4867         * elmo-net.el (elmo-folder-create): Defined.
4868         (elmo-folder-create-unplugged): New function.
4869         (elmo-folder-exists-p): Changed default value to nil from t.
4870
4871         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4872         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4873
4874         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4875         `elmo-create-folder-dop' and append queue
4876         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4877         (elmo-folder-create-dop-delayed): New function.
4878
4879         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4880
4881         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4882
4883         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4884         (elmo-folder-writable-p) : Ditto.
4885
4886         * elmo-version.el (elmo-version): Up to 2.9.9.
4887
4888 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4889
4890         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4891         `elmo-message-use-cache-p' returns nil.
4892         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4893         (ignore cache file and refer the substance in local folders)
4894
4895 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4896
4897         * elmo-version.el (elmo-version): Up to 2.9.8.
4898
4899 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4900
4901         * elmo-version.el (elmo-version): Up to 2.9.7.
4902
4903         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4904
4905 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4906
4907         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4908
4909 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4910
4911         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4912         from --early.
4913         (elmo-map-folder-list-message-locations): Reverse location list.
4914
4915 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4916
4917         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4918
4919 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4920
4921         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4922         as a key.
4923         (elmo-nntp-folder-list-subfolders): Follow the change above.
4924
4925 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4926
4927         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4928         name if authentication type is specified.
4929
4930 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4931
4932         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4933         variable.
4934         (elmo-default-nntp-stream-type): Ditto.
4935         (elmo-default-pop3-stream-type): Ditto.
4936
4937 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4938
4939         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4940
4941 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4942
4943         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4944         elmo-vars.el.
4945         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4946
4947         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4948         (elmo-maildir-folder-path): Ditto.
4949         (elmo-maildir-list): Ditto (abolished).
4950
4951 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4952
4953         * elmo-version.el (elmo-version): Up to 2.9.6.
4954
4955 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4956
4957         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4958         (elmo-maildir-folder-path): Ditto.
4959         (elmo-msgdb-directory): Ditto.
4960         (elmo-passwd-life-time): Ditto.
4961         (elmo-msgdb-extra-fields): Ditto.
4962         (elmo-enable-disconnected-operation): Ditto.
4963
4964 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4965
4966         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4967         other choices.
4968         (elmo-pop3-default-authenticate-type): Ditto.
4969
4970 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4971
4972         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4973         choices for custom.
4974         (elmo-pop3-default-authenticate-type): Ditto.
4975
4976 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4977
4978         * elmo-imap4.el (elmo-folder-rename-internal): Change current
4979         mailbox to new-folder.
4980
4981 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
4982
4983         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4984         less than new, set new as unread.
4985
4986         * elmo-util.el (elmo-string): Don't put text-property if nil.
4987
4988 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4989
4990         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4991         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4992
4993 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4994
4995         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4996         is nil on `completing-read'.
4997
4998 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
4999
5000         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5001         for namespace part.
5002         (elmo-imap4-parse-namespace-subr): Ditto.
5003         (elmo-folder-list-subfolders): Append a delimiter when the specified
5004         folder path is a root with namespace and does not end with delimiter.
5005
5006 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5007
5008         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5009         was used.
5010
5011 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5012
5013         * elmo-util.el (elmo-save-buffer): The first argument of message
5014         is a format control string.
5015
5016 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5017
5018         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5019         `elmo-folder-diff').
5020         (elmo-diff-unread): Likewise.
5021
5022 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5023
5024         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5025         is t on `completing-read'.
5026
5027 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5028
5029         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5030         method of target folder with self mark-alist if MARK-ALIST is nil.
5031
5032 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5033
5034         * elmo-version.el (elmo-version): Up to 2.9.5.
5035
5036 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5037
5038         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5039         (elmo-dop-merge-funcs): Remove.
5040
5041 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5042
5043         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5044         Return t if PATH is directory, too.
5045         Use `dolist' instead of while loop.
5046
5047 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5048
5049         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5050         is deleted.
5051
5052 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5053
5054         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5055         return value to t.
5056         (elmo-folder-list-messages-unplugged): Return t if
5057         elmo-enable-disconnected-operation is nil.
5058
5059         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5060         `elmo-folder-list-messages-internal'.
5061
5062 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5063
5064         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5065         Change to looking-at `[23][0-9]+'.
5066         (elmo-network-initialize-session): Use 'error-msg'
5067         * elmo-net.el (elmo-network-open-session): Set unplugged
5068         if elmo-network-initialize-session returns 'elmo-open-err.
5069
5070 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5071
5072         * elmo-version.el (elmo-version): Up to 2.9.4.
5073
5074 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5075
5076         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5077         `elmo-folder-list-messages-internal'.
5078
5079 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5080
5081         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5082         (elmo-message-match-condition): New method.
5083         (elmo-folder-search-fast): New inline function.
5084         (elmo-msgdb-search): Removed.
5085
5086         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5087         target folder if it is unplugged.
5088         (elmo-folder-list-messages-internal): Return t if target folder is
5089         unplugged and itself is persistent; In this case, use list be
5090         searched already.
5091
5092         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5093         (elmo-msgdb-search-internal-primitive): Ditto.
5094         (elmo-msgdb-match-condition): New function.
5095         (elmo-msgdb-match-condition-primitive): Ditto.
5096
5097         * elmo-util.el (elmo-filter-condition-p): New macro.
5098
5099         * elmo-cache.el (elmo-folder-search): Removed.
5100
5101         * elmo-localdir.el (elmo-folder-search): Ditto.
5102
5103         * elmo-maildir.el (elmo-folder-search): Ditto.
5104
5105         * elmo-mark.el (elmo-folder-search): Ditto.
5106
5107         * elmo-nmz.el (elmo-folder-search): Ditto.
5108
5109         * elmo-sendlog.el (elmo-folder-search): Ditto.
5110
5111         * elmo-shimbun.el (elmo-folder-search): Ditto.
5112
5113         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5114         if folder is unplugged.
5115
5116         * elmo-nntp.el (elmo-folder-search): Likewise.
5117         (elmo-nntp-search-internal): New function.
5118
5119         * elmo-version.el (elmo-version): Up to 2.9.3.
5120
5121 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5122
5123         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5124
5125 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5126
5127         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5128
5129 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5130
5131         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5132
5133 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5134
5135         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5136         (elmo-map-folder-list-message-locations): Do drive letter conversion
5137         on Windows environment.
5138         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5139         (elmo-map-message-fetch): Ditto.
5140
5141 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5142
5143         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5144         (elmo-network-initialize-session): Ditto.
5145
5146 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5147
5148         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5149
5150         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5151
5152         * elmo-util.el (elmo-progress-clear): Ditto.
5153
5154         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5155         `DD-Mon-YYYY' type date.
5156
5157 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5158
5159         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5160         `elmo-date-make-sortable-string' instead of
5161         `timezone-make-date-sortable'.
5162
5163         * elmo-date.el (elmo-date-make-sortable-string): Use
5164         `timezone-make-time-string'.
5165
5166 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5167
5168         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5169
5170         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5171         `since'; Fix timezone.
5172
5173         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5174
5175         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5176
5177 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5178
5179         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5180
5181 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5182
5183         * elmo.el (elmo-generic-folder-append-messages): Make
5184         fetch-strategy with `use-cache' as 'maybe. Check return value of
5185         `elmo-message-fetch'.
5186         (elmo-message-fetch): Return return value of
5187         `elmo-message-fetch-with-cache-process'.
5188         (elmo-message-fetch-with-cache-process): Return non-nil if
5189         fetching was succeed. Load cache when fetching was failed and
5190         fetch-strategy-use-cache is 'maybe.
5191
5192         * elmo-util.el (elmo-file-cache-load): New function.
5193
5194         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5195         defun.
5196
5197         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5198         non-nil if fetching was succeed.
5199
5200         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5201
5202         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5203
5204         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5205         (elmo-message-fetch-with-cache-process): Likwise.
5206
5207         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5208
5209         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5210
5211         * elmo-version.el (elmo-version): Up to 2.9.2.
5212
5213 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5214
5215         * elmo.el (elmo-folder-delete): Delete msgdb path.
5216
5217         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5218
5219         * elmo-maildir.el (elmo-folder-delete): Ditto.
5220
5221         * elmo-localdir.el (elmo-folder-delete): Ditto.
5222
5223         * elmo-imap4.el (elmo-folder-delete): Ditto.
5224
5225 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5226
5227         * elmo.el (luna-define-class): Added `biff' slot.
5228
5229         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5230         (elmo-pop3-debug-inhibit-logging): Abolished.
5231         (elmo-network-close-session): Eliminated needless let.
5232         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5233         (elmo-pop3-send-command): Added `no-log' argument.
5234         (elmo-pop3-process-filter): Use `with-current-buffer'.
5235         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5236         if login failure.
5237         (elmo-pop3-auth-apop): Likewise.
5238         (elmo-network-authenticate-session): Likewise.
5239
5240         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5241         if biff folder.
5242
5243         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5244         string to determine protocol.
5245         (elmo-network-session-name-prefix): Abolished.
5246         (elmo-network-session-cache-key): Follow the change above.
5247         (elmo-network-open-session): Ditto.
5248
5249         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5250         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5251
5252         * elmo-version.el (elmo-version): Up to 2.9.1.
5253
5254         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5255         unmatch condition checking.
5256
5257         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5258         condition.
5259
5260 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5261
5262         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5263
5264 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5265
5266         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5267         test for while loop to execute at least one SEARCH command.
5268
5269 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5270
5271         * elmo-version.el (elmo-version): Up to 2.9.0.
5272
5273 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5274
5275         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5276         (elmo-archive-folder-path): Define.
5277         (elmo-folder-initialize): Setup `dir-name' slot.
5278         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5279         Use `dir-name' as prefix of each subfolders.
5280         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5281
5282 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5283
5284         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5285         (elmo-pipe-folder-list-target-messages): New internal function.
5286         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5287         `killed-list'.
5288         (elmo-pipe-folder-copied-list-load): New function.
5289         (elmo-pipe-folder-copied-list-save): Ditto.
5290         (elmo-folder-open-internal): Follow the change above.
5291         (elmo-folder-status): Fixed for copy.
5292
5293 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5294
5295         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5296
5297 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5298
5299         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5300         elmo-copy-file instead of elmo-add-name-to-file.
5301
5302         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5303
5304         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5305         "file://..." index.
5306
5307         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5308         of accept-process-output as 1.
5309         (elmo-pop3-read-contents): Ditto.
5310         (elmo-pop3-read-body): Ditto.
5311
5312 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5313
5314         * elmo-version.el (product-version-as-string): Remove define.
5315
5316 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5317
5318         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5319         (elmo-imap4-copy-messages): Chop number set using
5320         `elmo-imap4-number-set-chop-length'.
5321         (elmo-imap4-set-flag): Ditto.
5322         (elmo-imap4-search-internal-primitive): Ditto.
5323
5324 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5325
5326         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5327         `elmo-folder-make-temp-dir'
5328
5329         * elmo-vars.el (elmo-cache-directory): New variable.
5330         (elmo-cache-dir): Abolished.
5331         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5332
5333         * elmo-version.el (elmo-version): Up to 2.7.7.
5334
5335 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5336
5337         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5338         defcustom; Set default value as t.
5339
5340 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5341
5342         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5343         (ldap-search-program-arguments): Changed default value.
5344         (ldap-search-basic): Accept exit status 4.
5345         (ldap/field-body): Parse options.
5346         (ldap/collect-field): Ditto.
5347         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5348
5349         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5350         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5351         (elmo-imap4-accept-ok): Ditto.
5352         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5353         'notify-bye, only BYE error is reported.
5354         (elmo-folder-exists-p-plugged): Set no-error argument of
5355         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5356
5357         * elmo.el (elmo-imap4-bye-error): Changed message.
5358
5359         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5360         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5361         queues (It causes infinite loop).
5362
5363 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5364
5365         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5366         (RECENT UNSEEN MESSAGES) extension.
5367
5368 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5369
5370         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5371         Check number of overview fields.
5372
5373 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5374
5375         * elmo.el (elmo-folder-confirm-appends): Changed message.
5376         (elmo-folder-confirm-appends): Ditto.
5377
5378         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5379         `with-temp-buffer'.
5380         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5381
5382 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5383
5384         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5385         of elmo-folder-update-threshold is nil, which can be set by
5386         wl-summary-update-confirm-threshold.
5387
5388 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5389
5390         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5391         (elmo-nmz-index-alias-alist): Ditto.
5392         (elmo-map-folder-list-message-locations): Follow the change above.
5393
5394 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5395
5396         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5397
5398         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5399
5400         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5401
5402         * elmo-util.el (elmo-read): Ditto.
5403         (elmo-display-error): Ditto.
5404
5405         * elmo-vars.el (elmo-date-match): Ditto.
5406
5407         * pldap.el (ldap-coding-system): Ditto.
5408
5409         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5410         `elmo-inhibit-number-mapping' as nil.
5411
5412 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5413
5414         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5415         space delimiter for list response.
5416
5417 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5418
5419         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5420
5421 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5422
5423         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5424         (elmo-map-message-fetch): Fix.
5425         * elmo-map.el (elmo-folder-status): Fix for killed.
5426
5427 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5428
5429         * elmo-sendlog.el: New file.
5430         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5431
5432 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5433
5434         * acap.el (acap-logging-out): New buffer local variable.
5435         (acap-close): Set it.
5436         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5437         an error.
5438
5439 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5440
5441         * acap.el (acap-response-bye-p): New function.
5442         (acap-response-bye-message): Ditto.
5443         (acap-wait-for-response): If bye response is received, cause an error.
5444         (acap-parse-response): Make bye response when 'Bye' is received.
5445
5446 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5447
5448         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5449
5450 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5451
5452         * elmo-util.el (elmo-copy-file): Added argument
5453         `ok-if-already-exists'.
5454         (elmo-copy-file): Fixed typo.
5455
5456 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5457
5458         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5459
5460 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5461
5462         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5463
5464 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5465
5466         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5467         to killed-list.
5468
5469 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5470
5471         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5472         (elmo-folder-initialize): Fix for `copy'.
5473         (elmo-pipe-drain): Ditto.
5474         (elmo-folder-open-internal): Ditto.
5475         (elmo-folder-newsgroups): Fix.
5476
5477 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5478
5479         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5480         for each message.
5481
5482         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5483         recent value is returned from imap folder.
5484
5485         * elmo.el (elmo-folder-newsgroups): New generic function.
5486
5487         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5488         (elmo-folder-initialize): Set it.
5489         (elmo-folder-expand-msgdb-path): Use it.
5490         (elmo-folder-newsgroups): Define.
5491
5492         * elmo-filter.el (elmo-folder-newsgroups): Define.
5493
5494         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5495
5496         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5497
5498         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5499
5500 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5501
5502         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5503         user option.
5504         (elmo-shimbun-header-extra-field): New inline function.
5505         (elmo-shimbun-header-set-extra-field): Ditto.
5506         (elmo-shimbun-folder-header-hash-setup): Ditto.
5507         (elmo-shimbun-update-overview): Ditto.
5508         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5509         (elmo-shimbun-folder-setup): Use
5510         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5511         (elmo-shimbun-get-headers): Ditto.
5512         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5513         Insert `X-Shimbun-Id:' header if extra field is set.
5514         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5515         field's value instead of `shimbun-header-id'.
5516
5517         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5518         inline function.
5519         (elmo-msgdb-overview-entity-set-date): Ditto.
5520         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5521
5522 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5523
5524         * mmimap.el (mmimap-entity-section): Changed body node number from
5525         "0" to "1".
5526
5527 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5528
5529         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5530         `elmo-folder-delete-messages'.
5531
5532         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5533         (elmo-folder-initialize): Changed to expand alias into index path.
5534
5535         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5536         `elmo-mime-insert-header-from-buffer' with 6th arg
5537         `sorted-fields'.
5538
5539 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5540
5541         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5542
5543         * elmo.el (elmo-diff-new): New inline function.
5544         (elmo-diff-unread): Ditto.
5545         (elmo-diff-all): Ditto.
5546
5547         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5548         value from responseb.
5549         (elmo-imap4-folder-diff-plugged): Ditto.
5550         (elmo-imap4-server-diff-async): Added recent argument.
5551         (elmo-server-diff-async): Ditto.
5552         (elmo-imap4-folder-diff-plugged): Ditto.
5553
5554         * elmo-version.el (elmo-version): Up to 2.7.6.
5555
5556 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5557
5558         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5559         in quoted-stirng.
5560
5561 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5562
5563         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5564
5565         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5566
5567         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5568
5569         * elmo-multi.el (elmo-folder-initialize): Ditto.
5570
5571         * elmo-util.el (elmo-parse-token): New function.
5572         (elmo-parse-prefixed-element): Ditto.
5573
5574 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5575
5576         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5577         delete process.
5578         (elmo-imap4-accept-ok): Ditto.
5579
5580 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5581
5582         * mmimap.el (mime-imap-entity-header-string): Don't check first
5583         element of node-id is `0' (Follow last change).
5584
5585 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5586
5587         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5588         assigned irregular node-id to nested multipart section.
5589         (initialize-instance): Followed above change.
5590
5591 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5592
5593         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5594         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5595         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5596         `elmo-shimbun-get-headers');
5597         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5598         visible article on summary exists in headers).
5599         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5600
5601 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5602
5603         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5604         definition.
5605
5606 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5607
5608         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5609
5610 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5611
5612         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5613         header separator into loop condition.
5614
5615 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5616
5617         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5618         Return duplicate folder if it has subfolder.
5619
5620 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5621
5622         * elmo.el (elmo-make-folder): Add folder name error check.
5623
5624         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5625         (elmo-nntp-encode-group-string): New inline function.
5626         (elmo-nntp-decode-group-string): Ditto.
5627         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5628         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5629         Use `not' instead of `null';
5630         Use elmo-nntp-decode-group-string.
5631
5632         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5633
5634         * elmo-version.el (elmo-version): Up to 2.7.5.
5635
5636 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5637
5638         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5639         Hide progress gauge if `elmo-folder-move-messages' exits
5640         nonlocally.
5641
5642 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5643
5644         * elmo-imap4.el (elmo-folder-initialize): Use
5645         `elmo-imap4-encode-folder-string' for folder name.
5646
5647 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5648
5649         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5650         `done'.
5651
5652 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5653
5654         * elmo-util.el (elmo-progress-counter-alist): New internal
5655         variable.
5656         (elmo-progress-counter-value): New macro.
5657         (elmo-progress-counter-all-value): Ditto.
5658         (elmo-progress-counter-format): Ditto.
5659         (elmo-progress-counter-set-value): Ditto.
5660         (elmo-progress-set): New function.
5661         (elmo-progress-clear): Ditto.
5662         (elmo-progress-notify): Ditto.
5663
5664         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5665         counter.
5666
5667         * elmo.el (elmo-generic-folder-append-messages): Call
5668         `elmo-progress-notify'.
5669         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5670
5671         * elmo-archive.el (elmo-folder-append-messages): Call
5672         `elmo-progress-notify'.
5673
5674         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5675
5676         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5677
5678         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5679
5680 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5681
5682         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5683         'Create'.
5684         (elmo-message-encache-dop): Added argument `read'.
5685
5686         * elmo-shimbun.el (elmo-message-encache): Ditto.
5687
5688         * elmo-net.el (elmo-message-encache): Ditto.
5689
5690         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5691         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5692         elmo-imap4-seen-messages.
5693         (elmo-folder-msgdb-create-plugged): Initialize
5694         elmo-imap4-seen-messages;
5695         Set seen mark on elmo-imap4-seen-messages.
5696
5697         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5698
5699         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5700         elmo-folder-append-buffer.
5701         (elmo-folder-encache): Added optional argument `read'.
5702         (elmo-message-encache): Ditto.
5703
5704         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5705
5706         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5707
5708         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5709         if append buffer content succeds.
5710
5711 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5712
5713         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5714         elmo-display-progress.
5715
5716         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5717         Set 4th argument of mime-display-message.
5718         (elmo-mime-display-as-is): Ditto.
5719
5720 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5721
5722         * elmo-nmz.el (toplevel): Require 'mime-edit.
5723         (elmo-nmz-content-type-alist): Abolished.
5724         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5725         content is not a message.
5726         (elmo-map-message-fetch): Changed behavior exept for message content;
5727         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5728         content-type, Add From: and Subject: field.
5729
5730 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5731
5732         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5733         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5734         not a message.
5735
5736 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5737
5738         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5739         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5740
5741         * elmo-archive.el (elmo-folder-writable-p): Defined.
5742
5743         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5744
5745         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5746
5747         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5748
5749         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5750
5751         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5752
5753         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5754
5755         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5756
5757         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5758
5759 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5760
5761         * elmo-util.el (elmo-address-quote-specials): New function;
5762         Renamed from `wl-address-quote-specials'.
5763
5764 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5765
5766         * elmo-version.el (elmo-version): Up to 2.7.4.
5767
5768 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5769
5770         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5771
5772 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5773
5774         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5775         both compile-time and run-time to avoid byte-compile warning.
5776
5777 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5778
5779         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5780
5781 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5782
5783         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5784         option.
5785         (elmo-mime-display-as-is-internal): Use it.
5786
5787         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5788         if `read-passwd' is not defined.
5789
5790 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5791
5792         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5793         by original number.
5794         (elmo-folder-status): Call `elmo-folder-open-internal';
5795         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5796         (elmo-folder-close-internal): Set location-alist as nil.
5797         (elmo-folder-clear): Define.
5798         (elmo-folder-check): Don't set location-alist as nil.
5799
5800         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5801
5802 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5803
5804         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5805         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5806
5807         * mmimap.el (mime-imap-entity::requested): New slot.
5808         (mime-imap-location-fetch-entity-p): New generic function.
5809         (mime-decode-parameters): Define using `defun-maybe'.
5810         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5811         content-type structure.
5812         (mime-entity-body): Return empty body if
5813         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5814
5815         * elmo.el (elmo-message-displaying): New variable.
5816
5817         * elmo-mime.el (elmo-mime-message-display): Bind
5818         elmo-message-displaying as t.
5819
5820         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5821
5822 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5823
5824         * acap.el (acap-open): erase buffer before starting network process.
5825         (acap-store): Rewrite.
5826
5827 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5828
5829         * elmo-imap4.el (elmo-imap4-default-mailbox,
5830         elmo-imap4-default-server
5831         elmo-imap4-default-authenticate-type,
5832         elmo-imap4-default-user,
5833         elmo-imap4-default-port,
5834         elmo-imap4-default-stream-type,
5835         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5836
5837         * elmo-pop3.el (elmo-pop3-default-user,
5838         elmo-pop3-default-server,
5839         elmo-pop3-default-authenticate-type,
5840         elmo-pop3-default-port,
5841         elmo-pop3-default-stream-type,
5842         elmo-pop3-stream-type-alist): Ditto.
5843
5844         * elmo-nntp.el (elmo-nntp-default-server,
5845         elmo-nntp-default-user,
5846         elmo-nntp-default-port,
5847         elmo-nntp-default-stream-type,
5848         elmo-nntp-stream-type-alist): Ditto.
5849
5850         * elmo-vars.el: Follow changes above.
5851         (elmo-setting): New custom group; added 'elmo-setting group to
5852         above variables.
5853
5854         * elmo-version.el (elmo-version): Up to 2.7.3.
5855
5856         * acap.el (acap-parse-response): Don't delete process when BYE
5857         response (It causes hang-up on slow network environment).
5858         (toplevel): Added comment.
5859
5860 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5861
5862         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5863
5864         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5865         parsing NIL.
5866         (acap-parse-return-metadata): Ditto.
5867
5868         * slp.el: New file.
5869         (toplevel): Fixed typo.
5870
5871         * acap.el: New file.
5872         (acap-network-stream-open): Show "Connecting..." message.
5873         (acap-parse-response): Fixed problem for BYE untagged response.
5874         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5875         (toplevel): Added tiny comments.
5876
5877 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5878
5879         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5880         space delimiter for uidl response.
5881
5882 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5883
5884         * elmo-vars.el (elmo-use-semi): Eliminated.
5885
5886         * elmo-util.el (elmo-string-assoc-all): New function.
5887
5888 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5889
5890         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5891         property 'mime-preview-situation for `mime-preview-quit'.
5892
5893 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5894
5895         * elmo.el (elmo-message-fetch-with-cache-process): Call
5896         elmo-message-fetch-internal instead of causing an error when fetch
5897         strategy is 'entire but only 'section cache is available.
5898
5899 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5900
5901         * elmo-version.el (elmo-version): Up to 2.7.2.
5902
5903         * elmo.el (elmo-generic-folder-append-messages): Make
5904         fetch-strategy with `use-cache'.
5905
5906         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5907         (elmo-dop-queue-method-name): New macro.
5908
5909 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5910
5911         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5912         unbalanced parenthesis.
5913
5914 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5915
5916         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5917
5918 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5919
5920         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5921         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5922
5923 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5924
5925         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5926         local variables.
5927
5928 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5929
5930         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5931         (elmo-message-use-cache-p): Define.
5932         (elmo-folder-msgdb-create): Treat cache.
5933
5934 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5935
5936         * elmo-nntp.el (elmo-network-initialize-session): Call
5937         `elmo-nntp-send-mode-reader'.
5938         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5939
5940 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5941
5942         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5943         alist.
5944         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5945         assoc.
5946
5947         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5948         for `elmo-plugged-p'.
5949         (elmo-open-network-stream): Fixed stream-type argument.
5950
5951 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5952
5953         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5954         unknown archive type is specified.
5955
5956 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5957
5958         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5959
5960         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5961         while loading msgdb.
5962
5963         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5964         (elmo-folder-open-internal): Rewrite.
5965
5966 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5967
5968         * elmo-mime.el (elmo-mime-display-as-is-internal):
5969         Adjust buffer-multibyte status.
5970
5971 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5972
5973         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5974         of elmo-condition-find-key.
5975
5976         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5977         (elmo-condition-in-msgdb-p): Ditto.
5978         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5979         argument.
5980
5981 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5982
5983         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5984
5985 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
5986
5987         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5988         label for elmo-display-progress.
5989
5990 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
5991
5992         * elmo.el (elmo-folder-clear): New method.
5993         (elmo-folder-clear): Define.
5994         (elmo-folder-synchronize): Call `elmo-folder-clear'.
5995
5996         * elmo-shimbun.el (elmo-folder-check): Rewrite.
5997         (elmo-folder-clear): Define.
5998
5999         * elmo-map.el (elmo-folder-clear): Define.
6000
6001         * elmo-version.el (elmo-version): Up to 2.7.1.
6002
6003 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6004
6005         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6006         updates.
6007
6008 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6009
6010         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6011         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6012
6013 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6014
6015         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6016
6017         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6018         and re-written.
6019
6020         * elmo-imap4.el (elmo-folder-initialize): Use
6021         elmo-get-network-stream-type.
6022
6023         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6024
6025         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6026
6027 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6028
6029         * elmo.el (elmo-message-encache): Set unread argument for
6030         elmo-message-fetch.
6031
6032         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6033
6034         * elmo.el (elmo-net-port-info): New method.
6035
6036         * elmo-shimbun.el (elmo-net-port-info): Define.
6037         (elmo-message-encache): Ditto.
6038
6039         * elmo-net.el (elmo-net-port-info): Define as method.
6040
6041         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6042         unplugged status when elmo-enable-disconnected-operation is t.
6043
6044         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6045         of spool folder before checking new number.
6046
6047 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6048
6049         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6050         (elmo-network-setup-session): Ditto.
6051         (elmo-message-fetch-plugged): Ditto.
6052         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6053         (elmo-network-initialize-session): Ditto.
6054         (elmo-pop3-read-response): Abolish 3rd argument.
6055         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6056         (elmo-pop3-read-contents): Ditto.
6057         (elmo-pop3-read-body): Ditto.
6058         (elmo-folder-status): Call elmo-folder-close.
6059         (elmo-pop3-lock): Abolish.
6060         (elmo-pop3-unlock): Ditto.
6061         (elmo-pop3-locked-p): Ditto.
6062         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6063
6064 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6065
6066         * elmo-version.el (elmo-version): Up to 2.7.0.
6067
6068         * elmo-pop3.el (elmo-pop3-debug): New variable.
6069         (elmo-pop3-debug-inhibit-logging): Ditto.
6070         (elmo-pop3-debug): New function.
6071         (elmo-pop3-send-command): Call elmo-pop3-debug.
6072         (elmo-pop3-read-response): Added keep-lock optional argument;
6073         Don't unlock if keep-lock is non-nil.
6074         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6075         (elmo-network-authenticate-session): Bind
6076         elmo-pop3-debug-inhibit-logging as t.
6077         (elmo-network-setup-session): Call elmo-pop3-read-response with
6078         keep-lock argument.
6079         (elmo-pop3-read-msg): Ditto.
6080         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6081         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6082         (elmo-network-initialize-session): Call elmo-pop3-lock.
6083         (elmo-folder-close-internal): Don't clear location-alist slot.
6084         (elmo-folder-check): Clear location-alist slot.
6085
6086 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6087
6088         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6089         (elmo-pop3-send-command): Call elmo-pop3-lock.
6090         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6091         (elmo-pop3-read-contents): Ditto.
6092         (elmo-pop3-lock): New function.
6093         (elmo-pop3-unlock): Ditto.
6094         (elmo-pop3-locked-p): Ditto.
6095         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6096         returns t.
6097
6098 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6099
6100         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6101
6102         * elmo-util.el (elmo-file-field-primitive-condition-match):
6103         New inline function (Don't fetch file content if "first" or "last").
6104         (elmo-file-field-condition-match): Use
6105         elmo-file-field-primitive-condition-match.
6106
6107         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6108         "first".
6109
6110         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6111         (elmo-message-fetch-plugged): Fixed.
6112
6113         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6114
6115 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6116
6117         * elmo.el (elmo-folder-move-messages): Bind
6118         elmo-inhibit-display-retrieval-progress as t while moving messages.
6119
6120         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6121         New variable.
6122         (elmo-inhibit-display-retrieval-progress): Ditto.
6123
6124         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6125         for retrieval progress;
6126         Don't display progress when total buffer size is smaller than
6127         elmo-display-retrieval-progress-threshold.
6128         (elmo-message-fetch-plugged): Don't display progress when
6129         elmo-inhibit-display-retrieval-progress is non-nil.
6130
6131         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6132         for retrieval progress;
6133         Don't display progress when literal size is smaller than
6134         elmo-display-retrieval-progress-threshold.
6135         (elmo-imap4-message-fetch): Don't display progress when
6136         elmo-inhibit-display-retrieval-progress is non-nil.
6137
6138 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6139
6140         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6141         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6142         (elmo-imap4-message-fetch): Likewise.
6143
6144         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6145         (elmo-shimbun-index-range-alist): Ditto.
6146         (elmo-shimbun-use-entire-index): Abolish.
6147         (shimbun-mua-use-entire-index): Ditto.
6148         (elmo-shimbun-folder): Added new slot `range'.
6149         (elmo-folder-initialize): Setup slot `range'.
6150
6151 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6152
6153         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6154         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6155         (elmo-shimbun-get-headers): Use return value of
6156         `shimbun-article-expiration-days'.
6157         (elmo-folder-close-internal): Clean up last-check slot.
6158
6159         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6160         (elmo-pop3-total-size): New variable.
6161         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6162
6163         * elmo.el (elmo-folder-reserve-status-p): New method.
6164
6165         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6166         (elmo-shimbun-use-entire-index): New user option.
6167         (shimbun-elmo-mua): New class.
6168         (shimbun-mua-search-id): Define.
6169         (shimbun-mua-use-entire-index): Ditto.
6170         (elmo-shimbun-folder:last-check): New slot.
6171         (elmo-shimbun-headers-cache-header-list): Abolish.
6172         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6173         (elmo-shimbun-headers-cache-header-hash): Ditto.
6174         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6175         (elmo-shimbun-headers-cache-last-check): Ditto.
6176         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6177         (elmo-shimbun-headers-check-p): Rewrite.
6178         (elmo-shimbun-msgdb-to-headers): New function.
6179         (elmo-shimbun-get-headers): Rewrite.
6180         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6181         (elmo-folder-open-internal): Get headers only if
6182         `elmo-shimbun-headers-check-p' is non-nil.
6183         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6184         is non-nil.
6185         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6186         (elmo-quit): Removed.
6187
6188         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6189         function.
6190         (elmo-msgdb-overview-entity-set-extra): Ditto.
6191         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6192
6193         * elmo-map.el (elmo-folder-status): Don't call
6194         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6195         is non-nil.
6196
6197 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6198
6199         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6200         of `elmo-msgdb-search-internal-primitive' when condition's car is
6201         `and' or `or'.
6202
6203 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6204
6205         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6206
6207 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6208
6209         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6210         call `elmo-pipe-drain'.
6211
6212 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6213
6214         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6215         typo. (elmo-cache-folder -> elmo-mark-folder)
6216
6217 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6218
6219         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6220         `elmo-message-fetch'.
6221
6222 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6223
6224         * elmo-net.el (elmo-message-encache): Fixed typo.
6225         (elmo-message-fetch-unplugged): Changed call
6226         `elmo-message-fetch-internal' without argument `outbuf'.
6227
6228 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6229
6230         * elmo.el (elmo-message-encache): Define as generic function.
6231         (elmo-message-fetch-field): New generic function.
6232         (elmo-message-fetch-with-cache-process): Cause an error when
6233         fetch strategy is 'entire but only 'section cache is available.
6234         (toplevel): Fixed nmz folder definition.
6235
6236         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6237         (elmo-msgdb-resume-list-filename): Ditto.
6238         (elmo-queue-filename): Ditto.
6239         (elmo-enable-disconnected-operation): Changed default value to t.
6240
6241         * elmo-util.el (elmo-cache-path-section-p): New function.
6242         (elmo-file-cache-get): Use it.
6243         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6244         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6245         (elmo-dop-queue-save): Ditto.
6246
6247         * elmo-net.el (elmo-folder-status-unplugged): Call
6248         elmo-folder-status-dop.
6249         (elmo-folder-list-messages-unplugged): Implemented.
6250         (elmo-folder-delete-messages-unplugged): Define.
6251         (elmo-folder-msgdb-create): Define.
6252         (elmo-folder-msgdb-create-unplugged): Define.
6253         (elmo-folder-mark-as-read-unplugged): Ditto.
6254         (elmo-folder-unmark-read-unplugged): Ditto.
6255         (elmo-folder-mark-as-important-unplugged): Ditto.
6256         (elmo-folder-unmark-important-unplugged): Ditto.
6257         (elmo-message-encache): Ditto.
6258
6259         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6260         (elmo-dop-queue-save): Ditto.
6261
6262         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6263         `elmo-folder-msgdb-create'.
6264         (elmo-folder-append-buffer): Implemented unplugged operation.
6265         (elmo-folder-append-messages): Call parent method in unplugged status.
6266         (elmo-message-fetch-unplugged): Removed definition.
6267         (elmo-message-fetch-field): Implemented.
6268
6269         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6270         (elmo-dop-folder): Removed variable definition.
6271         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6272         (elmo-dop-queue-flush): Implemented.
6273         (elmo-dop-queue-merge): Removed definition (TODO).
6274         (elmo-dop-spool-folder): New function.
6275         (elmo-dop-spool-folder-append-buffer): Ditto.
6276         (elmo-dop-spool-folder-list-messages): Ditto.
6277         (elmo-dop-list-deleting-messages): Ditto.
6278         (elmo-folder-append-buffer-dop): Ditto.
6279         (elmo-folder-delete-messages-dop): Ditto.
6280         (elmo-message-encache-dop): New inline function.
6281         (elmo-create-folder-dop): Ditto.
6282         (elmo-folder-mark-as-read-dop): Ditto.
6283         (elmo-folder-unmark-read-dop): Ditto.
6284         (elmo-folder-mark-as-important-dop): Ditto.
6285         (elmo-folder-unmark-important-dop): Ditto.
6286         (elmo-folder-status-dop): Fixed.
6287         (elmo-folder-append-buffer-dop-delayed): New function.
6288         (elmo-folder-delete-messages-dop-delayed): Ditto.
6289         (elmo-dop-msgdb): Ditto.
6290
6291 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6292
6293         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6294
6295 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6296
6297         * elmo.el (elmo-folder-move-messages): Fixed problem when
6298         `dst-folder' is 'null.
6299
6300 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6301
6302         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6303         instead of current mark.
6304
6305         * elmo-multi.el (elmo-folder-list-importants-internal): No
6306         operation if importants is not list.
6307
6308         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6309         Return t if importants is not list.
6310
6311         * elmo-map.el (elmo-map-folder-list-importants): Define.
6312         (elmo-folder-list-importants-internal): Check return value of
6313         `elmo-map-folder-list-importants-internal'.
6314
6315         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6316
6317         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6318
6319         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6320
6321         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6322
6323 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6324
6325         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6326         (Patch is provided by <kita@coe.nttdata.co.jp>).
6327
6328 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6329
6330         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6331         mark folder.
6332
6333 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6334
6335         * elmo.el (elmo-message-fetch): Define.
6336         (elmo-message-fetch-with-cache-process): New generic method.
6337         (elmo-message-fetch-internal): New generic method.
6338         (elmo-folder-synchronize):
6339
6340         * elmo-archive.el (elmo-message-fetch-internal): Define.
6341         (elmo-message-fetch): Eliminated.
6342
6343         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6344         (elmo-message-fetch): Eliminated.
6345
6346         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6347         argument OUTBUF.
6348         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6349
6350         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6351         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6352
6353         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6354         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6355
6356         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6357
6358         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6359
6360         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6361
6362         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6363         (elmo-message-fetch-unplugged): New generic method.
6364         (elmo-message-fetch-internal): Remove cache process (Renamed from
6365         `elmo-message-fetch').
6366
6367         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6368         (elmo-message-fetch): Eliminated.
6369         (elmo-message-fetch-unplugged): Ditto.
6370
6371         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6372
6373 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6374
6375         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6376         of `to-be-deleted' from number-alist to number-list.
6377
6378 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6379
6380         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6381         (elmo-folder-mark-as-important): Ditto.
6382
6383 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6384
6385         * elmo.el (elmo-folder): Added process-duplicates slot.
6386
6387         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6388         (elmo-folder-unmark-read): Ditto.
6389         (elmo-folder-unmark-important): Ditto.
6390         (elmo-folder-mark-as-important): Ditto.
6391
6392         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6393         duplicated message processing.
6394
6395         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6396
6397 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6398
6399         * elmo-util.el (elmo-list-subdirectories-1): New function.
6400         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6401         (elmo-mapcar-list-of-list): New function.
6402
6403         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6404         `elmo-mapcar-list-of-list' instead of `mapcar'.
6405
6406         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6407
6408         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6409         `elmo-have-link-count'. Return the fully qualified folder name.
6410
6411 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6412
6413         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6414         (elmo-shimbun-headers-cache): New internal variable.
6415         (elmo-shimbun-headers-cache-header-list): New inline function.
6416         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6417         (elmo-shimbun-headers-cache-header-hash): Ditto.
6418         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6419         (elmo-shimbun-headers-cache-last-check): Ditto.
6420         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6421         (elmo-shimbun-lapse-seconds): Ditto.
6422         (elmo-shimbun-headers-cache-check-p): Ditto.
6423         (elmo-shimbun-get-headers): New function.
6424         (elmo-folder-open-internal): Call it.
6425         (elmo-quit): Define (Clear headers-cache).
6426
6427 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6428
6429         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6430
6431         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6432         (elmo-msgdb-flist-save): Ditto.
6433
6434         * elmo-shimbun.el (elmo-folder-list-subfolders):
6435         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6436         (elmo-folder-exists-p): Ditto.
6437
6438         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6439         argument for `shimbun-header-insert'.
6440
6441 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6442
6443         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6444         at first time.
6445
6446         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6447         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6448
6449 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6450
6451         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6452         (elmo-folder-plugged-p): Define.
6453         (elmo-folder-set-plugged): Ditto.
6454         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6455         (elmo-folder-list-messages-internal): Return t if unplugged.
6456         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6457
6458         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6459         when elmo-folder-list-messages-internal method of children returns t.
6460
6461         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6462         pair is nil.
6463         (elmo-folder-open-internal): Don't update if unplugged status.
6464
6465 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6466
6467         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6468         new message.
6469
6470 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6471
6472         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6473
6474         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6475         saving.
6476
6477 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6478
6479         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6480
6481         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6482         (elmo-folder-open-internal): Set up headers slot.
6483         (elmo-folder-check): Call elmo-folder-close-internal and
6484         elmo-folder-open-internal.
6485         (elmo-folder-close-internal): Clean up headers slot.
6486
6487 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6488
6489         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6490         exactly folder list.
6491         (elmo-folder-append-messages): Fixed append archive with prefix.
6492
6493         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6494         make temp files with start-number.
6495
6496         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6497
6498 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6499
6500         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6501         argument `visible-only'.
6502         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6503         instead of `if'.
6504
6505         * elmo-pop3.el (elmo-folder-open-internal): Check
6506         `elmo-inhibit-number-mapping' is non-nil.
6507
6508         * elmo-pipe.el (elmo-folder-status): Fixed.
6509
6510 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6511
6512         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6513
6514         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6515         (elmo-folder-open-internal): Setup `header-hash' slot.
6516         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6517         information.
6518         (elmo-map-message-fetch): Ditto.
6519
6520 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6521
6522         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6523         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6524         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6525         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6526
6527         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6528
6529 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6530
6531         * sb-airs.el: Added footer.
6532
6533         * shimbun.el (shimbun-article): Define as luna-method.
6534
6535         * sb-tcup.el: New file.
6536
6537         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6538         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6539
6540 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6541
6542         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6543         (shimbun-get-headers): Ditto.
6544
6545         * elmo.el: Moved obsolete variable definitions from
6546         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6547
6548         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6549         groups.
6550
6551         * shimbun.el: New file.
6552
6553         * elmo-shimbun.el: New file.
6554
6555         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6556         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6557         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6558         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6559
6560 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6561
6562         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6563         hierarchy is t.
6564
6565 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6566
6567         * elmo.el (elmo-folder-msgdb): Define as macro.
6568         (elmo-folder-open): Added argument `load-msgdb'.
6569         (elmo-generic-folder-open): Ditto.
6570         (elmo-folder-encache): New function.
6571
6572         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6573
6574         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6575
6576         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6577         Eliminated argument FOLDER and added argument MSGDB.
6578         (elmo-dop-queue-load): Moved from elmo-dop.el.
6579         (elmo-dop-queue-save): Ditto.
6580
6581         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6582
6583         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6584
6585         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6586         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6587         (elmo-filter-folder-list-importants-internal): Ditto.
6588
6589         * elmo-map.el (elmo-folder-pack-number): Ditto.
6590
6591         * elmo-mime.el (elmo-mime-message-display): Ditto.
6592
6593         * elmo.el (elmo-generic-folder-commit): Ditto.
6594         (elmo-folder-list-unreads): Ditto.
6595         (elmo-folder-list-importants): Ditto.
6596         (elmo-generic-folder-commit): Ditto.
6597         (elmo-message-set-mark): Ditto.
6598         (elmo-generic-folder-append-msgdb): Ditto.
6599         (elmo-folder-synchronize): Ditto.
6600         (elmo-folder-messages): Ditto.
6601         (elmo-init): Call elmo-dop-queue-load.
6602         (elmo-folder-list-messages): Ditto.
6603
6604         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6605         (elmo-nntp-folder-process-crosspost): Ditto.
6606         (elmo-folder-list-unreads-internal): Ditto.
6607
6608         * elmo-dop.el: Removed old functions.
6609
6610 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6611
6612         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6613         `folder' to `msgdb'.
6614
6615 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6616
6617         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6618         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6619
6620         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6621         case-fold-search.
6622
6623 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6624
6625         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6626         defined.
6627
6628         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6629         (mmimap-parse-parameters-from-list): Define as alias for
6630         `mime-decode-parameter-plist' if it is defined as function.
6631         (mmimap-make-mime-entity): Added argument `number'.
6632         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6633         as 0.
6634         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6635
6636         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6637
6638         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6639
6640         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6641
6642 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6643
6644         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6645
6646         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6647         when elmo-imap4-default-authenticate-type is nil.
6648         (elmo-folder-list-subfolders): Ditto
6649         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6650         (elmo-imap4-fetch-callback-1-subr): Renamed from
6651         `elmo-imap4-fetch-callback-1' and define as inline function.
6652         (elmo-imap4-fetch-callback-1):
6653         Renamed from `elmo-imap4-fetch-callback'.
6654         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6655
6656         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6657         msgdb path (To keep compatibility with main trunk).
6658
6659         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6660
6661         * elmo-util.el (elmo-make-file-cache): Moved position of
6662         some macros.
6663
6664         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6665         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6666         instead of `elmo-pop3-inhibit-uidl'.
6667         (elmo-folder-exists-p): Ditto.
6668         (elmo-pop3-folder-list-messages): Ditto.
6669
6670         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6671         instead of `elmo-pop3-inhibit-uidl'.
6672         (elmo-folder-status): Ditto.
6673
6674         * elmo-dop.el (elmo-dop-folder): New variable.
6675         (elmo-dop-lock-message): Eliminated.
6676         (elmo-dop-unlock-message): Ditto.
6677         (elmo-dop-lock-list-load): Ditto.
6678         (elmo-dop-lock-list-save): Ditto.
6679         (elmo-dop-delete-folder): Ditto.
6680         (elmo-dop-rename-folder): Ditto.
6681
6682         * elmo.el: Removed incomplete commentary.
6683
6684 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6685
6686         * elmo.el (toplevel): Require 'elmo-version first;
6687         for little `recursive-load-depth' settings.
6688         Fix "ends here" comment.
6689
6690 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6691
6692         * elmo-util.el (toplevel): Require 'poem;
6693         Some functions are moved from elmo-cache.el.
6694
6695         * elmo-net.el (toplevel): Require 'elmo-cache.
6696
6697         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6698
6699         * elmo.el (toplevel): Ditto.
6700
6701         * elmo-cache.el: Rewrite with luna;
6702         Some functions are moved to elmo-util.el.
6703
6704         * elmo-internal.el (elmo-internal-folder-list): New variable.
6705         (elmo-internal-folder-initialize): Rewrite.
6706         (elmo-folder-list-subfolders): Ditto.
6707
6708         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6709         (elmo-cache-collect-sub-directories): Ditto.
6710
6711 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6712
6713         * elmo-version.el (elmo-version): Up to 2.5.8.
6714
6715         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6716
6717         * elmo-util.el (elmo-list-insert): New function.
6718
6719 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6720
6721         * elmo.el (elmo-init): New function.
6722         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6723
6724         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6725         (Renamed from `elmo-localdir-header-chop-length').
6726
6727         * elmo-pop3.el (elmo-pop3-use-cache,
6728         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6729
6730         * elmo-nntp.el (elmo-message-fetch): Define.
6731         (elmo-message-fetch-unplugged): Ditto.
6732         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6733         (elmo-nntp-use-cache): Ditto.
6734         (elmo-nntp-max-number-precedes-list-active): Ditto.
6735
6736         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6737
6738         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6739         `elmo-msgdb-insert-file-header'.
6740         Use `elmo-msgdb-file-header-chop-length'.
6741
6742         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6743         `elmo-vars.el'.
6744
6745         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6746         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6747         `elmo-msgdb-insert-file-header'.
6748
6749         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6750         Use new variable;
6751         Define obsolete variables with `elmo-define-obsolete-variable',
6752
6753         * elmo-util.el (elmo-warning-buffer-name): New constant.
6754         (elmo-warning): New function.
6755         (elmo-obsolete-variable-alist): New variable.
6756         (elmo-obsolete-variable-show-warnings): New variable.
6757         (elmo-define-obsolete-variable): New function.
6758         (elmo-resque-obsolete-variable): Ditto.
6759         (elmo-resque-obsolete-variables): Ditto.
6760
6761 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6762
6763         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6764         Eliminated.
6765
6766         * elmo-pop3.el, elmo-nntp.el: Use custom.
6767
6768 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6769
6770         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6771         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6772
6773 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6774
6775         * Luna-fy Kenichi OKADA's following changes.
6776         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6777         `nohide'.
6778         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6779
6780 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6781
6782         * elmo-util.el (elmo-display-progress): Prefer
6783         `progress-feedback-with-label' to `lprogress-display'.
6784
6785 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6786
6787         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6788
6789 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6790
6791         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6792         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6793         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6794         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6795         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6796         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6797         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6798         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6799         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6800         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6801         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6802         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6803         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6804
6805 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6806
6807         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6808         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6809
6810 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6811
6812         * elmo.el (elmo-folder-process-crosspost): New generic method.
6813         (elmo-folder-writable-p): Ditto.
6814         (elmo-folder-message-appendable-p): Eliminated.
6815         (elmo-generic-folder-append-msgdb): Rewrite.
6816         (elmo-newsgroups-hashtb): New internal variable.
6817         (elmo-crosspost-message-set): Eliminated.
6818         (elmo-crosspost-message-delete): Ditto.
6819         (elmo-setup-subscribed-newsgroups): New function.
6820         (elmo-crosspost-message-alist-modified): New internal variable.
6821         (elmo-crosspost-message-alist-load): New function (Renamed from
6822         `wl-crosspost-alist-load').
6823         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6824         `wl-crosspost-alist-save').
6825
6826         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6827
6828         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6829         `unreads'.
6830         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6831         elmo-newsgroups-hashtb).
6832         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6833         `elmo-nntp-folder-update-crosspost-message-alist'.
6834         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6835         `elmo-nntp-groups-hashtb'.
6836         (elmo-nntp-make-groups-hashtb): Eliminated.
6837         (elmo-nntp-parse-newsgroups): New function (Renamed from
6838         `wl-parse-newsgroups').
6839         (elmo-folder-creatable-p, elmo-folder-writable-p,
6840         elmo-folder-close-internal, elmo-folder-mark-as-read,
6841         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6842         Define.
6843         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6844
6845         * elmo-net.el (elmo-message-fetch): Check buffer size.
6846
6847         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6848
6849         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6850
6851         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6852         before `close' command.
6853
6854         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6855         `mark-alist' (All other related portions are changed).
6856
6857 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6858
6859         * elmo-util.el (elmo-create-hash-size): Eliminated.
6860         (elmo-make-hash) Make a hash with `one less than a power of two'
6861         length.
6862
6863         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6864         (elmo-hash-maximum-size): Changed value.
6865
6866 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6867
6868         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6869         (elmo-mime-message-display-as-is): Ditto.
6870
6871 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6872
6873         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6874         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6875
6876 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6877
6878         * elmo-mark.el: New file.
6879
6880         * elmo-internal.el: Rewrite (Almost empty).
6881
6882 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6883
6884         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6885         (mime-imap-entity-header-string): Ditto.
6886         (mmimap-entity-section): Rewrite.
6887
6888 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6889
6890         * elmo-nmz.el: New file.
6891
6892         * elmo-pipe.el: Rewrite with luna.
6893
6894 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6895
6896         * elmo-archive.el: Rewrite with luna.
6897
6898         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6899         (elmo-folder-list-importants-internal): Ditto.
6900
6901 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6902
6903         * elmo-archive.el (elmo-archive-version): Abolish.
6904         (toplevel) Removed `boso' comment.
6905
6906 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6907
6908         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6909         elmo-msgdb-add-msgs-to-seen-list-subr;
6910         Changed argument seen-marks to unread-marks.
6911
6912         * elmo-nntp.el: Rewrite with luna.
6913
6914 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6915
6916         * elmo-filter.el: Rewrite with luna.
6917
6918 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6919
6920         * elmo-pop3.el: Rewrite with luna.
6921
6922 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6923
6924         * elmo-multi.el: Rewrite with luna.
6925
6926         * elmo-vars.el (elmo-use-killed-list): Abolish.
6927         All other related portions are changed.
6928         (elmo-filename-replace-string-alist): Renamed from
6929         elmo-msgid-replace-string-alist.
6930
6931 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6932
6933         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6934
6935         * elmo-map.el: New file.
6936         * elmo-maildir.el: Rewrite with luna.
6937
6938 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6939
6940         * elmo.el: Changed meaning of `elmo-folder-commit'.
6941         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6942
6943 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6944
6945         * elmo.el (elmo-folder-append-buffer): New function.
6946         (Renamed from `elmo-append-msg')
6947
6948 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6949
6950         * elmo-mime.el: New file.
6951
6952 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6953
6954         * elmo-cache.el: Rewrite.
6955
6956 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6957
6958         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6959
6960 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6961
6962         * elmo-vars.el (elmo): New group.
6963         (elmo-strict-diff-folder-regexp): New variable.
6964
6965         * elmo-util.el (elmo-call-func): Abolish.
6966         (elmo-folder-get-type): Ditto.
6967         (elmo-*-get-spec): Ditto.
6968         (elmo-*-spec-*): Ditto.
6969         (elmo-imap4-identical-name-space-p): Ditto.
6970         (elmo-folder-identical-system-p): Ditto.
6971         (elmo-folder-direct-copy-alist): Ditto.
6972         (elmo-folder-direct-copy-p): Ditto.
6973
6974         * elmo-pipe.el (elmo-pipe-folder): New luna class.
6975         (elmo-folder-initialize): Define.
6976         (elmo-folder-get-primitive-list): Ditto.
6977
6978         * elmo-nntp.el (elmo-nntp-folder): New luna class.
6979         (elmo-folder-initialize): Define.
6980         Renamed `elmo-network-session-host-internal' to
6981         `elmo-network-session-server-internal'.
6982
6983         * elmo-multi.el (elmo-multi-folder): New luna class.
6984         (elmo-folder-initialize): Define.
6985         (elmo-folder-get-primitive-list): Ditto.
6986         (elmo-folder-contains-type): Ditto.
6987         (elmo-message-use-cache-p): Ditto.
6988
6989         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6990         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6991
6992         * elmo-maildir.el (elmo-maildir-folder): New luna class.
6993         (elmo-folder-initialize): Define.
6994
6995         * elmo-filter.el (elmo-filter-folder): New luna class.
6996         (elmo-folder-initialize): Define.
6997         (elmo-folder-get-primitive-list): Ditto.
6998         (elmo-folder-contains-type): Ditto.
6999
7000 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7001
7002         * elmo-imap4.el: Rewrite with luna.
7003
7004         * mmimap.el: New file.
7005
7006         * mmelmo.el, mmelmo-imap4.el: Removed.
7007
7008         * elmo-net.el: Ditto.
7009
7010         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7011         (elmo-folder-initialize): Define.
7012
7013         * elmo-archive.el (elmo-archive-folder): New luna class.
7014         (elmo-folder-initialize): Define.
7015
7016         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7017         `elmo-folder-msgdb-path'.
7018         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7019         `elmo-make-folder'.
7020
7021 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7022
7023         * elmo.el: New file.
7024
7025         * elmo2.el: Renamed to elmo.el.
7026
7027 \f
7028 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7029
7030         * elmo-cache.el (elmo-cache-expire-by-size): Count
7031         a disk usage for a cache file entry in KB even when
7032         its kind is a directory.
7033
7034 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7035
7036         * elmo-version.el (elmo-version): Up to 2.5.7.
7037
7038 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7039
7040         * elmo-version.el (elmo-version): Up to 2.5.6.
7041
7042 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7043
7044         * elmo-version.el (elmo-version): Up to 2.5.5.
7045
7046 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7047
7048         * elmo-imap4.el (elmo-network-authenticate-session):
7049         Fixed a logic for response checking.
7050
7051 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7052
7053         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7054         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7055         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7056         `sasl-mechanisms'.
7057
7058         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7059         for `starttls-open-stream' and `starttls-negotiate'.
7060
7061         * elmo-nntp.el: Remove autoload settings for
7062         `starttls-open-stream' and `starttls-negotiate'.
7063
7064         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7065         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7066         `luna-define-class' with `eval-and-compile'.
7067
7068 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7069
7070         * elmo-util.el (elmo-read-search-condition-internal):
7071         Require an element of table for searching field.
7072
7073 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7074
7075         * elmo-version.el (elmo-version): Up to 2.5.4.
7076
7077 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7078
7079         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7080
7081 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7082
7083         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7084
7085 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7086
7087         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7088         before greeting.
7089
7090 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7091
7092         * elmo-imap4.el (elmo-imap4-delete-folder):
7093         Send "close" before "delete" (Use commented out line).
7094         (elmo-imap4-rename-folder): Ditto.
7095
7096         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7097         folder string itself.
7098         (elmo-dop-list-deleted): New function.
7099         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7100         killed.
7101
7102         * elmo-util.el (elmo-string-rassoc-all): New function.
7103
7104 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7105
7106         * elmo-version.el (elmo-version): Up to 2.5.3.
7107
7108         * elmo-net.el (elmo-network-get-session): Changed logic for
7109         checking process status.
7110
7111         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7112         process is nil;
7113         Changed logic for checking process status.
7114
7115 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7116
7117         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7118         before greeting.
7119         (elmo-network-setup-session): Set UIDL hash size according to
7120         the length of list response.
7121         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7122         according to the length of list response;
7123         Return the length of list response.
7124         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7125
7126 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7127
7128         * elmo-imap4.el (toplevel): Require 'ssl.
7129         Add autoload 'starttls.
7130         * elmo-pop3.el (toplevel): Ditto.
7131         * elmo-nntp.el (toplevel): Ditto.
7132
7133 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7134
7135         * elmo-imap4.el (toplevel): defun at compile time.
7136         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7137         sasl-next-step, sasl-step-data, sasl-step-set-data.
7138         * elmo-pop3.el (toplevel): Ditto.
7139
7140 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7141
7142         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7143
7144 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7145
7146         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7147         if error.
7148         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7149         and `elmo-pop-auth-apop'.
7150
7151 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7152
7153         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7154
7155 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7156
7157         * elmo-pop3.el (elmo-network-authenticate-session): Split
7158         encoded response value.
7159
7160 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7161
7162         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7163         `elmo-pop3-force-login'.
7164         Redefine `sasl-mechanisms'.
7165         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7166
7167 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7168
7169         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7170         Delete `elmo-imap4-authenticator-alist'.
7171         (elmo-imap4-auth-cram-md5): Delete.
7172         (elmo-imap4-auth-digest-md5): Delete.
7173
7174 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7175
7176         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7177         (elmo-pop3-auth-scram-md5): Ditto.
7178         (elmo-pop3-auth-cram-md5): Ditto.
7179
7180 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7181
7182         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7183         Delete `elmo-pop3-authenticator-alist'.
7184
7185 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7186
7187         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7188         new SASL API.
7189         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7190
7191 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7192
7193         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7194
7195 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7196
7197         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7198         Fixed problem when `elmo-pop3-use-uidl' is nil.
7199         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7200
7201 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7202
7203         * elmo-version.el (elmo-version): Up to 2.5.2.
7204
7205 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7206
7207         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7208         New function.
7209         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7210         (elmo-pop3-msgdb-create-as-numlist): Use it.
7211
7212         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7213         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7214
7215         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7216         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7217
7218 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7219
7220         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7221         when elmo-mark-as-read is called with second argument nil.
7222
7223 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7224
7225         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7226         Moved to elmo-util.el.
7227
7228         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7229         Moved from elmo-pipe.el
7230
7231         * elmo-archive.el (elmo-archive-call-process): Enclose with
7232         static-if.
7233
7234         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7235         "RFC822" (because RFC822.PEEK is obsolete).
7236         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7237
7238 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7239
7240         * elmo-archive.el (elmo-archive-call-process): Don't check for
7241         the exit status when Nemacs is running.
7242
7243 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7244
7245         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7246         'plain.
7247
7248         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7249         (elmo-pop3-get-spec): Set default of auth to 'user.
7250
7251         * elmo-imap4.el (elmo-imap4-session-check):
7252         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7253         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7254         (elmo-imap4-auth-login): New function; Revival.
7255         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7256         `elmo-imap4-auth-login'.
7257
7258 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7259
7260         * elmo2.el (toplevel): Move `product-provide' declare.
7261         * mmelmo.el (toplevel): Ditto.
7262
7263 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7264
7265         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7266
7267 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7268
7269         * elmo-util.el (elmo-folder-get-store-type): New function.
7270         (elmo-folder-direct-copy-p): Use it.
7271
7272 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7273
7274         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7275         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7276         and result of `elmo-imap4-use-flag-p'.
7277         (elmo-imap4-fetch-callback-1): Set mark according to
7278         the result of `elmo-imap4-use-flag-p'.
7279
7280 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7281
7282         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7283         (elmo-generic-list-folder-unread): Ditto.
7284         (elmo-folder-get-info): Ditto.
7285         (elmo-folder-set-info-max-by-numdb): Ditto.
7286         (elmo-folder-get-info-max): Ditto.
7287         (elmo-folder-get-info-length): Ditto.
7288         (elmo-folder-get-info-unread): Ditto.
7289         (elmo-folder-info-make-hashtb): Ditto.
7290
7291         * elmo2.el: Removed above functions.
7292
7293 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7294
7295         * elmo-imap4.el (toplevel): Require 'ssl.
7296         Add autoload 'starttls.
7297         * elmo-pop3.el (toplevel): Ditto.
7298         * elmo-nntp.el (toplevel): Ditto.
7299
7300 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7301
7302         * elmo-imap4.el (toplevel): defun at compile time.
7303         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7304         sasl-next-step, sasl-step-data, sasl-step-set-data.
7305         * elmo-pop3.el (toplevel): Ditto.
7306
7307 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7308
7309         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7310
7311 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7312
7313         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7314         if error.
7315         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7316         and `elmo-pop-auth-apop'.
7317
7318 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7319
7320         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7321
7322 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7323
7324         * elmo-pop3.el (elmo-network-authenticate-session): Split
7325         encoded response value.
7326
7327 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7328
7329         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7330         `elmo-pop3-force-login'.
7331         Redefine `sasl-mechanisms'.
7332         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7333
7334 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7335
7336         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7337         Delete `elmo-imap4-authenticator-alist'.
7338         (elmo-imap4-auth-cram-md5): Delete.
7339         (elmo-imap4-auth-digest-md5): Delete.
7340
7341 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7342
7343         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7344         (elmo-pop3-auth-scram-md5): Ditto.
7345         (elmo-pop3-auth-cram-md5): Ditto.
7346
7347 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7348
7349         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7350         Delete `elmo-pop3-authenticator-alist'.
7351
7352 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7353
7354         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7355         new SASL API.
7356         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7357
7358 \f
7359 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7360
7361         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7362
7363 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7364
7365         * elmo-nntp.el (elmo-nntp-get-folders-info):
7366         Fixed problem when '\' character is contained in user-id.
7367         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7368
7369 \f
7370 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7371
7372         * elmo-imap4.el (elmo-imap4-delete-folder):
7373         Send "close" before "delete" (Use commented out line).
7374         (elmo-imap4-rename-folder): Ditto.
7375
7376         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7377         folder string itself.
7378         (elmo-dop-list-deleted): New function.
7379         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7380         killed.
7381
7382         * elmo-util.el (elmo-string-rassoc-all): New function.
7383
7384         * elmo-version.el (elmo-version): Up to 2.5.1.
7385
7386 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7387
7388         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7389
7390         * elmo-internal.el (elmo-internal-search): Fix last change.
7391
7392 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7393
7394         * elmo-internal.el (elmo-internal-search): Rewrite.
7395         (Fixed problem which is pointed out by Akihiro MOTOKI
7396         <motoki@da.jp.nec.com>)
7397
7398         * elmo-version.el (elmo-version): Up to 2.5.0.
7399
7400 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7401
7402         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7403
7404 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7405
7406         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7407         non-nil, make hierarchy.
7408
7409 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7410
7411         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7412         `elmo-pop3-use-uidl' must be bound to nil.
7413         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7414
7415 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7416
7417         * elmo-util.el (elmo-copy-file): Don't cause an error after
7418         `add-name-to-file' failed.
7419
7420         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7421         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7422
7423 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7424
7425         * elmo-version.el (elmo-version): Up to 2.3.93.
7426
7427 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7428
7429         * elmo-util.el (elmo-flatten): New function.
7430
7431 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7432
7433         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7434         sync Author header.
7435         * elmo-cache.el (toplevel): Ditto.
7436         * elmo-database.el (toplevel): Ditto.
7437         * elmo-date.el (toplevel): Ditto.
7438         * elmo-dop.el (toplevel): Ditto.
7439         * elmo-filter.el (toplevel): Ditto.
7440         * elmo-imap4.el (toplevel): Ditto.
7441         * elmo-internal.el (toplevel): Ditto.
7442         * elmo-localdir.el (toplevel): Ditto.
7443         * elmo-localnews.el (toplevel): Ditto.
7444         * elmo-maildir.el (toplevel): Ditto.
7445         * elmo-msgdb.el (toplevel): Ditto.
7446         * elmo-multi.el (toplevel): Ditto.
7447         * elmo-net.el (toplevel): Ditto.
7448         * elmo-nntp.el (toplevel): Ditto.
7449         * elmo-pipe.el (toplevel): Ditto.
7450         * elmo-pop3.el (toplevel): Ditto.
7451         * elmo-util.el (toplevel): Ditto.
7452         * elmo-vars.el (toplevel): Ditto.
7453         * elmo2.el (toplevel): Ditto.
7454         * mmelmo-imap4.el (toplevel): Ditto.
7455         * mmelmo.el (toplevel): Ditto.
7456
7457         * elmo-version.el (elmo-version): Move to top.
7458
7459         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7460         * elmo-imap4.el (toplevel): Ditto.
7461         * elmo-localdir.el (toplevel): Ditto.
7462         * elmo-msgdb.el (toplevel): Ditto.
7463         * elmo-nntp.el (toplevel): Ditto.
7464         * elmo-pop3.el (toplevel): Ditto.
7465         * elmo-version.el (toplevel): Ditto.
7466
7467         * elmo-localnews.el (toplevel): Added Keyword header.
7468
7469 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7470
7471         * elmo-version.el (product-version-as-string): Defined using
7472         `defun-maybe'.
7473         (toplevel): Use it.
7474
7475         * elmo-localdir.el (toplevel): Updated copyright notice.
7476         * elmo-version.el (toplevel): Ditto.
7477         * elmo-msgdb.el (toplevel): Ditto.
7478         * elmo-imap4.el (toplevel): Ditto.
7479         * elmo-nntp.el (toplevel): Ditto.
7480         * elmo-pop3.el (toplevel): Ditto.
7481
7482 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7483
7484         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7485         messages.
7486
7487         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7488         parameter value (It sometimes contains raw kanji).
7489
7490 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7491
7492         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7493         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7494
7495 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7496
7497         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7498
7499 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7500
7501         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7502         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7503
7504 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7505
7506         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7507         value if selecting folder succceeded.
7508         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7509
7510 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7511
7512         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7513         representation.
7514
7515         * elmo-util.el (elmo-string-matched-member): New function.
7516
7517 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7518
7519         * elmo-util.el (elmo-unintern): New macro.
7520         (elmo-number-set-member): Fixed docstring.
7521
7522         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7523         tag token.
7524
7525 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7526
7527         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7528         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7529
7530 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7531
7532         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7533         `no-error'.
7534         Added docstring.
7535         Return non-nil if selecting folder succeeded.
7536         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7537
7538 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7539
7540         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7541         `file-name-completion' returns t.
7542         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7543         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7544         directory if it does not exist.
7545         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7546         for iteration.
7547
7548 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7549
7550         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7551         enclosure (It's harmful in unplugged status).
7552
7553         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7554
7555         * mmelmo-1.el: Removed.
7556
7557         * mmelmo-2.el: Ditto.
7558
7559         * mmelmo-imap4-1.el: Ditto.
7560
7561         * mmelmo-imap4-2.el: Ditto.
7562
7563         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7564
7565         * mmelmo.el: Merged mmelmo-2.el.
7566
7567         * elmo-version.el (elmo-version): Up to 2.3.92.
7568
7569 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7570
7571         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7572         elmo-update-number): Remove last period in "...done." message.
7573         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7574         Ditto.
7575         * elmo-cache.el (elmo-cache-expire-by-size,
7576         elmo-cache-get-sorted-cache-file-list,
7577         elmo-cache-msgdb-create-as-numlist): Ditto.
7578         * elmo-dop.el (elmo-dop-save-pending-messages,
7579         (elmo-dop-flush-pending-append-operations): Ditto.
7580         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7581         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7582         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7583         (elmo-localdir-pack-number): Ditto.
7584         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7585         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7586         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7587         mime-write-entity-content): Ditto.
7588         * pldap.el (ldap-search-basic): Ditto.
7589
7590 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7591
7592         * elmo-version.el (elmo-version): Up to 2.3.91.
7593
7594         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7595         Only when filter is 'last'.
7596
7597         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7598         (elmo-condition-parse-search-value): Use it.
7599         (elmo-read-search-condition-internal): Quote value only when
7600         it is not an atom.
7601
7602 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7603
7604         * elmo2.el (elmo-generic-folder-diff): Fix.
7605
7606 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7607
7608         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7609         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7610         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7611         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7612         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7613         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7614
7615 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7616
7617         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7618         extra-fields.
7619
7620 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7621
7622         * elmo-version.el (elmo-version): Up to 2.3.90.
7623
7624         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7625         (elmo-imap4-list-folder-important): Ditto.
7626
7627 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7628
7629         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7630
7631 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7632
7633         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7634
7635 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7636
7637         * elmo-nntp.el (elmo-network-initialize-session):
7638         Add starttls negotiation.
7639
7640 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7641
7642         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7643         response.
7644         (elmo-network-setup-session): Define.
7645         Call `elmo-nntp-send-mode-reader' when session opened.
7646
7647 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7648
7649         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7650
7651 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7652
7653         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7654         an invalid SPACE character ahead of `SEARCH' command.  Move
7655         a valid SPACE character following `SEARCH' from conditional
7656         `format' arguments to control-strings.
7657
7658 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7659
7660         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7661         was succeeded.
7662
7663         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7664
7665 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7666
7667         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7668         `w32-get-true-file-link-count' as t.
7669
7670         * elmo-imap4.el (elmo-imap4-read): Abolished.
7671         (Renamed to `elmo-read' and moved to elmo-util.el)
7672         All other related portions are changed.
7673
7674         * elmo-util.el (elmo-read): New function.
7675         (elmo-condition-parse-search-value): Use it.
7676
7677 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7678
7679         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7680
7681         * elmo-nntp.el (elmo-nntp-session): Define.
7682         (elmo-nntp-setting): Abolished.
7683         All other related portions are changed.
7684         (elmo-nntp-get-server-command): Changed argument.
7685         (elmo-nntp-set-server-command): Ditto.
7686         (elmo-nntp-xover-p): Ditto.
7687         (elmo-nntp-set-xover): Ditto.
7688         (elmo-nntp-listgroup-p): Ditto.
7689         (elmo-nntp-set-listgroup): Ditto.
7690         (elmo-nntp-list-active-p): Ditto.
7691         (elmo-nntp-set-list-active): Ditto.
7692         (elmo-nntp-xhdr-p): Ditto.
7693         (elmo-nntp-set-xhdr): Ditto.
7694         (elmo-nntp-flush-connection): Abolished.
7695         (elmo-nntp-get-connection): Abolished.
7696         (elmo-nntp-get-session): New function.
7697         (elmo-network-initialize-session): Defined.
7698         (elmo-network-authenticate-session): Ditto.
7699         (elmo-nntp-send-mode-reader): Changed argument.
7700         (elmo-nntp-send-command): Changed argument.
7701         All other related portions are changed.
7702         (elmo-nntp-read-response): Ditto.
7703         (elmo-nntp-read-raw-response): Ditto.
7704         (elmo-nntp-read-contents): Ditto.
7705         (elmo-nntp-read-body): Ditto.
7706         (elmo-nntp-goto-folder): Abolished.
7707         (elmo-nntp-select-group): New function.
7708         All other related portions are changed.
7709         (This function substitutes `elmo-nntp-goto-folder')
7710         (elmo-nntp-msgdb-create-by-header): Rewrite.
7711         (elmo-nntp-get-overview): Eliminated.
7712         (elmo-nntp-get-message): Ditto.
7713         (elmo-nntp-open-connection) Abolished.
7714         (elmo-nntp-read-msg): Rewrite.
7715         (elmo-nntp-post): Ditto.
7716         (elmo-nntp-send-data): Abolished.
7717         (elmo-nntp-send-buffer): New function.
7718         (elmo-nntp-send-data-line): Define as inline function.
7719         (elmo-nntp-get-folders-info-prepare): Use session as key.
7720         (elmo-nntp-groups-read-response): Changed argument.
7721         (elmo-nntp-retrieve-headers): Ditto.
7722         (elmo-nntp-msgdb-create-message): Ditto.
7723
7724         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7725         when searching by 'since' or 'before'.
7726
7727 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7728
7729         * elmo-version.el (toplevel): Use product-version-as-string for set
7730         verstion-string, if defined.
7731
7732 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7733
7734         * elmo-util.el: Doc fixes.
7735
7736 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7737
7738         * elmo-archive.el (toplevel): Use product-provide.
7739         * elmo-cache.el (toplevel): Ditto.
7740         * elmo-database.el (toplevel): Ditto.
7741         * elmo-date.el (toplevel): Ditto.
7742         * elmo-dop.el (toplevel): Ditto.
7743         * elmo-filter.el (toplevel): Ditto.
7744         * elmo-imap4.el (toplevel): Ditto.
7745         * elmo-internal.el (toplevel): Ditto.
7746         * elmo-localdir.el (toplevel): Ditto.
7747         * elmo-localnews.el (toplevel): Ditto.
7748         * elmo-maildir.el (toplevel): Ditto.
7749         * elmo-msgdb.el (toplevel): Ditto.
7750         * elmo-multi.el (toplevel): Ditto.
7751         * elmo-net.el (toplevel): Ditto.
7752         * elmo-nntp.el (toplevel): Ditto.
7753         * elmo-pipe.el (toplevel): Ditto.
7754         * elmo-pop3.el (toplevel): Ditto.
7755         * elmo-util.el (toplevel): Ditto.
7756         * elmo-vars.el (toplevel): Ditto.
7757         * elmo2.el (toplevel): Ditto.
7758         * mmelmo-1.el (toplevel): Ditto.
7759         * mmelmo-2.el (toplevel): Ditto.
7760         * mmelmo-imap4-1.el (toplevel): Ditto.
7761         * mmelmo-imap4-2.el (toplevel): Ditto.
7762         * mmelmo-imap4.el (toplevel): Ditto.
7763         * mmelmo.el (toplevel): Ditto.
7764
7765 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7766
7767         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7768         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7769
7770 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7771
7772         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7773         before splitting.
7774         (elmo-multi-split-number-alist): Ditto.
7775
7776 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7777
7778         * elmo-version.el: New file.  Use product.el.
7779         * elmo2.el: Add (require 'elmo-version).
7780         * elmo-vars.el (elmo-appname, elmo-version): Move to
7781         elmo-version.el
7782
7783 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7784
7785         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7786         `elmo-msgdb-expand-path'.
7787         (elmo-msgdb-load): Ditto.
7788         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7789         (elmo-generic-list-folder-unread): Rewrite.
7790         (elmo-generic-list-folder-important): Changed argument.
7791         (elmo-list-folder-unread): Ditto.
7792         (elmo-list-folder-important): Ditto.
7793         (elmo-folder-diff): Rewrite.
7794         (elmo-generic-folder-diff): New function.
7795         (elmo-multi-get-number-alist-list): Abolished
7796         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7797         (elmo-multi-folder-diff): Moved to elmo-multi.el
7798         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7799
7800         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7801         `elmo-msgdb-expand-path'.
7802         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7803         (elmo-pop3-read-msg): Ditto.
7804         (elmo-pop3-delete-msgs): Ditto.
7805         (elmo-pop3-folder-diff): New alias.
7806
7807         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7808         `elmo-msgdb-expand-path'.
7809         (elmo-pipe-list-folder-unread): Changed arguments.
7810         (elmo-pipe-list-folder-important): Ditto.
7811         (elmo-pipe-folder-diff): New alias.
7812
7813         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7814         `elmo-msgdb-expand-path'.
7815         (elmo-nntp-max-of-folder): Ditto.
7816         (elmo-nntp-msgdb-create): Ditto.
7817         (elmo-nntp-delete-msgs): Ditto.
7818         (elmo-nntp-folder-diff): New alias.
7819
7820         * elmo-multi.el (elmo-multi-folder-diff): New function.
7821         (elmo-multi-split-mark-alist): Ditto.
7822         (elmo-multi-split-number-alist): Ditto.
7823         (elmo-multi-mark-alist-list): Abolished (Renamed to
7824         elmo-multi-split-mark-alist).
7825         (elmo-multi-list-folder-unread): Rewrite.
7826         (elmo-multi-list-folder-important): Ditto.
7827         (elmo-multi-list-folder): Set `spec' as 1st argument for
7828         `elmo-msgdb-expand-path'.
7829         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7830         instead of `elmo-multi-get-number-alist-list'.
7831
7832         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7833         If 1st argument is not string, treat as spec.
7834         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7835         `elmo-msgdb-expand-path'.
7836         (elmo-msgdb-flist-load): Ditto.
7837         (elmo-msgdb-flist-save): Ditto.
7838         (elmo-msgdb-delete-path): Ditto.
7839         (elmo-msgdb-rename-path): Ditto.
7840
7841         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7842         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7843         (elmo-maildir-delete-mark-msgs): Ditto.
7844         (elmo-maildir-msgdb-create): Ditto.
7845         (elmo-maildir-read-msg): Ditto.
7846         (elmo-maildir-delete-msgs): Ditto.
7847         (elmo-maildir-list-folder-subr): Ditto.
7848         (elmo-maildir-search): Ditto.
7849         (elmo-maildir-get-msg-filename): Ditto.
7850         (elmo-maildir-pack-number): Ditto.
7851         (elmo-maildir-folder-diff): New alias.
7852
7853         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7854
7855         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7856         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7857         (elmo-localdir-folder-diff): New alias.
7858
7859         * elmo-internal.el (elmo-internal-list-folder-subr):
7860         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7861         (elmo-internal-list-folder-by-location): Ditto.
7862         (elmo-internal-msgdb-create): Ditto.
7863         (elmo-internal-delete-msgs): Ditto.
7864         (elmo-internal-read-msg): Ditto.
7865         (elmo-internal-folder-diff): New alias.
7866
7867         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7868         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7869         `elmo-msgdb-expand-path'.
7870         (elmo-imap4-list-folder-unread): Changed arguments.
7871         (elmo-imap4-list-folder-important): Ditto.
7872
7873         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7874         (elmo-filter-list-folder-important): Ditto.
7875         (elmo-filter-folder-diff): New function.
7876
7877         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7878
7879         * elmo-cache.el (elmo-cache-list-folder):
7880         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7881         (elmo-cache-copy-msgs): Ditto.
7882         (elmo-cache-folder-diff): New alias.
7883
7884         * elmo-archive.el (elmo-archive-list-folder-subr):
7885         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7886         (elmo-archive-get-archive-name): Ditto.
7887         (elmo-archive-create-file): Ditto.
7888         (elmo-archive-append-msg): Ditto.
7889         (elmo-archive-copy-msgs): Ditto.
7890         (elmo-archive-copy-msgs-froms): Ditto.
7891         (elmo-archive-get-msg-filename): Ditto.
7892         (elmo-archive-folder-diff): New alias.
7893
7894 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7895
7896         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7897         (elmo-pop3-stream-type-alist): New variable.
7898         (elmo-nntp-stream-type-alist): New variable.
7899
7900         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7901         (elmo-kill-buffer): Ditto.
7902         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7903         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7904         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7905         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7906         (elmo-imap4-get-spec): Take into account
7907         `elmo-imap4-stream-type-alist'.
7908
7909 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7910
7911         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7912         (elmo-nntp-list-folders-get-cache): Ditto.
7913
7914 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7915
7916         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7917         character before 'uid'.
7918
7919 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7920
7921         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7922
7923         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7924
7925         * elmo-util.el (elmo-number-set-member): New function.
7926         (elmo-number-set-append-list): Ditto.
7927         (elmo-number-set-append): Ditto.
7928
7929         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7930         Use `elmo-number-set-member'.
7931         (elmo-living-messages): Ditto.
7932         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7933         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7934
7935         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7936         (elmo-imap4-add-to-cont-list): Abolished.
7937         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7938         instead of elmo-imap4-add-to-cont-list.
7939
7940         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7941         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7942
7943         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7944
7945 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7946
7947         * elmo-util.el (elmo-condition-parse-search-value):
7948         Fixed date parsing.
7949
7950 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7951
7952         * elmo-util.el (elmo-condition-find-key-internal): New function.
7953         (elmo-condition-find-key): Ditto.
7954
7955         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7956         (elmo-msgdb-search-internal): Ditto.
7957         (elmo-msgdb-search): Ditto.
7958
7959 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7960
7961         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7962         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7963
7964         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7965         (elmo-nntp-search-primitive): Fixed problem when condition is
7966         'unmatch'.
7967
7968         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7969
7970         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7971         (elmo-nntp-xhdr-p): New macro.
7972         (elmo-nntp-set-xhdr): Ditto.
7973         (elmo-nntp-parse-xhdr-response): New function.
7974         (elmo-nntp-retrieve-field): Ditto.
7975         (elmo-nntp-search-primitive): Ditto.
7976         (elmo-nntp-search): Implemented.
7977
7978         * elmo-date.el (elmo-date-make-sortable-string): New macro.
7979
7980         * elmo-archive.el (elmo-archive-search): Set all number list to
7981         `elmo-archive-field-condition-match'
7982
7983         * elmo-localdir.el (elmo-localdir-search): Likewise.
7984
7985         * elmo-maildir.el (elmo-maildir-search): Likewise.
7986
7987 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
7988
7989         * elmo-msgdb.el (elmo-living-messages): New function.
7990         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7991         * elmo-cache.el (elmo-cache-list-folder): Ditto.
7992         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7993         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7994         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7995         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7996         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7997         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7998         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7999         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8000         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8001
8002 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8003
8004         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8005
8006         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8007
8008         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8009
8010         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8011         arguments for `SEARCH' command.
8012         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8013         All other related portions are changed.
8014
8015         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8016
8017         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8018         (elmo-list-folder-unread): Rewrite.
8019         (elmo-list-folder-important): Ditto.
8020
8021         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8022         (elmo-condition-parse-error): New inline function.
8023         (elmo-read-search-condition): New function.
8024         (elmo-read-search-condition-internal): Ditto.
8025         (elmo-parse-search-condition): Rewrite.
8026         (elmo-condition-parse): New function.
8027         (elmo-condition-parse-or-expr): Ditto.
8028         (elmo-condition-parse-and-expr): Ditto.
8029         (elmo-condition-parse-primitive): Ditto.
8030         (elmo-condition-parse-search-value): Ditto.
8031         (elmo-buffer-field-primitive-condition-match): Ditto.
8032         (elmo-buffer-field-condition-match): Rewrite.
8033         (elmo-file-field-condition-match): Ditto.
8034
8035         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8036         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8037
8038         * elmo-internal.el (elmo-internal-search): Set `number' and
8039         `number-list' argument of `elmo-file-field-condition-match'.
8040
8041         * elmo-maildir.el (elmo-maildir-search): Ditto.
8042
8043         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8044         `msgdb' as argument instead of `mark-alist'.
8045         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8046         `overview'.
8047
8048         * elmo-multi.el: Likewise.
8049
8050         * elmo-pipe.el: Likewise.
8051
8052         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8053         (elmo-imap4-search-internal): Rewrite.
8054         (elmo-imap4-search): Ditto.
8055
8056         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8057         (elmo-filter-list-folder-unread): Ditto.
8058         (elmo-filter-list-folder-important): Ditto.
8059         (elmo-filter-search): Rewrite.
8060
8061         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8062         `number-list' argument of `elmo-file-field-condition-match'.
8063         (elmo-cache-search): Ditto.
8064
8065         * elmo-localdir.el: Likewise.
8066
8067         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8068         number-list and pass it to `elmo-buffer-field-condition-match'.
8069         (elmo-archive-field-condition-match): Pass `number-list' to
8070         `elmo-archive-field-condition-match'
8071
8072 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8073
8074         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8075         `listgroup'.
8076
8077         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8078         (elmo-folder-diff-async-callback-data): Ditto.
8079         (elmo-folder-diff-async): New function.
8080
8081         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8082         (elmo-network-session-cache-key): Use it as a prefix of the session
8083         name.
8084         (elmo-network-open-session): Ditto.
8085
8086         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8087         (elmo-imap4-status-callback-data): Ditto.
8088         (elmo-imap4-server-diff-async-callback): New variable.
8089         (elmo-imap4-server-diff-async-callback-data): Ditto.
8090         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8091         `elmo-imap4-status-callback-data'.
8092         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8093         `elmo-imap4-status-callback-data' as nil.
8094         (elmo-imap4-server-diff): Ditto.
8095         (elmo-imap4-server-diff-async-callback-1): New function.
8096         (elmo-imap4-server-diff-async): Ditto.
8097         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8098
8099 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8100
8101         * elmo-util.el (elmo-list-delete): Doc fix.
8102         (elmo-delete-lists): Abolish.
8103         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8104         instead of `elmo-delete-lists'.
8105
8106 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8107
8108         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8109         before `sort'.
8110
8111 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8112
8113         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8114         `elmo-imap4-literal-subr'.
8115         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8116         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8117
8118 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8119
8120         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8121         (elmo-archive-list-folder): Fix.
8122         (elmo-archive-max-of-folder): Fix.
8123
8124 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8125
8126         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8127          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8128         (elmo-localdir-append-msg): Ditto.
8129         (elmo-localdir-list-folder): Fix for `nonsort'.
8130         (elmo-localdir-list-folder-subr): Fix for `killed'.
8131         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8132         (elmo-maildir-list-folder-subr): Ditto.
8133         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8134         (elmo-archive-list-folder-subr): Ditto.
8135         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8136         (elmo-internal-list-folder-subr): Ditto.
8137
8138 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8139
8140         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8141
8142 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8143
8144         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8145
8146 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8147
8148         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8149         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8150
8151         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8152         before greeting.
8153         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8154         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8155
8156 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8157
8158         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8159
8160         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8161         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8162         before STORE command.
8163
8164 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8165
8166         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8167
8168         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8169         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8170         of `response'.
8171         (elmo-imap4-list-folders): Removed unused local variable.
8172         (elmo-network-initialize-session): Ditto.
8173         (elmo-imap4-delete-msg-by-id): Ditto.
8174         (elmo-imap4-parse-fetch): Ditto.
8175         (elmo-imap4-copy-msgs): Ditto.
8176         Use `dst-spec' instead of `dst-folder'.
8177         (elmo-network-authenticate-session): Check authenticate type `plain'.
8178
8179 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8180
8181         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8182         garbage checking.
8183         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8184         `elmo-imap4-response-value'.
8185         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8186
8187 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8188
8189         * elmo-imap4.el (elmo-imap4-send-command):
8190         Cause elmo-imap4-bye-error when current response is BYE.
8191         (elmo-imap4-arrival-filter): Changed greeting response value.
8192
8193         * elmo2.el (elmo-imap4-bye-error): Define.
8194
8195         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8196         (elmo-imap4-server-diff): Ditto.
8197         (elmo-imap4-response-bye-p): New macro.
8198         (elmo-imap4-response-error-text): Get text from BYE response.
8199         (elmo-imap4-read-response): Return if BYE response.
8200         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8201         (elmo-imap4-folder-exists-p): Ditto.
8202         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8203         (elmo-imap4-parse-bye): New function.
8204         (elmo-imap4-parse-response): Remove needless let.
8205         Call `elmo-imap4-parse-bye'.
8206
8207 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8208
8209         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8210         the mailbox does not exist.
8211         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8212
8213 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8214
8215         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8216
8217 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8218
8219         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8220
8221         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8222         (elmo-network-initialize-session-buffer): Defined.
8223
8224         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8225         Abolished.
8226         (mmelmo-imap4-get-mime-entity): Rewrite.
8227
8228         * elmo2.el (elmo-error): Capitalize error message.
8229
8230         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8231         (elmo-network-session-buffer): New macro.
8232         (elmo-network-open-session): Use it.
8233
8234         * elmo-imap4.el: Rewrite.
8235
8236 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8237
8238         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8239
8240 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8241
8242         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8243         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8244         (elmo-imap4-create-msgdb-from-overview-string): Use
8245         `elmo-msgdb-create-overview-from-buffer'.
8246
8247 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8248
8249         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8250         (elmo-imap4-default-hierarchy-delimiter): New variable.
8251         (elmo-imap4-list-folders): Use it.
8252
8253 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8254
8255         * elmo-net.el (elmo-network-open-session): Add user and
8256         stream-type for process-buffer name.
8257
8258         * elmo-pop3.el (elmo-network-initialize-session): Call
8259         buffer-disable-undo.
8260
8261         * elmo-imap4.el (elmo-network-initialize-session):
8262         Set current-buffer as an argument for `buffer-disable-undo'.
8263
8264         * elmo-pop3.el (elmo-network-close-session): Don't use
8265         `process-live-p'.
8266
8267         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8268         Set default as 'user.
8269
8270         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8271
8272         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8273         and `elmo-imap4-flush-connection'.
8274
8275         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8276         (elmo-pop3-get-spec): Assume auth as symbol.
8277         (elmo-open-network-stream): Moved to `elmo-net'.
8278
8279         * elmo-pop3.el (toplevel): Require 'elmo-net.
8280         Define `sasl-cram-md5' to silence byte compilier.
8281         (elmo-pop3-connection-cache) Abolished.
8282         (elmo-pop3-authenticator-alist) New variable.
8283         (elmo-pop3-session): Define.
8284         (elmo-pop3-connection-get-process): Abolished.
8285         (elmo-pop3-connection-get-buffer): Ditto.
8286         (elmo-pop3-close-connection): Ditto.
8287         (elmo-pop3-flush-connection): Ditto.
8288         (elmo-pop3-get-connection): Ditto.
8289         (elmo-pop3-get-session): New function.
8290         (Replacement for `elmo-pop3-get-connection').
8291         All other related modules are changed.
8292         (elmo-network-close-session): Define.
8293         (elmo-pop3-send-command): Abolished argument `buffer'.
8294         All other related modules are changed.
8295         (elmo-pop3-read-response): Likewise.
8296         (elmo-pop3-open-connection): Abolished.
8297         (elmo-pop3-auth-user): New function.
8298         (elmo-pop3-auth-apop): Ditto.
8299         (elmo-pop3-auth-cram-md5): Ditto.
8300         (elmo-pop3-auth-scram-md5): Ditto.
8301         (elmo-pop3-auth-digest-md5): Ditto.
8302         (elmo-network-initialize-session): Define.
8303         (elmo-network-authenticate-session): Ditto.
8304         (elmo-network-setup-session): Ditto.
8305
8306         * elmo-imap4.el (toplevel): Require 'elmo-net.
8307         (elmo-imap4-session): Define.
8308         (elmo-imap4-connection-cache): Abolished.
8309         (elmo-imap4-password-key): Ditto.
8310         (elmo-imap4-flush-connection): Ditto.
8311         (elmo-imap4-get-connection): Ditto.
8312         All other related modules are changed.
8313         (elmo-imap4-get-session): New function
8314         (Replacement for `elmo-imap4-get-connection').
8315         (elmo-imap4-read-response): Abolished argument `buffer'.
8316         All other related modules are changed.
8317         (elmo-imap4-send-command): Likewise.
8318         (elmo-imap4-select-folder): Abolished.
8319         All other related modules are changed.
8320         (elmo-imap4-select-mailbox): New function.
8321         (Replacement for `elmo-imap4-select-folder').
8322         (elmo-imap4-auth-login): Simplify.
8323         (Assume current buffer as process buffer)
8324         (elmo-imap4-auth-cram-md5): Ditto.
8325         (elmo-imap4-auth-digest-md5): Ditto.
8326         (elmo-imap4-login): Ditto.
8327         (elmo-imap4-open-connection): Abolished.
8328         (elmo-imap4-open-connection-1): Abolished.
8329         (elmo-network-initialize-sessoin): Define.
8330         (elmo-network-authenticate-session): Ditto.
8331         (elmo-network-setup-session): Ditto.
8332
8333         * elmo-net.el: New module.
8334
8335 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8336
8337         * elmo-util.el (elmo-define-error): New function.
8338
8339         * elmo2.el (elmo-error): Define.
8340         (elmo-open-error): Define.
8341         (elmo-authenticate-error): Define.
8342
8343         * elmo-imap4.el (elmo-imap4-error): Abolish.
8344         (elmo-imap4-error-type): Abolish.
8345         (elmo-imap4-error-process): Abolish.
8346         (elmo-imap4-error-message): Abolish
8347         (elmo-imap4-list-folders): Don't quote lambda.
8348         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8349         (elmo-imap4-parse-namespace): Ditto.
8350         (elmo-imap4-open-connection): Rewrite.
8351         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8352         (elmo-imap4-get-connection): Abolish local variable `result'.
8353
8354 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8355
8356         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8357         wrong-type-argument error when auth is nil.
8358
8359 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8360
8361         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8362         (elmo-default-nntp-stream-type): Ditto.
8363         (elmo-default-pop3-stream-type): Ditto.
8364         (elmo-network-stream-type-alist): Ditto.
8365         (elmo-default-imap4-ssl): Abolished.
8366         (elmo-default-nntp-ssl): Ditto.
8367         (elmo-default-pop3-ssl): Ditto.
8368
8369         * elmo-util.el: (toplevel): Removed needless requires.
8370         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8371         (elmo-open-network-stream): Open network stream according to
8372         the value of `elmo-network-stream-type-alist'.
8373         (elmo-get-network-stream-type): New function.
8374         (elmo-network-stream-type-spec-string): New macro.
8375         (elmo-network-stream-type-symbol): Ditto.
8376         (elmo-network-stream-type-function): Ditto.
8377
8378         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8379         network-stream-type. All other related portions are changed.
8380         (elmo-pop3-open-connection): Ditto.
8381
8382         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8383         network-stream-type. All other related portions are changed.
8384
8385         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8386         network-stream-type.All other related portions are changed.
8387         (elmo-imap4-error): New macro.
8388         (elmo-imap4-error-type): Ditto.
8389         (elmo-imap4-error-process): Ditto.
8390         (elmo-imap4-error-message): Ditto.
8391         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8392         (elmo-imap4-auth-cram-md5): Ditto.
8393         (elmo-imap4-auth-digest-md5): Ditto.
8394         (elmo-imap4-login): Ditto.
8395         (elmo-imap4-open-connection): Remove password entry if authentication
8396         was in vain.
8397         (elmo-imap4-user-at-host): Abolished.
8398         (elmo-imap4-password-key): New buffer local variable.
8399         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8400         using protocol, port, auth and stream-type.
8401
8402         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8403
8404 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8405
8406         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8407
8408         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8409
8410         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8411         (elmo-imap4-authenticator-alist): New variable.
8412         (elmo-imap4-open-connection-1): Rename from
8413         elmo-imap4-open-connection.
8414         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8415         only wraps elmo-imap4-open-connection-1.
8416         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8417         user-at-host.
8418         (elmo-imap4-auth-login): New function.
8419         (elmo-imap4-auth-cram-md5): New function.
8420         (elmo-imap4-auth-digest-md5): New function.
8421         (elmo-imap4-login): New function.
8422
8423 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8424
8425         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8426         function `error'.
8427
8428 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8429
8430         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8431
8432 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8433
8434         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8435
8436 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8437
8438         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8439         for server responses, quote `*' regardless of where it appears.
8440
8441 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8442
8443         * elmo-maildir.el (elmo-maildir-commit): New alias.
8444
8445 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8446
8447         * elmo-util.el (elmo-display-progress):
8448                 Use `progress-feedback-with-label'.
8449
8450 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8451
8452         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8453         (elmo-imap4-non-atom-char-regex): Ditto.
8454         (elmo-imap4-non-text-char-regex): Ditto.
8455         (elmo-imap4-literal-threshold): Ditto.
8456         (elmo-imap4-atom-p): New function.
8457         (elmo-imap4-quotable-p): Ditto.
8458         (elmo-imap4-nil): Ditto.
8459         (elmo-imap4-atom): Ditto.
8460         (elmo-imap4-quoted): Ditto.
8461         (elmo-imap4-literal-subr): Ditto.
8462         (elmo-imap4-literal): Ditto.
8463         (elmo-imap4-buffer-literal): Ditto.
8464         (elmo-imap4-string-subr): Ditto.
8465         (elmo-imap4-string): Ditto.
8466         (elmo-imap4-buffer-string): Ditto.
8467         (elmo-imap4-astring-subr): Ditto.
8468         (elmo-imap4-astring): Ditto.
8469         (elmo-imap4-buffer-astring): Ditto.
8470         (elmo-imap4-nstring): Ditto.
8471         (elmo-imap4-buffer-nstring): Ditto.
8472         (elmo-imap4-mailbox): New alias.
8473         (elmo-imap4-field-body): Ditto.
8474         (elmo-imap4-userid): Ditto.
8475         (elmo-imap4-password): Ditto.
8476         (elmo-imap4-format-quoted): New function.
8477         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8478         arguments and handle "atom", "quoted" and "literal" string here.
8479         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8480         `elmo-imap4-send-command'.
8481         (elmo-imap4-folder-exists-p): Likewise.
8482         (elmo-imap4-create-folder): Likewise.
8483         (elmo-imap4-delete-folder): Likewise.
8484         (elmo-imap4-rename-folder): Likewise.
8485         (elmo-imap4-max-of-folder): Likewise.
8486         (elmo-imap4-check-validity): Likewise.
8487         (elmo-imap4-sync-validity): Likewise.
8488         (elmo-imap4-server-diff): Likewise.
8489         (elmo-imap4-select-folder): Likewise.
8490         (elmo-imap4-copy-msgs): Likewise.
8491         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8492         (elmo-imap4-mark-set-on-msgs): Likewise.
8493         (elmo-imap4-read-part): Likewise.
8494         (elmo-imap4-read-msg): Likewise.
8495         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8496         `elmo-imap4-password' for `elmo-imap4-send-command'.
8497         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8498         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8499         `elmo-imap4-buffer-literal'.
8500         (elmo-imap4-append-msg): Likewise.
8501
8502         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8503         `delete' for removing dead connection from the connection cache.
8504         Move deletion of the process buffer after that.
8505         (elmo-imap4-list): Change `defsubst' to `defun'.
8506         (elmo-imap4-commit): Make error message verbose.
8507         (elmo-imap4-search): Ditto.
8508         (elmo-imap4-list): Ditto.
8509         (elmo-imap4-select-folder): Ditto.
8510         (elmo-imap4-copy-msgs): Ditto.
8511         (elmo-imap4-delete-msg-by-id): Ditto.
8512         (elmo-imap4-append-msg-by-id): Ditto.
8513         (elmo-imap4-append-msg): Ditto.
8514
8515 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8516
8517         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8518         when dired is used on XEmacs.
8519
8520 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8521
8522         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8523         instead of `append'.
8524         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8525         `elmo-plugged-p' directly.
8526         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8527         of `elmo-plugged-p' directly.
8528
8529         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8530         Eliminate unused variable.  Use `memq' for checking a process status.
8531         Use `cons' instead of `append' for updating the connection cache.
8532         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8533         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8534
8535 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8536
8537         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8538         `elmo-imap4-read-point' exactly.
8539
8540         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8541         the local variable `folder' to `mailbox'.
8542         Rename the argument `fld' to `folder'.
8543
8544 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8545
8546         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8547         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8548
8549 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8550
8551         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8552         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8553         (elmo-pop3-uidl-number-hash): Ditto.
8554         (elmo-pop3-size-hash): Ditto.
8555         (elmo-pop3-uidl-done): Ditto.
8556         (elmo-pop3-list-done): Ditto.
8557         (elmo-pop3-connection-get-process): New defmacro.
8558         (elmo-pop3-connection-get-buffer): Ditto.
8559         (elmo-pop3-close-connection): Delete buffer and process.
8560         (elmo-pop3-flush-connection): Don't delete buffer and process.
8561         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8562         Setup UIDL and size hash.
8563         (elmo-pop3-send-command-no-erase): Deleted
8564         (elmo-pop3-send-command): Added optional argument `no-erase'.
8565         (elmo-pop3-parse-uidl-response): New function.
8566         (elmo-pop3-parse-list-response): Set size hash.
8567         (elmo-pop3-list-location): New function.
8568         (elmo-pop3-list-by-uidl-subr): Ditto.
8569         (elmo-pop3-list-by-list): Ditto.
8570         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8571         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8572         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8573         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8574         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8575         Use uidl.
8576         (elmo-pop3-uidl-to-number): New function.
8577         (elmo-pop3-number-to-uidl): Ditto.
8578         (elmo-pop3-number-to-size): Ditto.
8579         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8580         Set number by use of uidl.
8581         (elmo-pop3-msgdb-create-message): Likewise.
8582         Set size, loc-alist in msgdb.
8583         (elmo-pop3-read-msg): Set number by use of uidl.
8584         Added optional argument `msgdb'.
8585         (elmo-pop3-delete-msg): Ditto.
8586         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8587         (elmo-pop3-commit): Close connection.
8588
8589         * elmo-pipe.el (elmo-pipe-max-of-folder):
8590         Bind `elmo-pop3-use-uidl' as nil.
8591         (elmo-pipe-drain): Ditto.
8592         Call `elmo-commit'.
8593
8594         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8595         (elmo-msgdb-overview-entity-set-size): New defsubst.
8596
8597 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8598
8599         * elmo-vars.el (elmo-use-killed-list): New variable
8600         (Renamed from `elmo-nntp-use-killed-list').
8601         (elmo-nntp-use-killed-list): Eliminated.
8602
8603         * elmo-msgdb.el (elmo-msgdb-expand-path):
8604         Changed expanding msgdb path for elmo-multi.
8605
8606         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8607         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8608         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8609         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8610         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8611         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8612         (toplevel): Deleted time-stamp line.
8613
8614         * elmo2.el (elmo-clear-killed ): Defined as function
8615         (Abolished defining as a backend function).
8616         All other related modules are changed.
8617
8618 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8619
8620         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8621
8622 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8623
8624         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8625
8626 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8627
8628         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8629
8630 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8631
8632         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8633         asynchronous folder check.
8634
8635         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8636
8637         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8638         `elmo-nntp-use-killed-list'.
8639         (elmo-nntp-list-folder): Use killed list.
8640         (elmo-nntp-max-of-folder): Ditto.
8641         (elmo-nntp-msgdb-create): Set killed list.
8642
8643         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8644
8645         * elmo2.el (elmo-clear-killed): New backend function.
8646         All other related modules are changed.
8647
8648 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8649
8650         * elmo-util.el (elmo-imap4-spec-folder): Use
8651         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8652         All callers changed.
8653
8654 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8655
8656         * mmelmo-2.el (initialize-instance):
8657         Use `mime-buffer-entity-buffer-internal' instead of
8658         `mime-entity-buffer'.
8659
8660         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8661         (mime-entity-body): Implemented.
8662         (mime-goto-header-start-point): Deleted.
8663         (mime-goto-body-end-point): Ditto.
8664         (mime-entity-point-min): Ditto.
8665         (mime-entity-point-max): Ditto.
8666         (mime-entity-children): Ditto.
8667         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8668         instead of `mime-entity-buffer'.
8669         (mime-entity-header-buffer): Ditto.
8670         (mime-entity-body-buffer): Ditto.
8671         (mime-write-entity-content): Ditto.
8672
8673         * pldap.el (ldap-static-if): New macro.
8674         (toplevel): Use it instead of `static-if'.
8675
8676 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8677
8678         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8679         included in `attrs' argument.
8680
8681 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8682
8683         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8684
8685         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8686         (ldap-ldif-safe-init-char-regexp): Ditto.
8687         (ldap-ldif-safe-string-regexp): Ditto.
8688         (ldap/ldif-safe-string-p): New macro.
8689         (ldap/ldif-insert-field): Ditto.
8690         (ldap-modify): Use it.
8691         (ldap-add): Ditto.
8692         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8693         (ldap-decode-attribute): Decode only when `attr' is consp.
8694         (ldap-delete): Bind `ret'.
8695         (toplevel): Require 'cl at compile time.
8696         Removed (require 'poe) and (require 'std11).
8697         (pldap-version): Eliminated.
8698         (ldap-search-basic): Removed auth and dn binding.
8699         (ldap-ldif-field-name-regexp): New constant.
8700         (ldap-ldif-field-head-regexp): Ditto.
8701         (ldap-ldif-next-field-head-regexp): Ditto.
8702         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8703         (ldap/field-end): New function.
8704         (ldap/field-body): Use it.
8705         (ldap/collect-field): Ditto.
8706         (ldap-search-basic): Use `ldap/field-body'.
8707
8708 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8709
8710         * pldap.el (ldap-default-attribute-encoder): New user option.
8711         (ldap/field-body): Decode base64 string.
8712         (ldap/collect-field): Ditto.
8713         (ldap-encode-attribute): New function.
8714         (ldap-add-entries): Use it.
8715         (ldap-modify-entries): Ditto.
8716         (ldap-search-entries): Enclosed decoding function with
8717         `with-temp-buffer' and set as unibyte.
8718         (ldap-search-basic): Set process buffer as unibyte.
8719
8720         * elmo-util.el (elmo-folder-identical-system-p):
8721         Eliminated name space checking.
8722
8723         * pldap.el: New module.
8724         toplevel: Changed condition to detect built-in ldap feature.
8725         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8726         (ldap-add): Added error handling.
8727         (ldap-modify): Ditto.
8728         (ldap-delete): Ditto.
8729
8730 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8731
8732         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8733         Initialize local variables with `let'.  Inline a temporary
8734         variable for the progress percentage.  Sort `setq' to reduce
8735         function call in the while-loop.
8736
8737         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8738         into the conditional branch.
8739
8740 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8741
8742         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8743         Move a conditional out of the while-loop.
8744
8745 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8746
8747         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8748         elmo-msgdb-overview-get-entity-by-number.
8749         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8750         throw.
8751
8752 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8753
8754         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8755         the local variable for a packed number self descriptively.
8756
8757 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8758
8759         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8760         * elmo-localdir.el (elmo-localdir-pack-number): Use
8761         `elmo-msgdb-overview-get-entity' instead of
8762         `elmo-msgdb-overview-get-entity-by-number'.
8763         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8764         (elmo-msgdb-search-overview-entity): Removed.
8765         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8766         by message-id or number.
8767         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8768         instead of `elmo-msgdb-overview-get-entity-by-number'.
8769
8770 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8771
8772         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8773         non-nil, use hash table for overview.
8774         (elmo-hash-maximum-size): New variable.
8775         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8776         (elmo-msgdb-make-overview-hashtb): New function.
8777         (elmo-msgdb-clear-overview-hashtb): New function.
8778         (elmo-clear-hash-val): New macro.
8779         All other related modules are changed.
8780
8781 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8782
8783         * elmo2.el (elmo-move-msgs): If there's other message with
8784         same message-id, don't use cache.
8785
8786 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8787
8788         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8789         number is already packed.
8790
8791 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8792
8793         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8794
8795 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8796
8797         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8798         All other related modules are changed.
8799
8800 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8801
8802         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8803         of refiling failure on Maildir.
8804
8805 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8806
8807         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8808         decoded mime-charset with cache.
8809         (elmo-msgdb-overview-entity-get-from): Ditto.
8810         (elmo-msgdb-overview-entity-get-subject): Ditto.
8811         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8812
8813 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8814
8815         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8816         (elmo-remove-passwd): Fill password with 0 before erase.
8817         * elmo-vars.el (elmo-passwd-life-time): New variable.
8818
8819 \f
8820 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8821
8822         * elmo-cache.el (elmo-buffer-cache-add):
8823         Set message cache buffer as unibyte.
8824
8825 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8826
8827         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8828         become nil.
8829
8830 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8831
8832         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8833         when display is finished.
8834         (elmo-nntp-msgdb-create): Ditto.
8835         (elmo-nntp-groups-read-response): Ditto.
8836         (elmo-nntp-retrieve-headers): Ditto.
8837         (elmo-nntp-msgdb-create-message): Ditto.
8838         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8839         (elmo-pop3-msgdb-create-message): Ditto.
8840
8841 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8842
8843         * elmo-maildir.el (elmo-maildir-msgdb-create):
8844         Use `elmo-msgdb-sort-by-date'.
8845
8846 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8847
8848         * elmo2.el (elmo-read-msg-no-cache):
8849         Eliminated arguments after `outbuf'.
8850         Don't use cache even if it exists.
8851         (elmo-read-msg): Don't pass arguments after `outbuf' to
8852         `elmo-read-msg-no-cache'.
8853
8854 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8855
8856         * elmo-archive.el (elmo-archive-list-folders):
8857         Use `file-name-directory' if base folder does not exist.
8858
8859 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8860
8861         * elmo-archive.el (elmo-archive-list-folders): Don't use
8862         `file-name-directory'.
8863
8864 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8865
8866         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8867         If `force' is non-nil, try flushing all operation queues.
8868
8869 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8870
8871         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8872         as-binary-process.
8873
8874 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8875
8876         * elmo-util.el (elmo-display-progress): Fixed.
8877
8878 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8879
8880         * elmo-util.el (elmo-display-progress): New function.
8881         All other related modules are changed.