* elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
2
3         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
4         (elmo-global-flags-initialize): Ditto.
5
6 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
7
8         * elmo-archive.el (toplevel): Don't require emu, std11
9         and elmo-localdir.
10
11         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
12         definition.
13
14 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
15
16         * elmo.el (elmo-folder-confirm-appends): Display folder name.
17
18 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
19
20         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
21         literals.
22
23 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
24
25         * elmo-maildir.el (elmo-maildir-list-location): Reduce
26         `elmo-get-last-modification-time' call.
27
28 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
29
30         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
31         expression.
32         (elmo-maildir-set-mark): Ditto.
33         (elmo-maildir-delete-mark): Ditto.
34
35 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
36
37         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
38         optional argument `separators'.
39
40 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
41
42         * elmo.el (cache-changed): Abolish.
43         (status-changed): New signal.
44         (elmo-message-killed-p): New generic function and define for
45         elmo-folder.
46         (elmo-folder-recover-messages): Ditto.
47         (elmo-message-set-cached): Emit signal `status-changed' instead of
48         `cache-changed'.
49         (elmo-message-status): New macro.
50         (elmo-message-status-folder): Ditto.
51         (elmo-message-status-number): Ditto.
52         (elmo-message-status-set-flags): Ditto.
53         (elmo-message-status-set-killed): Ditto.
54         (elmo-message-status-flags): New function.
55         (elmo-message-status-cached-p): Ditto.
56         (elmo-message-status-killed-p): Ditto.
57
58         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
59         `status-changed' instead of `cache-changed'.
60         (elmo-folder-recover-messages): Define.
61         (elmo-message-killed-p): Ditto.
62
63         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
64         `status-changed' instead of `cache-changed'.
65
66         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
67         (elmo-message-killed-p): Define.
68         (elmo-folder-recover-messages): Ditto.
69
70         * elmo-version.el (elmo-version): Up to 2.15.3.
71
72 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
73
74         * elmo-signal.el (elmo-signal-bindings): Use cons to append
75         element into list.
76         (elmo-define-signal-handler): Add docstring.
77         (elmo-define-signal-filter): Ditto.
78
79         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
80
81 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
82
83         * elmo-util.el (elmo-flatten): Don't use recursive call.
84
85         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
86         assignment.
87         (elmo-folder-message-make-temp-files): Use `number-to-string'
88         instead of `int-to-string'.
89
90 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
91
92         * elmo-search.el (elmo-folder-delete-messages): Define.
93
94 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
95
96         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
97         customization type.
98         (elmo-mailing-list-count-spec-list): Ditto.
99
100         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
101         for `list-id'.
102
103 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
104
105         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
106         handling.
107
108 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
109
110         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
111         (elmo-mailing-list-count-spec-list): Ditto.
112
113         * elmo-util.el (elmo-map-until-success): New function.
114         (elmo-string-match-substring): Ditto.
115         (elmo-find-list-match-value): Ditto.
116
117         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
118         Removed.
119         (modb-entity-extract-ml-info-from-subject): Ditto.
120         (modb-entity-extract-ml-info-from-return-path): Ditto.
121         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
122         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
123         (modb-entity-extract-ml-info-from-mailman): Ditto.
124         (modb-entity-extract-mailing-list-info-functions): Ditto.
125         (modb-entity-extract-mailing-list-info): Rewrite with
126         `elmo-find-list-match-value'.
127
128 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
129
130         * elmo-net.el (elmo-network-session-retry-count): New user option.
131         (elmo-network-session-buffer-name): New internal function.
132         (elmo-network-session-buffer-create): Ditto.
133         (elmo-network-open-session): Retry open network session
134         `elmo-network-session-retry-count' times.
135
136 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
137
138         * elmo-util.el (elmo-list-filter): Rewritten.
139
140 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
141
142         * elmo-util.el (elmo-string-member): Allow symbol element in list.
143
144 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
145
146         * elmo-search.el (elmo-make-search-engine): Use prefix
147         `elmo-search-' for require symbol instead of `else-'.
148         (elmo-search-engine-extprog): New class.
149         (elmo-search-engine-do-search): Remove nil from argument
150         list. Added argument pattern to evaluate element as function.
151         (elmo-search-engine-local-file): Derived from
152         `elmo-search-engine-extprog'.
153         (elmo-search-engine-create-message-entity): Check existance of file.
154         (elmo-search-engine-fetch-message): Ditto.
155         (elmo-search-namazu-index): Follow the API change.
156         (elmo-search-grep-target): Ditto.
157
158 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
159
160         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
161         characters of working buffer.
162
163         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
164         Does not bind `default-mime-charset'.
165         (elmo-msgdb-create-message-entity-from-buffer): Removed
166         unnecessary local bind.
167
168         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
169         function.
170         (modb-entity-extract-mailing-list-info-functions): Added it.
171
172 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
173
174         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
175         when number and message-id are non-nil.
176
177         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
178
179         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
180         conditional steatment.
181         (elmo-pop3-auth-apop): Likewise.
182         (elmo-network-authenticate-session): Likewise.
183
184 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
185
186         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
187         symbol `fill-column'.
188         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
189         decode field value.
190
191         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
192         (elmo-decoded-field-body): Ditto.
193
194 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
195
196         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
197         `tokens' to `params'.
198
199 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
200
201         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
202         working buffer.
203
204 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
205
206         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
207         decide index.
208
209 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
210
211         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
212         Set default value as nil.
213         (toplevel): Register search engines by
214         `elmo-search-register-engine' if there are not defined.
215
216         * elmo.el (autoload): Added autoload setting for
217         `elmo-search-register-engine'.
218
219 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
220
221         * elmo.el (toplevel): `[' is redefined as the prefix of the search
222         folder instead of nmz folder.
223         (elmo-nmz-default-index-path): Added obsolete variable setting.
224         (elmo-nmz-index-alias-alist): Ditto.
225         (elmo-nmz-use-drive-letter): Ditto.
226
227         * elmo-search.el (elmo-search-register-engine): New function.
228
229         * elmo-nmz.el: Removed.
230
231         * elmo-version.el (elmo-version): Up to 2.15.2.
232
233 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
234
235         * elmo-search.el: New file.
236
237 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
238
239         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
240         condition `larger' and `smaller'.
241
242 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
243
244         * elmo-util.el (elmo-safe-filename): Rewrite to replace
245         `"' (double quote) into "_Q_".
246
247 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
248
249         * elmo-net.el (elmo-net-quote-chars): Abolish.
250         (elmo-net-format-quoted): Ditto.
251
252 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
253
254         * elmo.el (elmo-get-folder-function): New variable.
255         (elmo-get-folder): New function.
256         (elmo-folder-rename): Call `elmo-make-folder' with specified
257         mime-charset.
258
259         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
260         `elmo-make-folder'.
261         (elmo-split-subr): Ditto.
262
263         * elmo-multi.el (elmo-folder-initialize): Ditto.
264
265         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
266
267         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
268         (elmo-flag-get-folder): Ditto.
269
270         * elmo-filter.el (elmo-folder-initialize): Ditto.
271
272         * elmo-access.el (elmo-folder-initialize): Ditto.
273         (elmo-access-folder-update-children): Ditto.
274
275         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
276         (elmo-dop-queue-flush): Ditto.
277         (elmo-folder-append-buffer-dop-delayed): Ditto.
278         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
279         mime-charset.
280
281         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
282         instead of `elmo-make-folder'.
283         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
284         destination folder instead of send `elmo-folder-rename-internal'.
285
286         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
287         slot of subfolder instead of create it.
288
289 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
290
291         * elmo-util.el (elmo-collect-separators): New function.
292         (elmo-collect-separators-internal): Ditto.
293         (elmo-collect-trail-separators): Ditto.
294         (elmo-parse-separated-tokens): Ditto.
295         (elmo-parse-separated-tokens-internal): Ditto.
296         (elmo-quote-syntactical-element): Ditto.
297
298         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
299         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
300
301         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
302         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
303         (elmo-nntp-folder-list-subfolders): Quote a user name.
304
305         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
306         (elmo-net-parse-network): Abolish.
307         (elmo-net-folder-set-parameters): New function.
308         (elmo-folder-initialize): Follow the above change.
309
310         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
311         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
312         (elmo-folder-list-subfolders): Use
313         `elmo-quote-syntactical-element' instead of
314         `elmo-net-format-quoted' to quote mailbox and user name.
315
316 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
317
318         * elmo-util.el (elmo-token-valid-p): New function.
319         (elmo-parse-token): Add optional argument `requirement'.
320         (elmo-parse-prefixed-element): Likewise.
321
322         * elmo-net.el (elmo-net-quote-chars): Renamed from
323         `elmo-net-quote-chars-regexp'.
324         (elmo-net-format-quoted): Add optional argument `extra-chars'.
325
326         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
327         by info document. Check token `uidl' is started an alphabet.
328
329         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
330         by info document. Check token `user' is started an alphabet.
331
332         * elmo-imap4.el (elmo-folder-initialize): Ditto.
333         (elmo-folder-list-subfolders): Quote user.
334
335 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
336
337         * elmo-util.el (elmo-quoted-specials-list): New constant.
338         (elmo-quoted-token): New function.
339
340         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
341         (elmo-net-format-quoted): New function.
342         (elmo-net-parse-network): Ditto.
343         (elmo-folder-initialize): Use it.
344
345         * elmo-nntp.el (elmo-folder-initialize): Use
346         `elmo-net-parse-network' to parse network specification instead of
347         `elmo-folder-initialize#elmo-net'.
348
349         * elmo-pop3.el (elmo-folder-initialize): Ditto.
350
351         * elmo-imap4.el (elmo-folder-initialize): Ditto.
352         (elmo-folder-list-subfolders): Quote folder name by
353         `elmo-net-format-quoted'.
354
355 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
356
357         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
358         (elmo-folder-search): Use it.
359
360 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
361
362         * modb-standard.el (modb-standard-loaded-message-id): Use
363         `elmo-msgdb-message-entity-field'.
364
365 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
366
367         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
368         without filename.
369
370 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
371
372         * elmo-util.el (elmo-set-auto-coding): New function.
373         (elmo-object-load): Use it.
374
375 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
376
377         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
378         (elmo-time<): Define as alias of `elmo-time-less-p'.
379         (elmo-time-to-datevec): New function.
380
381         * elmo-date.el (elmo-time-to-days): New function.
382
383 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
384
385         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
386         is not cons cell.
387
388 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
389
390         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
391         parenthesis.
392
393         * elmo-util.el (elmo-map-recursive): New function.
394
395         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
396         (modb-entity-encode-string-recursive): Ditto.
397
398 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
399
400         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
401         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
402         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
403         compare sequence number when last modified time is nil.
404
405 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
406
407         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
408
409         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
410
411 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
412
413         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
414         modification time of the file.
415
416 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
417
418         * elmo-util.el (elmo-condition-optimize): Discriminated against
419         preserved fields, extra fields and the other weight.
420
421 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
422
423         * modb-entity.el (initialize-instance): Define.
424         (modb-entity-handler-mime-charset): New internal function.
425         (modb-standard-entity-set-field): Use it.
426         (elmo-msgdb-message-entity-field): Ditto.
427         (elmo-msgdb-message-entity-field): Ditto.
428
429         * modb.el (elmo-msgdb-match-condition): Rewrite with
430         `elmo-condition-match'.
431         (elmo-msgdb-match-condition-primitive): New function.
432
433         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
434         arguments `flags' and `numbers'.
435         (elmo-msgdb-match-condition-primitive): Abolished (merged to
436         `elmo-msgdb-message-match-condition').
437         (modb-buffer-entity-handler): New class.
438
439         * elmo.el (elmo-folder-search): Optimize condition to use
440         `elmo-condition-optimize'.
441         (elmo-message-buffer-match-condition): New function.
442         (elmo-message-match-condition): Use
443         `elmo-message-buffer-match-condition' instead of
444         `elmo-buffer-field-condition-match'.
445
446         * elmo-util.el (elmo-condition-match): New function.
447         (elmo-condition-optimize): Ditto.
448         (elmo-buffer-field-primitive-condition-match): Abolish.
449         (elmo-buffer-field-condition-match): Ditto.
450
451         * elmo-archive.el (elmo-archive-field-condition-match): Use
452         `elmo-message-buffer-match-condition' instead of
453         `elmo-buffer-field-condition-match'.
454
455 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
456
457         * elmo-flag.el (elmo-global-flags-initialize): Check the
458         existence of the flag directory.
459
460 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
461
462         * elmo-access.el (elmo-folder-initialize): Call
463         `elmo-multi-connect-signals'.
464
465         * elmo-pipe.el (elmo-folder-close): Define.
466
467         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
468         children folders.
469
470         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
471         with target folder.
472
473         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
474         `number'.
475
476         * elmo-multi.el (elmo-message-entity): Don't use return value of
477         `elmo-message-entity-set-number'.
478
479 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
480
481         * modb.el (modb-generic): Added slot `mime-charset'.
482
483         * modb-standard.el (modb-standard): Added slot `overview-handler'.
484         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
485         and `modb-entity-handler-dump-parameters'.
486         (modb-standard-default-entity-handler): Abolish.
487         (elmo-msgdb-message-entity-handler): Save created handler by
488         instance slot.
489
490         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
491         (modb-entity-handler-list-parameters): New method.
492         (modb-entity-handler-equal-p): New function.
493         (modb-entity-handler-dump-parameters): Ditto.
494         (modb-entity-parse-address-string): Encode return value.
495         (modb-entity-make-address-string): Decode argument value.
496         (modb-entity-decode-string-recursive): New function.
497         (modb-entity-encode-string-recursive): Ditto.
498         (modb-standard-entity-normalizer): Set to encode field value.
499         (modb-standard-entity-specializer): Follow the above change.
500         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
501         mime-charset of handler.
502         (elmo-msgdb-message-entity-field): Ditto.
503         (elmo-msgdb-copy-message-entity): Fixed reference to internal
504         structure.
505         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
506
507         * elmo.el (elmo-folder): Added slot `mime-charset'.
508         (elmo-make-folder): Added argument `mime-charset'.
509         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
510         `mime-charest'.
511
512         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
513         (elmo-make-msgdb): Likewise.
514
515         * elmo-internal.el (elmo-internal-folder-initialize): Call
516         `luna-make-entity' with :mime-charset parameter.
517
518 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
519
520         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
521         encoded words in `from' and `subject' field.
522
523 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
524
525         * modb.el (elmo-msgdb-message-field): Add argument `type'.
526         (elmo-msgdb-match-condition): Get handler from entity instead of
527         msgdb.
528
529         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
530         (modb-standard-load-entity): Treat new file format.
531         (modb-standard-save-entity-1): Save as new file format.
532         (modb-standard-save-entity): Split messages into section here.
533         (elmo-msgdb-message-field): Follow the API change.
534         (modb-standard-default-entity-handler): New internal variable.
535         (elmo-msgdb-message-entity-handler): Define.
536
537         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
538         to `elmo-vars.el'.
539         (modb-entity-field-extractor-alist): New user option.
540         (elmo-msgdb-message-entity-field): Removed argument `decode' and
541         added argument `type'.
542         (elmo-msgdb-copy-message-entity): Add optional argument
543         `make-handler'.
544         (modb-set-field-converter): New function.
545         (modb-convert-field-value): Ditto.
546         (modb-entity-string-decoder): Ditto.
547         (modb-entity-string-encoder): Ditto.
548         (modb-entity-parse-date-string): Ditto.
549         (modb-entity-make-date-string): Ditto.
550         (modb-entity-mime-decoder): Ditto.
551         (modb-entity-mime-encoder): Ditto.
552         (modb-entity-address-list-decoder): Ditto.
553         (modb-entity-address-list-encoder): Ditto.
554         (modb-entity-parse-address-string): Ditto.
555         (modb-entity-make-address-string): Ditto.
556         (modb-entity-create-field-indices): Ditto.
557         (modb-legacy-entity-field-slots): New constant.
558         (modb-legacy-entity-field-indices): Ditto.
559         (modb-legacy-entity-normalizer): New variable.
560         (modb-legacy-entity-specializer): Ditto.
561         (modb-legacy-entity-field-index): New macro.
562         (modb-legacy-entity-set-field): New function.
563         (modb-legacy-make-message-entity): Rewrite.
564         (elmo-msgdb-create-message-entity-from-buffer): Use
565         `elmo-msgdb-get-references-from-buffer'. Use
566         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
567         Use `modb-legacy-entity-set-field' instead of
568         `elmo-msgdb-message-entity-set-field'.
569         (elmo-msgdb-message-entity-field): Rewrite.
570         (elmo-msgdb-message-entity-set-field): Ditto.
571         (elmo-msgdb-copy-message-entity): Make new entity by
572         `make-handler' if it specified.
573         (elmo-msgdb-message-match-condition): Define a method of
574         `modb-entity-handler' and follow the API change.
575         (modb-standard-entity-handler): New class.
576         (modb-entity-extract-ml-info-from-x-sequence): New function.
577         (modb-entity-extract-ml-info-from-subject): Ditto.
578         (modb-entity-extract-ml-info-from-return-path): Ditto.
579         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
580         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
581         (modb-entity-extract-mailing-list-info): Ditto.
582         (modb-entity-extract-mailing-list-info-functions): New variable.
583
584         * elmo.el (elmo-message-field): Add optional argument `type'.
585
586         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
587         from `modb-entity.el'.
588
589         * elmo-util.el (elmo-object-load): Decode by coding-system from
590         `set-auto-coding-function'.
591         (elmo-object-save): Use `detect-mime-charset-region' and add
592         coding cookie if encode.
593         (elmo-msgdb-get-references-from-buffer): New function.
594         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
595
596         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
597
598         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
599         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
600         instead of `shimbun-make-header' and follow the API change.
601         (elmo-shimbun-update-overview): Follow the API change.
602         (elmo-map-folder-list-message-locations): Ditto.
603
604         * elmo-pipe.el (elmo-message-field): Ditto.
605
606         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
607         Ditto.
608
609         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
610
611         * elmo-multi.el (elmo-message-field): Ditto.
612
613         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
614         (elmo-msgdb-sort-by-date): Ditto.
615         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
616         `elmo-message-entity-field'.
617         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
618         change.
619         (elmo-msgdb-overview-entity-get-from): Ditto.
620         (elmo-msgdb-overview-entity-get-subject): Ditto.
621         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
622         (elmo-msgdb-overview-entity-get-date): Ditto.
623         (elmo-msgdb-overview-entity-get-to): Ditto.
624         (elmo-msgdb-overview-entity-get-cc): Ditto.
625
626         * elmo-mime.el (elmo-message-mime-entity): Ditto.
627         (elmo-mime-collect-message/partial-pieces): Ditto.
628
629         * elmo-filter.el (elmo-message-field): Ditto.
630
631         * elmo-date.el (elmo-datevec-to-time): New function.
632         (elmo-time-parse-date-string): Ditto.
633         (elmo-time-make-date-string): Ditto.
634         (elmo-time<): Ditto.
635
636         * elmo-version.el (elmo-version): Up to 2.15.1.
637
638 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
639
640         * elmo-flag.el (elmo-global-flags-initialize): Don't include
641         member of elmo-local-flags.
642
643 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
644
645         * elmo-version.el (elmo-version): Up to 2.15.0.
646
647 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
648
649         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
650         `ignore-msgdb' is non-nil.
651
652 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
653
654         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
655         (elmo-condition-in-msgdb-p): Ditto.
656         (elmo-file-field-primitive-condition-match): Ditto.
657         (elmo-file-field-condition-match): Ditto.
658
659         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
660
661 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
662
663         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
664         subdirectories here.
665         (elmo-global-flags-initialize): New function.
666
667         * elmo.el (toplevel): Added autoload setting for
668         `elmo-global-flags-initialize'.
669
670 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
671
672         * elmo.el (message-number-changed): Define new signal.
673         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
674         message-number-changed signal.
675         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
676         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
677         Respect `elmo-pack-number-check-strict'.
678
679 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
680
681         * elmo-signal.el (elmo-connect-signal): Document.
682         (elmo-emit-signal): Ditto.
683         (elmo-emit-signal): It should pass source argument to filter and
684         handler, not slot-source.
685
686 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
687
688         * modb.el (elmo-msgdb-update-entity): New API and define generic
689         implement.
690
691         * modb-standard.el (elmo-msgdb-update-entity): Define.
692
693         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
694         API and define generic implement.
695
696         * elmo.el (update-overview): New singnal.
697
698         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
699         `elmo-msgdb-update-entity' and emit signal `update-overview'.
700         (elmo-message-entity-parent): Define.
701
702         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
703         `update-overview'.
704
705         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
706
707         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
708
709 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
710
711         * elmo.el (elmo-folder-synchronize): Sort the return value of
712         `elmo-list-diff'.
713
714         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
715         list.
716
717 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
718
719         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
720         `default-enable-multibyte-characters'.
721         (elmo-object-load): Use `with-temp-buffer' instead of
722         `elmo-set-work-buf'.
723         (elmo-object-save): Ditto.
724         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
725         `elmo-set-work-buf'.
726         (elmo-decoded-field-body): Ditto.
727
728         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
729
730         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
731         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
732
733         * elmo-version.el (elmo-version): Up to 2.13.3.
734
735 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
736
737         * elmo-util.el (elmo-list-diff): Fix the last change.
738         Reverse order of result lists.
739
740 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
741
742         * modb-standard.el (elmo-msgdb-set-flag): Use
743         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
744         (elmo-msgdb-unset-flag): Ditto.
745
746         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
747         `elmo-list-diff'.
748
749         * elmo-util.el (elmo-list-diff): Rewrite.
750         (elmo-list-diff-nonsortable): New function.
751
752 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
753
754         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
755         `elmo-multibypte-buffer-name'.  All referers are updated.
756
757 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
758
759         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
760         (elmo-mime-entity-fragment-p): New function.
761         (mime-elmo-buffer-entity): Added slot `reassembled'.
762         (elmo-message-mime-entity): Added 4th argument `reassemble'.
763         (elmo-message-mime-entity-internal): New function (renamed from
764         `elmo-message-mime-entity').
765         (elmo-mime-inherit-field-list-from-enclosed): New constant.
766         (elmo-mime-make-reassembled-mime-entity): New function.
767         (elmo-message-reassembled-mime-entity): Ditto.
768         (elmo-mime-collect-message/partial-pieces): Ditto.
769
770 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
771
772         * elmo.el (elmo-message-fetch-string): Disable multibyte.
773
774         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
775         (elmo-with-enable-multibyte): New macro.
776
777         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
778
779 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
780
781         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
782         argument `number'.
783         (elmo-filter-connect-signals): Follow the above change.
784
785 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
786
787         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
788
789         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
790         that only the first flag is used.
791
792 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
793
794         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
795         if available.
796
797 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
798
799         * elmo-signal.el: New file.
800
801         * elmo.el (toplevel): Require elmo-signal.
802         (flag-changing, flag-changed, cache-changed): New signal.
803         (elmo-folder): Remove slog `handlers'.
804         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
805         `elmo-folder-notify-event'.
806         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
807         (elmo-folder-unset-flag): Ditto.
808         (elmo-event-handler): Abolish.
809         (elmo-event-handler-flag-changed): Ditto.
810         (elmo-event-handler-cache-changed): Ditto.
811         (elmo-folder-add-handler): Ditto.
812         (elmo-folder-remove-handler): Ditto.
813         (elmo-folder-notify-event): Ditto.
814
815         * elmo-pipe.el (toplevel): Require elmo-signal.
816         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
817         (elmo-pipe-connect-signals): New function.
818         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
819         (elmo-folder-set-flag): Ditto.
820         (elmo-folder-unset-flag): Ditto.
821         (elmo-message-set-cached): Ditto.
822
823         * elmo-multi.el (toplevel): Require elmo-signal.
824         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
825         (elmo-multi-connect-signals): New function.
826         (elmo-multi-map-numbers): Ditto.
827         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
828         (elmo-message-fetch): Ditto.
829         (elmo-folder-set-flag): Ditto.
830         (elmo-folder-unset-flag): Ditto.
831
832         * elmo-filter.el (toplevel): Require elmo-signal.
833         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
834         (elmo-filter-connect-signals): New function.
835         (elmo-filter-add-flag-count): Ditto.
836         (elmo-message-fetch): Does not call
837         `elmo-filter-folder-countup-message-flags' and
838         `elmo-folder-notify-event'.
839         (elmo-message-set-cached): Ditto.
840         (elmo-folder-set-flag): Ditto.
841         (elmo-folder-unset-flag): Ditto.
842
843         * elmo-version.el (elmo-version): Up to 2.13.2.
844
845 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
846
847         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
848         `flags'.
849
850 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
851
852         * elmo-filter.el (elmo-message-set-cached): Call
853         `elmo-folder-notify-event' with event `cache-changed'.
854
855         * elmo-multi.el (elmo-message-set-cached): Ditto.
856
857         * elmo-pipe.el (elmo-message-set-cached): Ditto.
858
859 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
860
861         * elmo.el (elmo-folder-encache): Abolish.
862
863 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
864
865         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
866         (elmo-folder-next-message-number-dop): Return appropriate negative
867         integer.
868
869 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
870
871         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
872         clearing pending operations.
873         (elmo-folder-next-message-number-dop): Return appropriate negative
874         integer.
875
876 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
877
878         * elmo.el (toplevel): Added autoload setting for `md5'.
879         (elmo-msgdb-path-encode-threshold): New user option.
880         (elmo-folder-msgdb-path): Encode msgdb path if its length is
881         longer than `elmo-msgdb-path-encode-threshold'.
882
883         * elmo-flag.el (elmo-global-mark-migrate): Use
884         `elmo-folder-expand-msgdb-path' instead of
885         `elmo-folder-msgdb-path'.
886
887 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
888
889         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
890         element of the difference is nil.
891
892 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
893
894         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
895         to the check logic of file systems which are weak in colon character.
896
897 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
898
899         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
900
901 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
902
903         * elmo-maildir.el (elmo-maildir-move-file): New function.
904         (elmo-folder-append-buffer): Use it.
905         (elmo-folder-append-messages): Ditto.
906         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
907
908         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
909         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
910
911         * elmo-maildir.el (elmo-maildir-separator): New user option.
912         (elmo-maildir-adjust-separator): New macro.
913         (elmo-maildir-list-location): Use it.
914         (elmo-maildir-update-current): Ditto.
915         (elmo-maildir-set-mark): Ditto.
916         (elmo-maildir-delete-mark): Ditto.
917         (These changes are based on Hiroya Murata's patch [wl: 13437])
918
919 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
920
921         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
922
923 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
924
925         * elmo-flag.el (elmo-flag-valid-p): Simplify.
926         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
927         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
928
929 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
930
931         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
932         Use `with-temp-buffer'.
933
934 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
935
936         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
937
938         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
939         `wl-read-search-condition').
940         (elmo-read-search-condition-internal): Likewise.
941
942         * elmo-flag.el (elmo-flag-char-regexp): New constant.
943         (elmo-flag-valid-p): New function.
944         (elmo-folder-initialize): Check flag name is valid.
945
946 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
947
948         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
949         delimiter to obtain root mailbox itself.
950
951 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
952
953         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
954         type mismatch.
955
956 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
957
958         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
959         as t.
960
961 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
962
963         * elmo-shimbun.el (toplevel): Require cl at compile.
964
965         * elmo-nntp.el (toplevel): Ditto.
966
967         * elmo-nmz.el (toplevel): Ditto.
968
969         * elmo-multi.el (toplevel): Ditto.
970
971         * elmo-file.el (toplevel): Ditto.
972
973         * elmo-dop.el (toplevel): Ditto.
974
975         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
976
977 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
978
979         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
980         as nil.
981
982         * elmo.el (elmo-message-fetch): Return t even when the output buffer
983         size of elmo-message-fetch-internal is 0 byte.
984
985 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
986
987         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
988
989 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
990
991         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
992         always plugged.
993
994 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
995
996         * elmo-maildir.el (elmo-map-message-fetch): Call
997         `elmo-map-folder-set-flag'.
998
999         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1000         (elmo-message-fetch): Merge from
1001         `elmo-message-fetch-with-cache-process'.
1002
1003         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1004         (elmo-message-fetch): Define.
1005
1006         * elmo-nntp.el (elmo-message-fetch): Renamed from
1007         `elmo-message-fetch-with-cache-process'.
1008
1009         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1010         (elmo-message-fetch): Define.
1011
1012         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1013         search-key.
1014
1015         * elmo-shimbun.el (shimbun-mua-search-id): Use
1016         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1017         (elmo-shimbun-folder-shimbun-header): Ditto.
1018         (elmo-shimbun-get-headers): Ditto.
1019         (elmo-shimbun-update-overview): Ditto.
1020
1021         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1022
1023         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1024         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1025
1026 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1027
1028         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1029         message is cached.
1030         (elmo-message-fetch-string): Fixed argument.
1031
1032 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1033
1034         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1035         exchange order of arguments `section' and `unread'.
1036         (elmo-message-encache): Follow the API change.
1037         (elmo-message-match-condition): Ditto.
1038         (elmo-generic-folder-append-messages): Ditto.
1039         (elmo-message-fetch-string): New function.
1040
1041         * elmo-split.el (elmo-split-subr): Ditto.
1042
1043         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1044
1045         * elmo-pipe.el (elmo-message-fetch): Ditto.
1046
1047         * elmo-multi.el (elmo-message-fetch): Ditto.
1048
1049         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1050
1051         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1052
1053         * elmo-filter.el (elmo-message-fetch): Ditto.
1054
1055         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1056
1057         * elmo-imap4.el (mime-imap-location-section-body): Use
1058         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1059         follow the API change.
1060
1061 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1062
1063         * elmo-access.el: New file.
1064
1065         * elmo-null.el: Ditto.
1066
1067         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1068
1069 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1070
1071         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1072         (elmo-network-session): New attribute `last-accessed'.
1073         (elmo-network-get-session): Discard network cache if elapsed time
1074         since last-accessed is larger than elmo-network-session-idle-timeout.
1075
1076 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1077
1078         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1079         and added `number', `require-entireness'.
1080         (elmo-find-fetch-strategy): Rewrite.
1081         (elmo-message-fetch): Unset `unread' flag when argument unread is
1082         non-nil.
1083
1084         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1085
1086         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1087         (elmo-message-fetch): Notify event `flag-changed'.
1088
1089         * elmo-pipe.el: Likewise.
1090
1091         * elmo-mime.el (elmo-mime-entity): New class.
1092         (elmo-mime-entity-display-p): New generic function.
1093         (elmo-mime-entity-display): Ditto.
1094         (elmo-mime-entity-display-as-is): Ditto.
1095         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1096         elmo-mime-entity.
1097         (elmo-make-mime-message-location): Removed.
1098         (elmo-mime-message-display): Ditto.
1099         (elmo-mime-display-as-is): Ditto.
1100         (elmo-message-mime-entity): New function.
1101
1102         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1103
1104         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1105         change.
1106         (elmo-message-fetch): Re-count flagged message number and notify
1107         event `flag-changed'.
1108
1109         * elmo-version.el (elmo-version): Up to 2.13.1.
1110
1111 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1112
1113         * elmo-filter.el (elmo-message-field): Define.
1114         (elmo-message-set-field): Ditto.
1115
1116 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1117
1118         * elmo.el (elmo-message-set-cached): Call
1119         `elmo-folder-notify-event' with cache-changed.
1120         (elmo-event-handler-cache-changed): New generic function.
1121
1122 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1123
1124         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1125         instead of elmo-add-name-to-file.
1126         (elmo-folder-append-messages): Ditto.
1127
1128 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1129
1130         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1131
1132 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1133
1134         * elmo-version.el (elmo-version): Up to 2.13.0.
1135
1136         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1137         `auto'.
1138
1139         * modb-standard.el (modb-standard-economize-entity-size): Changed
1140         default value to `t'.
1141
1142         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1143         `standard'.
1144
1145         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1146         after parsing greeting string.
1147
1148 2004-11-23  Daishi Kato <daishi@axlight.com>
1149
1150         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1151         New user option.
1152         (elmo-spam-spamoracle-call): Use it.
1153
1154 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1155
1156         * elmo.el (elmo-message-accessible-p): Message in dop spool
1157         is accessible.
1158
1159 2004-11-23  Daishi Kato <daishi@axlight.com>
1160
1161         * elsp-spamoracle.el: New file.
1162
1163 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1164
1165         * elmo.el (elmo-message-flags-for-append): New function.
1166         (elmo-generic-folder-append-messages): Use it.
1167
1168         * elmo-split.el (elmo-split-subr): Ditto.
1169
1170         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1171         `flags' and use elmo-folder-append-buffer instead of
1172         write-region-as-binary.
1173         (elmo-dop-filter-pending-messages): New function.
1174         (elmo-folder-append-buffer-dop): Call
1175         elmo-dop-spool-folder-append-buffer with `flag'.
1176         (elmo-folder-set-flag-dop): Filter messages by
1177         elmo-dop-filter-pending-messages.
1178         (elmo-folder-unset-flag-dop): Ditto.
1179         (elmo-folder-append-buffer-dop-delayed): Use
1180         elmo-message-flags-for-append to get flags of the message and
1181         simplify.
1182
1183 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1184
1185         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1186
1187 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1188
1189         * elmo.el (elmo-folder): Added handlers slot.
1190         (elmo-event-handler): New class.
1191         (elmo-event-handler-flag-changed): New API.
1192         (elmo-folder-add-handler): New function.
1193         (elmo-folder-remove-handler): Ditto.
1194         (elmo-folder-notify-event): Ditto.
1195         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1196         `flag-changed'.
1197         (elmo-folder-unset-flag): Ditto.
1198
1199         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1200         (elmo-folder-unset-flag): Ditto.
1201
1202         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1203         (elmo-folder-unset-flag): Ditto.
1204
1205         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1206         (elmo-folder-unset-flag): Ditto.
1207
1208         * elmo-version.el (elmo-version): Up to 2.11.33.
1209
1210 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1211
1212         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1213
1214 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1215
1216         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1217
1218         * elmo-flag.el (elmo-folder-unset-flag): Define.
1219         (elmo-global-flag-detach): Do process when the flag is not target
1220         flag.
1221
1222 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1223
1224         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1225         variable.
1226         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1227
1228 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1229
1230         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1231         function.
1232         (elmo-folder-delete-messages): Detach messages before delete
1233         messages from target folder.
1234         (elmo-folder-detach-messages): Set updated number-list to slot.
1235
1236 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1237
1238         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1239
1240 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1241
1242         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1243
1244 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1245
1246         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1247         internal use only).
1248         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1249         not modified.
1250         (elmo-folder-delete-messages): Define.
1251         (elmo-folder-move-messages): Don't call
1252         `elmo-folder-detach-messages'.
1253         (elmo-folder-synchronize): Rewrite.
1254         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1255
1256         * elmo-util.el (elmo-last): New function.
1257         (elmo-set-list): Ditto.
1258         (elmo-number-set-delete-list): Ditto.
1259         (elmo-number-set-delete): Ditto.
1260
1261         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1262
1263         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1264         `elmo-folder-delete-messages' and don't delete location map.
1265         (elmo-folder-detach-messages): Define.
1266
1267         * elmo-imap4.el (elmo-folder-delete): Use
1268         `elmo-folder-delete-messages-internal' instead of
1269         `elmo-folder-delete-messages'.
1270
1271         * elmo-filter.el (elmo-folder-delete-messages): Call
1272         `elmo-folder-detach-messages'.
1273         (elmo-folder-detach-messages): Don't call
1274         `elmo-folder-detach-messages' for target folder.
1275
1276         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1277         message deletion is succeeded.
1278
1279         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1280
1281         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1282         from `elmo-folder-delete-messages'.
1283
1284         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1285
1286         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1287
1288         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1289
1290         * elmo-version.el (elmo-version): Up to 2.11.32.
1291
1292 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1293
1294         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1295         (elmo-global-flag-list): Added obsolete variable setting.
1296
1297         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1298
1299         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1300         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1301         `elmo-mime-display-header-analysis' is nil.
1302
1303         * elmo-flag.el (elmo-global-flags): Renamed from
1304         `elmo-global-flag-list' (All other related portions are changed).
1305         (elmo-local-flags): New variable.
1306         (elmo-local-flag-p): New function.
1307         (elmo-global-flag-set-internal): Cause an error when flag is not
1308         global.
1309
1310 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1311
1312         * elmo-util.el (elmo-concat-path): Treat empty path.
1313
1314 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1315
1316         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1317         field-or-fields).
1318         (elmo-split-address-match): Ditto.
1319         (elmo-split-equal): Ditto.
1320         (elmo-split-match): Ditto.
1321
1322 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1323
1324         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1325         (elmo-generic-folder-append-messages): If src message exists but
1326         has no flag, pass (read) for the FLAG argument of
1327         `elmo-folder-append-buffer'. Otherwise, pass nil.
1328
1329         * elmo-split.el (elmo-split-subr): Likewise.
1330
1331         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1332
1333         * elmo-multi.el (elmo-message-flags): Ditto.
1334
1335         * elmo-filter.el (elmo-message-flags): Ditto.
1336
1337         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1338         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1339         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1340         
1341 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1342
1343         * elmo-split.el (elmo-split-rule): Update comment.
1344         (elmo-split-address-equal): Allow 2nd argument to be a list.
1345         (elmo-split-address-match): Ditto.
1346         (elmo-split-equal): Ditto.
1347         (elmo-split-match): Ditto.
1348
1349 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1350
1351         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1352         (elmo-folder-append-msgdb): Don't treat `read'.
1353         (elmo-message-flags): Don't return `read'.
1354
1355         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1356         (elmo-folder-unset-read-delayed): Ditto.
1357
1358         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1359
1360 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1361
1362         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1363         deletion.
1364
1365 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1366
1367         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1368         header.
1369
1370 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1371
1372         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1373         here.
1374         (elmo-msgdb-save): Bind inhibit-quit.
1375         (modb-standard-message-entity): Ditto.
1376
1377 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1378
1379         * elmo-database.el: No need to require elmo-msgdb.
1380
1381 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1382
1383         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1384         instead of `elmo-list-subdirectories'.
1385
1386 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1387
1388         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1389         group entry.
1390         (elmo-folder-exists-p): "[" is empty.
1391         (elmo-folder-list-subfolders): Define.
1392         (elmo-folder-have-subfolder-p): Ditto.
1393
1394 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1395
1396         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1397
1398 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1399
1400         * elmo-filter.el (elmo-folder-local-p): Define.
1401
1402 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1403
1404         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1405         when entity is garbaged.
1406         (modb-standard-save-entity-1): Don't modify the original entity.
1407
1408 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1409
1410         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1411
1412 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1413
1414         * elmo.el (elmo-strict-folder-diff): Use
1415         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1416
1417 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1418
1419         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1420         (elmo-msgdb-message-number): Ditto.
1421         (elmo-msgdb-message-field): Ditto.
1422
1423         * modb-standard.el (modb-standard-economize-entity-size): New user
1424         option.
1425         (modb-standard-loaded-message-id): New inline function.
1426         (modb-standard-load-entity): Use it.
1427         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1428         throw message-id string away.
1429         (elmo-msgdb-flag-available-p): Define.
1430         (elmo-msgdb-message-number): Ditto.
1431         (elmo-msgdb-message-field): Ditto.
1432
1433         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1434         (suppoted -> supported).
1435         (modb-legacy-supported-flag-p): Ditto.
1436         (elmo-msgdb-set-flag): Ditto.
1437         (elmo-msgdb-unset-flag): Ditto.
1438         (elmo-msgdb-flag-available-p): Define.
1439
1440         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1441         is `t', treat it as legacy entity.
1442         
1443         * elmo.el (elmo-message-flag-available-p): New generic function.
1444         (elmo-message-number): Ditto.
1445         (elmo-message-field): Use `elmo-msgdb-message-field'.
1446
1447         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1448
1449         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1450         (elmo-message-number): Ditto.
1451
1452         * elmo-multi.el (elmo-message-number): Define.
1453         (elmo-message-flag-available-p): Ditto.
1454
1455         * elmo-filter.el (elmo-message-flag-available-p): Define.
1456         (elmo-message-number): Ditto.
1457
1458         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1459         (elmo-folder-initialize): Load `max-number'.
1460         (elmo-folder-commit): Save it.
1461         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1462         (elmo-global-flag-set-internal): Set up max-number slot.
1463
1464 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1465
1466         * elmo-version.el (elmo-version): Up to 2.11.31.
1467
1468 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1469
1470         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1471         unibyte string of the current buffer for the argument of `md5'
1472         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1473
1474 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1475
1476         * modb-legacy.el (modb-legacy-flag-list): New constant.
1477         (modb-legacy-suppoted-flag-p): New internal function.
1478         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1479         (elmo-msgdb-unset-flag): Ditto.
1480
1481 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1482
1483         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1484
1485         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1486         from msgdb.
1487
1488 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1489
1490         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1491         (follow the API change).
1492
1493         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1494
1495 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1496
1497         * modb-standard.el (modb-standard-digest-flags): Abolish.
1498         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1499
1500         * elmo-vars.el (elmo-digest-flags): New variable.
1501         (elmo-preserved-flags): Moved from elmo-flag.el.
1502
1503         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1504         (elmo-imap4-flag-to-imap-criteria): Ditto.
1505         (elmo-imap4-folder-list-flagged): Use it.
1506
1507         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1508
1509         * elmo.el (elmo-folder-count-flags): Changed return value.
1510
1511         * elmo-flag.el (elmo-preserved-flags): New variable.
1512         (elmo-get-global-flags): Use it.
1513
1514         * modb-standard.el (modb-standard-digest-flags): New variable.
1515         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1516         Changed behavior of `any'.
1517
1518         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1519         which are defined the Internet draft
1520         (draft-melnikov-imap-keywords-03.txt).
1521         (elmo-imap4-flags-to-imap): New function.
1522         (elmo-folder-append-buffer): Use it.
1523
1524         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1525         in the docstring.
1526
1527         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1528         avoid the bug of Emacs 21.3.
1529
1530 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1531
1532         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1533         function find-coding-system does not exist.
1534
1535 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1536
1537         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1538         parsing.
1539
1540 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1541
1542         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1543         response codes.
1544
1545 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1546
1547         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1548         (elmo-network-close-session): Follow the changes in
1549         `elmo-pop3-read-response'.
1550         (elmo-pop3-auth-user): Ditto.
1551         (elmo-pop3-auth-apop): Ditto.
1552         (elmo-network-initialize-session): Ditto.
1553         (elmo-network-authenticate-session): Ditto.
1554         (elmo-network-setup-session): Ditto.
1555         (elmo-folder-status): Ditto.
1556         (elmo-message-fetch-plugged): Ditto.
1557         (elmo-pop3-delete-msg): Ditto.
1558
1559 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1560
1561         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1562         on failure.
1563
1564 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1565
1566         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1567         style.
1568         (elmo-bind-directory): Ditto.
1569
1570 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1571
1572         * elmo.el (elmo-folder-append-messages): Note on return value.
1573         * elmo-archive.el (elmo-folder-append-messages): Don't return
1574         message numbers which could not be appended.
1575
1576 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1577
1578         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1579
1580 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1581
1582         * elmo-version.el (elmo-version): Up to 2.11.30.
1583
1584 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1585
1586         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1587         `mask'.
1588
1589         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1590
1591         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1592         (elmo-multi-split-numbers): Add elmo-folder object into each
1593         element of return value at first.
1594         (elmo-folder-delete-messages): Follow the above change.
1595         (elmo-folder-detach-messages): Ditto.
1596
1597         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1598         number which is synchronized in target folder.
1599
1600 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1601
1602         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1603         Change default value to symbol `all'.
1604         (elmo-map-message-fetch): Change condition to update overview
1605         follow the above.
1606
1607 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1608
1609         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1610         behavior to update overview.
1611         (elmo-shimbun-update-overview-folder-list): Note it.
1612
1613 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1614
1615         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1616         recursive call.
1617
1618 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1619
1620         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1621         buffer-disable-undo, it is unnecessary.
1622         (elmo-spam-register-good-messages): Ditto.
1623
1624         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1625         Ditto.
1626
1627         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1628
1629 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1630
1631         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1632         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1633         elmo-set-buffer-multibyte.
1634         (elmo-object-load): Ditto.
1635         (elmo-save-buffer): Ditto.
1636         (elmo-delete-char): Ditto.
1637         (elmo-file-field-primitive-condition-match): Ditto.
1638         (elmo-mime-string): Ditto.
1639
1640         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1641         (elmo-archive-field-condition-match): Ditto.
1642
1643         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1644
1645         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1646
1647         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1648         (elmo-nntp-msgdb-create-message): Ditto.
1649
1650         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1651
1652         * elmo.el (elmo-message-match-condition): Ditto.
1653         (elmo-message-match-condition): Ditto.
1654
1655         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1656         Ditto.
1657
1658         * elmo-version.el (elmo-version): Up to 2.11.29.
1659
1660         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1661         (elsp-header): New backend.
1662
1663         * elmo-util.el (elmo-decoded-field-body): New function.
1664
1665 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1666
1667         * elmo-version.el (elmo-version): Up to 2.11.28.
1668
1669 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1670
1671         * elmo-filter.el: Rewrite.
1672
1673         * elmo-version.el (elmo-version): Up to 2.11.27.
1674
1675 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1676
1677         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1678         msgdb path for the localdir folder with absolute path.
1679
1680         * utf7.el: Synch up with latest gnus/utf7.el;
1681         Modified for latest Emacs.
1682
1683 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1684
1685         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1686         shimbun backend couldn't open.
1687
1688 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1689
1690         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1691         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1692         when a destination folder is a filter folder.
1693
1694 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1695
1696         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1697         (elmo-generic-folder-append-messages): Call elmo-message-flags
1698         with argument `msgid'.
1699
1700         * elmo-split.el (elmo-split-subr): Ditto.
1701
1702         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1703
1704         * elmo-multi.el (elmo-message-flags): Ditto.
1705
1706 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1707
1708         * elmo.el (elmo-folder): Add new slot `flag-table'.
1709         (elmo-folder-flag-table): New API.
1710         (elmo-folder-close-flag-table): Ditto.
1711         (elmo-folder-preserve-flags): New function.
1712         (elmo-generic-folder-append-messages): Use
1713         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1714         Flag of a non-registered message, it sets to nil.
1715         Does not set flag to flag-table.
1716
1717         * elmo-maildir.el (elmo-folder-append-buffer): Use
1718         `elmo-folder-preserve-flags'.
1719         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1720         `elmo-folder-close-flag-table'.
1721
1722         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1723         (elmo-archive-folder-append-buffer): Use
1724         `elmo-folder-preserve-flags'.
1725
1726         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1727
1728         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1729
1730         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1731         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1732         `elmo-folder-close-flag-table'.
1733
1734         * elmo-version.el (elmo-version): Up to 2.11.26.
1735
1736 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1737
1738         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1739
1740         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1741         md5's 4th and 5th argument (non-existent in flim one).
1742
1743 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1744
1745         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1746         message, It sets to nil.
1747
1748 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1749
1750         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1751         list is non-nil.
1752
1753 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1754
1755         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1756
1757         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1758
1759         * elmo-util.el (elmo-uniq-sorted-list): New function.
1760         (elmo-make-number-list): Ditto.
1761         (elmo-number-set-to-number-list): Use elmo-make-number-list
1762         and don't use nreverse.
1763
1764 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1765
1766         * elmo-version.el (elmo-version): Up to 2.11.25.
1767
1768 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1769
1770         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1771         field not exists in message, Use md5 message digest of header.
1772
1773 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1774
1775         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1776         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1777         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1778         * elmo-split.el (elmo-split-subr): Check return value of
1779         elmo-folder-append-buffer.
1780
1781         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1782         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1783
1784         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1785         message-id.
1786
1787 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1788
1789         * elmo-split.el (elmo-split-subr): Append message with flag.
1790
1791         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1792         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1793         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1794
1795 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1796
1797         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1798         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1799         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1800
1801 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1802
1803         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1804         with a function call of `process-buffer'.  All callers are updated.
1805         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1806         Remove redundant `set-buffer' in a while loop.
1807
1808 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1809
1810         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1811         calls.
1812
1813 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1814
1815         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1816         elsp-spamfilter-register-buffer-internal with current buffer.
1817         (elmo-spam-register-spam-buffer): Ditto.
1818         (elmo-spam-register-good-buffer): Ditto.
1819
1820 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1821
1822         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1823         if it is not contained in the response(A workaround for courier-imap).
1824
1825 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1826
1827         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1828         parenthesis.
1829
1830 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1831
1832         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1833         range.
1834
1835 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1836
1837         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1838         of nconc.
1839
1840         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1841         argument handler.
1842         (elmo-msgdb-message-match-condition): Follow the change above.
1843
1844 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1845
1846         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1847         folder name.
1848
1849 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1850
1851         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1852
1853 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1854
1855         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1856
1857 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1858
1859         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1860         not found.
1861
1862 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1863
1864         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1865         value.
1866         (elmo-file-command-argument): Undo last change for cygwin.
1867         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1868         Don't return nil.
1869         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1870
1871 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1872
1873         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1874         value returned from elmo-file-find is nil.
1875
1876 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1877
1878         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1879         to elmo-vars.el.
1880
1881         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1882         instead of insert-file-contents-as-binary.
1883         (elmo-message-set-field): New generic function.
1884
1885         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1886         behavior change on `split-string'.
1887
1888         * elmo-file.el (elmo-file-find): New function.
1889         (elmo-file-command): New user option.
1890         (elmo-file-command-argument): Ditto.
1891         (elmo-file-fetch-max-size): Ditto.
1892         (elmo-file-detect-format): New function.
1893         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1894         Use elmo-file-detect-format.
1895         (elmo-map-folder-list-message-locations): Don't treat directories.
1896
1897 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1898
1899         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1900         (elmo-passwd-alist-clear): Shred password before clear.
1901         (elmo-remove-passwd): Remove all mached pair.
1902
1903 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1904
1905         * elmo.el (elmo-folder-synchronize): Fix description of the return
1906         value.
1907
1908 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1909
1910         * elmo.el (elmo-message-fetch-bodystructure): New method.
1911         (elmo-message-fetch-bodystructure): Define default.
1912
1913         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1914         elmo-message-fetch-bodystructure.
1915         (elmo-message-fetch-bodystructure): Define.
1916
1917         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1918
1919 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1920
1921         * elmo-filter.el (elmo-message-folder): Define.
1922
1923 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1924
1925         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1926         elmo-delete-cr-buffer.
1927
1928         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1929
1930         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1931
1932         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1933
1934         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1935         type seems to be a text.
1936
1937 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1938
1939         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1940         (elmo-spam-register-good-buffer): Ditto.
1941         (elmo-spam-spamassassin-register-messages): Ditto.
1942
1943         * elmo-util.el (elmo-string-member-ignore-case): Define with
1944         static-cond.
1945
1946 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1947
1948         * elmo.el (elmo-folder-type): Undo last change.
1949
1950         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1951
1952         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1953         warnings.
1954
1955         * elmo-file.el: New file.
1956         
1957         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1958
1959         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1960         variable.
1961         (elmo-spam-spamassassin-register-messages): New inline function.
1962         (elmo-spam-register-spam-messages): Define.
1963         (elmo-spam-register-good-messages): Ditto.
1964
1965         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1966         Fixed typo.
1967
1968         * elmo.el (toplevel): Added autoload setting for
1969         `elmo-get-global-flags'.
1970         (elmo-message-has-global-flag-p): New function.
1971         (elmo-message-set-global-flags): Ditto.
1972         (elmo-folder-type): Improvement for name: format.
1973
1974         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
1975         availability of keyword flags.
1976         (elmo-imap4-folder-list-flagged): Treat keyword flags.
1977         (elmo-folder-list-flagged-plugged): Renamed from
1978         elmo-folder-list-flagged-unplugged.
1979         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
1980         accept any flag as keyword flag.
1981         (elmo-folder-set-flag-plugged): Accept keyword flags.
1982         (toplevel): Added autoload setting for `elmo-get-global-flags'.
1983
1984         * elmo-flag.el (elmo-get-global-flags): New function.
1985
1986         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
1987         folders.
1988
1989         * elmo-version.el (elmo-version): Up to 2.11.24.
1990
1991 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1992
1993         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
1994         elmo-multiple-field-body instead of std11-field-body to check all
1995         headers.
1996
1997 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1998
1999         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2000         or "size".
2001
2002 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2003
2004         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2005         unintern is unbound.
2006
2007 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2008
2009         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2010         Protect from infinite loop.
2011
2012 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2013
2014         * elsp-bogofilter.el
2015         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2016         (elmo-spam-bogofilter-register-messages): New internal function.
2017         (elmo-spam-register-spam-messages): Define.
2018         (elmo-spam-register-good-messages): Ditto.
2019
2020 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2021
2022         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2023         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2024         (elmo-spam-bogofilter-call): Fixed the last change.
2025         (elmo-spam-bogofilter-arguments): Ditto.
2026
2027         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2028         Follow the options change of latest bogofilter.
2029
2030         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2031         (elmo-spam-bogofilter-good-switch): Ditto.
2032         (elmo-spam-bogofilter-arguments-alist): New user option.
2033         (elmo-spam-bogofilter-debug): Ditto.
2034         (elmo-spam-bogofilter-call): Renamed from
2035         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2036         is non-nil, insert output in buffer for debug.
2037         (elmo-spam-bogofilter-arguments): New macro.
2038         (elmo-spam-buffer-spam-p): Use it.
2039         (elsp-bogofilter-register-buffer): Ditto.
2040
2041 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2042
2043         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2044         regexp.
2045
2046 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2047
2048         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2049         value as "ruby".
2050         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2051         (elmo-spam-bsfilter-program): Set default value as full path for
2052         `bsfilter'.
2053         (elmo-spam-bsfilter-debug): New user option.
2054         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2055         non-nil, insert output in buffer for debug. Fix treating of
2056         argument.
2057
2058 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2059
2060         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2061         `elmo-maildir-flag-specs' element instead of one.
2062         (elmo-map-folder-unset-flag): Ditto.
2063         (Reported by Ken Makimura <macky@astem.or.jp>)
2064
2065         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2066         (elmo-folder-unset-flag-plugged): Ditto.
2067
2068 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2069
2070         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2071         to `reads' slot only if `in-msgdb' is nil.
2072
2073 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2074
2075         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2076         and complement argument list.
2077
2078 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2079
2080         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2081         instead of elmo-folder-list-flagged.
2082
2083 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2084
2085         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2086
2087         * elsp-bsfilter.el: New file.
2088
2089         * elmo-pipe.el (elmo-folder-list-unreads,
2090         elmo-folder-list-answereds,
2091         elmo-folder-list-importants,
2092         elmo-folder-flag-as-important,
2093         elmo-folder-unflag-important,
2094         elmo-folder-flag-as-read,
2095         elmo-folder-unflag-read,
2096         elmo-folder-flag-as-answered,
2097         elmo-folder-unflag-answered): Remove.
2098         (elmo-folder-set-flag): Define.
2099         (elmo-folder-unset-flag): Ditto.
2100
2101         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2102         (elmo-folder-set-flag): Define.
2103         (elmo-folder-unset-flag): Ditto.
2104         (elmo-folder-list-unreads): Remove.
2105         (elmo-folder-list-flagged): Define.
2106
2107         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2108         (elmo-folder-list-unreads,
2109         elmo-folder-list-importants,
2110         elmo-folder-list-answereds,
2111         elmo-folder-list-unreads-plugged,
2112         elmo-folder-list-importants-plugged,
2113         elmo-folder-list-answereds-plugged): Remove.
2114         (elmo-folder-list-flagged-plugged): New method.
2115         (elmo-folder-unflag-important,
2116         elmo-folder-flag-as-important,
2117         elmo-folder-unflag-read,
2118         elmo-folder-flag-as-read,
2119         elmo-folder-unflag-answered,
2120         elmo-folder-flag-as-answered,
2121         elmo-folder-flag-as-read-unplugged,
2122         elmo-folder-unflag-read-unplugged,
2123         elmo-folder-flag-as-important-unplugged,
2124         elmo-folder-unflag-important-unplugged,
2125         elmo-folder-flag-as-answered-unplugged,
2126         elmo-folder-unflag-answered-unplugged): Remove.
2127         (elmo-folder-set-flag): Define.
2128         (elmo-folder-unset-flag): Ditto.
2129         (elmo-folder-set-flag-unplugged): Ditto.
2130         (elmo-folder-unset-flag-unplugged): Ditto.
2131
2132         * elmo-multi.el (elmo-folder-list-unreads,
2133         elmo-folder-list-answereds,
2134         elmo-folder-list-importants,
2135         elmo-folder-flag-as-important,
2136         elmo-folder-unflag-important,
2137         elmo-folder-flag-as-read,
2138         elmo-folder-unflag-read,
2139         elmo-folder-flag-as-answered,
2140         elmo-folder-unflag-answered): Remove.
2141         (elmo-folder-set-flag): Define.
2142         (elmo-folder-unset-flag): Ditto.
2143
2144         * elmo-map.el (elmo-map-folder-unflag-important,
2145         elmo-map-folder-flag-as-important,
2146         elmo-map-folder-unflag-read,
2147         elmo-map-folder-flag-as-read,
2148         elmo-map-folder-unflag-answered,
2149         elmo-map-folder-flag-as-answered): Remove.
2150         (elmo-map-folder-set-flag): New method.
2151         (elmo-map-folder-unset-flag): Ditto.
2152         (elmo-map-folder-list-unreads,
2153         elmo-map-folder-list-importants,
2154         elmo-map-folder-list-answereds): Remove.
2155         (elmo-folder-list-flagged-internal): Define.
2156         (elmo-map-folder-list-flagged): New method.
2157
2158         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2159         (elmo-map-folder-list-unreads,
2160         elmo-map-folder-list-importants,
2161         elmo-map-folder-list-flagged): Remove.
2162         (elmo-map-folder-list-flagged): Define.
2163         (elmo-map-folder-flag-as-important,
2164         elmo-map-folder-unflag-important,
2165         elmo-map-folder-flag-as-read,
2166         elmo-map-folder-unflag-read,
2167         elmo-map-folder-flag-as-answered,
2168         elmo-map-folder-unflag-answered): Remove.
2169         (elmo-maildir-set-mark-messages): New internal function.
2170         (elmo-map-folder-set-flag): Define.
2171         (elmo-map-folder-unset-flag): Ditto.
2172
2173         * elmo.el (toplevel): Added autoload setting for
2174         `elmo-folder-list-global-flag-messages'.
2175         (elmo-folder-list-unreads,
2176         elmo-folder-list-importants,
2177         elmo-folder-list-answereds): Remove.
2178         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2179         Return a list whitch merged with messages have global flag.
2180         (elmo-folder-list-flagged-internal): New method.
2181         (elmo-folder-unflag-important,
2182         elmo-folder-flag-as-important,
2183         elmo-folder-unflag-read,
2184         elmo-folder-flag-as-read,
2185         elmo-folder-unflag-answered,
2186         elmo-folder-flag-as-answered): Remove.
2187         (elmo-folder-set-flag): New method.
2188         (elmo-folder-unset-flag): Ditto.
2189         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2190         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2191
2192         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2193         (elmo-folder-list-unreads-plugged,
2194         elmo-folder-list-importants-plugged,
2195         elmo-folder-list-answereds-plugged,
2196         elmo-folder-list-flagged-unplugged,
2197         elmo-folder-unflag-important-plugged,
2198         elmo-folder-flag-as-important-plugged,
2199         elmo-folder-unflag-read-plugged,
2200         elmo-folder-flag-as-read-plugged,
2201         elmo-folder-unflag-answered-plugged,
2202         elmo-folder-flag-as-answered-plugged): Remove.
2203         (elmo-folder-set-flag-plugged,
2204         elmo-folder-unset-flag-plugged): Define.
2205
2206         * elmo-flag.el (elmo-folder-initialize): Register to
2207         `elmo-global-flag-list' if flag is not global.
2208         (elmo-folder-append-messages): Set flag to source messages.
2209
2210         * elmo-filter.el (elmo-filter-folder-list-unreads,
2211         elmo-folder-list-unreads,
2212         elmo-filter-folder-list-importants,
2213         elmo-folder-list-importants,
2214         elmo-folder-flag-as-read,
2215         elmo-folder-unflag-read,
2216         elmo-folder-flag-as-important,
2217         elmo-folder-unflag-important,
2218         elmo-folder-flag-as-answered,
2219         elmo-folder-unflag-answered): Remove.
2220         (elmo-folder-set-flag): Define.
2221         (elmo-folder-unset-flag): Ditto.
2222
2223         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2224         elmo-folder-unflag-read-dop,
2225         elmo-folder-flag-as-important-dop,
2226         elmo-folder-unflag-important-dop,
2227         elmo-folder-flag-as-answered-dop,
2228         elmo-folder-unflag-answered-dop): Remove.
2229         (elmo-folder-set-flag-dop,
2230         elmo-folder-unset-flag-dop,
2231         elmo-folder-set-important-delayed,
2232         elmo-folder-unset-important-delayed,
2233         elmo-folder-set-read-delayed,
2234         elmo-folder-unset-read-delayed,
2235         elmo-folder-set-answered-delayed,
2236         elmo-folder-unset-answered-delayed): New function.
2237         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2238         (elmo-dop-queue-method-name-alist): Ditto.
2239
2240         * elmo-version.el (elmo-version): Up to 2.11.23.
2241
2242 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2243
2244         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2245
2246         * elsp-sa.el: New file.
2247
2248 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2249
2250         * modb-standard.el (modb-standard-message-entity): New function.
2251         (elmo-msgdb-message-entity): Use it.
2252
2253 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2254
2255         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2256         behavior when one-level is nil.
2257
2258         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2259
2260         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2261
2262 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2263
2264         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2265         get max number.
2266         (elmo-generic-folder-diff): Ditto.
2267
2268         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2269         (elmo-folder-update-number): Ditto.
2270
2271         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2272         (elmo-folder-next-message-number-dop): Ditto.
2273
2274 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2275
2276         * elmo-filter.el (elmo-folder-msgdb-create): Use
2277         `elmo-message-entity' and `elmo-message-flags' instead of
2278         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2279
2280 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2281
2282         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2283         `if-exists'.
2284
2285 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2286
2287         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2288
2289         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2290
2291         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2292
2293 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2294
2295         * elmo-version.el (elmo-version): Up to 2.11.22.
2296
2297 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2298
2299         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2300
2301 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2302
2303         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2304         if the message dose not exist.
2305
2306 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2307
2308         * elmo-version.el (elmo-version): Up to 2.11.21.
2309
2310 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2311
2312         * modb-standard.el (toplevel): Don't require mime.
2313
2314 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2315
2316         * elsp-bogofilter.el (toplevel): Don't require path-util.
2317         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2318         (elmo-spam-bogofilter-header): Abolish.
2319         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2320         (elmo-spam-bogofilter-args): New user option.
2321         (elsp-bogofilter-call-bogofilter): New internal function.
2322         (elmo-spam-buffer-spam-p): Use it.
2323         (elsp-bogofilter-register-buffer): Renamed from
2324         `elmo-spam-bogofilter-register-buffer';
2325         Use `elsp-bogofilter-call-bogofilter'.
2326         (elmo-spam-register-spam-buffer): Follow the change above.
2327         (elmo-spam-register-good-buffer): Ditto.
2328
2329 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2330
2331         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2332         message-id is nil do nothing.
2333
2334 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2335
2336         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2337         Revival.
2338         (elmo-imap4-session): Removed use-flag slot.
2339         (elmo-imap4-session-select-mailbox): Undo last change.
2340         (elmo-folder-use-flag-p): Use
2341         elmo-imap4-disuse-server-flag-mailbox-regexp.
2342
2343 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2344
2345         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2346         (elmo-imap4-session-select-mailbox): Set it up.
2347         (elmo-folder-use-flag-p): Return value of use-flag slot.
2348
2349 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2350
2351         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2352         message-id is nil.
2353         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2354
2355         * modb-entity.el (elmo-message-entity-handler): Likewise.
2356
2357 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2358
2359         * elmo.el (toplevel): Remove setting of autoloding for
2360         elmo-global-flag-initialize.
2361         (elmo-init): Don't call elmo-global-flag-initialize.
2362         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2363
2364         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2365         (elmo-global-mark-migrate): Don't call it.
2366         (elmo-global-mark-upgrade): Ditto.
2367
2368 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2369
2370         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2371         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2372
2373         * elmo-vars.el (elmo-init-hook): New user option.
2374
2375         * elmo.el (elmo-init): Run the elmo-init-hook.
2376
2377         * elmo-flag.el (elmo-global-mark-migrate): New function.
2378
2379 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2380
2381         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2382         Undo last change (move to elmo-msgdb-unset-flag).
2383         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2384         flag is unset.
2385
2386 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2387
2388         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2389         read flag is set.
2390         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2391         (elmo-msgdb-unset-flag): Ditto.
2392
2393 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2394
2395         * elmo-split.el (elmo-split): Return split message count.
2396
2397 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2398
2399         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2400         is nil.
2401
2402 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2403
2404         * elmo.el (elmo-folder-unflag-important): Call
2405         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2406         a symbol `always'.
2407
2408         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2409         before unset flag.
2410         (elmo-global-flag-detach): Delete the message from flag folder, if
2411         `delete-if-none' is a symbol `always'.
2412
2413 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2414
2415         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2416         `elmo-spam-spamfilter-decode-buffer'.
2417         (elsp-spamfilter-register-buffer-internal): New internal function.
2418         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2419         (elmo-spam-register-spam-buffer): Ditto.
2420         (elmo-spam-register-good-buffer): Ditto.
2421
2422         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2423         change.
2424         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2425         (elmo-spam-register-spam-buffer): Follow the API change.
2426         (elmo-spam-register-good-buffer): Ditto.
2427
2428         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2429         (elmo-split-spam-p): Added argument plist; Call
2430         `elmo-spam-buffer-spam-p' with new argument register.
2431
2432         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2433         `register'.
2434         (elmo-spam-message-spam-p): Ditto.
2435         (elmo-spam-register-spam-buffer): Added optional argument
2436         `restore'.
2437         (elmo-spam-register-good-buffer): Ditto.
2438         (elmo-spam-register-spam-messages): Ditto.
2439         (elmo-spam-register-good-messages): Ditto.
2440
2441 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2442
2443         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2444         register into good corpus.
2445         (elmo-spam-register-good-buffer): Fixed to register into bad
2446         corpus.
2447
2448 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2449
2450         * elmo-version.el (elmo-version): Up to 2.11.20.
2451
2452         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2453         change.
2454
2455         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2456         flag without depending on \Recent flag.
2457
2458 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2459
2460         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2461         (elmo-spam-modified-p): Defined.
2462         (elmo-spam-save-status): Set `modified' slot to nil.
2463         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2464         (elmo-spam-register-good-buffer): Ditto.
2465
2466         * elmo-spam.el (elmo-spam-modified-p): New API.
2467
2468 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2469
2470         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2471         duplicate definition.
2472
2473         * elmo-util.el (elmo-unfold-field-body): New function.
2474         (elmo-msgdb-get-message-id-from-buffer): Use it.
2475
2476         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2477         Fixed the last change; Use elmo-unfold-field-body.
2478
2479 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2480
2481         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2482         Unfold date value.
2483
2484 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2485
2486         * elmo-spam.el (elmo-spam-save-status): New API.
2487
2488         * elsp-spamfilter.el: New file.
2489
2490 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2491
2492         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2493
2494 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2495
2496         * elmo-split.el (elmo-split-spam-p): New function.
2497
2498         * elmo-spam.el: New file.
2499
2500         * elsp-bogofilter.el: Ditto.
2501
2502 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2503
2504         * elmo.el (elmo-folder-next-message-number): New API.
2505         (elmo-folder-next-message-number): Define.
2506         (elmo-message-field): Don't check folder length.
2507
2508         * elmo-net.el (elmo-folder-next-message-number): Define.
2509         (elmo-folder-next-message-number-unplugged): Define.
2510
2511         * elmo-map.el (elmo-folder-next-message-number): Define.
2512         (elmo-folder-delete-messages): Clear hash value.
2513
2514         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2515
2516         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2517         (elmo-folder-delete-messages-dop-delayed): Always return t.
2518
2519         * elmo-version.el (elmo-version): Up to 2.11.19.
2520
2521 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2522
2523         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2524         change.
2525
2526         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2527         identical cons cell into the mark-alist and the hash table.
2528
2529 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2530
2531         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2532         elmo-folder-list-messages with argument `visible-only' as t.
2533
2534         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2535         (elmo-folder-msgdb-create): Check the target folder.
2536
2537 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2538
2539         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2540         `permanentflag' instead of `flags'.
2541         (elmo-folder-open): Ditto.
2542         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2543         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2544         (elmo-folder-use-flag-p): Always return t.
2545         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2546         `permanentflags' does not exist.
2547         (elmo-folder-open): Ditto.
2548
2549 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2550
2551         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2552         is nil.
2553         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2554
2555         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2556         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2557         response.
2558         (elmo-folder-open): Ditto.
2559         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2560         slot of the session includes the flag.
2561         (elmo-imap4-session-flag-available-p): New function.
2562         (elmo-imap4-folder-list-flagged): Ditto.
2563         (elmo-folder-list-unreads-plugged): Use it.
2564         (elmo-folder-list-importants-plugged): Ditto.
2565         (elmo-folder-list-answereds-plugged): Ditto.
2566         (elmo-imap4-search-internal-primitive): Ditto.
2567         (elmo-imap4-folder-list-any-plugged,
2568         elmo-imap4-folder-list-digest-plugged): Abolish.
2569
2570         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2571         if numbers is nil.
2572
2573 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2574
2575         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2576
2577 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2578
2579         * elmo-util.el (elmo-get-hash-val): Simplify.
2580         (elmo-set-hash-val): Rewrite.
2581
2582 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2583
2584         * elmo.el (elmo-folder-list-messages): Append killed messages into
2585         result if `visible-only' is nil and `in-msgdb' is non-nil.
2586
2587         * elmo-util.el (elmo-uniq-list): Added optional argument
2588         `delete-function'.
2589
2590         * modb.el (elmo-msgdb-flag-count): New API.
2591
2592         * modb-standard.el (modb-standard): Added slot flag-count.
2593         (modb-standard-countup-flags): New function.
2594         (modb-standard-load-flag): Call it.
2595         (elmo-msgdb-append): Ditto.
2596         (elmo-msgdb-clear): Clear slot flag-count.
2597         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2598         (elmo-msgdb-unset-flag): Treat `all' flag and call
2599         modb-standard-countup-flags.
2600         (elmo-msgdb-flag-count): Define.
2601         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2602         (elmo-msgdb-delete-messages): Ditto.
2603
2604         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2605         (elmo-msgdb-flag-count): Define.
2606
2607         * elmo.el (elmo-folder-list-messages): Undo last change.
2608         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2609         (elmo-folder-kill-messages): Unset all flags to numbers.
2610
2611         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2612         elmo-folder-kill-messages.
2613
2614         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2615         (elmo-nntp-folder-delete-messages): Abolish.
2616
2617         * elmo-version.el (elmo-version): Up to 2.11.18.
2618
2619 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2620
2621         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2622         (elmo-folder-kill-messages-range): New function.
2623         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2624         instead of elmo-folder-kill-messages-before.
2625
2626 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2627
2628         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2629         elmo-imap4-current-msgdb to decide entity handler.
2630
2631 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2632
2633         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2634
2635         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2636         inline function.
2637         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2638         (elmo-msgdb-overview-entity-set-number,
2639         elmo-msgdb-overview-entity-get-references,
2640         elmo-msgdb-overview-entity-set-references,
2641         elmo-msgdb-overview-entity-get-from-no-decode,
2642         elmo-msgdb-overview-entity-get-from,
2643         elmo-msgdb-overview-entity-set-from,
2644         elmo-msgdb-overview-entity-get-subject,
2645         elmo-msgdb-overview-entity-get-subject-no-decode,
2646         elmo-msgdb-overview-entity-set-subject,
2647         elmo-msgdb-overview-entity-get-date,
2648         elmo-msgdb-overview-entity-set-date,
2649         elmo-msgdb-overview-entity-get-to,
2650         elmo-msgdb-overview-entity-get-cc,
2651         elmo-msgdb-overview-entity-get-size,
2652         elmo-msgdb-overview-entity-set-size,
2653         elmo-msgdb-overview-entity-get-extra,
2654         elmo-msgdb-overview-entity-set-extra,
2655         elmo-msgdb-overview-entity-get-extra-field,
2656         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2657         (elmo-msgdb-make-index): Use
2658         `elmo-msgdb-overview-entity-get-number-internal'.
2659         (elmo-msgdb-clear-index): Ditto.
2660         (elmo-msgdb-append-entity): Ditto;
2661         Use `elmo-msgdb-overview-entity-get-id-internal'.
2662
2663         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2664         elmo-msgdb-overview-entity-set-number,
2665         elmo-msgdb-overview-entity-get-references,
2666         elmo-msgdb-overview-entity-set-references,
2667         elmo-msgdb-overview-entity-get-from-no-decode,
2668         elmo-msgdb-overview-entity-get-from,
2669         elmo-msgdb-overview-entity-set-from,
2670         elmo-msgdb-overview-entity-get-subject,
2671         elmo-msgdb-overview-entity-get-subject-no-decode,
2672         elmo-msgdb-overview-entity-set-subject,
2673         elmo-msgdb-overview-entity-get-date,
2674         elmo-msgdb-overview-entity-set-date,
2675         elmo-msgdb-overview-entity-get-to,
2676         elmo-msgdb-overview-entity-get-cc,
2677         elmo-msgdb-overview-entity-get-size,
2678         elmo-msgdb-overview-entity-set-size,
2679         elmo-msgdb-overview-entity-get-extra,
2680         elmo-msgdb-overview-entity-set-extra,
2681         elmo-msgdb-overview-entity-get-extra-field,
2682         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2683         and rewrote for backward compatibility.
2684
2685 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2686
2687         * elmo.el (elmo-message-entity-number,
2688         elmo-message-entity-set-number,
2689         elmo-message-entity-field,
2690         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2691
2692         * elmo-msgdb.el (elmo-message-entity-number,
2693         elmo-message-entity-set-number,
2694         elmo-message-entity-field,
2695         elmo-message-entity-set-field): Moved from elmo.el.
2696
2697 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2698
2699         * elmo.el (toplevel): Changed definition orders.
2700
2701 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2702
2703         * modb.el (elmo-msgdb-search): New API .
2704         (elmo-msgdb-match-condition): Ditto.
2705
2706         * modb-standard.el (elmo-msgdb-search): Define.
2707
2708         * modb-legacy.el (elmo-msgdb-search): Ditto.
2709
2710         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2711         from elmo-msgdb-match-condition-internal.
2712
2713         * elmo.el (elmo-folder-search-fast): Abolish.
2714         (elmo-folder-search): Use elmo-msgdb-search and
2715         elmo-with-progress-display.
2716
2717         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2718         as msgdb API.
2719
2720         * elmo.el (elmo-folder): Remove slot message-modified and
2721         flag-modified.
2722         (elmo-folder-set-message-modified): Abolish.
2723         (elmo-generic-folder-commit): Follow the change above.
2724         (elmo-folder-synchronize): Ditto.
2725
2726         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2727
2728         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2729
2730         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2731
2732 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2733
2734         * modb-standard.el (modb-standard-make-message-entity,
2735         elmo-msgdb-make-message-entity,
2736         elmo-msgdb-create-message-entity-from-buffer,
2737         elmo-msgdb-message-entity-number,
2738         elmo-msgdb-message-entity-set-number,
2739         elmo-msgdb-message-entity-field,
2740         elmo-msgdb-message-entity-set-field,
2741         elmo-msgdb-copy-message-entity,
2742         elmo-msgdb-match-condition-internal): Remove.
2743
2744         * modb-entity.el: New file (again).
2745
2746         * modb.el (toplevel): Require modb-entity.
2747         (elmo-msgdb-message-entity-handler): New method.
2748
2749         * modb-standard.el (modb-standard-entity-id): Use
2750         elmo-message-entity-handler.
2751         (modb-standard-load-entity): Ditto.
2752         (elmo-msgdb-append-entity): Ditto.
2753         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2754
2755         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2756         elmo-msgdb-decoded-cache-hashtb,
2757         (modb-legacy-make-message-entity,
2758         elmo-msgdb-make-message-entity,
2759         elmo-msgdb-create-message-entity-from-buffer,
2760         elmo-msgdb-message-entity-number,
2761         elmo-msgdb-message-entity-set-number,
2762         elmo-msgdb-message-entity-field,
2763         elmo-msgdb-message-entity-set-field,
2764         elmo-msgdb-copy-message-entity,
2765         elmo-msgdb-match-condition-internal,
2766         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2767
2768         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2769         (elmo-message-entity-set-number): Ditto.
2770         (elmo-message-entity-field): Ditto.
2771         (elmo-message-entity-set-field): Ditto.
2772
2773         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2774
2775         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2776
2777         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2778
2779         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2780         (elmo-nntp-msgdb-create-message): Ditto.
2781
2782         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2783         (elmo-folder-msgdb-create): Add unread flag.
2784
2785         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2786
2787         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2788
2789         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2790
2791         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2792
2793         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2794         elmo-msgdb-messge-entity-handler.
2795         * elmo-version.el (elmo-version): Up to 2.11.17.
2796
2797 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2798
2799         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2800         change.
2801
2802 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2803
2804         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2805
2806         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2807         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2808         (elmo-msgdb-flag-table): Ditto.
2809         (elmo-msgdb-sort-by-date): Ditto.
2810
2811         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2812
2813         * modb-standard.el (toplevel): Require mime.
2814         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2815         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2816         elmo-msgdb-message-entity-number.
2817         (elmo-msgdb-append-entity): Ditto.
2818         (elmo-msgdb-create-message-entity-from-file): Remove.
2819         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2820         corresponds to the entity.
2821         (elmo-msgdb-message-entity-number): Do nothing currently.
2822         (elmo-msgdb-message-entity-field): Ditto.
2823         (elmo-msgdb-message-entity-set-field): Ditto.
2824         (elmo-msgdb-copy-message-entity): Ditto.
2825         (elmo-msgdb-match-condition-internal): Ditto.
2826
2827         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2828         elmo-util.el.
2829         (elmo-msgdb-create-message-entity-from-file): Remove.
2830
2831         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2832         modb-legacy.el.
2833         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2834
2835         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2836
2837 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2838
2839         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2840         (elmo-msgdb-message-entity-field): Ditto.
2841         (elmo-msgdb-message-entity-number): Ditto.
2842
2843 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2844
2845         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2846         Fixed how to set extra field into entity.
2847         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2848         symbol.
2849
2850         * modb-legacy.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 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2856
2857         * modb.el (elmo-message-entity-db): New function.
2858         (elmo-msgdb-make-message-entity): New API.
2859         (elmo-msgdb-message-entity-number): Ditto.
2860         (elmo-msgdb-message-entity-set-number): Ditto.
2861         (elmo-msgdb-message-entity-field): Ditto.
2862         (elmo-msgdb-message-entity-set-field): Ditto.
2863         (elmo-msgdb-copy-message-entity): Ditto.
2864         (elmo-msgdb-create-message-entity-from-file): Ditto.
2865         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2866         (elmo-msgdb-match-condition-internal): Ditto.
2867
2868         * modb-standard.el (modb-legacy): Require modb-legacy.
2869         (modb-standard-make-message-entity): New inline function.
2870         (elmo-msgdb-make-message-entity): Define.
2871         (elmo-msgdb-create-message-entity-from-file): Ditto.
2872         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2873         (elmo-msgdb-message-entity-field): Ditto.
2874         (elmo-msgdb-message-entity-set-field): Ditto.
2875         (elmo-msgdb-copy-message-entity): Ditto.
2876         (elmo-msgdb-match-condition-internal): Ditto.
2877
2878         * modb-legacy.el: Don't require modb-entity.
2879         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2880         (elmo-msgdb-match-condition-primitive): Ditto.
2881         (elmo-msgdb-get-decoded-cache): Ditto.
2882         (elmo-msgdb-overview-entity-get-id): Ditto.
2883         (elmo-msgdb-overview-entity-get-number): Ditto.
2884         (elmo-msgdb-overview-entity-set-number): Ditto.
2885         (elmo-msgdb-overview-entity-get-references): Ditto.
2886         (elmo-msgdb-overview-entity-set-references): Ditto.
2887         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2888         (elmo-msgdb-overview-entity-get-from): Ditto.
2889         (elmo-msgdb-overview-entity-set-from): Ditto.
2890         (elmo-msgdb-overview-entity-get-subject): Ditto.
2891         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2892         (elmo-msgdb-overview-entity-set-subject): Ditto.
2893         (elmo-msgdb-overview-entity-get-date): Ditto.
2894         (elmo-msgdb-overview-entity-set-date): Ditto.
2895         (elmo-msgdb-overview-entity-get-to): Ditto.
2896         (elmo-msgdb-overview-entity-get-cc): Ditto.
2897         (elmo-msgdb-overview-entity-get-size): Ditto.
2898         (elmo-msgdb-overview-entity-set-size): Ditto.
2899         (elmo-msgdb-overview-entity-get-extra): Ditto.
2900         (elmo-msgdb-overview-entity-set-extra): Ditto.
2901         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2902         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2903         (elmo-msgdb-number-load): Ditto.
2904         (elmo-msgdb-overview-load): Ditto.
2905         (elmo-msgdb-mark-load): Ditto.
2906         (elmo-msgdb-number-save): Ditto.
2907         (elmo-msgdb-mark-save): Ditto.
2908         (elmo-msgdb-overview-save): Ditto.
2909         (modb-legacy-make-message-entity): New inline function.
2910         (elmo-msgdb-insert-file-header): Ditto.
2911         (elmo-msgdb-make-message-entity): Define.
2912         (elmo-msgdb-create-message-entity-from-file): Ditto.
2913         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2914         (elmo-msgdb-message-entity-number): Ditto.
2915         (elmo-msgdb-message-entity-set-number): Ditto.
2916         (elmo-msgdb-message-entity-field): Ditto.
2917         (elmo-msgdb-message-entity-set-field): Ditto.
2918         (elmo-msgdb-copy-message-entity): Ditto.
2919         (elmo-msgdb-match-condition-internal): Ditto.
2920
2921         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2922         (elmo-message-copy-entity): Rewrite.
2923         (elmo-message-entity-number): Ditto.
2924         (elmo-message-entity-set-number): Ditto.
2925         (elmo-message-entity-field): Use elmo-message-entity-db.
2926         (elmo-message-entity-set-field): Ditto.
2927         (elmo-message-field): Rewrite.
2928
2929         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2930         elmo-msgdb.el
2931         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2932
2933         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2934         elmo-message-entity-field.
2935         (elmo-shimbun-folder-shimbun-header): Ditto.
2936         (elmo-shimbun-entity-to-header): Ditto.
2937         (elmo-folder-msgdb-create): Ditto.
2938         (elmo-shimbun-msgdb-create-entity): Ditto;
2939         Use elmo-msgdb-create-message-entity-from-buffer.
2940         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2941         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2942
2943         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2944         elmo-msgdb-create-message-entity-from-file and 
2945         elmo-message-entity-field.
2946
2947         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2948         elmo-message-entity-number.
2949         (elmo-pop3-msgdb-create-message): Use
2950         elmo-msgdb-create-message-entity-from-buffer,
2951         elmo-message-entity-set-field, elmo-message-entity-number and
2952         elmo-message-entity-set-number.
2953
2954         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2955         the API change in elmo-msgdb-make-message-entity.
2956         (elmo-nntp-msgdb-create-message): Use
2957         elmo-msgdb-create-message-entity-from-buffer.
2958
2959         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2960         elmo-message-entity-field and
2961         elmo-msgdb-create-message-entity-from-file.
2962
2963         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2964         (elmo-msgdb-get-field): Abolish.
2965         (elmo-msgdb-get-number): Rewrite.
2966         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2967         (elmo-msgdb-flag-table): Ditto.
2968         (elmo-msgdb-get-last-message-id,
2969         elmo-msgdb-number-load, elmo-msgdb-overview-load,
2970         elmo-msgdb-mark-load, elmo-msgdb-number-save,
2971         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
2972         (elmo-msgdb-create-overview-from-buffer,
2973         elmo-msgdb-overview-get-parent-entity): Abolish.
2974
2975         * elmo-mime.el (elmo-mime-display-as-is): Use
2976         elmo-message-entity-field.
2977
2978         * elmo-map.el (elmo-folder-pack-numbers): Use
2979         elmo-message-entity-set-number.
2980
2981         * elmo-maildir.el (elmo-folder-msgdb-create): 
2982         elmo-msgdb-create-message-entity-from-file instead of
2983         elmo-msgdb-create-overview-entity-from-file.
2984
2985         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
2986         msgdb.
2987         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
2988         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
2989
2990         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
2991         elmo-messge-entity-field and elmo-message-entity-number.
2992         (elmo-imap4-fetch-callback-1): Call
2993         elmo-msgdb-create-message-entity-from-buffer instead of
2994         elmo-msgdb-create-overview-from-buffer. 
2995         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
2996         (elmo-find-fetch-strategy): Likewise.
2997
2998         * elmo-flag.el (elmo-folder-msgdb-create): Call 
2999         elmo-localdir-msgdb-create-entity with argument msgdb.
3000
3001         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3002         and elmo-message-entity-set-number.
3003
3004         * elmo-cache.el (elmo-folder-msgdb-create): Use
3005         elmo-message-entity-field.
3006         (elmo-folder-msgdb-create): Call
3007         elmo-msgdb-create-message-entity-from-file instead of
3008         elmo-msgdb-create-overview-entity-from-file.
3009
3010         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3011         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3012         instead of elmo-msgdb-create-overview-from-buffer.
3013         (elmo-archive-msgdb-create-entity): Ditto.
3014         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3015         elmo-message-entity-field.
3016         (elmo-archive-parse-mmdf): Ditto.
3017
3018         * modb-entity.el: Removed.
3019
3020         * elmo-version.el (elmo-version): Up to 2.11.16.
3021
3022 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3023
3024         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3025         `is-local'.
3026         (elmo-folder-flag-as-answered): Ditto.
3027
3028 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3029
3030         * modb-standard.el: New file.
3031
3032         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3033         elmo-msgdb-convert-type is `sync'.
3034
3035         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3036         (elmo-msgdb-convert-type): New user option.
3037
3038         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3039         (elmo-load-msgdb): Auto detect saved type.
3040
3041         * elmo-version.el (elmo-version): Up to 2.11.15.
3042
3043 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3044
3045         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3046
3047         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3048         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3049         with argument `delete-if-none' when dst-folder is 'null.
3050
3051         * elmo-flag.el (elmo-folder-append-messages): Defined.
3052         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3053
3054 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3055
3056         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3057
3058 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3059
3060         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3061         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3062         (elmo-folder-commit): Ditto.
3063
3064 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3065
3066         * elmo-flag.el: New file.
3067
3068         * elmo-mark.el: Removed.
3069
3070         * modb-legacy.el (modb-legacy-new-mark,
3071         modb-legacy-unread-uncached-mark,
3072         modb-legacy-unread-cached-mark,
3073         modb-legacy-read-uncached-mark,
3074         modb-legacy-answered-cached-mark,
3075         modb-legacy-answered-uncached-mark,
3076         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3077         All other related portions are changed.
3078
3079         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3080         (elmo-folder-list-messages-with-global-mark): Abolish.
3081         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3082         (elmo-folder-flag-as-important): Ditto.
3083         (elmo-folder-unflag-read): Ditto.
3084         (elmo-folder-flag-as-read): Ditto.
3085         (elmo-folder-unflag-answered): Ditto.
3086         (elmo-folder-flag-as-answered): Ditto.
3087         (elmo-message-encache): Return the cache path.
3088         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3089         (elmo-message-set-flag): Transitional implementation.
3090         (elmo-message-unset-flag): Ditto.
3091         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3092         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3093         (elmo-init): Call elmo-global-flag-initialize.
3094         (toplevel): Added autoload settings for elmo-flag.
3095
3096         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3097
3098         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3099         (elmo-file-cache-delete): Don't treat global-mark.
3100
3101         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3102
3103         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3104
3105         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3106         `elmo-global-flags-set'.
3107
3108         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3109         `flag'.
3110         (elmo-folder-unflag-read): Ditto.
3111         (elmo-folder-unflag-important): Ditto.
3112         (elmo-folder-flag-as-important): Ditto.
3113         (elmo-folder-unflag-answered): Ditto.
3114         (elmo-folder-flag-as-answered): Ditto.
3115
3116         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3117         `elmo-global-flags-set'.
3118         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3119
3120         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3121
3122         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3123         `flag'.
3124         (elmo-folder-flag-as-important): Ditto.
3125         (elmo-folder-unflag-important): Ditto.
3126         (elmo-folder-flag-as-important): Ditto.
3127         (elmo-folder-unflag-read): Ditto.
3128         (elmo-folder-flag-as-read): Ditto.
3129         (elmo-folder-unflag-answered): Ditto.
3130         (elmo-folder-flag-as-answered): Ditto.
3131
3132         * elmo-multi.el (elmo-folder-list-importants): Don't call
3133         elmo-folder-list-messages-with-global-mark.
3134         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3135         (elmo-folder-unflag-important): Ditto.
3136         (elmo-folder-flag-as-read): Ditto.
3137         (elmo-folder-unflag-read): Ditto.
3138         (elmo-folder-flag-as-answered): Ditto.
3139         (elmo-folder-unflag-answered): Ditto.
3140
3141         * elmo-msgdb.el (elmo-msgdb-new-mark,
3142         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3143         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3144         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3145         (Moved to modb-legacy.el).
3146         (elmo-flag-table-get): Treat important flag too.
3147
3148         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3149         `mark' to `flag'.
3150         (elmo-map-folder-flag-as-important): Ditto.
3151         (elmo-map-folder-unflag-read): Ditto.
3152         (elmo-map-folder-flag-as-read): Ditto.
3153         (elmo-map-folder-unflag-answered): Ditto.
3154         (elmo-map-folder-flag-as-answered): Ditto.
3155         (elmo-folder-unflag-important): Ditto.
3156         (elmo-folder-flag-as-important): Ditto.
3157         (elmo-folder-unflag-read): Ditto.
3158         (elmo-folder-flag-as-read): Ditto.
3159         (elmo-folder-unflag-answered): Ditto.
3160         (elmo-folder-flag-as-answered): Ditto.
3161
3162         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3163         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3164         `flag'.
3165         (elmo-map-folder-unflag-important): Ditto.
3166         (elmo-map-folder-flag-as-read): Ditto.
3167         (elmo-map-folder-unflag-read): Ditto.
3168         (elmo-map-folder-flag-as-answered): Ditto.
3169         (elmo-map-folder-unflag-answered): Ditto.
3170
3171         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3172         `elmo-global-flags-set'.
3173         (elmo-global-flags-set): Added autoload setting.
3174
3175         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3176         `flag'.
3177
3178         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3179         `elmo-msgdb-global-mark-set'.
3180         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3181         Call `elmo-global-flags-set'.
3182         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3183         `flag'.
3184         (elmo-folder-flag-as-important-plugged): Ditto.
3185         (elmo-folder-unflag-read-plugged): Ditto.
3186         (elmo-folder-flag-as-read-plugged): Ditto.
3187         (elmo-folder-unflag-answered-plugged): Ditto.
3188         (elmo-folder-flag-as-answered-plugged): Ditto.
3189         (elmo-global-flags-set): Added autoload setting.
3190
3191         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3192         `flag'.
3193         (elmo-folder-unflag-read): Ditto.
3194         (elmo-folder-flag-as-important): Ditto.
3195         (elmo-folder-unflag-important): Ditto.
3196         (elmo-folder-flag-as-answered): Ditto.
3197         (elmo-folder-unflag-answered): Ditto.
3198
3199         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3200         change of `mark'->`flag'.
3201         (elmo-dop-queue-method-name-alist): Ditto.
3202         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3203         (elmo-folder-unflag-read-dop): Ditto.
3204         (elmo-folder-flag-as-important-dop): Ditto.
3205         (elmo-folder-unflag-important-dop): Ditto.
3206         (elmo-folder-flag-as-answered-dop): Ditto.
3207         (elmo-folder-unflag-answered-dop): Ditto.
3208
3209         * elmo-cache.el (elmo-folder-msgdb-create): Call
3210         `elmo-global-flags-set'.
3211
3212         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3213         Call `elmo-global-flags-set'.
3214         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3215         elmo-archive-parse-mmdf with argument `folder'.
3216         (elmo-archive-parse-mmdf): Added argument `folder';
3217         Call `elmo-global-flags-set'.
3218
3219         * elmo-version.el (elmo-version): Up to 2.11.14.
3220
3221 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3222
3223         * modb.el (elmo-msgdb-length): Define.
3224
3225         * elmo.el (elmo-make-folder): Fixed.
3226         (elmo-generic-folder-append-messages): Follow the API change.
3227
3228         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3229         API change.
3230
3231 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3232
3233         * modb.el: New file.
3234
3235         * modb-entity.el: Ditto.
3236
3237         * modb-legacy.el: Ditto.
3238
3239         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3240         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3241         of `elmo-msgdb-overview-get-entity'.
3242         (elmo-msgdb-get-field): Ditto.
3243         (elmo-msgdb-merge): Moved to `elmo.el'.
3244         (elmo-msgdb-length): Removed; redefine as modb method.
3245         (elmo-msgdb-change-mark): Abolish.
3246         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3247         (elmo-msgdb-match-condition): Don't use mark.
3248         (elmo-msgdb-overview-get-entity): Abolish.
3249         Split modb part into `modb*.el'.
3250
3251         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3252
3253         * elmo-shimbun.el (shimbun-mua-search-id): Use
3254         `elmo-msgdb-message-entity' instead of
3255         `elmo-msgdb-overview-get-entity'.
3256         (elmo-shimbun-folder-shimbun-header): Ditto.
3257         (elmo-shimbun-get-headers): Ditto.
3258         (elmo-shimbun-update-overview): Ditto.
3259
3260         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3261
3262         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3263
3264         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3265         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3266
3267         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3268         `elmo-msgdb-mark-to-flags'.
3269
3270         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3271         `elmo-msgdb-set-path'.
3272
3273         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3274  
3275         * elmo-version.el (elmo-version): Up to 2.11.13.
3276
3277         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3278
3279         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3280         of mark.
3281
3282 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3283
3284         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3285         mismatch.
3286
3287 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3288
3289         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3290         instead of `elmo-msgdb-get-cached'.
3291         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3292
3293         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3294         (elmo-msgdb-set-cached): Ditto.
3295         (elmo-msgdb-set-flag): Rewrite.
3296         (elmo-msgdb-unset-flag): Ditto.
3297
3298         * elmo-msgdb.el: Rewrite with luna.
3299
3300         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3301         (elmo-folder-msgdb): Follow the change above.
3302         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3303         (elmo-folder-unmark-important): Follow the API change.
3304         (elmo-folder-mark-as-important): Ditto.
3305         (elmo-folder-unmark-read): Ditto.
3306         (elmo-folder-mark-as-read): Ditto.
3307         (elmo-folder-unmark-answered): Ditto.
3308         (elmo-folder-mark-as-answered): Ditto.
3309         (elmo-folder-clear): Likewise.
3310
3311         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3312         instead of `elmo-msgdb-load' (renamed).
3313
3314         * elmo-version.el (elmo-version): Up to 2.11.12.
3315
3316 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3317
3318         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3319         change.
3320         (elmo-message-mark): Abolish.
3321         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3322         instead of `elmo-msgdb-change-mark'.
3323
3324         * elmo-pipe.el (elmo-message-mark): Abolish.
3325
3326         * elmo-multi.el (elmo-message-mark): Ditto.
3327
3328         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3329         (elmo-msgdb-unread-uncached-mark): Ditto.
3330         (elmo-msgdb-unread-cached-mark): Ditto.
3331         (elmo-msgdb-read-uncached-mark): Ditto.
3332         (elmo-msgdb-answered-cached-mark): Ditto.
3333         (elmo-msgdb-answered-uncached-mark): Ditto.
3334         (elmo-msgdb-important-mark): Ditto.
3335         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3336         `use-cache'.
3337         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3338         `flags'.
3339         (elmo-flag-table-load): Changed flag to list of flag.
3340         (elmo-flag-table-set): If flags is nil, set read flag.
3341         (elmo-flag-table-get): Return derived flags from global mark,
3342         cache status and saved flags.
3343         (elmo-msgdb-flag-table): Follow the change above.
3344         (elmo-msgdb-out-of-date-messages): New function.
3345
3346         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3347
3348         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3349
3350         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3351
3352         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3353         (elmo-nntp-msgdb-create-message): Ditto.
3354
3355         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3356
3357         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3358         independent.
3359         (elmo-folder-msgdb-create): Follow the API change.
3360
3361         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3362         (elmo-folder-append-messages): Ditto.
3363
3364         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3365         (elmo-folder-append-buffer): Ditto.
3366
3367         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3368
3369         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3370
3371         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3372         (elmo-archive-parse-mmdf): Ditto.
3373
3374         * elmo-version.el (elmo-version): Up to 2.11.11.
3375
3376 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3377
3378         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3379         `elmo-msgdb-mark'.
3380
3381         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3382
3383         * elmo-pipe.el (elmo-message-flags): Defined.
3384
3385         * elmo-multi.el (elmo-message-flags): Ditto.
3386
3387 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3388
3389         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3390         `elmo-msgdb-delete-msgs'.
3391
3392         * elmo.el (elmo-folder-count-flags): Don't use
3393         `elmo-msgdb-get-mark-alist'.
3394         (elmo-folder-detach-messages): Follow the API change.
3395
3396         * elmo.el (elmo-folder-list-messages): Append killed messages into
3397         result if `visible-only' is nil.
3398
3399         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3400         canceled messages.
3401         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3402         (elmo-folder-update-number): Likewise.
3403
3404         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3405         (elmo-pop3-sort-msgdb-by-original-number): Use
3406         `elmo-msgdb-sort-entities'.
3407
3408         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3409         (elmo-msgdb-sort-by-date): Use it.
3410         (elmo-msgdb-overview-sort-by-date): Abolish.
3411
3412         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3413
3414         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3415         (elmo-msgdb-flags): New function.
3416         (elmo-msgdb-merge): Use elmo-msgdb-append.
3417
3418         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3419         change.
3420
3421         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3422
3423         * elmo-dop.el (elmo-folder-status-dop): Use
3424         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3425
3426 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3427
3428         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3429
3430         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3431
3432         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3433
3434         * elmo-util.el (elmo-with-progress-display): New macro.
3435
3436         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3437
3438 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3439
3440         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3441         `elmo-folder-list-message-entities' instead of
3442         `elmo-msgdb-get-overview'.
3443         (elmo-map-folder-list-message-locations): Ditto.
3444
3445         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3446         methods instead of treat directly).
3447         (elmo-msgdb-clear): Ditto.
3448         (elmo-msgdb-delete-msgs): Ditto.
3449         (elmo-msgdb-sort-by-date): Ditto.
3450
3451         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3452         local variables.
3453         (elmo-nntp-folder-msgdb-create): Follow the API change.
3454
3455         * elmo-version.el (elmo-version): Up to 2.11.10.
3456
3457 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3458
3459         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3460         (elmo-msgdb-flags-to-mark): Ditto.
3461         (elmo-msgdb-append-entity): Ditto.
3462
3463         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3464         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3465         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3466         (elmo-archive-parse-mmdf): Ditto.
3467
3468         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3469
3470         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3471
3472         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3473
3474         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3475
3476         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3477
3478         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3479
3480         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3481
3482         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3483
3484         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3485         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3486         to empty msgdb.
3487
3488         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3489         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3490         instead of directly construction.
3491         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3492         instead of construct msgdb.
3493
3494         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3495         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3496         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3497         instead of construct msgdb.
3498
3499 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3500
3501         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3502         when field is from or subject.
3503
3504 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3505
3506         * elmo-multi.el (elmo-message-entity-parent): Define.
3507         (elmo-folder-search): Rewrite.
3508
3509 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3510
3511         * elmo-multi.el (elmo-message-cached-p): Define.
3512
3513         * elmo.el (elmo-message-cached-p): New method.
3514         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3515         (elmo-message-flags): New method.
3516         (elmo-message-flagged-p): New function.
3517
3518         * elmo-version.el (elmo-version): Up to 2.11.9.
3519
3520 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3521
3522         * elmo-version.el (elmo-version): Up to 2.11.8.
3523
3524         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3525
3526         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3527
3528 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3529
3530         * elmo.el (elmo-folder-detach-messages): Undo last change.
3531
3532 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3533
3534         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3535
3536         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3537         only when src folder type is pop3.
3538
3539 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3540
3541         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3542         elmo-msgdb-overview-entity-get-number instead of
3543         elmo-message-entity-number.
3544
3545 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3546
3547         * elmo-version.el (elmo-version): Up to 2.11.7.
3548
3549 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3550
3551         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3552         function.
3553
3554         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3555         (elmo-msgdb-merge): New function.
3556         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3557         (elmo-msgdb-make-index): Rewrite.
3558
3559         * elmo-version.el (elmo-version): Up to 2.11.6.
3560
3561         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3562         use it as a the path for loading message entities.
3563
3564         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3565
3566 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3567
3568         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3569         message-modified slot of itself if it does not require target msgdb.
3570
3571         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3572         if folder length is zero.
3573         (elmo-mime-display-as-is): Ditto.
3574
3575         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3576
3577         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3578
3579 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3580
3581         * elmo.el (elmo-folder-set-message-modified): New method.
3582         (elmo-generic-folder-commit): Use it.
3583         (elmo-folder-synchronize): Ditto.
3584
3585         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3586         (elmo-folder-commit): Remove duplicate definition.
3587
3588 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3589
3590         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3591
3592 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3593
3594         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3595         (elmo-strict-folder-diff): Ditto.
3596         (elmo-folder-set-info-max-by-numdb): Simplify.
3597
3598         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3599         elmo-msgdb-list-messages.
3600
3601         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3602         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3603
3604 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3605
3606         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3607         visible-only is non-nil.
3608         (elmo-folder-confirm-appends): Changed message.
3609         (elmo-folder-synchronize): Added argument disable-killed.
3610
3611         * elmo-multi.el (elmo-folder-synchronize): Added argument
3612         disable-killed.
3613
3614         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3615
3616         * elmo-version.el (elmo-version): Up to 2.11.5.
3617
3618         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3619         elmo-list-filter.
3620
3621         * elmo-util.el (elmo-list-filter): Simplify.
3622
3623         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3624         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3625         (elmo-generic-folder-diff): Abolish argument.
3626         (elmo-msgdb-load): Don't use number-alist.
3627
3628         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3629
3630         * elmo-pipe.el (elmo-folder-diff): Ditto.
3631
3632         * elmo-nmz.el (elmo-folder-diff): Ditto.
3633
3634         * elmo-net.el (elmo-folder-diff): Ditto.
3635
3636         * elmo-maildir.el (elmo-folder-diff): Ditto.
3637
3638         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3639
3640         * elmo-multi.el (elmo-folder-diff): Ditto
3641         (elmo-multi-folder-diff): Rewrite.
3642
3643 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3644
3645         * elmo-pipe.el (elmo-folder-msgdb): Define.
3646
3647 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3648
3649         * elmo.el (elmo-message-set-cached): Define as a method.
3650
3651         * elmo-pipe.el (elmo-message-set-cached): Define.
3652         (elmo-find-fetch-strategy): Ditto.
3653
3654         * elmo-multi.el (elmo-message-set-cached): Define.
3655         (elmo-find-fetch-strategy): Rewrite.
3656
3657         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3658
3659         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3660
3661 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3662
3663         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3664         instead of number-alist.
3665
3666         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3667         mark nor message-id when msgdb of source folder is not loaded.
3668
3669         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3670
3671         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3672
3673 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3674
3675         * elmo.el (elmo-folder-length): Don't require msgdb.
3676
3677 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3678
3679         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3680         (elmo-message-field): Ditto.
3681
3682         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3683         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3684         slot.
3685         (elmo-map-folder-list-answereds): Define.
3686         (elmo-maildir-list-location): Treat 'R' info.
3687         (elmo-folder-msgdb-create): Treat flag-table.
3688         (elmo-folder-append-messages): Save flag-table.
3689
3690 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3691
3692         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3693         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3694
3695 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3696
3697         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3698
3699         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3700         'read when mark is null.
3701
3702 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3703
3704         * elmo-version.el (elmo-version): Up to 2.11.4.
3705
3706 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3707
3708         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3709         (elmo-folder-mark-as-answered): Ditto.
3710
3711 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3712
3713         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3714         (elmo-pop3-get-session): Make msgdb directory after session.
3715         (elmo-folder-exists-p): Check exactly at the first time even when the
3716         elmo-pop3-exists-exactly is nil.
3717
3718         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3719         (elmo-folder-list-messages): Define instead of
3720         elmo-folder-list-messages-internal.
3721         (elmo-folder-check): Check destination folder.
3722         (elmo-folder-synchronize): Drain the pipe.
3723
3724         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3725         when msgdb is not loaded.
3726
3727         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3728
3729         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3730         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3731         messages.
3732
3733         * elmo.el (elmo-folder-kill-messages-before): New function.
3734         (elmo-folder-kill-messages): Ditto.
3735         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3736
3737         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3738         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3739         killed not by synchronize (e.g. scoring).
3740
3741 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3742
3743         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3744         treated.
3745         (elmo-folder-search): Follow the change above.
3746
3747         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3748         into the candidates of search field.
3749
3750 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3751
3752         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3753         (elmo-msgdb-unset-flag): Ditto.
3754
3755         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3756
3757 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3758
3759         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3760         (elmo-folder-commit): Define.
3761         (elmo-folder-synchronize): Ditto.
3762         (elmo-folder-list-flagged): Ditto.
3763         (elmo-folder-commit): Ditto.
3764         (elmo-folder-length): Ditto.
3765         (elmo-folder-count-flags): Ditto.
3766         (elmo-message-mark): Ditto.
3767         (elmo-message-field): Ditto.
3768         (elmo-message-entity): Ditto.
3769         (elmo-message-folder): Ditto.
3770
3771 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3772
3773         * elmo.el (elmo-message-field): Define as a method.
3774
3775         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3776         (elmo-message-field): Define.
3777
3778         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3779         (elmo-folder-list-importants): Ditto.
3780         (elmo-folder-list-answereds): Ditto.
3781
3782         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3783         qualifier.
3784         (elmo-folder-mark-as-read): Ditto.
3785         (elmo-folder-unmark-read): Ditto.
3786         (elmo-folder-mark-as-answered): Ditto.
3787         (elmo-folder-unmark-answered): Ditto.
3788         (elmo-folder-list-flagged): Define.
3789         (elmo-folder-commit): Ditto.
3790         (elmo-folder-length): Ditto.
3791         (elmo-folder-count-flags): Ditto.
3792
3793 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3794
3795         * elmo.el (elmo-folder-detach-messages): New method.
3796         (elmo-folder-move-messages): Use it.
3797         (elmo-folder-synchronize): Ditto.
3798
3799         * elmo-multi.el (elmo-folder-detach-messages): Define.
3800
3801         * elmo.el (elmo-message-copy-entity): New function.
3802         (elmo-message-entity-set-number): Ditto.
3803         (elmo-message-mark): Define as method.
3804
3805         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3806         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3807         (elmo-message-entity): Fixed last change.
3808         (elmo-message-mark): Define.
3809         (elmo-folder-msgdb-create): Abolish.
3810         (elmo-multi-folder-append-msgdb): Ditto.
3811         (elmo-multi-folder-diff): Fixed.
3812         (elmo-multi-split-number-alist): Removed.
3813         (elmo-multi-split-mark-alist): Removed.
3814         (elmo-folder-list-messages): Define.
3815         (elmo-folder-list-messages-internal): Removed.
3816
3817         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3818         local file messages.
3819         (elmo-folder-msgdb-create): Fixed read mark.
3820
3821 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3822
3823         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3824         if mark is nil.
3825
3826 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3827
3828         * elmo.el (elmo-folder-list-message-entities): Define as inline
3829         function.
3830         (elmo-folder-messages): Abolish.
3831
3832         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3833         folder.
3834         (elmo-folder-synchronize): Define.
3835         (elmo-message-entity): Define.
3836
3837 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3838
3839         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3840         elmo-imap4-session-select-mailbox.
3841
3842         * elmo.el (elmo-folder-move-messages): Don't display any message.
3843
3844         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3845         parsing.
3846         (elmo-imap4-session-check): Don't wait CHECK response.
3847         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3848
3849 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3850
3851         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3852
3853 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3854
3855         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3856         API.
3857         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3858
3859
3860         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3861         (elmo-folder-list-message-entities): Added argument in-msgdb and
3862         numbers.
3863         (elmo-folder-synchronize): Define as a method.
3864
3865         * elmo-nntp.el (elmo-folder-initialize): Don't use
3866         elmo-nntp-default-user if zero-length username is specified
3867         explicitly.
3868
3869 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3870
3871         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3872         server name in case with username.
3873         (XXX: this is ad-hoc fix against username includes "@", it
3874         should be solved fundamentally)
3875
3876 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3877
3878         * elmo-nntp.el (elmo-nntp-debug): New function.
3879         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3880         (elmo-network-authenticate-session): Hide auth-info from the log.
3881
3882         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3883         user name if it is equal to elmo-nntp-default-user.
3884
3885 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3886
3887         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3888         instead of shimbun-server-internal;
3889         Use shimbun-current-group instead of shimbun-current-group-internal.
3890         (elmo-folder-plugged-p): Use shimbun-server instead of
3891         shimbun-server-internal.
3892         (elmo-folder-set-plugged): Ditto.
3893         (elmo-net-port-info): Ditto.
3894         (elmo-folder-check): Ditto.
3895         (elmo-folder-expand-msgdb-path): Ditto.
3896         (elmo-folder-list-subfolders): Ditto.
3897
3898 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3899
3900         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3901         Convert field-name to lower case.
3902         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3903
3904 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3905
3906         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3907         `message' and `error' take format string.
3908
3909 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3910
3911         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3912
3913 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3914
3915         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3916         recursive call (can't byte compile on emacs 20.7).
3917
3918 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3919
3920         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3921         (elmo-folder-list-message-entities): New API.
3922         (elmo-message-entity): Ditto.
3923         (elmo-message-entity-parent): Ditto.
3924         (elmo-folder-do-each-message-entity): Ditto.
3925         (elmo-message-entity-number): Ditto.
3926         (elmo-message-entity-field): Ditto.
3927         (elmo-message-entity-set-field): Ditto.
3928         (elmo-folder-count-flags): Ditto.
3929         (elmo-folder-length): Ditto.
3930
3931         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3932         not.
3933
3934         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3935         (elmo-msgdb-count-marks): Abolish.
3936         (elmo-msgdb-make-entity): Ditto.
3937         (elmo-msgdb-do-each-entity): Ditto.
3938         (elmo-msgdb-message-entity): New inline function.
3939         (elmo-msgdb-message-entity-field): Ditto.
3940         (elmo-msgdb-message-entity-set-field): Ditto.
3941         (elmo-msgdb-make-message-entity): New function.
3942
3943 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3944
3945         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3946         to flag. (All other related portions are changed.)
3947         (elmo-folder-msgdb-create): Likewise.
3948         (elmo-generic-folder-append-messages): Use flag-table instead of
3949         seen-list.
3950         (elmo-folder-move-messages): Removed redundant process.
3951         (elmo-folder-synchronize): Likewise.
3952
3953         * elmo-msgdb.el (elmo-flag-table-get): New function.
3954         (elmo-flag-table-save): Fixed.
3955         (elmo-msgdb-length): New inline function.
3956         (elmo-msgdb-flag-table): New function.
3957         (elmo-msgdb-mark): Add optional argument new.
3958         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3959         (elmo-msgdb-seen-list): Ditto.
3960         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3961
3962
3963 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3964
3965         * elmo.el (elmo-message-set-mark): Abolish.
3966         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3967         (All related portions are changed.)
3968
3969         * elmo-msgdb.el (toplevel): Added comment.
3970         (elmo-load-msgdb): Added 4th element `path'.
3971         (elmo-msgdb-append): Follow the change above.
3972         (elmo-msgdb-clear): Ditto.
3973         (elmo-msgdb-delete-msgs): Ditto.
3974         (elmo-msgdb-get-path): New inline function.
3975         (elmo-msgdb-set-path): Ditto.
3976         (elmo-flag-table-filename): New variable.
3977         (elmo-flag-table-load): New function.
3978         (elmo-flag-table-set): Ditto.
3979         (elmo-flag-table-save): Ditto.
3980         (elmo-msgdb-get-field-value): Abolish.
3981         (elmo-msgdb-overview-get-entity-by-number): Ditto.
3982
3983 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
3984
3985         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
3986         the folder has been deleted successfully.
3987         * elmo-imap4.el (elmo-folder-delete): Ditto.
3988         * elmo-archive.el (elmo-folder-delete): Ditto.
3989         * elmo-localdir.el (elmo-folder-delete): Ditto.
3990         * elmo-maildir.el (elmo-folder-delete): Ditto.
3991
3992 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
3993
3994         * elmo-util.el (elmo-string-member-ignore-case): New function.
3995         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
3996         (elmo-imap4-fetch-callback-1-subr): Likewise.
3997
3998 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
3999
4000         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4001         the case of the name attribute "\Noselect".
4002
4003 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4004
4005         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4006
4007         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4008         flist, is not always a member of onum-alist.
4009
4010 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4011
4012         * elmo-version.el (elmo-version): Up to 2.11.3.
4013
4014 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4015
4016         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4017         copied from localdir's one.
4018
4019         * elmo-pipe.el (elmo-folder-rename): New method, rename
4020         destination folder with leaving source folder as it is.
4021
4022 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4023
4024         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4025         replace-regexp.
4026
4027 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4028
4029         * elmo-version.el (elmo-version): Up to 2.11.2.
4030
4031 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4032
4033         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4034         shimbun-open in case of "@".
4035         (elmo-folder-open-internal): Cope with shimbun = nil case.
4036         (elmo-folder-plugged-p): Ditto.
4037         (elmo-folder-list-subfolders): Make list for "@/" group.
4038
4039 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4040
4041         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4042         mailbox (e.g. for %~/something).
4043
4044 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4045
4046         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4047         Replace nested conditional with guard clauses.
4048
4049 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4050
4051         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4052         error [wl:11327].
4053
4054         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4055         print-depth.
4056
4057 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4058
4059         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4060         Replace nested conditional with guard clauses.
4061
4062 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4063
4064         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4065         (elmo-passwd-alist-save): Ditto.
4066         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4067
4068 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4069
4070         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4071         dir-name only if it is absolute path.
4072         (TODO: distinguish +/something and +something)
4073
4074 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4075
4076         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4077         path for "+~/something".
4078
4079 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4080
4081         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4082         as non-directory, cause error before rename-file.
4083         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4084         apropriately, mimic localdir's one.
4085         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4086
4087 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4088
4089         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4090
4091 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4092
4093         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4094
4095         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4096         
4097         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4098         is included in the global-mark or not.
4099
4100 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4101
4102         * utf7.el (toplevel): Avoid error when the function
4103         find-coding-system does not exist.
4104
4105 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4106
4107         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4108         cache even if the folder is plugged.
4109         (elmo-nntp-search-primitive): Do nothing when body search is
4110         invoked (although it is not used by the change above).
4111         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4112
4113 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4114
4115         * elmo-version.el (elmo-version): Up to 2.11.1.
4116
4117 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4118
4119         * elmo-archive.el: Specify charset.
4120
4121 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4122
4123         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4124         process buffer lives or not.
4125
4126         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4127         while flushing queues (It causes infinite loop).
4128
4129 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4130
4131         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4132
4133 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4134
4135         * utf7.el (toplevel): Check the ucs features dynamically.
4136         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4137
4138         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4139         folder is creatabe or not if it already exists.
4140
4141 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4142
4143         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4144
4145         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4146
4147         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4148         (elmo-imap4-read-response): Take care of garbage response.
4149
4150 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4151
4152         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4153         just return nil instead of error.
4154
4155 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4156
4157         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4158         search-key is "body".
4159
4160 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4161
4162         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4163         of elmo-string-matched-assoc to use match-data.
4164         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4165
4166 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4167
4168         * elmo-split.el (elmo-split->): New function.
4169         (elmo-split-<): Ditto.
4170
4171 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4172
4173         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4174         workaround for invalid message-id.
4175
4176 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4177
4178         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4179         return normal pop3 session or pop3 biff session.
4180
4181 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4182
4183         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4184         info part to the cur files when the new files already have it.
4185         (Adviced by Jared Rhine <jared@wordzoo.com>)
4186
4187 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4188
4189         * elmo-split.el (elmo-split-default-action): New variable.
4190         (elmo-split-subr): Use it if all other conditions are passed.
4191         Extend `fname' and rename it as `action'. (implemented
4192         Teranishi-san's idea in [wl:10800])
4193
4194 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4195
4196         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4197         * elmo-util.el: Ditto.
4198
4199 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4200
4201         * elmo.el (elmo-message-accessible-p): Renamed from
4202         elmo-message-cached-p and rewritten.
4203
4204 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4205
4206         * elmo.el (elmo-folder-list-flagged): New generic function.
4207         (elmo-folder-list-importants): New implementation.
4208         (elmo-folder-list-answereds): Ditto.
4209         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4210         Added 'digest'.
4211         (elmo-message-cached-p): New function.
4212         (elmo-message-set-flag): Ditto (no content).
4213         (elmo-message-unset-flag): Ditto.
4214         (elmo-folder-list-messages-mark-match): Abolish.
4215
4216         * elmo-util.el (elmo-regexp-opt): New function.
4217
4218         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4219         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4220         Added 'digest'.
4221         (elmo-msgdb-list-flagged): New function.
4222
4223         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4224         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4225         Added 'digest'.
4226
4227         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4228
4229 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4230
4231         * elmo-version.el (elmo-version): Up to 2.11.0.
4232
4233 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4234
4235         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4236         `elmo-file-cache-exists-p'; use proper mark that depends on
4237         `use-cache'.
4238         (elmo-msgdb-unset-flag): Ditto.
4239         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4240
4241         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4242         with 4th argument `use-cache'.
4243
4244 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4245
4246         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4247         (elmo-folder-mark-as-important): Ditto.
4248         (elmo-folder-unmark-read): Ditto.
4249         (elmo-folder-mark-as-read): Ditto.
4250         (elmo-folder-unmark-answered): Ditto.
4251         (elmo-folder-mark-as-answered): Ditto.
4252
4253         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4254         message status.
4255         (elmo-msgdb-mark): Likewise.
4256         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4257         (elmo-msgdb-unset-flag): Likewise.
4258
4259         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4260
4261 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4262
4263         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4264         `last:' filter.
4265
4266 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4267
4268         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4269         set spool-length to 0.
4270
4271 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4272
4273         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4274         (elmo-dop-queue-flush): Fixed last change.
4275
4276 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4277
4278         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4279         if require-msgdb slot is nil.
4280         (elmo-folder-list-importants): Likewise.
4281
4282 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4283
4284         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4285         mark is changed.
4286
4287         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4288         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4289         is changed.
4290
4291 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4292
4293         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4294
4295 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4296
4297         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4298
4299         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4300
4301 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4302
4303         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4304         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4305
4306 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4307
4308         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4309         the problem reported by Sean Rima [wl-en:180].
4310
4311 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4312
4313         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4314
4315         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4316
4317         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4318
4319         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4320
4321         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4322
4323         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4324
4325         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4326
4327 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4328
4329         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4330         status number.
4331
4332 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4333
4334         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4335         (elmo-folder-mark-as-read): Follow the API change.
4336         (elmo-message-set-cached): New function.
4337
4338         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4339
4340         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4341
4342         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
4343         (elmo-folder-mark-as-important): Ditto.
4344         (elmo-folder-unmark-read): Ditto.
4345         (elmo-folder-mark-as-read): Ditto.
4346         (elmo-folder-unmark-answered): Ditto.
4347         (elmo-folder-mark-as-answered): Ditto.
4348
4349         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4350         (elmo-folder-unmark-important): Ditto.
4351         (elmo-folder-mark-as-read): Ditto.
4352         (elmo-folder-unmark-read): Ditto.
4353         (elmo-folder-mark-as-answered): Ditto.
4354         (elmo-folder-unmark-answered): Ditto.
4355
4356         * elmo-mark.el (toplevel): Removed some mark method definitions.
4357
4358         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4359         (elmo-map-folder-mark-as-answered): Ditto.
4360         (elmo-folder-unmark-important): Add :before qualifier.
4361         (elmo-folder-mark-as-important): Ditto.
4362         (elmo-folder-unmark-read): Ditto.
4363         (elmo-folder-mark-as-read): Ditto.
4364         (elmo-folder-unmark-answered): Define.
4365         (elmo-folder-mark-as-answered): Ditto.
4366
4367         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4368         (elmo-map-folder-unmark-answered): Ditto.
4369
4370         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4371
4372         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4373         (elmo-folder-mark-as-important): Ditto.
4374         (elmo-folder-unmark-read): Ditto.
4375         (elmo-folder-mark-as-read): Ditto.
4376         (elmo-folder-unmark-answered): Ditto.
4377         (elmo-folder-mark-as-answered): Ditto.
4378
4379         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4380         `mark'; evaluate mark condition.
4381         (elmo-msgdb-match-condition-internal): New function.
4382         (elmo-msgdb-match-condition): Call it; changed argument.
4383
4384         * elmo.el (elmo-folder-search): Follow the API change on
4385         `elmo-msgdb-match-condition'.
4386
4387 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4388
4389         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4390         original mark is non-nil.
4391
4392 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4393
4394         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4395         (elmo-map-folder-list-answereds): New method.
4396         (elmo-folder-list-unreads): Add :around qualifier.
4397         (elmo-folder-list-importants): Ditto.
4398         (elmo-folder-list-answereds): Ditto.
4399
4400 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4401
4402         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4403
4404         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4405         method if msgdb is not required.
4406         (elmo-filter-folder-list-importants): Don't treat global-mark.
4407
4408         * elmo.el (elmo-folder-list-importants): Ditto.
4409
4410         * elmo-net.el (elmo-folder-list-importants): Ditto.
4411
4412         * elmo-map.el (elmo-folder-list-importants): Ditto.
4413
4414         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4415
4416         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4417         (elmo-imap4-folder-list-any-plugged): New function.
4418         (elmo-imap4-search-internal-primitive): Use it.
4419
4420         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4421         only when require-msgdb slot is non-nil.
4422         (elmo-folder-close): Clear target folder's msgdb.
4423
4424 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4425
4426         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4427         (elmo-pop3-msgdb-create-by-header): Ditto.
4428         (elmo-pop3-msgdb-create-message): Ditto.
4429
4430         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4431
4432         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4433
4434         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4435
4436         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4437         (elmo-folder-msgdb-create): Ditto.
4438         (elmo-nntp-folder-msgdb-create): Ditto.
4439         (elmo-nntp-msgdb-create-by-header): Ditto.
4440         (elmo-nntp-msgdb-create-message): Ditto.
4441         (elmo-folder-list-unreads): Define.
4442
4443         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4444         (elmo-folder-append-messages): Ditto.
4445         (elmo-folder-list-unreads): Define.
4446         (elmo-folder-list-importants): Ditto.
4447         (elmo-folder-list-answereds): Ditto.
4448
4449         * elmo-net.el (elmo-folder-list-unreads): Define.
4450         (elmo-folder-list-importants): Ditto.
4451         (elmo-folder-list-answereds): Ditto.
4452         (elmo-folder-list-answereds-plugged): Ditto.
4453         (elmo-folder-msgdb-create): Follow the API change.
4454         (elmo-folder-msgdb-create-unplugged): Ditto.
4455         (elmo-folder-unmark-answered): Define.
4456         (elmo-folder-mark-as-answered-unplugged): Ditto.
4457         (elmo-folder-unmark-answered-unplugged): Ditto.
4458
4459         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4460         (elmo-msgdb-unread-uncached-mark): Ditto.
4461         (elmo-msgdb-unread-cached-mark): Ditto.
4462         (elmo-msgdb-read-uncached-mark): Ditto.
4463         (elmo-msgdb-answered-cached-mark): Ditto.
4464         (elmo-msgdb-answered-uncached-mark): Ditto.
4465         (elmo-msgdb-important-mark): Ditto.
4466         (elmo-msgdb-set-mark): Rewrite.
4467         (elmo-msgdb-count-marks): Rewrite.
4468         (elmo-msgdb-mark-alist-set): Abolish.
4469         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4470         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4471
4472         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4473         (elmo-folder-close): Define.
4474         (elmo-folder-msgdb-create): Follow the API change.
4475         (elmo-folder-list-unreads): Rewrite.
4476         (elmo-folder-mark-as-important): Ditto.
4477         (elmo-folder-unmark-important): Ditto.
4478         (elmo-folder-mark-as-read): Ditto.
4479         (elmo-folder-unmark-read): Ditto.
4480         (elmo-folder-mark-as-answered): Define.
4481         (elmo-folder-unmark-answered): Ditto.
4482
4483         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4484         (elmo-folder-append-messages): Ditto.
4485
4486         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4487
4488         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4489         (elmo-folder-list-importants): Ditto.
4490
4491         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4492         (elmo-folder-append-messages): Ditto.
4493
4494         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4495         change.
4496         (elmo-folder-msgdb-create-plugged): Ditto.
4497         (elmo-folder-append-messages): Ditto.
4498         (elmo-folder-list-answereds-plugged): Define.
4499         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4500         (elmo-folder-unmark-answered-plugged): Define.
4501         (elmo-folder-mark-as-answered-plugged): Ditto.
4502         (elmo-folder-search-requires-msgdb-p): Ditto.
4503
4504         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4505         (elmo-folder-initialize): Set it.
4506         (elmo-folder-msgdb): Define.
4507         (elmo-folder-check): Call elmo-folder-synchronize.
4508         (elmo-folder-close): Define.
4509         (elmo-folder-commit): Ditto.
4510         (elmo-folder-msgdb-create): Rewrite.
4511         (elmo-folder-list-unreads): Ditto.
4512         (elmo-folder-list-importants): Ditto.
4513         (elmo-folder-mark-as-read): Ditto.
4514         (elmo-folder-unmark-read): Ditto.
4515         (elmo-folder-mark-as-important): Ditto.
4516         (elmo-folder-unmark-important): Ditto.
4517         (elmo-folder-mark-as-answered): Define.
4518         (elmo-folder-unmark-answered): Ditto.
4519
4520         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4521         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4522         (elmo-dop-queue-method-name-alist): Likewise.
4523         (elmo-folder-mark-as-answered-dop): New inline function.
4524         (elmo-folder-unmark-answered-dop): Ditto.
4525         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4526
4527         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4528         (elmo-folder-msgdb-create): Ditto.
4529         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4530         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4531         (elmo-archive-parse-mmdf): Ditto.
4532
4533         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4534         (elmo-folder-list-unreads-internal): Ditto.
4535
4536         * elmo.el (elmo-folder-msgdb): Define as generic function.
4537         (elmo-folder-list-messages): Added argument `in-msgdb'.
4538         (elmo-folder-list-unreads): Define as generic function.
4539         (elmo-folder-list-importants): Ditto.
4540         (elmo-folder-list-answereds): Ditto.
4541         (elmo-folder-list-messages-with-global-mark): New function.
4542         (elmo-folder-msgdb-create): Removed mark arguments.
4543         (elmo-folder-unmark-answered): New generic function.
4544         (elmo-folder-mark-as-answered): Ditto.
4545         (elmo-folder-append-messages): Removed argunment `unread-marks'
4546         (elmo-folder-list-unreads-internal): Abolish.
4547         (elmo-folder-list-importants-internal): Ditto.
4548         (elmo-folder-search-requires-msgdb-p): New generic function.
4549         (elmo-folder-search-requires-msgdb-p-internal): New function.
4550         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4551         elmo-msgdb-load.
4552         (elmo-folder-search-fast): Added key 'mark'.
4553         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4554         instead of unread-marks argument.
4555         (elmo-folder-move-messages): Removed argunment `unread-marks'
4556         (elmo-folder-unmark-important): Define.
4557         (elmo-folder-mark-as-important): Ditto.
4558         (elmo-folder-unmark-read): Ditto.
4559         (elmo-folder-mark-as-read): Ditto.
4560         (elmo-folder-unmark-answered): Ditto.
4561         (elmo-folder-mark-as-answered): Ditto.
4562         (elmo-folder-replace-marks): Abolish.
4563         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4564         duplicates.
4565         (elmo-folder-synchronize): Removed mark arguments;
4566         return crosspost only number.
4567
4568 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4569
4570         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4571         Remove redundunt connectivity check.
4572
4573 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4574
4575         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4576         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4577
4578 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4579
4580         * pldap.el (ldap-decode-string): Return string as-is if
4581         `ldap-coding-system' is nil.
4582         (ldap-encode-string): Ditto.
4583         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4584         (ldap-default-host): Fixed docstring.
4585
4586 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4587
4588         * elmo-util.el (elmo-warning): Define as a macro which uses
4589         `display-warning' if it is defined as a function.
4590
4591         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4592         (elmo-split-equal): Use it.
4593         (elmo-split-match): Ditto.
4594         (elmo-split-message-entity): New buffer-local variable.
4595         (elmo-split-subr): Set it.
4596
4597         * elmo-version.el (elmo-version): Up to 2.9.15.
4598
4599 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4600
4601         * elmo-imap4.el (elmo-network-initialize-session):
4602         Check capability after starttls.
4603
4604 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4605
4606         * elmo-util.el (elmo-list-delete): Added optional argument
4607         DELETE-FUNCTION.
4608
4609         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4610
4611         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4612
4613         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4614
4615         * elmo-imap4.el (elmo-folder-initialize): Don't use
4616         elmo-imap4-default-mailbox.
4617
4618 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4619
4620         * elmo-split.el (toplevel): Use `product-provide'.
4621         (elmo-split): Checkdoc.
4622
4623 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4624
4625         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4626         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4627         the function `elmo-imap4-debug-1'.
4628
4629 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4630
4631         * elmo-split.el (elmo-split): Moved to run hooks and to show
4632         message from elmo-split-subr.
4633         (elmo-split-subr): Follow the change above.
4634
4635         * elmo-split.el (elmo-split-subr): New function (renamed from
4636         elmo-split-subr).
4637         (elmo-split): Changed to call elmo-split-subr by element of
4638         elmo-split-folder.
4639         (elmo-split-folder): Changed customization type to choice.
4640
4641 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4642
4643         * elmo-split.el (elmo-split-and): Fixed condition.
4644
4645 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4646
4647         * elmo-split.el: New file.
4648         (elmo-split): Fixed logic.
4649         Display "Test:" instead of "Folder:" when reharsal.
4650
4651         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4652         explicitly.
4653
4654         * elmo-version.el (elmo-version): Up to 2.9.14.
4655
4656         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4657         wl-expand-newtext).
4658
4659 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4660
4661         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4662         message with no message-id field.
4663
4664 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4665
4666         * elmo-version.el (elmo-version): Up to 2.9.13.
4667
4668         * elmo-dop.el (elmo-folder-status-dop): Fix.
4669
4670 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4671
4672         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4673
4674         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4675         changing default value of default-mime-charset.
4676         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4677
4678         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4679
4680         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4681         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4682         instead of elmo-dop-queue-method-name-alist to check merging queue.
4683         (elmo-folder-delete-messages-dop): Delete from queue if negative
4684         message number.
4685         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4686         file is already removed.
4687
4688 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4689
4690         * elmo-vars.el: Bind colon keywords for old Emacsen.
4691
4692 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4693
4694         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4695         against non-exsisting charset.
4696
4697 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4698
4699         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4700         Use eword-decode-and-unfold-unstructured-field-body.
4701
4702         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4703         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4704         exists to decode raw subject string.
4705         (toplevel): Require 'mime.
4706
4707         * elmo-version.el (elmo-version): Up to 2.9.12.
4708
4709 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4710
4711         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4712         (elmo-msgdb-set-mark): Ditto.
4713
4714         * elmo-version.el (elmo-version): Up to 2.9.11.
4715
4716 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4717
4718         * elmo-util.el (elmo-delete-match-files): New function.
4719
4720         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4721         instead of elmo-delete-directory.
4722
4723         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4724         elmo-hash-minimun-size as 63.
4725
4726         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4727         elmo-diff-unread is nil.
4728
4729         * elmo-imap4.el (elmo-folder-open): Fix.
4730
4731         * elmo.el (elmo-message-mark): Rewrite.
4732         (elmo-message-field): Ditto.
4733         (elmo-message-set-mark): Ditto.
4734         (elmo-folder-replace-marks): New function.
4735         (elmo-generic-folder-append-msgdb): Removed third argument for
4736         elmo-msgdb-append.
4737         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4738         (elmo-msgdb-load): New implementation.
4739
4740         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4741
4742         * elmo-util.el (elmo-list-insert): New implementation.
4743
4744         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4745         argument for elmo-msgdb-append.
4746         
4747
4748         * elmo-msgdb.el (elmo-load-msgdb): New function.
4749         (elmo-make-msgdb): Ditto.
4750         (elmo-msgdb-get-index): New inline function.
4751         (elmo-msgdb-set-index): Ditto.
4752         (elmo-msgdb-get-entity-hashtb): Ditto.
4753         (elmo-msgdb-get-mark-hashtb): Ditto.
4754         (elmo-msgdb-get-mark): Ditto.
4755         (elmo-msgdb-set-mark): Ditto.
4756         (elmo-msgdb-count-marks): Ditto.
4757         (elmo-msgdb-get-number): Ditto.
4758         (elmo-msgdb-get-field): Ditto.
4759         (elmo-msgdb-seen-list): Ditto.
4760         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4761         (elmo-msgdb-delete-msgs): Follow the changes above.
4762         (elmo-msgdb-overview-get-entity): Ditto.
4763         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4764         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4765         and rewritten.
4766         (elmo-msgdb-make-index): Likewise.
4767         (elmo-msgdb-append): Removed third argument.
4768         (elmo-msgdb-clear): Clear index as nil.
4769         (elmo-folder-set-info-hashtb): Removed.
4770         (elmo-folder-set-info-max-by-numdb): Ditto.
4771         (elmo-folder-info-make-hashtb): Ditto.
4772
4773         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4774
4775         * elmo-map.el (elmo-folder-pack-number): Ditto.
4776
4777 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4778
4779         * elmo-version.el (elmo-version): Up to 2.9.10.
4780
4781         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4782
4783         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4784
4785 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4786
4787         * elmo-utils.el (elmo-make-directory): Add option.
4788         Default file mode is 700.
4789
4790 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4791
4792         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4793
4794 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4795
4796         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4797         mime-charset.
4798
4799         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4800         and "smaller".
4801
4802 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4803
4804         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4805         (elmo-shimbun-folder-entity-hash): New function.
4806         (elmo-shimbun-folder-shimbun-header): Ditto.
4807         (elmo-shimbun-entity-to-header): Ditto.
4808         (elmo-shimbun-msgdb-to-headers): Removed.
4809         (elmo-shimbun-folder-setup): Ditto.
4810         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4811         for hash key.
4812         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4813         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4814         Removed useless local bind.
4815         (elmo-folder-open-internal): Don't call
4816         `elmo-shimbun-folder-setup'.
4817         (elmo-folder-close-internal): Clear entity-hash slot.
4818         (elmo-folder-clear): Ditto.
4819         (elmo-shimbun-msgdb-create-entity): Use
4820         `elmo-shimbun-folder-shimbun-header'.
4821         (elmo-map-message-fetch): Ditto.
4822         (elmo-shimbun-update-overview): Use overview entity instead of
4823         shimbun header to lookup id by references.
4824         (elmo-map-folder-list-message-locations): Use not only headers but
4825         also overviews to list locations.
4826
4827 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4828
4829         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4830         msgdb path.
4831
4832         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4833
4834 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4835
4836         * elmo-util.el (elmo-read-search-condition-internal): Give default
4837         value for date.
4838
4839 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4840
4841         * elmo-util.el (elmo-condition-parse-search-value): Accept
4842         YYYY-MM-DD format to search.
4843         * elmo-date.el (elmo-date-get-datevec): Likewise.
4844
4845 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4846
4847         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4848         debugging code.
4849
4850 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4851
4852         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4853         from t.
4854
4855         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4856
4857         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4858         case from `elmo-folder-exists-p'.
4859         (elmo-folder-exists-p): Removed.
4860         (elmo-folder-creatable-p) Ditto.
4861
4862         * elmo-net.el (elmo-folder-create): Defined.
4863         (elmo-folder-create-unplugged): New function.
4864         (elmo-folder-exists-p): Changed default value to nil from t.
4865
4866         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4867         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4868
4869         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4870         `elmo-create-folder-dop' and append queue
4871         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4872         (elmo-folder-create-dop-delayed): New function.
4873
4874         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4875
4876         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4877
4878         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4879         (elmo-folder-writable-p) : Ditto.
4880
4881         * elmo-version.el (elmo-version): Up to 2.9.9.
4882
4883 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4884
4885         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4886         `elmo-message-use-cache-p' returns nil.
4887         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4888         (ignore cache file and refer the substance in local folders)
4889
4890 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4891
4892         * elmo-version.el (elmo-version): Up to 2.9.8.
4893
4894 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4895
4896         * elmo-version.el (elmo-version): Up to 2.9.7.
4897
4898         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4899
4900 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4901
4902         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4903
4904 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4905
4906         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4907         from --early.
4908         (elmo-map-folder-list-message-locations): Reverse location list.
4909
4910 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4911
4912         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4913
4914 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4915
4916         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4917         as a key.
4918         (elmo-nntp-folder-list-subfolders): Follow the change above.
4919
4920 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4921
4922         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4923         name if authentication type is specified.
4924
4925 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4926
4927         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4928         variable.
4929         (elmo-default-nntp-stream-type): Ditto.
4930         (elmo-default-pop3-stream-type): Ditto.
4931
4932 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4933
4934         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4935
4936 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4937
4938         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4939         elmo-vars.el.
4940         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4941
4942         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4943         (elmo-maildir-folder-path): Ditto.
4944         (elmo-maildir-list): Ditto (abolished).
4945
4946 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4947
4948         * elmo-version.el (elmo-version): Up to 2.9.6.
4949
4950 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4951
4952         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4953         (elmo-maildir-folder-path): Ditto.
4954         (elmo-msgdb-directory): Ditto.
4955         (elmo-passwd-life-time): Ditto.
4956         (elmo-msgdb-extra-fields): Ditto.
4957         (elmo-enable-disconnected-operation): Ditto.
4958
4959 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4960
4961         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4962         other choices.
4963         (elmo-pop3-default-authenticate-type): Ditto.
4964
4965 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4966
4967         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4968         choices for custom.
4969         (elmo-pop3-default-authenticate-type): Ditto.
4970
4971 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4972
4973         * elmo-imap4.el (elmo-folder-rename-internal): Change current
4974         mailbox to new-folder.
4975
4976 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
4977
4978         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
4979         less than new, set new as unread.
4980
4981         * elmo-util.el (elmo-string): Don't put text-property if nil.
4982
4983 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4984
4985         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
4986         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
4987
4988 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
4989
4990         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
4991         is nil on `completing-read'.
4992
4993 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
4994
4995         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
4996         for namespace part.
4997         (elmo-imap4-parse-namespace-subr): Ditto.
4998         (elmo-folder-list-subfolders): Append a delimiter when the specified
4999         folder path is a root with namespace and does not end with delimiter.
5000
5001 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5002
5003         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5004         was used.
5005
5006 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5007
5008         * elmo-util.el (elmo-save-buffer): The first argument of message
5009         is a format control string.
5010
5011 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5012
5013         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5014         `elmo-folder-diff').
5015         (elmo-diff-unread): Likewise.
5016
5017 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5018
5019         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5020         is t on `completing-read'.
5021
5022 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5023
5024         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5025         method of target folder with self mark-alist if MARK-ALIST is nil.
5026
5027 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5028
5029         * elmo-version.el (elmo-version): Up to 2.9.5.
5030
5031 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5032
5033         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5034         (elmo-dop-merge-funcs): Remove.
5035
5036 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5037
5038         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5039         Return t if PATH is directory, too.
5040         Use `dolist' instead of while loop.
5041
5042 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5043
5044         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5045         is deleted.
5046
5047 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5048
5049         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5050         return value to t.
5051         (elmo-folder-list-messages-unplugged): Return t if
5052         elmo-enable-disconnected-operation is nil.
5053
5054         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5055         `elmo-folder-list-messages-internal'.
5056
5057 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5058
5059         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5060         Change to looking-at `[23][0-9]+'.
5061         (elmo-network-initialize-session): Use 'error-msg'
5062         * elmo-net.el (elmo-network-open-session): Set unplugged
5063         if elmo-network-initialize-session returns 'elmo-open-err.
5064
5065 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5066
5067         * elmo-version.el (elmo-version): Up to 2.9.4.
5068
5069 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5070
5071         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5072         `elmo-folder-list-messages-internal'.
5073
5074 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5075
5076         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5077         (elmo-message-match-condition): New method.
5078         (elmo-folder-search-fast): New inline function.
5079         (elmo-msgdb-search): Removed.
5080
5081         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5082         target folder if it is unplugged.
5083         (elmo-folder-list-messages-internal): Return t if target folder is
5084         unplugged and itself is persistent; In this case, use list be
5085         searched already.
5086
5087         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5088         (elmo-msgdb-search-internal-primitive): Ditto.
5089         (elmo-msgdb-match-condition): New function.
5090         (elmo-msgdb-match-condition-primitive): Ditto.
5091
5092         * elmo-util.el (elmo-filter-condition-p): New macro.
5093
5094         * elmo-cache.el (elmo-folder-search): Removed.
5095
5096         * elmo-localdir.el (elmo-folder-search): Ditto.
5097
5098         * elmo-maildir.el (elmo-folder-search): Ditto.
5099
5100         * elmo-mark.el (elmo-folder-search): Ditto.
5101
5102         * elmo-nmz.el (elmo-folder-search): Ditto.
5103
5104         * elmo-sendlog.el (elmo-folder-search): Ditto.
5105
5106         * elmo-shimbun.el (elmo-folder-search): Ditto.
5107
5108         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5109         if folder is unplugged.
5110
5111         * elmo-nntp.el (elmo-folder-search): Likewise.
5112         (elmo-nntp-search-internal): New function.
5113
5114         * elmo-version.el (elmo-version): Up to 2.9.3.
5115
5116 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5117
5118         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5119
5120 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5121
5122         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5123
5124 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5125
5126         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5127
5128 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5129
5130         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5131         (elmo-map-folder-list-message-locations): Do drive letter conversion
5132         on Windows environment.
5133         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5134         (elmo-map-message-fetch): Ditto.
5135
5136 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5137
5138         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5139         (elmo-network-initialize-session): Ditto.
5140
5141 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5142
5143         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5144
5145         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5146
5147         * elmo-util.el (elmo-progress-clear): Ditto.
5148
5149         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5150         `DD-Mon-YYYY' type date.
5151
5152 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5153
5154         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5155         `elmo-date-make-sortable-string' instead of
5156         `timezone-make-date-sortable'.
5157
5158         * elmo-date.el (elmo-date-make-sortable-string): Use
5159         `timezone-make-time-string'.
5160
5161 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5162
5163         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5164
5165         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5166         `since'; Fix timezone.
5167
5168         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5169
5170         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5171
5172 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5173
5174         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5175
5176 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5177
5178         * elmo.el (elmo-generic-folder-append-messages): Make
5179         fetch-strategy with `use-cache' as 'maybe. Check return value of
5180         `elmo-message-fetch'.
5181         (elmo-message-fetch): Return return value of
5182         `elmo-message-fetch-with-cache-process'.
5183         (elmo-message-fetch-with-cache-process): Return non-nil if
5184         fetching was succeed. Load cache when fetching was failed and
5185         fetch-strategy-use-cache is 'maybe.
5186
5187         * elmo-util.el (elmo-file-cache-load): New function.
5188
5189         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5190         defun.
5191
5192         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5193         non-nil if fetching was succeed.
5194
5195         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5196
5197         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5198
5199         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5200         (elmo-message-fetch-with-cache-process): Likwise.
5201
5202         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5203
5204         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5205
5206         * elmo-version.el (elmo-version): Up to 2.9.2.
5207
5208 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5209
5210         * elmo.el (elmo-folder-delete): Delete msgdb path.
5211
5212         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5213
5214         * elmo-maildir.el (elmo-folder-delete): Ditto.
5215
5216         * elmo-localdir.el (elmo-folder-delete): Ditto.
5217
5218         * elmo-imap4.el (elmo-folder-delete): Ditto.
5219
5220 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5221
5222         * elmo.el (luna-define-class): Added `biff' slot.
5223
5224         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5225         (elmo-pop3-debug-inhibit-logging): Abolished.
5226         (elmo-network-close-session): Eliminated needless let.
5227         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5228         (elmo-pop3-send-command): Added `no-log' argument.
5229         (elmo-pop3-process-filter): Use `with-current-buffer'.
5230         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5231         if login failure.
5232         (elmo-pop3-auth-apop): Likewise.
5233         (elmo-network-authenticate-session): Likewise.
5234
5235         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5236         if biff folder.
5237
5238         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5239         string to determine protocol.
5240         (elmo-network-session-name-prefix): Abolished.
5241         (elmo-network-session-cache-key): Follow the change above.
5242         (elmo-network-open-session): Ditto.
5243
5244         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5245         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5246
5247         * elmo-version.el (elmo-version): Up to 2.9.1.
5248
5249         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5250         unmatch condition checking.
5251
5252         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5253         condition.
5254
5255 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5256
5257         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5258
5259 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5260
5261         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5262         test for while loop to execute at least one SEARCH command.
5263
5264 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5265
5266         * elmo-version.el (elmo-version): Up to 2.9.0.
5267
5268 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5269
5270         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5271         (elmo-archive-folder-path): Define.
5272         (elmo-folder-initialize): Setup `dir-name' slot.
5273         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5274         Use `dir-name' as prefix of each subfolders.
5275         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5276
5277 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5278
5279         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5280         (elmo-pipe-folder-list-target-messages): New internal function.
5281         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5282         `killed-list'.
5283         (elmo-pipe-folder-copied-list-load): New function.
5284         (elmo-pipe-folder-copied-list-save): Ditto.
5285         (elmo-folder-open-internal): Follow the change above.
5286         (elmo-folder-status): Fixed for copy.
5287
5288 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5289
5290         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5291
5292 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5293
5294         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5295         elmo-copy-file instead of elmo-add-name-to-file.
5296
5297         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5298
5299         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5300         "file://..." index.
5301
5302         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5303         of accept-process-output as 1.
5304         (elmo-pop3-read-contents): Ditto.
5305         (elmo-pop3-read-body): Ditto.
5306
5307 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5308
5309         * elmo-version.el (product-version-as-string): Remove define.
5310
5311 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5312
5313         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5314         (elmo-imap4-copy-messages): Chop number set using
5315         `elmo-imap4-number-set-chop-length'.
5316         (elmo-imap4-set-flag): Ditto.
5317         (elmo-imap4-search-internal-primitive): Ditto.
5318
5319 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5320
5321         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5322         `elmo-folder-make-temp-dir'
5323
5324         * elmo-vars.el (elmo-cache-directory): New variable.
5325         (elmo-cache-dir): Abolished.
5326         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5327
5328         * elmo-version.el (elmo-version): Up to 2.7.7.
5329
5330 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5331
5332         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5333         defcustom; Set default value as t.
5334
5335 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5336
5337         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5338         (ldap-search-program-arguments): Changed default value.
5339         (ldap-search-basic): Accept exit status 4.
5340         (ldap/field-body): Parse options.
5341         (ldap/collect-field): Ditto.
5342         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5343
5344         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5345         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5346         (elmo-imap4-accept-ok): Ditto.
5347         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5348         'notify-bye, only BYE error is reported.
5349         (elmo-folder-exists-p-plugged): Set no-error argument of
5350         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5351
5352         * elmo.el (elmo-imap4-bye-error): Changed message.
5353
5354         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5355         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5356         queues (It causes infinite loop).
5357
5358 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5359
5360         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5361         (RECENT UNSEEN MESSAGES) extension.
5362
5363 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5364
5365         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5366         Check number of overview fields.
5367
5368 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5369
5370         * elmo.el (elmo-folder-confirm-appends): Changed message.
5371         (elmo-folder-confirm-appends): Ditto.
5372
5373         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5374         `with-temp-buffer'.
5375         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5376
5377 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5378
5379         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5380         of elmo-folder-update-threshold is nil, which can be set by
5381         wl-summary-update-confirm-threshold.
5382
5383 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5384
5385         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5386         (elmo-nmz-index-alias-alist): Ditto.
5387         (elmo-map-folder-list-message-locations): Follow the change above.
5388
5389 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5390
5391         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5392
5393         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5394
5395         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5396
5397         * elmo-util.el (elmo-read): Ditto.
5398         (elmo-display-error): Ditto.
5399
5400         * elmo-vars.el (elmo-date-match): Ditto.
5401
5402         * pldap.el (ldap-coding-system): Ditto.
5403
5404         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5405         `elmo-inhibit-number-mapping' as nil.
5406
5407 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5408
5409         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5410         space delimiter for list response.
5411
5412 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5413
5414         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5415
5416 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5417
5418         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5419         (elmo-map-message-fetch): Fix.
5420         * elmo-map.el (elmo-folder-status): Fix for killed.
5421
5422 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5423
5424         * elmo-sendlog.el: New file.
5425         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5426
5427 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5428
5429         * acap.el (acap-logging-out): New buffer local variable.
5430         (acap-close): Set it.
5431         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5432         an error.
5433
5434 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5435
5436         * acap.el (acap-response-bye-p): New function.
5437         (acap-response-bye-message): Ditto.
5438         (acap-wait-for-response): If bye response is received, cause an error.
5439         (acap-parse-response): Make bye response when 'Bye' is received.
5440
5441 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5442
5443         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5444
5445 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5446
5447         * elmo-util.el (elmo-copy-file): Added argument
5448         `ok-if-already-exists'.
5449         (elmo-copy-file): Fixed typo.
5450
5451 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5452
5453         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5454
5455 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5456
5457         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5458
5459 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5460
5461         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5462         to killed-list.
5463
5464 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5465
5466         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5467         (elmo-folder-initialize): Fix for `copy'.
5468         (elmo-pipe-drain): Ditto.
5469         (elmo-folder-open-internal): Ditto.
5470         (elmo-folder-newsgroups): Fix.
5471
5472 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5473
5474         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5475         for each message.
5476
5477         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5478         recent value is returned from imap folder.
5479
5480         * elmo.el (elmo-folder-newsgroups): New generic function.
5481
5482         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5483         (elmo-folder-initialize): Set it.
5484         (elmo-folder-expand-msgdb-path): Use it.
5485         (elmo-folder-newsgroups): Define.
5486
5487         * elmo-filter.el (elmo-folder-newsgroups): Define.
5488
5489         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5490
5491         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5492
5493         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5494
5495 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5496
5497         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5498         user option.
5499         (elmo-shimbun-header-extra-field): New inline function.
5500         (elmo-shimbun-header-set-extra-field): Ditto.
5501         (elmo-shimbun-folder-header-hash-setup): Ditto.
5502         (elmo-shimbun-update-overview): Ditto.
5503         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5504         (elmo-shimbun-folder-setup): Use
5505         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5506         (elmo-shimbun-get-headers): Ditto.
5507         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5508         Insert `X-Shimbun-Id:' header if extra field is set.
5509         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5510         field's value instead of `shimbun-header-id'.
5511
5512         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5513         inline function.
5514         (elmo-msgdb-overview-entity-set-date): Ditto.
5515         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5516
5517 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5518
5519         * mmimap.el (mmimap-entity-section): Changed body node number from
5520         "0" to "1".
5521
5522 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5523
5524         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5525         `elmo-folder-delete-messages'.
5526
5527         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5528         (elmo-folder-initialize): Changed to expand alias into index path.
5529
5530         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5531         `elmo-mime-insert-header-from-buffer' with 6th arg
5532         `sorted-fields'.
5533
5534 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5535
5536         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5537
5538         * elmo.el (elmo-diff-new): New inline function.
5539         (elmo-diff-unread): Ditto.
5540         (elmo-diff-all): Ditto.
5541
5542         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5543         value from responseb.
5544         (elmo-imap4-folder-diff-plugged): Ditto.
5545         (elmo-imap4-server-diff-async): Added recent argument.
5546         (elmo-server-diff-async): Ditto.
5547         (elmo-imap4-folder-diff-plugged): Ditto.
5548
5549         * elmo-version.el (elmo-version): Up to 2.7.6.
5550
5551 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5552
5553         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5554         in quoted-stirng.
5555
5556 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5557
5558         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5559
5560         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5561
5562         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5563
5564         * elmo-multi.el (elmo-folder-initialize): Ditto.
5565
5566         * elmo-util.el (elmo-parse-token): New function.
5567         (elmo-parse-prefixed-element): Ditto.
5568
5569 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5570
5571         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5572         delete process.
5573         (elmo-imap4-accept-ok): Ditto.
5574
5575 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5576
5577         * mmimap.el (mime-imap-entity-header-string): Don't check first
5578         element of node-id is `0' (Follow last change).
5579
5580 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5581
5582         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5583         assigned irregular node-id to nested multipart section.
5584         (initialize-instance): Followed above change.
5585
5586 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5587
5588         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5589         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5590         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5591         `elmo-shimbun-get-headers');
5592         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5593         visible article on summary exists in headers).
5594         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5595
5596 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5597
5598         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5599         definition.
5600
5601 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5602
5603         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5604
5605 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5606
5607         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5608         header separator into loop condition.
5609
5610 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5611
5612         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5613         Return duplicate folder if it has subfolder.
5614
5615 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5616
5617         * elmo.el (elmo-make-folder): Add folder name error check.
5618
5619         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5620         (elmo-nntp-encode-group-string): New inline function.
5621         (elmo-nntp-decode-group-string): Ditto.
5622         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5623         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5624         Use `not' instead of `null';
5625         Use elmo-nntp-decode-group-string.
5626
5627         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5628
5629         * elmo-version.el (elmo-version): Up to 2.7.5.
5630
5631 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5632
5633         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5634         Hide progress gauge if `elmo-folder-move-messages' exits
5635         nonlocally.
5636
5637 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5638
5639         * elmo-imap4.el (elmo-folder-initialize): Use
5640         `elmo-imap4-encode-folder-string' for folder name.
5641
5642 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5643
5644         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5645         `done'.
5646
5647 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5648
5649         * elmo-util.el (elmo-progress-counter-alist): New internal
5650         variable.
5651         (elmo-progress-counter-value): New macro.
5652         (elmo-progress-counter-all-value): Ditto.
5653         (elmo-progress-counter-format): Ditto.
5654         (elmo-progress-counter-set-value): Ditto.
5655         (elmo-progress-set): New function.
5656         (elmo-progress-clear): Ditto.
5657         (elmo-progress-notify): Ditto.
5658
5659         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5660         counter.
5661
5662         * elmo.el (elmo-generic-folder-append-messages): Call
5663         `elmo-progress-notify'.
5664         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5665
5666         * elmo-archive.el (elmo-folder-append-messages): Call
5667         `elmo-progress-notify'.
5668
5669         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5670
5671         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5672
5673         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5674
5675 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5676
5677         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5678         'Create'.
5679         (elmo-message-encache-dop): Added argument `read'.
5680
5681         * elmo-shimbun.el (elmo-message-encache): Ditto.
5682
5683         * elmo-net.el (elmo-message-encache): Ditto.
5684
5685         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5686         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5687         elmo-imap4-seen-messages.
5688         (elmo-folder-msgdb-create-plugged): Initialize
5689         elmo-imap4-seen-messages;
5690         Set seen mark on elmo-imap4-seen-messages.
5691
5692         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5693
5694         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5695         elmo-folder-append-buffer.
5696         (elmo-folder-encache): Added optional argument `read'.
5697         (elmo-message-encache): Ditto.
5698
5699         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5700
5701         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5702
5703         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5704         if append buffer content succeds.
5705
5706 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5707
5708         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5709         elmo-display-progress.
5710
5711         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5712         Set 4th argument of mime-display-message.
5713         (elmo-mime-display-as-is): Ditto.
5714
5715 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5716
5717         * elmo-nmz.el (toplevel): Require 'mime-edit.
5718         (elmo-nmz-content-type-alist): Abolished.
5719         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5720         content is not a message.
5721         (elmo-map-message-fetch): Changed behavior exept for message content;
5722         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5723         content-type, Add From: and Subject: field.
5724
5725 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5726
5727         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5728         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5729         not a message.
5730
5731 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5732
5733         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5734         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5735
5736         * elmo-archive.el (elmo-folder-writable-p): Defined.
5737
5738         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5739
5740         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5741
5742         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5743
5744         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5745
5746         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5747
5748         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5749
5750         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5751
5752         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5753
5754 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5755
5756         * elmo-util.el (elmo-address-quote-specials): New function;
5757         Renamed from `wl-address-quote-specials'.
5758
5759 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5760
5761         * elmo-version.el (elmo-version): Up to 2.7.4.
5762
5763 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5764
5765         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5766
5767 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5768
5769         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5770         both compile-time and run-time to avoid byte-compile warning.
5771
5772 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5773
5774         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5775
5776 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5777
5778         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5779         option.
5780         (elmo-mime-display-as-is-internal): Use it.
5781
5782         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5783         if `read-passwd' is not defined.
5784
5785 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5786
5787         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5788         by original number.
5789         (elmo-folder-status): Call `elmo-folder-open-internal';
5790         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5791         (elmo-folder-close-internal): Set location-alist as nil.
5792         (elmo-folder-clear): Define.
5793         (elmo-folder-check): Don't set location-alist as nil.
5794
5795         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5796
5797 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5798
5799         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5800         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5801
5802         * mmimap.el (mime-imap-entity::requested): New slot.
5803         (mime-imap-location-fetch-entity-p): New generic function.
5804         (mime-decode-parameters): Define using `defun-maybe'.
5805         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5806         content-type structure.
5807         (mime-entity-body): Return empty body if
5808         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5809
5810         * elmo.el (elmo-message-displaying): New variable.
5811
5812         * elmo-mime.el (elmo-mime-message-display): Bind
5813         elmo-message-displaying as t.
5814
5815         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5816
5817 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5818
5819         * acap.el (acap-open): erase buffer before starting network process.
5820         (acap-store): Rewrite.
5821
5822 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5823
5824         * elmo-imap4.el (elmo-imap4-default-mailbox,
5825         elmo-imap4-default-server
5826         elmo-imap4-default-authenticate-type,
5827         elmo-imap4-default-user,
5828         elmo-imap4-default-port,
5829         elmo-imap4-default-stream-type,
5830         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5831
5832         * elmo-pop3.el (elmo-pop3-default-user,
5833         elmo-pop3-default-server,
5834         elmo-pop3-default-authenticate-type,
5835         elmo-pop3-default-port,
5836         elmo-pop3-default-stream-type,
5837         elmo-pop3-stream-type-alist): Ditto.
5838
5839         * elmo-nntp.el (elmo-nntp-default-server,
5840         elmo-nntp-default-user,
5841         elmo-nntp-default-port,
5842         elmo-nntp-default-stream-type,
5843         elmo-nntp-stream-type-alist): Ditto.
5844
5845         * elmo-vars.el: Follow changes above.
5846         (elmo-setting): New custom group; added 'elmo-setting group to
5847         above variables.
5848
5849         * elmo-version.el (elmo-version): Up to 2.7.3.
5850
5851         * acap.el (acap-parse-response): Don't delete process when BYE
5852         response (It causes hang-up on slow network environment).
5853         (toplevel): Added comment.
5854
5855 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5856
5857         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5858
5859         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5860         parsing NIL.
5861         (acap-parse-return-metadata): Ditto.
5862
5863         * slp.el: New file.
5864         (toplevel): Fixed typo.
5865
5866         * acap.el: New file.
5867         (acap-network-stream-open): Show "Connecting..." message.
5868         (acap-parse-response): Fixed problem for BYE untagged response.
5869         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5870         (toplevel): Added tiny comments.
5871
5872 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5873
5874         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5875         space delimiter for uidl response.
5876
5877 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5878
5879         * elmo-vars.el (elmo-use-semi): Eliminated.
5880
5881         * elmo-util.el (elmo-string-assoc-all): New function.
5882
5883 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5884
5885         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5886         property 'mime-preview-situation for `mime-preview-quit'.
5887
5888 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5889
5890         * elmo.el (elmo-message-fetch-with-cache-process): Call
5891         elmo-message-fetch-internal instead of causing an error when fetch
5892         strategy is 'entire but only 'section cache is available.
5893
5894 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5895
5896         * elmo-version.el (elmo-version): Up to 2.7.2.
5897
5898         * elmo.el (elmo-generic-folder-append-messages): Make
5899         fetch-strategy with `use-cache'.
5900
5901         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5902         (elmo-dop-queue-method-name): New macro.
5903
5904 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5905
5906         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5907         unbalanced parenthesis.
5908
5909 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5910
5911         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5912
5913 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5914
5915         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5916         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5917
5918 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5919
5920         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5921         local variables.
5922
5923 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5924
5925         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5926         (elmo-message-use-cache-p): Define.
5927         (elmo-folder-msgdb-create): Treat cache.
5928
5929 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5930
5931         * elmo-nntp.el (elmo-network-initialize-session): Call
5932         `elmo-nntp-send-mode-reader'.
5933         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5934
5935 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5936
5937         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5938         alist.
5939         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5940         assoc.
5941
5942         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5943         for `elmo-plugged-p'.
5944         (elmo-open-network-stream): Fixed stream-type argument.
5945
5946 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5947
5948         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5949         unknown archive type is specified.
5950
5951 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5952
5953         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5954
5955         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5956         while loading msgdb.
5957
5958         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5959         (elmo-folder-open-internal): Rewrite.
5960
5961 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5962
5963         * elmo-mime.el (elmo-mime-display-as-is-internal):
5964         Adjust buffer-multibyte status.
5965
5966 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5967
5968         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5969         of elmo-condition-find-key.
5970
5971         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
5972         (elmo-condition-in-msgdb-p): Ditto.
5973         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
5974         argument.
5975
5976 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
5977
5978         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
5979
5980 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
5981
5982         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
5983         label for elmo-display-progress.
5984
5985 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
5986
5987         * elmo.el (elmo-folder-clear): New method.
5988         (elmo-folder-clear): Define.
5989         (elmo-folder-synchronize): Call `elmo-folder-clear'.
5990
5991         * elmo-shimbun.el (elmo-folder-check): Rewrite.
5992         (elmo-folder-clear): Define.
5993
5994         * elmo-map.el (elmo-folder-clear): Define.
5995
5996         * elmo-version.el (elmo-version): Up to 2.7.1.
5997
5998 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
5999
6000         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6001         updates.
6002
6003 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6004
6005         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6006         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6007
6008 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6009
6010         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6011
6012         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6013         and re-written.
6014
6015         * elmo-imap4.el (elmo-folder-initialize): Use
6016         elmo-get-network-stream-type.
6017
6018         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6019
6020         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6021
6022 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6023
6024         * elmo.el (elmo-message-encache): Set unread argument for
6025         elmo-message-fetch.
6026
6027         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6028
6029         * elmo.el (elmo-net-port-info): New method.
6030
6031         * elmo-shimbun.el (elmo-net-port-info): Define.
6032         (elmo-message-encache): Ditto.
6033
6034         * elmo-net.el (elmo-net-port-info): Define as method.
6035
6036         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6037         unplugged status when elmo-enable-disconnected-operation is t.
6038
6039         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6040         of spool folder before checking new number.
6041
6042 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6043
6044         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6045         (elmo-network-setup-session): Ditto.
6046         (elmo-message-fetch-plugged): Ditto.
6047         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6048         (elmo-network-initialize-session): Ditto.
6049         (elmo-pop3-read-response): Abolish 3rd argument.
6050         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6051         (elmo-pop3-read-contents): Ditto.
6052         (elmo-pop3-read-body): Ditto.
6053         (elmo-folder-status): Call elmo-folder-close.
6054         (elmo-pop3-lock): Abolish.
6055         (elmo-pop3-unlock): Ditto.
6056         (elmo-pop3-locked-p): Ditto.
6057         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6058
6059 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6060
6061         * elmo-version.el (elmo-version): Up to 2.7.0.
6062
6063         * elmo-pop3.el (elmo-pop3-debug): New variable.
6064         (elmo-pop3-debug-inhibit-logging): Ditto.
6065         (elmo-pop3-debug): New function.
6066         (elmo-pop3-send-command): Call elmo-pop3-debug.
6067         (elmo-pop3-read-response): Added keep-lock optional argument;
6068         Don't unlock if keep-lock is non-nil.
6069         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6070         (elmo-network-authenticate-session): Bind
6071         elmo-pop3-debug-inhibit-logging as t.
6072         (elmo-network-setup-session): Call elmo-pop3-read-response with
6073         keep-lock argument.
6074         (elmo-pop3-read-msg): Ditto.
6075         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6076         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6077         (elmo-network-initialize-session): Call elmo-pop3-lock.
6078         (elmo-folder-close-internal): Don't clear location-alist slot.
6079         (elmo-folder-check): Clear location-alist slot.
6080
6081 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6082
6083         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6084         (elmo-pop3-send-command): Call elmo-pop3-lock.
6085         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6086         (elmo-pop3-read-contents): Ditto.
6087         (elmo-pop3-lock): New function.
6088         (elmo-pop3-unlock): Ditto.
6089         (elmo-pop3-locked-p): Ditto.
6090         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6091         returns t.
6092
6093 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6094
6095         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6096
6097         * elmo-util.el (elmo-file-field-primitive-condition-match):
6098         New inline function (Don't fetch file content if "first" or "last").
6099         (elmo-file-field-condition-match): Use
6100         elmo-file-field-primitive-condition-match.
6101
6102         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6103         "first".
6104
6105         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6106         (elmo-message-fetch-plugged): Fixed.
6107
6108         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6109
6110 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6111
6112         * elmo.el (elmo-folder-move-messages): Bind
6113         elmo-inhibit-display-retrieval-progress as t while moving messages.
6114
6115         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6116         New variable.
6117         (elmo-inhibit-display-retrieval-progress): Ditto.
6118
6119         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6120         for retrieval progress;
6121         Don't display progress when total buffer size is smaller than
6122         elmo-display-retrieval-progress-threshold.
6123         (elmo-message-fetch-plugged): Don't display progress when
6124         elmo-inhibit-display-retrieval-progress is non-nil.
6125
6126         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6127         for retrieval progress;
6128         Don't display progress when literal size is smaller than
6129         elmo-display-retrieval-progress-threshold.
6130         (elmo-imap4-message-fetch): Don't display progress when
6131         elmo-inhibit-display-retrieval-progress is non-nil.
6132
6133 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6134
6135         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6136         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6137         (elmo-imap4-message-fetch): Likewise.
6138
6139         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6140         (elmo-shimbun-index-range-alist): Ditto.
6141         (elmo-shimbun-use-entire-index): Abolish.
6142         (shimbun-mua-use-entire-index): Ditto.
6143         (elmo-shimbun-folder): Added new slot `range'.
6144         (elmo-folder-initialize): Setup slot `range'.
6145
6146 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6147
6148         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6149         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6150         (elmo-shimbun-get-headers): Use return value of
6151         `shimbun-article-expiration-days'.
6152         (elmo-folder-close-internal): Clean up last-check slot.
6153
6154         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6155         (elmo-pop3-total-size): New variable.
6156         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6157
6158         * elmo.el (elmo-folder-reserve-status-p): New method.
6159
6160         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6161         (elmo-shimbun-use-entire-index): New user option.
6162         (shimbun-elmo-mua): New class.
6163         (shimbun-mua-search-id): Define.
6164         (shimbun-mua-use-entire-index): Ditto.
6165         (elmo-shimbun-folder:last-check): New slot.
6166         (elmo-shimbun-headers-cache-header-list): Abolish.
6167         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6168         (elmo-shimbun-headers-cache-header-hash): Ditto.
6169         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6170         (elmo-shimbun-headers-cache-last-check): Ditto.
6171         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6172         (elmo-shimbun-headers-check-p): Rewrite.
6173         (elmo-shimbun-msgdb-to-headers): New function.
6174         (elmo-shimbun-get-headers): Rewrite.
6175         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6176         (elmo-folder-open-internal): Get headers only if
6177         `elmo-shimbun-headers-check-p' is non-nil.
6178         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6179         is non-nil.
6180         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6181         (elmo-quit): Removed.
6182
6183         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6184         function.
6185         (elmo-msgdb-overview-entity-set-extra): Ditto.
6186         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6187
6188         * elmo-map.el (elmo-folder-status): Don't call
6189         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6190         is non-nil.
6191
6192 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6193
6194         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6195         of `elmo-msgdb-search-internal-primitive' when condition's car is
6196         `and' or `or'.
6197
6198 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6199
6200         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6201
6202 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6203
6204         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6205         call `elmo-pipe-drain'.
6206
6207 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6208
6209         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6210         typo. (elmo-cache-folder -> elmo-mark-folder)
6211
6212 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6213
6214         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6215         `elmo-message-fetch'.
6216
6217 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6218
6219         * elmo-net.el (elmo-message-encache): Fixed typo.
6220         (elmo-message-fetch-unplugged): Changed call
6221         `elmo-message-fetch-internal' without argument `outbuf'.
6222
6223 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6224
6225         * elmo.el (elmo-message-encache): Define as generic function.
6226         (elmo-message-fetch-field): New generic function.
6227         (elmo-message-fetch-with-cache-process): Cause an error when
6228         fetch strategy is 'entire but only 'section cache is available.
6229         (toplevel): Fixed nmz folder definition.
6230
6231         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6232         (elmo-msgdb-resume-list-filename): Ditto.
6233         (elmo-queue-filename): Ditto.
6234         (elmo-enable-disconnected-operation): Changed default value to t.
6235
6236         * elmo-util.el (elmo-cache-path-section-p): New function.
6237         (elmo-file-cache-get): Use it.
6238         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6239         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6240         (elmo-dop-queue-save): Ditto.
6241
6242         * elmo-net.el (elmo-folder-status-unplugged): Call
6243         elmo-folder-status-dop.
6244         (elmo-folder-list-messages-unplugged): Implemented.
6245         (elmo-folder-delete-messages-unplugged): Define.
6246         (elmo-folder-msgdb-create): Define.
6247         (elmo-folder-msgdb-create-unplugged): Define.
6248         (elmo-folder-mark-as-read-unplugged): Ditto.
6249         (elmo-folder-unmark-read-unplugged): Ditto.
6250         (elmo-folder-mark-as-important-unplugged): Ditto.
6251         (elmo-folder-unmark-important-unplugged): Ditto.
6252         (elmo-message-encache): Ditto.
6253
6254         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6255         (elmo-dop-queue-save): Ditto.
6256
6257         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6258         `elmo-folder-msgdb-create'.
6259         (elmo-folder-append-buffer): Implemented unplugged operation.
6260         (elmo-folder-append-messages): Call parent method in unplugged status.
6261         (elmo-message-fetch-unplugged): Removed definition.
6262         (elmo-message-fetch-field): Implemented.
6263
6264         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6265         (elmo-dop-folder): Removed variable definition.
6266         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6267         (elmo-dop-queue-flush): Implemented.
6268         (elmo-dop-queue-merge): Removed definition (TODO).
6269         (elmo-dop-spool-folder): New function.
6270         (elmo-dop-spool-folder-append-buffer): Ditto.
6271         (elmo-dop-spool-folder-list-messages): Ditto.
6272         (elmo-dop-list-deleting-messages): Ditto.
6273         (elmo-folder-append-buffer-dop): Ditto.
6274         (elmo-folder-delete-messages-dop): Ditto.
6275         (elmo-message-encache-dop): New inline function.
6276         (elmo-create-folder-dop): Ditto.
6277         (elmo-folder-mark-as-read-dop): Ditto.
6278         (elmo-folder-unmark-read-dop): Ditto.
6279         (elmo-folder-mark-as-important-dop): Ditto.
6280         (elmo-folder-unmark-important-dop): Ditto.
6281         (elmo-folder-status-dop): Fixed.
6282         (elmo-folder-append-buffer-dop-delayed): New function.
6283         (elmo-folder-delete-messages-dop-delayed): Ditto.
6284         (elmo-dop-msgdb): Ditto.
6285
6286 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6287
6288         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6289
6290 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6291
6292         * elmo.el (elmo-folder-move-messages): Fixed problem when
6293         `dst-folder' is 'null.
6294
6295 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6296
6297         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6298         instead of current mark.
6299
6300         * elmo-multi.el (elmo-folder-list-importants-internal): No
6301         operation if importants is not list.
6302
6303         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6304         Return t if importants is not list.
6305
6306         * elmo-map.el (elmo-map-folder-list-importants): Define.
6307         (elmo-folder-list-importants-internal): Check return value of
6308         `elmo-map-folder-list-importants-internal'.
6309
6310         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6311
6312         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6313
6314         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6315
6316         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6317
6318 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6319
6320         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6321         (Patch is provided by <kita@coe.nttdata.co.jp>).
6322
6323 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6324
6325         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6326         mark folder.
6327
6328 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6329
6330         * elmo.el (elmo-message-fetch): Define.
6331         (elmo-message-fetch-with-cache-process): New generic method.
6332         (elmo-message-fetch-internal): New generic method.
6333         (elmo-folder-synchronize):
6334
6335         * elmo-archive.el (elmo-message-fetch-internal): Define.
6336         (elmo-message-fetch): Eliminated.
6337
6338         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6339         (elmo-message-fetch): Eliminated.
6340
6341         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6342         argument OUTBUF.
6343         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6344
6345         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6346         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6347
6348         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6349         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6350
6351         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6352
6353         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6354
6355         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6356
6357         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6358         (elmo-message-fetch-unplugged): New generic method.
6359         (elmo-message-fetch-internal): Remove cache process (Renamed from
6360         `elmo-message-fetch').
6361
6362         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6363         (elmo-message-fetch): Eliminated.
6364         (elmo-message-fetch-unplugged): Ditto.
6365
6366         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6367
6368 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6369
6370         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6371         of `to-be-deleted' from number-alist to number-list.
6372
6373 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6374
6375         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6376         (elmo-folder-mark-as-important): Ditto.
6377
6378 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6379
6380         * elmo.el (elmo-folder): Added process-duplicates slot.
6381
6382         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6383         (elmo-folder-unmark-read): Ditto.
6384         (elmo-folder-unmark-important): Ditto.
6385         (elmo-folder-mark-as-important): Ditto.
6386
6387         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6388         duplicated message processing.
6389
6390         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6391
6392 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6393
6394         * elmo-util.el (elmo-list-subdirectories-1): New function.
6395         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6396         (elmo-mapcar-list-of-list): New function.
6397
6398         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6399         `elmo-mapcar-list-of-list' instead of `mapcar'.
6400
6401         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6402
6403         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6404         `elmo-have-link-count'. Return the fully qualified folder name.
6405
6406 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6407
6408         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6409         (elmo-shimbun-headers-cache): New internal variable.
6410         (elmo-shimbun-headers-cache-header-list): New inline function.
6411         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6412         (elmo-shimbun-headers-cache-header-hash): Ditto.
6413         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6414         (elmo-shimbun-headers-cache-last-check): Ditto.
6415         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6416         (elmo-shimbun-lapse-seconds): Ditto.
6417         (elmo-shimbun-headers-cache-check-p): Ditto.
6418         (elmo-shimbun-get-headers): New function.
6419         (elmo-folder-open-internal): Call it.
6420         (elmo-quit): Define (Clear headers-cache).
6421
6422 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6423
6424         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6425
6426         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6427         (elmo-msgdb-flist-save): Ditto.
6428
6429         * elmo-shimbun.el (elmo-folder-list-subfolders):
6430         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6431         (elmo-folder-exists-p): Ditto.
6432
6433         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6434         argument for `shimbun-header-insert'.
6435
6436 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6437
6438         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6439         at first time.
6440
6441         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6442         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6443
6444 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6445
6446         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6447         (elmo-folder-plugged-p): Define.
6448         (elmo-folder-set-plugged): Ditto.
6449         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6450         (elmo-folder-list-messages-internal): Return t if unplugged.
6451         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6452
6453         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6454         when elmo-folder-list-messages-internal method of children returns t.
6455
6456         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6457         pair is nil.
6458         (elmo-folder-open-internal): Don't update if unplugged status.
6459
6460 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6461
6462         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6463         new message.
6464
6465 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6466
6467         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6468
6469         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6470         saving.
6471
6472 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6473
6474         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6475
6476         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6477         (elmo-folder-open-internal): Set up headers slot.
6478         (elmo-folder-check): Call elmo-folder-close-internal and
6479         elmo-folder-open-internal.
6480         (elmo-folder-close-internal): Clean up headers slot.
6481
6482 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6483
6484         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6485         exactly folder list.
6486         (elmo-folder-append-messages): Fixed append archive with prefix.
6487
6488         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6489         make temp files with start-number.
6490
6491         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6492
6493 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6494
6495         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6496         argument `visible-only'.
6497         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6498         instead of `if'.
6499
6500         * elmo-pop3.el (elmo-folder-open-internal): Check
6501         `elmo-inhibit-number-mapping' is non-nil.
6502
6503         * elmo-pipe.el (elmo-folder-status): Fixed.
6504
6505 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6506
6507         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6508
6509         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6510         (elmo-folder-open-internal): Setup `header-hash' slot.
6511         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6512         information.
6513         (elmo-map-message-fetch): Ditto.
6514
6515 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6516
6517         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6518         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6519         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6520         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6521
6522         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6523
6524 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6525
6526         * sb-airs.el: Added footer.
6527
6528         * shimbun.el (shimbun-article): Define as luna-method.
6529
6530         * sb-tcup.el: New file.
6531
6532         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6533         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6534
6535 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6536
6537         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6538         (shimbun-get-headers): Ditto.
6539
6540         * elmo.el: Moved obsolete variable definitions from
6541         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6542
6543         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6544         groups.
6545
6546         * shimbun.el: New file.
6547
6548         * elmo-shimbun.el: New file.
6549
6550         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6551         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6552         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6553         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6554
6555 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6556
6557         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6558         hierarchy is t.
6559
6560 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6561
6562         * elmo.el (elmo-folder-msgdb): Define as macro.
6563         (elmo-folder-open): Added argument `load-msgdb'.
6564         (elmo-generic-folder-open): Ditto.
6565         (elmo-folder-encache): New function.
6566
6567         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6568
6569         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6570
6571         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6572         Eliminated argument FOLDER and added argument MSGDB.
6573         (elmo-dop-queue-load): Moved from elmo-dop.el.
6574         (elmo-dop-queue-save): Ditto.
6575
6576         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6577
6578         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6579
6580         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6581         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6582         (elmo-filter-folder-list-importants-internal): Ditto.
6583
6584         * elmo-map.el (elmo-folder-pack-number): Ditto.
6585
6586         * elmo-mime.el (elmo-mime-message-display): Ditto.
6587
6588         * elmo.el (elmo-generic-folder-commit): Ditto.
6589         (elmo-folder-list-unreads): Ditto.
6590         (elmo-folder-list-importants): Ditto.
6591         (elmo-generic-folder-commit): Ditto.
6592         (elmo-message-set-mark): Ditto.
6593         (elmo-generic-folder-append-msgdb): Ditto.
6594         (elmo-folder-synchronize): Ditto.
6595         (elmo-folder-messages): Ditto.
6596         (elmo-init): Call elmo-dop-queue-load.
6597         (elmo-folder-list-messages): Ditto.
6598
6599         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6600         (elmo-nntp-folder-process-crosspost): Ditto.
6601         (elmo-folder-list-unreads-internal): Ditto.
6602
6603         * elmo-dop.el: Removed old functions.
6604
6605 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6606
6607         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6608         `folder' to `msgdb'.
6609
6610 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6611
6612         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6613         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6614
6615         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6616         case-fold-search.
6617
6618 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6619
6620         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6621         defined.
6622
6623         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6624         (mmimap-parse-parameters-from-list): Define as alias for
6625         `mime-decode-parameter-plist' if it is defined as function.
6626         (mmimap-make-mime-entity): Added argument `number'.
6627         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6628         as 0.
6629         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6630
6631         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6632
6633         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6634
6635         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6636
6637 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6638
6639         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6640
6641         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6642         when elmo-imap4-default-authenticate-type is nil.
6643         (elmo-folder-list-subfolders): Ditto
6644         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6645         (elmo-imap4-fetch-callback-1-subr): Renamed from
6646         `elmo-imap4-fetch-callback-1' and define as inline function.
6647         (elmo-imap4-fetch-callback-1):
6648         Renamed from `elmo-imap4-fetch-callback'.
6649         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6650
6651         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6652         msgdb path (To keep compatibility with main trunk).
6653
6654         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6655
6656         * elmo-util.el (elmo-make-file-cache): Moved position of
6657         some macros.
6658
6659         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6660         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6661         instead of `elmo-pop3-inhibit-uidl'.
6662         (elmo-folder-exists-p): Ditto.
6663         (elmo-pop3-folder-list-messages): Ditto.
6664
6665         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6666         instead of `elmo-pop3-inhibit-uidl'.
6667         (elmo-folder-status): Ditto.
6668
6669         * elmo-dop.el (elmo-dop-folder): New variable.
6670         (elmo-dop-lock-message): Eliminated.
6671         (elmo-dop-unlock-message): Ditto.
6672         (elmo-dop-lock-list-load): Ditto.
6673         (elmo-dop-lock-list-save): Ditto.
6674         (elmo-dop-delete-folder): Ditto.
6675         (elmo-dop-rename-folder): Ditto.
6676
6677         * elmo.el: Removed incomplete commentary.
6678
6679 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6680
6681         * elmo.el (toplevel): Require 'elmo-version first;
6682         for little `recursive-load-depth' settings.
6683         Fix "ends here" comment.
6684
6685 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6686
6687         * elmo-util.el (toplevel): Require 'poem;
6688         Some functions are moved from elmo-cache.el.
6689
6690         * elmo-net.el (toplevel): Require 'elmo-cache.
6691
6692         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6693
6694         * elmo.el (toplevel): Ditto.
6695
6696         * elmo-cache.el: Rewrite with luna;
6697         Some functions are moved to elmo-util.el.
6698
6699         * elmo-internal.el (elmo-internal-folder-list): New variable.
6700         (elmo-internal-folder-initialize): Rewrite.
6701         (elmo-folder-list-subfolders): Ditto.
6702
6703         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6704         (elmo-cache-collect-sub-directories): Ditto.
6705
6706 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6707
6708         * elmo-version.el (elmo-version): Up to 2.5.8.
6709
6710         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6711
6712         * elmo-util.el (elmo-list-insert): New function.
6713
6714 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6715
6716         * elmo.el (elmo-init): New function.
6717         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6718
6719         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6720         (Renamed from `elmo-localdir-header-chop-length').
6721
6722         * elmo-pop3.el (elmo-pop3-use-cache,
6723         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6724
6725         * elmo-nntp.el (elmo-message-fetch): Define.
6726         (elmo-message-fetch-unplugged): Ditto.
6727         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6728         (elmo-nntp-use-cache): Ditto.
6729         (elmo-nntp-max-number-precedes-list-active): Ditto.
6730
6731         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6732
6733         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6734         `elmo-msgdb-insert-file-header'.
6735         Use `elmo-msgdb-file-header-chop-length'.
6736
6737         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6738         `elmo-vars.el'.
6739
6740         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6741         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6742         `elmo-msgdb-insert-file-header'.
6743
6744         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6745         Use new variable;
6746         Define obsolete variables with `elmo-define-obsolete-variable',
6747
6748         * elmo-util.el (elmo-warning-buffer-name): New constant.
6749         (elmo-warning): New function.
6750         (elmo-obsolete-variable-alist): New variable.
6751         (elmo-obsolete-variable-show-warnings): New variable.
6752         (elmo-define-obsolete-variable): New function.
6753         (elmo-resque-obsolete-variable): Ditto.
6754         (elmo-resque-obsolete-variables): Ditto.
6755
6756 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6757
6758         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6759         Eliminated.
6760
6761         * elmo-pop3.el, elmo-nntp.el: Use custom.
6762
6763 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6764
6765         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6766         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6767
6768 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6769
6770         * Luna-fy Kenichi OKADA's following changes.
6771         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6772         `nohide'.
6773         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6774
6775 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6776
6777         * elmo-util.el (elmo-display-progress): Prefer
6778         `progress-feedback-with-label' to `lprogress-display'.
6779
6780 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6781
6782         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6783
6784 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6785
6786         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6787         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6788         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6789         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6790         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6791         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6792         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6793         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6794         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6795         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6796         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6797         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6798         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6799
6800 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6801
6802         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6803         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6804
6805 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6806
6807         * elmo.el (elmo-folder-process-crosspost): New generic method.
6808         (elmo-folder-writable-p): Ditto.
6809         (elmo-folder-message-appendable-p): Eliminated.
6810         (elmo-generic-folder-append-msgdb): Rewrite.
6811         (elmo-newsgroups-hashtb): New internal variable.
6812         (elmo-crosspost-message-set): Eliminated.
6813         (elmo-crosspost-message-delete): Ditto.
6814         (elmo-setup-subscribed-newsgroups): New function.
6815         (elmo-crosspost-message-alist-modified): New internal variable.
6816         (elmo-crosspost-message-alist-load): New function (Renamed from
6817         `wl-crosspost-alist-load').
6818         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6819         `wl-crosspost-alist-save').
6820
6821         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6822
6823         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6824         `unreads'.
6825         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6826         elmo-newsgroups-hashtb).
6827         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6828         `elmo-nntp-folder-update-crosspost-message-alist'.
6829         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6830         `elmo-nntp-groups-hashtb'.
6831         (elmo-nntp-make-groups-hashtb): Eliminated.
6832         (elmo-nntp-parse-newsgroups): New function (Renamed from
6833         `wl-parse-newsgroups').
6834         (elmo-folder-creatable-p, elmo-folder-writable-p,
6835         elmo-folder-close-internal, elmo-folder-mark-as-read,
6836         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6837         Define.
6838         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6839
6840         * elmo-net.el (elmo-message-fetch): Check buffer size.
6841
6842         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6843
6844         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6845
6846         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6847         before `close' command.
6848
6849         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6850         `mark-alist' (All other related portions are changed).
6851
6852 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6853
6854         * elmo-util.el (elmo-create-hash-size): Eliminated.
6855         (elmo-make-hash) Make a hash with `one less than a power of two'
6856         length.
6857
6858         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6859         (elmo-hash-maximum-size): Changed value.
6860
6861 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6862
6863         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6864         (elmo-mime-message-display-as-is): Ditto.
6865
6866 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6867
6868         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6869         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6870
6871 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6872
6873         * elmo-mark.el: New file.
6874
6875         * elmo-internal.el: Rewrite (Almost empty).
6876
6877 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6878
6879         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6880         (mime-imap-entity-header-string): Ditto.
6881         (mmimap-entity-section): Rewrite.
6882
6883 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6884
6885         * elmo-nmz.el: New file.
6886
6887         * elmo-pipe.el: Rewrite with luna.
6888
6889 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6890
6891         * elmo-archive.el: Rewrite with luna.
6892
6893         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6894         (elmo-folder-list-importants-internal): Ditto.
6895
6896 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6897
6898         * elmo-archive.el (elmo-archive-version): Abolish.
6899         (toplevel) Removed `boso' comment.
6900
6901 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6902
6903         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6904         elmo-msgdb-add-msgs-to-seen-list-subr;
6905         Changed argument seen-marks to unread-marks.
6906
6907         * elmo-nntp.el: Rewrite with luna.
6908
6909 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6910
6911         * elmo-filter.el: Rewrite with luna.
6912
6913 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6914
6915         * elmo-pop3.el: Rewrite with luna.
6916
6917 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6918
6919         * elmo-multi.el: Rewrite with luna.
6920
6921         * elmo-vars.el (elmo-use-killed-list): Abolish.
6922         All other related portions are changed.
6923         (elmo-filename-replace-string-alist): Renamed from
6924         elmo-msgid-replace-string-alist.
6925
6926 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6927
6928         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6929
6930         * elmo-map.el: New file.
6931         * elmo-maildir.el: Rewrite with luna.
6932
6933 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6934
6935         * elmo.el: Changed meaning of `elmo-folder-commit'.
6936         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6937
6938 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6939
6940         * elmo.el (elmo-folder-append-buffer): New function.
6941         (Renamed from `elmo-append-msg')
6942
6943 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6944
6945         * elmo-mime.el: New file.
6946
6947 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6948
6949         * elmo-cache.el: Rewrite.
6950
6951 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6952
6953         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6954
6955 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6956
6957         * elmo-vars.el (elmo): New group.
6958         (elmo-strict-diff-folder-regexp): New variable.
6959
6960         * elmo-util.el (elmo-call-func): Abolish.
6961         (elmo-folder-get-type): Ditto.
6962         (elmo-*-get-spec): Ditto.
6963         (elmo-*-spec-*): Ditto.
6964         (elmo-imap4-identical-name-space-p): Ditto.
6965         (elmo-folder-identical-system-p): Ditto.
6966         (elmo-folder-direct-copy-alist): Ditto.
6967         (elmo-folder-direct-copy-p): Ditto.
6968
6969         * elmo-pipe.el (elmo-pipe-folder): New luna class.
6970         (elmo-folder-initialize): Define.
6971         (elmo-folder-get-primitive-list): Ditto.
6972
6973         * elmo-nntp.el (elmo-nntp-folder): New luna class.
6974         (elmo-folder-initialize): Define.
6975         Renamed `elmo-network-session-host-internal' to
6976         `elmo-network-session-server-internal'.
6977
6978         * elmo-multi.el (elmo-multi-folder): New luna class.
6979         (elmo-folder-initialize): Define.
6980         (elmo-folder-get-primitive-list): Ditto.
6981         (elmo-folder-contains-type): Ditto.
6982         (elmo-message-use-cache-p): Ditto.
6983
6984         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
6985         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
6986
6987         * elmo-maildir.el (elmo-maildir-folder): New luna class.
6988         (elmo-folder-initialize): Define.
6989
6990         * elmo-filter.el (elmo-filter-folder): New luna class.
6991         (elmo-folder-initialize): Define.
6992         (elmo-folder-get-primitive-list): Ditto.
6993         (elmo-folder-contains-type): Ditto.
6994
6995 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
6996
6997         * elmo-imap4.el: Rewrite with luna.
6998
6999         * mmimap.el: New file.
7000
7001         * mmelmo.el, mmelmo-imap4.el: Removed.
7002
7003         * elmo-net.el: Ditto.
7004
7005         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7006         (elmo-folder-initialize): Define.
7007
7008         * elmo-archive.el (elmo-archive-folder): New luna class.
7009         (elmo-folder-initialize): Define.
7010
7011         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7012         `elmo-folder-msgdb-path'.
7013         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7014         `elmo-make-folder'.
7015
7016 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7017
7018         * elmo.el: New file.
7019
7020         * elmo2.el: Renamed to elmo.el.
7021
7022 \f
7023 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7024
7025         * elmo-cache.el (elmo-cache-expire-by-size): Count
7026         a disk usage for a cache file entry in KB even when
7027         its kind is a directory.
7028
7029 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7030
7031         * elmo-version.el (elmo-version): Up to 2.5.7.
7032
7033 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7034
7035         * elmo-version.el (elmo-version): Up to 2.5.6.
7036
7037 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7038
7039         * elmo-version.el (elmo-version): Up to 2.5.5.
7040
7041 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7042
7043         * elmo-imap4.el (elmo-network-authenticate-session):
7044         Fixed a logic for response checking.
7045
7046 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7047
7048         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7049         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7050         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7051         `sasl-mechanisms'.
7052
7053         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7054         for `starttls-open-stream' and `starttls-negotiate'.
7055
7056         * elmo-nntp.el: Remove autoload settings for
7057         `starttls-open-stream' and `starttls-negotiate'.
7058
7059         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7060         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7061         `luna-define-class' with `eval-and-compile'.
7062
7063 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7064
7065         * elmo-util.el (elmo-read-search-condition-internal):
7066         Require an element of table for searching field.
7067
7068 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7069
7070         * elmo-version.el (elmo-version): Up to 2.5.4.
7071
7072 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7073
7074         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7075
7076 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7077
7078         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7079
7080 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7081
7082         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7083         before greeting.
7084
7085 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7086
7087         * elmo-imap4.el (elmo-imap4-delete-folder):
7088         Send "close" before "delete" (Use commented out line).
7089         (elmo-imap4-rename-folder): Ditto.
7090
7091         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7092         folder string itself.
7093         (elmo-dop-list-deleted): New function.
7094         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7095         killed.
7096
7097         * elmo-util.el (elmo-string-rassoc-all): New function.
7098
7099 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7100
7101         * elmo-version.el (elmo-version): Up to 2.5.3.
7102
7103         * elmo-net.el (elmo-network-get-session): Changed logic for
7104         checking process status.
7105
7106         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7107         process is nil;
7108         Changed logic for checking process status.
7109
7110 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7111
7112         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7113         before greeting.
7114         (elmo-network-setup-session): Set UIDL hash size according to
7115         the length of list response.
7116         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7117         according to the length of list response;
7118         Return the length of list response.
7119         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7120
7121 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7122
7123         * elmo-imap4.el (toplevel): Require 'ssl.
7124         Add autoload 'starttls.
7125         * elmo-pop3.el (toplevel): Ditto.
7126         * elmo-nntp.el (toplevel): Ditto.
7127
7128 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7129
7130         * elmo-imap4.el (toplevel): defun at compile time.
7131         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7132         sasl-next-step, sasl-step-data, sasl-step-set-data.
7133         * elmo-pop3.el (toplevel): Ditto.
7134
7135 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7136
7137         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7138
7139 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7140
7141         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7142         if error.
7143         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7144         and `elmo-pop-auth-apop'.
7145
7146 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7147
7148         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7149
7150 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7151
7152         * elmo-pop3.el (elmo-network-authenticate-session): Split
7153         encoded response value.
7154
7155 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7156
7157         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7158         `elmo-pop3-force-login'.
7159         Redefine `sasl-mechanisms'.
7160         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7161
7162 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7163
7164         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7165         Delete `elmo-imap4-authenticator-alist'.
7166         (elmo-imap4-auth-cram-md5): Delete.
7167         (elmo-imap4-auth-digest-md5): Delete.
7168
7169 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7170
7171         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7172         (elmo-pop3-auth-scram-md5): Ditto.
7173         (elmo-pop3-auth-cram-md5): Ditto.
7174
7175 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7176
7177         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7178         Delete `elmo-pop3-authenticator-alist'.
7179
7180 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7181
7182         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7183         new SASL API.
7184         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7185
7186 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7187
7188         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7189
7190 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7191
7192         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7193         Fixed problem when `elmo-pop3-use-uidl' is nil.
7194         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7195
7196 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7197
7198         * elmo-version.el (elmo-version): Up to 2.5.2.
7199
7200 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7201
7202         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7203         New function.
7204         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7205         (elmo-pop3-msgdb-create-as-numlist): Use it.
7206
7207         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7208         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7209
7210         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7211         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7212
7213 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7214
7215         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7216         when elmo-mark-as-read is called with second argument nil.
7217
7218 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7219
7220         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7221         Moved to elmo-util.el.
7222
7223         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7224         Moved from elmo-pipe.el
7225
7226         * elmo-archive.el (elmo-archive-call-process): Enclose with
7227         static-if.
7228
7229         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7230         "RFC822" (because RFC822.PEEK is obsolete).
7231         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7232
7233 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7234
7235         * elmo-archive.el (elmo-archive-call-process): Don't check for
7236         the exit status when Nemacs is running.
7237
7238 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7239
7240         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7241         'plain.
7242
7243         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7244         (elmo-pop3-get-spec): Set default of auth to 'user.
7245
7246         * elmo-imap4.el (elmo-imap4-session-check):
7247         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7248         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7249         (elmo-imap4-auth-login): New function; Revival.
7250         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7251         `elmo-imap4-auth-login'.
7252
7253 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7254
7255         * elmo2.el (toplevel): Move `product-provide' declare.
7256         * mmelmo.el (toplevel): Ditto.
7257
7258 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7259
7260         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7261
7262 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7263
7264         * elmo-util.el (elmo-folder-get-store-type): New function.
7265         (elmo-folder-direct-copy-p): Use it.
7266
7267 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7268
7269         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7270         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7271         and result of `elmo-imap4-use-flag-p'.
7272         (elmo-imap4-fetch-callback-1): Set mark according to
7273         the result of `elmo-imap4-use-flag-p'.
7274
7275 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7276
7277         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7278         (elmo-generic-list-folder-unread): Ditto.
7279         (elmo-folder-get-info): Ditto.
7280         (elmo-folder-set-info-max-by-numdb): Ditto.
7281         (elmo-folder-get-info-max): Ditto.
7282         (elmo-folder-get-info-length): Ditto.
7283         (elmo-folder-get-info-unread): Ditto.
7284         (elmo-folder-info-make-hashtb): Ditto.
7285
7286         * elmo2.el: Removed above functions.
7287
7288 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7289
7290         * elmo-imap4.el (toplevel): Require 'ssl.
7291         Add autoload 'starttls.
7292         * elmo-pop3.el (toplevel): Ditto.
7293         * elmo-nntp.el (toplevel): Ditto.
7294
7295 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7296
7297         * elmo-imap4.el (toplevel): defun at compile time.
7298         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7299         sasl-next-step, sasl-step-data, sasl-step-set-data.
7300         * elmo-pop3.el (toplevel): Ditto.
7301
7302 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7303
7304         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7305
7306 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7307
7308         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7309         if error.
7310         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7311         and `elmo-pop-auth-apop'.
7312
7313 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7314
7315         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7316
7317 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7318
7319         * elmo-pop3.el (elmo-network-authenticate-session): Split
7320         encoded response value.
7321
7322 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7323
7324         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7325         `elmo-pop3-force-login'.
7326         Redefine `sasl-mechanisms'.
7327         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7328
7329 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7330
7331         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7332         Delete `elmo-imap4-authenticator-alist'.
7333         (elmo-imap4-auth-cram-md5): Delete.
7334         (elmo-imap4-auth-digest-md5): Delete.
7335
7336 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7337
7338         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7339         (elmo-pop3-auth-scram-md5): Ditto.
7340         (elmo-pop3-auth-cram-md5): Ditto.
7341
7342 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7343
7344         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7345         Delete `elmo-pop3-authenticator-alist'.
7346
7347 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7348
7349         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7350         new SASL API.
7351         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7352
7353 \f
7354 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7355
7356         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7357
7358 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7359
7360         * elmo-nntp.el (elmo-nntp-get-folders-info):
7361         Fixed problem when '\' character is contained in user-id.
7362         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7363
7364 \f
7365 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7366
7367         * elmo-imap4.el (elmo-imap4-delete-folder):
7368         Send "close" before "delete" (Use commented out line).
7369         (elmo-imap4-rename-folder): Ditto.
7370
7371         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7372         folder string itself.
7373         (elmo-dop-list-deleted): New function.
7374         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7375         killed.
7376
7377         * elmo-util.el (elmo-string-rassoc-all): New function.
7378
7379         * elmo-version.el (elmo-version): Up to 2.5.1.
7380
7381 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7382
7383         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7384
7385         * elmo-internal.el (elmo-internal-search): Fix last change.
7386
7387 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7388
7389         * elmo-internal.el (elmo-internal-search): Rewrite.
7390         (Fixed problem which is pointed out by Akihiro MOTOKI
7391         <motoki@da.jp.nec.com>)
7392
7393         * elmo-version.el (elmo-version): Up to 2.5.0.
7394
7395 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7396
7397         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7398
7399 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7400
7401         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7402         non-nil, make hierarchy.
7403
7404 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7405
7406         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7407         `elmo-pop3-use-uidl' must be bound to nil.
7408         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7409
7410 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7411
7412         * elmo-util.el (elmo-copy-file): Don't cause an error after
7413         `add-name-to-file' failed.
7414
7415         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7416         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7417
7418 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7419
7420         * elmo-version.el (elmo-version): Up to 2.3.93.
7421
7422 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7423
7424         * elmo-util.el (elmo-flatten): New function.
7425
7426 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7427
7428         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7429         sync Author header.
7430         * elmo-cache.el (toplevel): Ditto.
7431         * elmo-database.el (toplevel): Ditto.
7432         * elmo-date.el (toplevel): Ditto.
7433         * elmo-dop.el (toplevel): Ditto.
7434         * elmo-filter.el (toplevel): Ditto.
7435         * elmo-imap4.el (toplevel): Ditto.
7436         * elmo-internal.el (toplevel): Ditto.
7437         * elmo-localdir.el (toplevel): Ditto.
7438         * elmo-localnews.el (toplevel): Ditto.
7439         * elmo-maildir.el (toplevel): Ditto.
7440         * elmo-msgdb.el (toplevel): Ditto.
7441         * elmo-multi.el (toplevel): Ditto.
7442         * elmo-net.el (toplevel): Ditto.
7443         * elmo-nntp.el (toplevel): Ditto.
7444         * elmo-pipe.el (toplevel): Ditto.
7445         * elmo-pop3.el (toplevel): Ditto.
7446         * elmo-util.el (toplevel): Ditto.
7447         * elmo-vars.el (toplevel): Ditto.
7448         * elmo2.el (toplevel): Ditto.
7449         * mmelmo-imap4.el (toplevel): Ditto.
7450         * mmelmo.el (toplevel): Ditto.
7451
7452         * elmo-version.el (elmo-version): Move to top.
7453
7454         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7455         * elmo-imap4.el (toplevel): Ditto.
7456         * elmo-localdir.el (toplevel): Ditto.
7457         * elmo-msgdb.el (toplevel): Ditto.
7458         * elmo-nntp.el (toplevel): Ditto.
7459         * elmo-pop3.el (toplevel): Ditto.
7460         * elmo-version.el (toplevel): Ditto.
7461
7462         * elmo-localnews.el (toplevel): Added Keyword header.
7463
7464 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7465
7466         * elmo-version.el (product-version-as-string): Defined using
7467         `defun-maybe'.
7468         (toplevel): Use it.
7469
7470         * elmo-localdir.el (toplevel): Updated copyright notice.
7471         * elmo-version.el (toplevel): Ditto.
7472         * elmo-msgdb.el (toplevel): Ditto.
7473         * elmo-imap4.el (toplevel): Ditto.
7474         * elmo-nntp.el (toplevel): Ditto.
7475         * elmo-pop3.el (toplevel): Ditto.
7476
7477 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7478
7479         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7480         messages.
7481
7482         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7483         parameter value (It sometimes contains raw kanji).
7484
7485 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7486
7487         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7488         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7489
7490 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7491
7492         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7493
7494 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7495
7496         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7497         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7498
7499 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7500
7501         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7502         value if selecting folder succceeded.
7503         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7504
7505 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7506
7507         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7508         representation.
7509
7510         * elmo-util.el (elmo-string-matched-member): New function.
7511
7512 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7513
7514         * elmo-util.el (elmo-unintern): New macro.
7515         (elmo-number-set-member): Fixed docstring.
7516
7517         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7518         tag token.
7519
7520 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7521
7522         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7523         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7524
7525 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7526
7527         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7528         `no-error'.
7529         Added docstring.
7530         Return non-nil if selecting folder succeeded.
7531         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7532
7533 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7534
7535         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7536         `file-name-completion' returns t.
7537         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7538         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7539         directory if it does not exist.
7540         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7541         for iteration.
7542
7543 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7544
7545         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7546         enclosure (It's harmful in unplugged status).
7547
7548         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7549
7550         * mmelmo-1.el: Removed.
7551
7552         * mmelmo-2.el: Ditto.
7553
7554         * mmelmo-imap4-1.el: Ditto.
7555
7556         * mmelmo-imap4-2.el: Ditto.
7557
7558         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7559
7560         * mmelmo.el: Merged mmelmo-2.el.
7561
7562         * elmo-version.el (elmo-version): Up to 2.3.92.
7563
7564 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7565
7566         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7567         elmo-update-number): Remove last period in "...done." message.
7568         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7569         Ditto.
7570         * elmo-cache.el (elmo-cache-expire-by-size,
7571         elmo-cache-get-sorted-cache-file-list,
7572         elmo-cache-msgdb-create-as-numlist): Ditto.
7573         * elmo-dop.el (elmo-dop-save-pending-messages,
7574         (elmo-dop-flush-pending-append-operations): Ditto.
7575         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7576         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7577         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7578         (elmo-localdir-pack-number): Ditto.
7579         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7580         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7581         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7582         mime-write-entity-content): Ditto.
7583         * pldap.el (ldap-search-basic): Ditto.
7584
7585 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7586
7587         * elmo-version.el (elmo-version): Up to 2.3.91.
7588
7589         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7590         Only when filter is 'last'.
7591
7592         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7593         (elmo-condition-parse-search-value): Use it.
7594         (elmo-read-search-condition-internal): Quote value only when
7595         it is not an atom.
7596
7597 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7598
7599         * elmo2.el (elmo-generic-folder-diff): Fix.
7600
7601 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7602
7603         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7604         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7605         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7606         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7607         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7608         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7609
7610 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7611
7612         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7613         extra-fields.
7614
7615 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7616
7617         * elmo-version.el (elmo-version): Up to 2.3.90.
7618
7619         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7620         (elmo-imap4-list-folder-important): Ditto.
7621
7622 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7623
7624         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7625
7626 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7627
7628         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7629
7630 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7631
7632         * elmo-nntp.el (elmo-network-initialize-session):
7633         Add starttls negotiation.
7634
7635 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7636
7637         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7638         response.
7639         (elmo-network-setup-session): Define.
7640         Call `elmo-nntp-send-mode-reader' when session opened.
7641
7642 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7643
7644         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7645
7646 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7647
7648         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7649         an invalid SPACE character ahead of `SEARCH' command.  Move
7650         a valid SPACE character following `SEARCH' from conditional
7651         `format' arguments to control-strings.
7652
7653 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7654
7655         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7656         was succeeded.
7657
7658         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7659
7660 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7661
7662         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7663         `w32-get-true-file-link-count' as t.
7664
7665         * elmo-imap4.el (elmo-imap4-read): Abolished.
7666         (Renamed to `elmo-read' and moved to elmo-util.el)
7667         All other related portions are changed.
7668
7669         * elmo-util.el (elmo-read): New function.
7670         (elmo-condition-parse-search-value): Use it.
7671
7672 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7673
7674         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7675
7676         * elmo-nntp.el (elmo-nntp-session): Define.
7677         (elmo-nntp-setting): Abolished.
7678         All other related portions are changed.
7679         (elmo-nntp-get-server-command): Changed argument.
7680         (elmo-nntp-set-server-command): Ditto.
7681         (elmo-nntp-xover-p): Ditto.
7682         (elmo-nntp-set-xover): Ditto.
7683         (elmo-nntp-listgroup-p): Ditto.
7684         (elmo-nntp-set-listgroup): Ditto.
7685         (elmo-nntp-list-active-p): Ditto.
7686         (elmo-nntp-set-list-active): Ditto.
7687         (elmo-nntp-xhdr-p): Ditto.
7688         (elmo-nntp-set-xhdr): Ditto.
7689         (elmo-nntp-flush-connection): Abolished.
7690         (elmo-nntp-get-connection): Abolished.
7691         (elmo-nntp-get-session): New function.
7692         (elmo-network-initialize-session): Defined.
7693         (elmo-network-authenticate-session): Ditto.
7694         (elmo-nntp-send-mode-reader): Changed argument.
7695         (elmo-nntp-send-command): Changed argument.
7696         All other related portions are changed.
7697         (elmo-nntp-read-response): Ditto.
7698         (elmo-nntp-read-raw-response): Ditto.
7699         (elmo-nntp-read-contents): Ditto.
7700         (elmo-nntp-read-body): Ditto.
7701         (elmo-nntp-goto-folder): Abolished.
7702         (elmo-nntp-select-group): New function.
7703         All other related portions are changed.
7704         (This function substitutes `elmo-nntp-goto-folder')
7705         (elmo-nntp-msgdb-create-by-header): Rewrite.
7706         (elmo-nntp-get-overview): Eliminated.
7707         (elmo-nntp-get-message): Ditto.
7708         (elmo-nntp-open-connection) Abolished.
7709         (elmo-nntp-read-msg): Rewrite.
7710         (elmo-nntp-post): Ditto.
7711         (elmo-nntp-send-data): Abolished.
7712         (elmo-nntp-send-buffer): New function.
7713         (elmo-nntp-send-data-line): Define as inline function.
7714         (elmo-nntp-get-folders-info-prepare): Use session as key.
7715         (elmo-nntp-groups-read-response): Changed argument.
7716         (elmo-nntp-retrieve-headers): Ditto.
7717         (elmo-nntp-msgdb-create-message): Ditto.
7718
7719         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7720         when searching by 'since' or 'before'.
7721
7722 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7723
7724         * elmo-version.el (toplevel): Use product-version-as-string for set
7725         verstion-string, if defined.
7726
7727 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7728
7729         * elmo-util.el: Doc fixes.
7730
7731 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7732
7733         * elmo-archive.el (toplevel): Use product-provide.
7734         * elmo-cache.el (toplevel): Ditto.
7735         * elmo-database.el (toplevel): Ditto.
7736         * elmo-date.el (toplevel): Ditto.
7737         * elmo-dop.el (toplevel): Ditto.
7738         * elmo-filter.el (toplevel): Ditto.
7739         * elmo-imap4.el (toplevel): Ditto.
7740         * elmo-internal.el (toplevel): Ditto.
7741         * elmo-localdir.el (toplevel): Ditto.
7742         * elmo-localnews.el (toplevel): Ditto.
7743         * elmo-maildir.el (toplevel): Ditto.
7744         * elmo-msgdb.el (toplevel): Ditto.
7745         * elmo-multi.el (toplevel): Ditto.
7746         * elmo-net.el (toplevel): Ditto.
7747         * elmo-nntp.el (toplevel): Ditto.
7748         * elmo-pipe.el (toplevel): Ditto.
7749         * elmo-pop3.el (toplevel): Ditto.
7750         * elmo-util.el (toplevel): Ditto.
7751         * elmo-vars.el (toplevel): Ditto.
7752         * elmo2.el (toplevel): Ditto.
7753         * mmelmo-1.el (toplevel): Ditto.
7754         * mmelmo-2.el (toplevel): Ditto.
7755         * mmelmo-imap4-1.el (toplevel): Ditto.
7756         * mmelmo-imap4-2.el (toplevel): Ditto.
7757         * mmelmo-imap4.el (toplevel): Ditto.
7758         * mmelmo.el (toplevel): Ditto.
7759
7760 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7761
7762         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7763         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7764
7765 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7766
7767         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7768         before splitting.
7769         (elmo-multi-split-number-alist): Ditto.
7770
7771 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7772
7773         * elmo-version.el: New file.  Use product.el.
7774         * elmo2.el: Add (require 'elmo-version).
7775         * elmo-vars.el (elmo-appname, elmo-version): Move to
7776         elmo-version.el
7777
7778 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7779
7780         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7781         `elmo-msgdb-expand-path'.
7782         (elmo-msgdb-load): Ditto.
7783         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7784         (elmo-generic-list-folder-unread): Rewrite.
7785         (elmo-generic-list-folder-important): Changed argument.
7786         (elmo-list-folder-unread): Ditto.
7787         (elmo-list-folder-important): Ditto.
7788         (elmo-folder-diff): Rewrite.
7789         (elmo-generic-folder-diff): New function.
7790         (elmo-multi-get-number-alist-list): Abolished
7791         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7792         (elmo-multi-folder-diff): Moved to elmo-multi.el
7793         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7794
7795         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7796         `elmo-msgdb-expand-path'.
7797         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7798         (elmo-pop3-read-msg): Ditto.
7799         (elmo-pop3-delete-msgs): Ditto.
7800         (elmo-pop3-folder-diff): New alias.
7801
7802         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7803         `elmo-msgdb-expand-path'.
7804         (elmo-pipe-list-folder-unread): Changed arguments.
7805         (elmo-pipe-list-folder-important): Ditto.
7806         (elmo-pipe-folder-diff): New alias.
7807
7808         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7809         `elmo-msgdb-expand-path'.
7810         (elmo-nntp-max-of-folder): Ditto.
7811         (elmo-nntp-msgdb-create): Ditto.
7812         (elmo-nntp-delete-msgs): Ditto.
7813         (elmo-nntp-folder-diff): New alias.
7814
7815         * elmo-multi.el (elmo-multi-folder-diff): New function.
7816         (elmo-multi-split-mark-alist): Ditto.
7817         (elmo-multi-split-number-alist): Ditto.
7818         (elmo-multi-mark-alist-list): Abolished (Renamed to
7819         elmo-multi-split-mark-alist).
7820         (elmo-multi-list-folder-unread): Rewrite.
7821         (elmo-multi-list-folder-important): Ditto.
7822         (elmo-multi-list-folder): Set `spec' as 1st argument for
7823         `elmo-msgdb-expand-path'.
7824         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7825         instead of `elmo-multi-get-number-alist-list'.
7826
7827         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7828         If 1st argument is not string, treat as spec.
7829         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7830         `elmo-msgdb-expand-path'.
7831         (elmo-msgdb-flist-load): Ditto.
7832         (elmo-msgdb-flist-save): Ditto.
7833         (elmo-msgdb-delete-path): Ditto.
7834         (elmo-msgdb-rename-path): Ditto.
7835
7836         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7837         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7838         (elmo-maildir-delete-mark-msgs): Ditto.
7839         (elmo-maildir-msgdb-create): Ditto.
7840         (elmo-maildir-read-msg): Ditto.
7841         (elmo-maildir-delete-msgs): Ditto.
7842         (elmo-maildir-list-folder-subr): Ditto.
7843         (elmo-maildir-search): Ditto.
7844         (elmo-maildir-get-msg-filename): Ditto.
7845         (elmo-maildir-pack-number): Ditto.
7846         (elmo-maildir-folder-diff): New alias.
7847
7848         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7849
7850         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7851         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7852         (elmo-localdir-folder-diff): New alias.
7853
7854         * elmo-internal.el (elmo-internal-list-folder-subr):
7855         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7856         (elmo-internal-list-folder-by-location): Ditto.
7857         (elmo-internal-msgdb-create): Ditto.
7858         (elmo-internal-delete-msgs): Ditto.
7859         (elmo-internal-read-msg): Ditto.
7860         (elmo-internal-folder-diff): New alias.
7861
7862         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7863         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7864         `elmo-msgdb-expand-path'.
7865         (elmo-imap4-list-folder-unread): Changed arguments.
7866         (elmo-imap4-list-folder-important): Ditto.
7867
7868         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7869         (elmo-filter-list-folder-important): Ditto.
7870         (elmo-filter-folder-diff): New function.
7871
7872         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7873
7874         * elmo-cache.el (elmo-cache-list-folder):
7875         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7876         (elmo-cache-copy-msgs): Ditto.
7877         (elmo-cache-folder-diff): New alias.
7878
7879         * elmo-archive.el (elmo-archive-list-folder-subr):
7880         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7881         (elmo-archive-get-archive-name): Ditto.
7882         (elmo-archive-create-file): Ditto.
7883         (elmo-archive-append-msg): Ditto.
7884         (elmo-archive-copy-msgs): Ditto.
7885         (elmo-archive-copy-msgs-froms): Ditto.
7886         (elmo-archive-get-msg-filename): Ditto.
7887         (elmo-archive-folder-diff): New alias.
7888
7889 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7890
7891         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7892         (elmo-pop3-stream-type-alist): New variable.
7893         (elmo-nntp-stream-type-alist): New variable.
7894
7895         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7896         (elmo-kill-buffer): Ditto.
7897         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7898         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7899         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7900         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7901         (elmo-imap4-get-spec): Take into account
7902         `elmo-imap4-stream-type-alist'.
7903
7904 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7905
7906         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7907         (elmo-nntp-list-folders-get-cache): Ditto.
7908
7909 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7910
7911         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7912         character before 'uid'.
7913
7914 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7915
7916         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7917
7918         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7919
7920         * elmo-util.el (elmo-number-set-member): New function.
7921         (elmo-number-set-append-list): Ditto.
7922         (elmo-number-set-append): Ditto.
7923
7924         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7925         Use `elmo-number-set-member'.
7926         (elmo-living-messages): Ditto.
7927         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7928         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7929
7930         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7931         (elmo-imap4-add-to-cont-list): Abolished.
7932         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7933         instead of elmo-imap4-add-to-cont-list.
7934
7935         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7936         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7937
7938         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7939
7940 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7941
7942         * elmo-util.el (elmo-condition-parse-search-value):
7943         Fixed date parsing.
7944
7945 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7946
7947         * elmo-util.el (elmo-condition-find-key-internal): New function.
7948         (elmo-condition-find-key): Ditto.
7949
7950         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7951         (elmo-msgdb-search-internal): Ditto.
7952         (elmo-msgdb-search): Ditto.
7953
7954 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7955
7956         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7957         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7958
7959         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7960         (elmo-nntp-search-primitive): Fixed problem when condition is
7961         'unmatch'.
7962
7963         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7964
7965         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7966         (elmo-nntp-xhdr-p): New macro.
7967         (elmo-nntp-set-xhdr): Ditto.
7968         (elmo-nntp-parse-xhdr-response): New function.
7969         (elmo-nntp-retrieve-field): Ditto.
7970         (elmo-nntp-search-primitive): Ditto.
7971         (elmo-nntp-search): Implemented.
7972
7973         * elmo-date.el (elmo-date-make-sortable-string): New macro.
7974
7975         * elmo-archive.el (elmo-archive-search): Set all number list to
7976         `elmo-archive-field-condition-match'
7977
7978         * elmo-localdir.el (elmo-localdir-search): Likewise.
7979
7980         * elmo-maildir.el (elmo-maildir-search): Likewise.
7981
7982 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
7983
7984         * elmo-msgdb.el (elmo-living-messages): New function.
7985         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
7986         * elmo-cache.el (elmo-cache-list-folder): Ditto.
7987         * elmo-dop.el (elmo-dop-list-folder): Ditto.
7988         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
7989         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
7990         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
7991         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
7992         * elmo-multi.el (elmo-multi-list-folder): Ditto.
7993         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
7994         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
7995         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
7996
7997 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
7998
7999         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8000
8001         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8002
8003         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8004
8005         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8006         arguments for `SEARCH' command.
8007         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8008         All other related portions are changed.
8009
8010         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8011
8012         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8013         (elmo-list-folder-unread): Rewrite.
8014         (elmo-list-folder-important): Ditto.
8015
8016         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8017         (elmo-condition-parse-error): New inline function.
8018         (elmo-read-search-condition): New function.
8019         (elmo-read-search-condition-internal): Ditto.
8020         (elmo-parse-search-condition): Rewrite.
8021         (elmo-condition-parse): New function.
8022         (elmo-condition-parse-or-expr): Ditto.
8023         (elmo-condition-parse-and-expr): Ditto.
8024         (elmo-condition-parse-primitive): Ditto.
8025         (elmo-condition-parse-search-value): Ditto.
8026         (elmo-buffer-field-primitive-condition-match): Ditto.
8027         (elmo-buffer-field-condition-match): Rewrite.
8028         (elmo-file-field-condition-match): Ditto.
8029
8030         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8031         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8032
8033         * elmo-internal.el (elmo-internal-search): Set `number' and
8034         `number-list' argument of `elmo-file-field-condition-match'.
8035
8036         * elmo-maildir.el (elmo-maildir-search): Ditto.
8037
8038         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8039         `msgdb' as argument instead of `mark-alist'.
8040         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8041         `overview'.
8042
8043         * elmo-multi.el: Likewise.
8044
8045         * elmo-pipe.el: Likewise.
8046
8047         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8048         (elmo-imap4-search-internal): Rewrite.
8049         (elmo-imap4-search): Ditto.
8050
8051         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8052         (elmo-filter-list-folder-unread): Ditto.
8053         (elmo-filter-list-folder-important): Ditto.
8054         (elmo-filter-search): Rewrite.
8055
8056         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8057         `number-list' argument of `elmo-file-field-condition-match'.
8058         (elmo-cache-search): Ditto.
8059
8060         * elmo-localdir.el: Likewise.
8061
8062         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8063         number-list and pass it to `elmo-buffer-field-condition-match'.
8064         (elmo-archive-field-condition-match): Pass `number-list' to
8065         `elmo-archive-field-condition-match'
8066
8067 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8068
8069         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8070         `listgroup'.
8071
8072         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8073         (elmo-folder-diff-async-callback-data): Ditto.
8074         (elmo-folder-diff-async): New function.
8075
8076         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8077         (elmo-network-session-cache-key): Use it as a prefix of the session
8078         name.
8079         (elmo-network-open-session): Ditto.
8080
8081         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8082         (elmo-imap4-status-callback-data): Ditto.
8083         (elmo-imap4-server-diff-async-callback): New variable.
8084         (elmo-imap4-server-diff-async-callback-data): Ditto.
8085         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8086         `elmo-imap4-status-callback-data'.
8087         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8088         `elmo-imap4-status-callback-data' as nil.
8089         (elmo-imap4-server-diff): Ditto.
8090         (elmo-imap4-server-diff-async-callback-1): New function.
8091         (elmo-imap4-server-diff-async): Ditto.
8092         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8093
8094 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8095
8096         * elmo-util.el (elmo-list-delete): Doc fix.
8097         (elmo-delete-lists): Abolish.
8098         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8099         instead of `elmo-delete-lists'.
8100
8101 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8102
8103         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8104         before `sort'.
8105
8106 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8107
8108         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8109         `elmo-imap4-literal-subr'.
8110         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8111         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8112
8113 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8114
8115         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8116         (elmo-archive-list-folder): Fix.
8117         (elmo-archive-max-of-folder): Fix.
8118
8119 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8120
8121         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8122          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8123         (elmo-localdir-append-msg): Ditto.
8124         (elmo-localdir-list-folder): Fix for `nonsort'.
8125         (elmo-localdir-list-folder-subr): Fix for `killed'.
8126         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8127         (elmo-maildir-list-folder-subr): Ditto.
8128         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8129         (elmo-archive-list-folder-subr): Ditto.
8130         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8131         (elmo-internal-list-folder-subr): Ditto.
8132
8133 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8134
8135         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8136
8137 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8138
8139         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8140
8141 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8142
8143         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8144         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8145
8146         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8147         before greeting.
8148         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8149         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8150
8151 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8152
8153         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8154
8155         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8156         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8157         before STORE command.
8158
8159 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8160
8161         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8162
8163         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8164         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8165         of `response'.
8166         (elmo-imap4-list-folders): Removed unused local variable.
8167         (elmo-network-initialize-session): Ditto.
8168         (elmo-imap4-delete-msg-by-id): Ditto.
8169         (elmo-imap4-parse-fetch): Ditto.
8170         (elmo-imap4-copy-msgs): Ditto.
8171         Use `dst-spec' instead of `dst-folder'.
8172         (elmo-network-authenticate-session): Check authenticate type `plain'.
8173
8174 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8175
8176         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8177         garbage checking.
8178         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8179         `elmo-imap4-response-value'.
8180         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8181
8182 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8183
8184         * elmo-imap4.el (elmo-imap4-send-command):
8185         Cause elmo-imap4-bye-error when current response is BYE.
8186         (elmo-imap4-arrival-filter): Changed greeting response value.
8187
8188         * elmo2.el (elmo-imap4-bye-error): Define.
8189
8190         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8191         (elmo-imap4-server-diff): Ditto.
8192         (elmo-imap4-response-bye-p): New macro.
8193         (elmo-imap4-response-error-text): Get text from BYE response.
8194         (elmo-imap4-read-response): Return if BYE response.
8195         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8196         (elmo-imap4-folder-exists-p): Ditto.
8197         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8198         (elmo-imap4-parse-bye): New function.
8199         (elmo-imap4-parse-response): Remove needless let.
8200         Call `elmo-imap4-parse-bye'.
8201
8202 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8203
8204         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8205         the mailbox does not exist.
8206         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8207
8208 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8209
8210         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8211
8212 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8213
8214         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8215
8216         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8217         (elmo-network-initialize-session-buffer): Defined.
8218
8219         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8220         Abolished.
8221         (mmelmo-imap4-get-mime-entity): Rewrite.
8222
8223         * elmo2.el (elmo-error): Capitalize error message.
8224
8225         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8226         (elmo-network-session-buffer): New macro.
8227         (elmo-network-open-session): Use it.
8228
8229         * elmo-imap4.el: Rewrite.
8230
8231 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8232
8233         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8234
8235 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8236
8237         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8238         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8239         (elmo-imap4-create-msgdb-from-overview-string): Use
8240         `elmo-msgdb-create-overview-from-buffer'.
8241
8242 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8243
8244         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8245         (elmo-imap4-default-hierarchy-delimiter): New variable.
8246         (elmo-imap4-list-folders): Use it.
8247
8248 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8249
8250         * elmo-net.el (elmo-network-open-session): Add user and
8251         stream-type for process-buffer name.
8252
8253         * elmo-pop3.el (elmo-network-initialize-session): Call
8254         buffer-disable-undo.
8255
8256         * elmo-imap4.el (elmo-network-initialize-session):
8257         Set current-buffer as an argument for `buffer-disable-undo'.
8258
8259         * elmo-pop3.el (elmo-network-close-session): Don't use
8260         `process-live-p'.
8261
8262         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8263         Set default as 'user.
8264
8265         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8266
8267         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8268         and `elmo-imap4-flush-connection'.
8269
8270         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8271         (elmo-pop3-get-spec): Assume auth as symbol.
8272         (elmo-open-network-stream): Moved to `elmo-net'.
8273
8274         * elmo-pop3.el (toplevel): Require 'elmo-net.
8275         Define `sasl-cram-md5' to silence byte compilier.
8276         (elmo-pop3-connection-cache) Abolished.
8277         (elmo-pop3-authenticator-alist) New variable.
8278         (elmo-pop3-session): Define.
8279         (elmo-pop3-connection-get-process): Abolished.
8280         (elmo-pop3-connection-get-buffer): Ditto.
8281         (elmo-pop3-close-connection): Ditto.
8282         (elmo-pop3-flush-connection): Ditto.
8283         (elmo-pop3-get-connection): Ditto.
8284         (elmo-pop3-get-session): New function.
8285         (Replacement for `elmo-pop3-get-connection').
8286         All other related modules are changed.
8287         (elmo-network-close-session): Define.
8288         (elmo-pop3-send-command): Abolished argument `buffer'.
8289         All other related modules are changed.
8290         (elmo-pop3-read-response): Likewise.
8291         (elmo-pop3-open-connection): Abolished.
8292         (elmo-pop3-auth-user): New function.
8293         (elmo-pop3-auth-apop): Ditto.
8294         (elmo-pop3-auth-cram-md5): Ditto.
8295         (elmo-pop3-auth-scram-md5): Ditto.
8296         (elmo-pop3-auth-digest-md5): Ditto.
8297         (elmo-network-initialize-session): Define.
8298         (elmo-network-authenticate-session): Ditto.
8299         (elmo-network-setup-session): Ditto.
8300
8301         * elmo-imap4.el (toplevel): Require 'elmo-net.
8302         (elmo-imap4-session): Define.
8303         (elmo-imap4-connection-cache): Abolished.
8304         (elmo-imap4-password-key): Ditto.
8305         (elmo-imap4-flush-connection): Ditto.
8306         (elmo-imap4-get-connection): Ditto.
8307         All other related modules are changed.
8308         (elmo-imap4-get-session): New function
8309         (Replacement for `elmo-imap4-get-connection').
8310         (elmo-imap4-read-response): Abolished argument `buffer'.
8311         All other related modules are changed.
8312         (elmo-imap4-send-command): Likewise.
8313         (elmo-imap4-select-folder): Abolished.
8314         All other related modules are changed.
8315         (elmo-imap4-select-mailbox): New function.
8316         (Replacement for `elmo-imap4-select-folder').
8317         (elmo-imap4-auth-login): Simplify.
8318         (Assume current buffer as process buffer)
8319         (elmo-imap4-auth-cram-md5): Ditto.
8320         (elmo-imap4-auth-digest-md5): Ditto.
8321         (elmo-imap4-login): Ditto.
8322         (elmo-imap4-open-connection): Abolished.
8323         (elmo-imap4-open-connection-1): Abolished.
8324         (elmo-network-initialize-sessoin): Define.
8325         (elmo-network-authenticate-session): Ditto.
8326         (elmo-network-setup-session): Ditto.
8327
8328         * elmo-net.el: New module.
8329
8330 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8331
8332         * elmo-util.el (elmo-define-error): New function.
8333
8334         * elmo2.el (elmo-error): Define.
8335         (elmo-open-error): Define.
8336         (elmo-authenticate-error): Define.
8337
8338         * elmo-imap4.el (elmo-imap4-error): Abolish.
8339         (elmo-imap4-error-type): Abolish.
8340         (elmo-imap4-error-process): Abolish.
8341         (elmo-imap4-error-message): Abolish
8342         (elmo-imap4-list-folders): Don't quote lambda.
8343         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8344         (elmo-imap4-parse-namespace): Ditto.
8345         (elmo-imap4-open-connection): Rewrite.
8346         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8347         (elmo-imap4-get-connection): Abolish local variable `result'.
8348
8349 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8350
8351         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8352         wrong-type-argument error when auth is nil.
8353
8354 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8355
8356         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8357         (elmo-default-nntp-stream-type): Ditto.
8358         (elmo-default-pop3-stream-type): Ditto.
8359         (elmo-network-stream-type-alist): Ditto.
8360         (elmo-default-imap4-ssl): Abolished.
8361         (elmo-default-nntp-ssl): Ditto.
8362         (elmo-default-pop3-ssl): Ditto.
8363
8364         * elmo-util.el: (toplevel): Removed needless requires.
8365         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8366         (elmo-open-network-stream): Open network stream according to
8367         the value of `elmo-network-stream-type-alist'.
8368         (elmo-get-network-stream-type): New function.
8369         (elmo-network-stream-type-spec-string): New macro.
8370         (elmo-network-stream-type-symbol): Ditto.
8371         (elmo-network-stream-type-function): Ditto.
8372
8373         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8374         network-stream-type. All other related portions are changed.
8375         (elmo-pop3-open-connection): Ditto.
8376
8377         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8378         network-stream-type. All other related portions are changed.
8379
8380         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8381         network-stream-type.All other related portions are changed.
8382         (elmo-imap4-error): New macro.
8383         (elmo-imap4-error-type): Ditto.
8384         (elmo-imap4-error-process): Ditto.
8385         (elmo-imap4-error-message): Ditto.
8386         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8387         (elmo-imap4-auth-cram-md5): Ditto.
8388         (elmo-imap4-auth-digest-md5): Ditto.
8389         (elmo-imap4-login): Ditto.
8390         (elmo-imap4-open-connection): Remove password entry if authentication
8391         was in vain.
8392         (elmo-imap4-user-at-host): Abolished.
8393         (elmo-imap4-password-key): New buffer local variable.
8394         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8395         using protocol, port, auth and stream-type.
8396
8397         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8398
8399 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8400
8401         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8402
8403         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8404
8405         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8406         (elmo-imap4-authenticator-alist): New variable.
8407         (elmo-imap4-open-connection-1): Rename from
8408         elmo-imap4-open-connection.
8409         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8410         only wraps elmo-imap4-open-connection-1.
8411         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8412         user-at-host.
8413         (elmo-imap4-auth-login): New function.
8414         (elmo-imap4-auth-cram-md5): New function.
8415         (elmo-imap4-auth-digest-md5): New function.
8416         (elmo-imap4-login): New function.
8417
8418 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8419
8420         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8421         function `error'.
8422
8423 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8424
8425         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8426
8427 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8428
8429         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8430
8431 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8432
8433         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8434         for server responses, quote `*' regardless of where it appears.
8435
8436 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8437
8438         * elmo-maildir.el (elmo-maildir-commit): New alias.
8439
8440 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8441
8442         * elmo-util.el (elmo-display-progress):
8443                 Use `progress-feedback-with-label'.
8444
8445 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8446
8447         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8448         (elmo-imap4-non-atom-char-regex): Ditto.
8449         (elmo-imap4-non-text-char-regex): Ditto.
8450         (elmo-imap4-literal-threshold): Ditto.
8451         (elmo-imap4-atom-p): New function.
8452         (elmo-imap4-quotable-p): Ditto.
8453         (elmo-imap4-nil): Ditto.
8454         (elmo-imap4-atom): Ditto.
8455         (elmo-imap4-quoted): Ditto.
8456         (elmo-imap4-literal-subr): Ditto.
8457         (elmo-imap4-literal): Ditto.
8458         (elmo-imap4-buffer-literal): Ditto.
8459         (elmo-imap4-string-subr): Ditto.
8460         (elmo-imap4-string): Ditto.
8461         (elmo-imap4-buffer-string): Ditto.
8462         (elmo-imap4-astring-subr): Ditto.
8463         (elmo-imap4-astring): Ditto.
8464         (elmo-imap4-buffer-astring): Ditto.
8465         (elmo-imap4-nstring): Ditto.
8466         (elmo-imap4-buffer-nstring): Ditto.
8467         (elmo-imap4-mailbox): New alias.
8468         (elmo-imap4-field-body): Ditto.
8469         (elmo-imap4-userid): Ditto.
8470         (elmo-imap4-password): Ditto.
8471         (elmo-imap4-format-quoted): New function.
8472         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8473         arguments and handle "atom", "quoted" and "literal" string here.
8474         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8475         `elmo-imap4-send-command'.
8476         (elmo-imap4-folder-exists-p): Likewise.
8477         (elmo-imap4-create-folder): Likewise.
8478         (elmo-imap4-delete-folder): Likewise.
8479         (elmo-imap4-rename-folder): Likewise.
8480         (elmo-imap4-max-of-folder): Likewise.
8481         (elmo-imap4-check-validity): Likewise.
8482         (elmo-imap4-sync-validity): Likewise.
8483         (elmo-imap4-server-diff): Likewise.
8484         (elmo-imap4-select-folder): Likewise.
8485         (elmo-imap4-copy-msgs): Likewise.
8486         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8487         (elmo-imap4-mark-set-on-msgs): Likewise.
8488         (elmo-imap4-read-part): Likewise.
8489         (elmo-imap4-read-msg): Likewise.
8490         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8491         `elmo-imap4-password' for `elmo-imap4-send-command'.
8492         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8493         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8494         `elmo-imap4-buffer-literal'.
8495         (elmo-imap4-append-msg): Likewise.
8496
8497         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8498         `delete' for removing dead connection from the connection cache.
8499         Move deletion of the process buffer after that.
8500         (elmo-imap4-list): Change `defsubst' to `defun'.
8501         (elmo-imap4-commit): Make error message verbose.
8502         (elmo-imap4-search): Ditto.
8503         (elmo-imap4-list): Ditto.
8504         (elmo-imap4-select-folder): Ditto.
8505         (elmo-imap4-copy-msgs): Ditto.
8506         (elmo-imap4-delete-msg-by-id): Ditto.
8507         (elmo-imap4-append-msg-by-id): Ditto.
8508         (elmo-imap4-append-msg): Ditto.
8509
8510 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8511
8512         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8513         when dired is used on XEmacs.
8514
8515 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8516
8517         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8518         instead of `append'.
8519         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8520         `elmo-plugged-p' directly.
8521         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8522         of `elmo-plugged-p' directly.
8523
8524         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8525         Eliminate unused variable.  Use `memq' for checking a process status.
8526         Use `cons' instead of `append' for updating the connection cache.
8527         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8528         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8529
8530 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8531
8532         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8533         `elmo-imap4-read-point' exactly.
8534
8535         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8536         the local variable `folder' to `mailbox'.
8537         Rename the argument `fld' to `folder'.
8538
8539 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8540
8541         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8542         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8543
8544 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8545
8546         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8547         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8548         (elmo-pop3-uidl-number-hash): Ditto.
8549         (elmo-pop3-size-hash): Ditto.
8550         (elmo-pop3-uidl-done): Ditto.
8551         (elmo-pop3-list-done): Ditto.
8552         (elmo-pop3-connection-get-process): New defmacro.
8553         (elmo-pop3-connection-get-buffer): Ditto.
8554         (elmo-pop3-close-connection): Delete buffer and process.
8555         (elmo-pop3-flush-connection): Don't delete buffer and process.
8556         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8557         Setup UIDL and size hash.
8558         (elmo-pop3-send-command-no-erase): Deleted
8559         (elmo-pop3-send-command): Added optional argument `no-erase'.
8560         (elmo-pop3-parse-uidl-response): New function.
8561         (elmo-pop3-parse-list-response): Set size hash.
8562         (elmo-pop3-list-location): New function.
8563         (elmo-pop3-list-by-uidl-subr): Ditto.
8564         (elmo-pop3-list-by-list): Ditto.
8565         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8566         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8567         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8568         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8569         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8570         Use uidl.
8571         (elmo-pop3-uidl-to-number): New function.
8572         (elmo-pop3-number-to-uidl): Ditto.
8573         (elmo-pop3-number-to-size): Ditto.
8574         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8575         Set number by use of uidl.
8576         (elmo-pop3-msgdb-create-message): Likewise.
8577         Set size, loc-alist in msgdb.
8578         (elmo-pop3-read-msg): Set number by use of uidl.
8579         Added optional argument `msgdb'.
8580         (elmo-pop3-delete-msg): Ditto.
8581         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8582         (elmo-pop3-commit): Close connection.
8583
8584         * elmo-pipe.el (elmo-pipe-max-of-folder):
8585         Bind `elmo-pop3-use-uidl' as nil.
8586         (elmo-pipe-drain): Ditto.
8587         Call `elmo-commit'.
8588
8589         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8590         (elmo-msgdb-overview-entity-set-size): New defsubst.
8591
8592 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8593
8594         * elmo-vars.el (elmo-use-killed-list): New variable
8595         (Renamed from `elmo-nntp-use-killed-list').
8596         (elmo-nntp-use-killed-list): Eliminated.
8597
8598         * elmo-msgdb.el (elmo-msgdb-expand-path):
8599         Changed expanding msgdb path for elmo-multi.
8600
8601         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8602         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8603         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8604         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8605         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8606         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8607         (toplevel): Deleted time-stamp line.
8608
8609         * elmo2.el (elmo-clear-killed ): Defined as function
8610         (Abolished defining as a backend function).
8611         All other related modules are changed.
8612
8613 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8614
8615         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8616
8617 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8618
8619         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8620
8621 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8622
8623         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8624
8625 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8626
8627         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8628         asynchronous folder check.
8629
8630         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8631
8632         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8633         `elmo-nntp-use-killed-list'.
8634         (elmo-nntp-list-folder): Use killed list.
8635         (elmo-nntp-max-of-folder): Ditto.
8636         (elmo-nntp-msgdb-create): Set killed list.
8637
8638         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8639
8640         * elmo2.el (elmo-clear-killed): New backend function.
8641         All other related modules are changed.
8642
8643 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8644
8645         * elmo-util.el (elmo-imap4-spec-folder): Use
8646         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8647         All callers changed.
8648
8649 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8650
8651         * mmelmo-2.el (initialize-instance):
8652         Use `mime-buffer-entity-buffer-internal' instead of
8653         `mime-entity-buffer'.
8654
8655         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8656         (mime-entity-body): Implemented.
8657         (mime-goto-header-start-point): Deleted.
8658         (mime-goto-body-end-point): Ditto.
8659         (mime-entity-point-min): Ditto.
8660         (mime-entity-point-max): Ditto.
8661         (mime-entity-children): Ditto.
8662         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8663         instead of `mime-entity-buffer'.
8664         (mime-entity-header-buffer): Ditto.
8665         (mime-entity-body-buffer): Ditto.
8666         (mime-write-entity-content): Ditto.
8667
8668         * pldap.el (ldap-static-if): New macro.
8669         (toplevel): Use it instead of `static-if'.
8670
8671 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8672
8673         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8674         included in `attrs' argument.
8675
8676 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8677
8678         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8679
8680         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8681         (ldap-ldif-safe-init-char-regexp): Ditto.
8682         (ldap-ldif-safe-string-regexp): Ditto.
8683         (ldap/ldif-safe-string-p): New macro.
8684         (ldap/ldif-insert-field): Ditto.
8685         (ldap-modify): Use it.
8686         (ldap-add): Ditto.
8687         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8688         (ldap-decode-attribute): Decode only when `attr' is consp.
8689         (ldap-delete): Bind `ret'.
8690         (toplevel): Require 'cl at compile time.
8691         Removed (require 'poe) and (require 'std11).
8692         (pldap-version): Eliminated.
8693         (ldap-search-basic): Removed auth and dn binding.
8694         (ldap-ldif-field-name-regexp): New constant.
8695         (ldap-ldif-field-head-regexp): Ditto.
8696         (ldap-ldif-next-field-head-regexp): Ditto.
8697         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8698         (ldap/field-end): New function.
8699         (ldap/field-body): Use it.
8700         (ldap/collect-field): Ditto.
8701         (ldap-search-basic): Use `ldap/field-body'.
8702
8703 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8704
8705         * pldap.el (ldap-default-attribute-encoder): New user option.
8706         (ldap/field-body): Decode base64 string.
8707         (ldap/collect-field): Ditto.
8708         (ldap-encode-attribute): New function.
8709         (ldap-add-entries): Use it.
8710         (ldap-modify-entries): Ditto.
8711         (ldap-search-entries): Enclosed decoding function with
8712         `with-temp-buffer' and set as unibyte.
8713         (ldap-search-basic): Set process buffer as unibyte.
8714
8715         * elmo-util.el (elmo-folder-identical-system-p):
8716         Eliminated name space checking.
8717
8718         * pldap.el: New module.
8719         toplevel: Changed condition to detect built-in ldap feature.
8720         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8721         (ldap-add): Added error handling.
8722         (ldap-modify): Ditto.
8723         (ldap-delete): Ditto.
8724
8725 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8726
8727         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8728         Initialize local variables with `let'.  Inline a temporary
8729         variable for the progress percentage.  Sort `setq' to reduce
8730         function call in the while-loop.
8731
8732         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8733         into the conditional branch.
8734
8735 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8736
8737         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8738         Move a conditional out of the while-loop.
8739
8740 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8741
8742         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8743         elmo-msgdb-overview-get-entity-by-number.
8744         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8745         throw.
8746
8747 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8748
8749         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8750         the local variable for a packed number self descriptively.
8751
8752 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8753
8754         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8755         * elmo-localdir.el (elmo-localdir-pack-number): Use
8756         `elmo-msgdb-overview-get-entity' instead of
8757         `elmo-msgdb-overview-get-entity-by-number'.
8758         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8759         (elmo-msgdb-search-overview-entity): Removed.
8760         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8761         by message-id or number.
8762         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8763         instead of `elmo-msgdb-overview-get-entity-by-number'.
8764
8765 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8766
8767         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8768         non-nil, use hash table for overview.
8769         (elmo-hash-maximum-size): New variable.
8770         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8771         (elmo-msgdb-make-overview-hashtb): New function.
8772         (elmo-msgdb-clear-overview-hashtb): New function.
8773         (elmo-clear-hash-val): New macro.
8774         All other related modules are changed.
8775
8776 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8777
8778         * elmo2.el (elmo-move-msgs): If there's other message with
8779         same message-id, don't use cache.
8780
8781 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8782
8783         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8784         number is already packed.
8785
8786 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8787
8788         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8789
8790 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8791
8792         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8793         All other related modules are changed.
8794
8795 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8796
8797         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8798         of refiling failure on Maildir.
8799
8800 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8801
8802         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8803         decoded mime-charset with cache.
8804         (elmo-msgdb-overview-entity-get-from): Ditto.
8805         (elmo-msgdb-overview-entity-get-subject): Ditto.
8806         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8807
8808 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8809
8810         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8811         (elmo-remove-passwd): Fill password with 0 before erase.
8812         * elmo-vars.el (elmo-passwd-life-time): New variable.
8813
8814 \f
8815 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8816
8817         * elmo-cache.el (elmo-buffer-cache-add):
8818         Set message cache buffer as unibyte.
8819
8820 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8821
8822         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8823         become nil.
8824
8825 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8826
8827         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8828         when display is finished.
8829         (elmo-nntp-msgdb-create): Ditto.
8830         (elmo-nntp-groups-read-response): Ditto.
8831         (elmo-nntp-retrieve-headers): Ditto.
8832         (elmo-nntp-msgdb-create-message): Ditto.
8833         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8834         (elmo-pop3-msgdb-create-message): Ditto.
8835
8836 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8837
8838         * elmo-maildir.el (elmo-maildir-msgdb-create):
8839         Use `elmo-msgdb-sort-by-date'.
8840
8841 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8842
8843         * elmo2.el (elmo-read-msg-no-cache):
8844         Eliminated arguments after `outbuf'.
8845         Don't use cache even if it exists.
8846         (elmo-read-msg): Don't pass arguments after `outbuf' to
8847         `elmo-read-msg-no-cache'.
8848
8849 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8850
8851         * elmo-archive.el (elmo-archive-list-folders):
8852         Use `file-name-directory' if base folder does not exist.
8853
8854 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8855
8856         * elmo-archive.el (elmo-archive-list-folders): Don't use
8857         `file-name-directory'.
8858
8859 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8860
8861         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8862         If `force' is non-nil, try flushing all operation queues.
8863
8864 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8865
8866         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8867         as-binary-process.
8868
8869 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8870
8871         * elmo-util.el (elmo-display-progress): Fixed.
8872
8873 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8874
8875         * elmo-util.el (elmo-display-progress): New function.
8876         All other related modules are changed.