(elmo-folder-initialize): Set slot `number-list'
[elisp/wanderlust.git] / elmo / ChangeLog
1 2006-07-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2
3         * elmo-filter.el (elmo-folder-initialize): Set slot `number-list'
4         as 'not-loaded.
5         (elmo-folder-close): Ditto.
6         (elmo-filter-folder-number-list-loaded-p): New function.
7         (elmo-filter-folder-number-list): Check whether loaded or not.
8         (elmo-folder-commit): Use `elmo-filter-folder-number-list' instead
9         of `elmo-filter-folder-number-list-internal'.
10         (elmo-folder-delete-messages): Ditto.
11         (elmo-folder-length): Check whether number-list is loaded or not.
12
13 2006-06-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
14
15         * modb-entity.el (modb-entity-field-extractor-alist): Add 3rd
16         field `real field' into each element of list.
17         (elmo-msgdb-create-message-entity-from-buffer): Follow the above change.
18         (elmo-msgdb-message-entity-field): Ditto.
19         (modb-entity-ml-info-real-fields): New function.
20
21         * elmo-msgdb.el (elmo-msgdb-extra-fields): New function.
22
23         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Use function
24         `elmo-msgdb-extra-fields'.
25
26 2006-05-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
27
28         * elmo-util.el (elmo-passwd-alist-load): Move point to min
29         position before read.
30
31 2006-05-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
32
33         * elmo-flag.el (elmo-folder-expand-msgdb-path): Translate path.
34         (elmo-global-flags-initialize): Ditto.
35
36 2006-05-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
37
38         * elmo-archive.el (toplevel): Don't require emu, std11
39         and elmo-localdir.
40
41         * elmo-localdir.el (elmo-message-file-name): Remove duplicate
42         definition.
43
44 2006-05-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
45
46         * elmo.el (elmo-folder-confirm-appends): Display folder name.
47
48 2006-04-29  Yoichi NAKAYAMA  <yoichi@geiin.org>
49
50         * elmo-imap4.el (elmo-imap4-send-command): Use non-synchronizing
51         literals.
52
53 2006-04-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
54
55         * elmo-maildir.el (elmo-maildir-list-location): Reduce
56         `elmo-get-last-modification-time' call.
57
58 2006-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
59
60         * elmo-maildir.el (elmo-maildir-list-location): Fixed a regular
61         expression.
62         (elmo-maildir-set-mark): Ditto.
63         (elmo-maildir-delete-mark): Ditto.
64
65 2006-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
66
67         * elmo-util.el (elmo-collect-separators-internal): Add 2nd
68         optional argument `separators'.
69
70 2006-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
71
72         * elmo.el (cache-changed): Abolish.
73         (status-changed): New signal.
74         (elmo-message-killed-p): New generic function and define for
75         elmo-folder.
76         (elmo-folder-recover-messages): Ditto.
77         (elmo-message-set-cached): Emit signal `status-changed' instead of
78         `cache-changed'.
79         (elmo-message-status): New macro.
80         (elmo-message-status-folder): Ditto.
81         (elmo-message-status-number): Ditto.
82         (elmo-message-status-set-flags): Ditto.
83         (elmo-message-status-set-killed): Ditto.
84         (elmo-message-status-flags): New function.
85         (elmo-message-status-cached-p): Ditto.
86         (elmo-message-status-killed-p): Ditto.
87
88         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
89         `status-changed' instead of `cache-changed'.
90         (elmo-folder-recover-messages): Define.
91         (elmo-message-killed-p): Ditto.
92
93         * elmo-filter.el (elmo-filter-connect-signals): Connect to signal
94         `status-changed' instead of `cache-changed'.
95
96         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
97         (elmo-message-killed-p): Define.
98         (elmo-folder-recover-messages): Ditto.
99
100         * elmo-version.el (elmo-version): Up to 2.15.3.
101
102 2006-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
103
104         * elmo-signal.el (elmo-signal-bindings): Use cons to append
105         element into list.
106         (elmo-define-signal-handler): Add docstring.
107         (elmo-define-signal-filter): Ditto.
108
109         * elmo-multi.el (elmo-multi-connect-signals): Fix the signal name.
110
111 2006-02-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
112
113         * elmo-util.el (elmo-flatten): Don't use recursive call.
114
115         * elmo-search.el (elmo-folder-msgdb-create): Remove an unnecessary
116         assignment.
117         (elmo-folder-message-make-temp-files): Use `number-to-string'
118         instead of `int-to-string'.
119
120 2006-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
121
122         * elmo-search.el (elmo-folder-delete-messages): Define.
123
124 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
125
126         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fixed
127         customization type.
128         (elmo-mailing-list-count-spec-list): Ditto.
129
130         * elmo-vars.el (elmo-mailing-list-name-spec-list): Merge entries
131         for `list-id'.
132
133 2006-01-22  Yoichi NAKAYAMA  <yoichi@geiin.org>
134
135         * elmo-vars.el (elmo-mailing-list-name-spec-list): Fix list-id
136         handling.
137
138 2006-01-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
139
140         * elmo-vars.el (elmo-mailing-list-name-spec-list): New user option.
141         (elmo-mailing-list-count-spec-list): Ditto.
142
143         * elmo-util.el (elmo-map-until-success): New function.
144         (elmo-string-match-substring): Ditto.
145         (elmo-find-list-match-value): Ditto.
146
147         * modb-entity.el (modb-entity-extract-ml-info-from-x-sequence):
148         Removed.
149         (modb-entity-extract-ml-info-from-subject): Ditto.
150         (modb-entity-extract-ml-info-from-return-path): Ditto.
151         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
152         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
153         (modb-entity-extract-ml-info-from-mailman): Ditto.
154         (modb-entity-extract-mailing-list-info-functions): Ditto.
155         (modb-entity-extract-mailing-list-info): Rewrite with
156         `elmo-find-list-match-value'.
157
158 2006-01-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
159
160         * elmo-net.el (elmo-network-session-retry-count): New user option.
161         (elmo-network-session-buffer-name): New internal function.
162         (elmo-network-session-buffer-create): Ditto.
163         (elmo-network-open-session): Retry open network session
164         `elmo-network-session-retry-count' times.
165
166 2005-12-16  Tetsurou Okazaki  <okazaki@be.to>
167
168         * elmo-util.el (elmo-list-filter): Rewritten.
169
170 2005-12-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
171
172         * elmo-util.el (elmo-string-member): Allow symbol element in list.
173
174 2005-11-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
175
176         * elmo-search.el (elmo-make-search-engine): Use prefix
177         `elmo-search-' for require symbol instead of `else-'.
178         (elmo-search-engine-extprog): New class.
179         (elmo-search-engine-do-search): Remove nil from argument
180         list. Added argument pattern to evaluate element as function.
181         (elmo-search-engine-local-file): Derived from
182         `elmo-search-engine-extprog'.
183         (elmo-search-engine-create-message-entity): Check existance of file.
184         (elmo-search-engine-fetch-message): Ditto.
185         (elmo-search-namazu-index): Follow the API change.
186         (elmo-search-grep-target): Ditto.
187
188 2005-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
189
190         * elmo-spam.el (elmo-spam-message-fetch): Disable multibyte
191         characters of working buffer.
192
193         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
194         Does not bind `default-mime-charset'.
195         (elmo-msgdb-create-message-entity-from-buffer): Removed
196         unnecessary local bind.
197
198         * modb-entity.el (modb-entity-extract-ml-info-from-mailman): New
199         function.
200         (modb-entity-extract-mailing-list-info-functions): Added it.
201
202 2005-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
203
204         * modb-legacy.el (elmo-msgdb-append-entity): Execute the process
205         when number and message-id are non-nil.
206
207         * modb-standard.el (elmo-msgdb-append-entity): Ditto.
208
209         * elmo-pop3.el (elmo-pop3-auth-user): Refactoring nested
210         conditional steatment.
211         (elmo-pop3-auth-apop): Likewise.
212         (elmo-network-authenticate-session): Likewise.
213
214 2005-11-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
215
216         * elmo-mime.el (elmo-mime-header-max-column): Set default value as
217         symbol `fill-column'.
218         (elmo-mime-insert-header-from-buffer): Rewrite; ignore errors in
219         decode field value.
220
221         * elmo-util.el (elmo-mime-string): Ignore errors in eword decode.
222         (elmo-decoded-field-body): Ditto.
223
224 2005-11-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
225
226         * elmo-net.el (elmo-net-folder-set-parameters): Rename argument
227         `tokens' to `params'.
228
229 2005-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
230
231         * elmo-split.el (elmo-split-subr): Disable multibyte characters of
232         working buffer.
233
234 2005-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
235
236         * elmo-search.el (elmo-search-namazu-index): Fixed the order to
237         decide index.
238
239 2005-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
240
241         * elmo-search.el (elmo-search-engine-alist): Define with defvar;
242         Set default value as nil.
243         (toplevel): Register search engines by
244         `elmo-search-register-engine' if there are not defined.
245
246         * elmo.el (autoload): Added autoload setting for
247         `elmo-search-register-engine'.
248
249 2005-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
250
251         * elmo.el (toplevel): `[' is redefined as the prefix of the search
252         folder instead of nmz folder.
253         (elmo-nmz-default-index-path): Added obsolete variable setting.
254         (elmo-nmz-index-alias-alist): Ditto.
255         (elmo-nmz-use-drive-letter): Ditto.
256
257         * elmo-search.el (elmo-search-register-engine): New function.
258
259         * elmo-nmz.el: Removed.
260
261         * elmo-version.el (elmo-version): Up to 2.15.2.
262
263 2005-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
264
265         * elmo-search.el: New file.
266
267 2005-09-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
268
269         * modb-entity.el (elmo-msgdb-message-match-condition): Add new
270         condition `larger' and `smaller'.
271
272 2005-07-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
273
274         * elmo-util.el (elmo-safe-filename): Rewrite to replace
275         `"' (double quote) into "_Q_".
276
277 2005-07-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
278
279         * elmo-net.el (elmo-net-quote-chars): Abolish.
280         (elmo-net-format-quoted): Ditto.
281
282 2005-06-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
283
284         * elmo.el (elmo-get-folder-function): New variable.
285         (elmo-get-folder): New function.
286         (elmo-folder-rename): Call `elmo-make-folder' with specified
287         mime-charset.
288
289         * elmo-split.el (elmo-split): Use `elmo-get-folder' instead of
290         `elmo-make-folder'.
291         (elmo-split-subr): Ditto.
292
293         * elmo-multi.el (elmo-folder-initialize): Ditto.
294
295         * elmo-internal.el (elmo-folder-list-subfolders): Ditto.
296
297         * elmo-flag.el (elmo-flag-folder-delete-message): Ditto.
298         (elmo-flag-get-folder): Ditto.
299
300         * elmo-filter.el (elmo-folder-initialize): Ditto.
301
302         * elmo-access.el (elmo-folder-initialize): Ditto.
303         (elmo-access-folder-update-children): Ditto.
304
305         * elmo-dop.el (elmo-dop-queue-flush): Ditto.
306         (elmo-dop-queue-flush): Ditto.
307         (elmo-folder-append-buffer-dop-delayed): Ditto.
308         (elmo-dop-spool-folder): Call `elmo-make-folder' with specified
309         mime-charset.
310
311         * elmo-pipe.el (elmo-folder-initialize): Use `elmo-get-folder'
312         instead of `elmo-make-folder'.
313         (elmo-folder-rename): Ditto.  Use `elmo-folder-rename' to
314         destination folder instead of send `elmo-folder-rename-internal'.
315
316         * elmo-shimbun.el (elmo-folder-list-subfolders): Use `shimbun'
317         slot of subfolder instead of create it.
318
319 2005-06-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
320
321         * elmo-util.el (elmo-collect-separators): New function.
322         (elmo-collect-separators-internal): Ditto.
323         (elmo-collect-trail-separators): Ditto.
324         (elmo-parse-separated-tokens): Ditto.
325         (elmo-parse-separated-tokens-internal): Ditto.
326         (elmo-quote-syntactical-element): Ditto.
327
328         * elmo-pop3.el (elmo-pop3-folder-name-syntax): New constant.
329         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
330
331         * elmo-nntp.el (elmo-nntp-folder-name-syntax): New constant.
332         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
333         (elmo-nntp-folder-list-subfolders): Quote a user name.
334
335         * elmo-net.el (elmo-net-folder-name-syntax): New constant.
336         (elmo-net-parse-network): Abolish.
337         (elmo-net-folder-set-parameters): New function.
338         (elmo-folder-initialize): Follow the above change.
339
340         * elmo-imap4.el (elmo-imap4-folder-name-syntax): New constant.
341         (elmo-folder-initialize): Rewrite by `elmo-parse-separated-tokens'.
342         (elmo-folder-list-subfolders): Use
343         `elmo-quote-syntactical-element' instead of
344         `elmo-net-format-quoted' to quote mailbox and user name.
345
346 2005-06-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
347
348         * elmo-util.el (elmo-token-valid-p): New function.
349         (elmo-parse-token): Add optional argument `requirement'.
350         (elmo-parse-prefixed-element): Likewise.
351
352         * elmo-net.el (elmo-net-quote-chars): Renamed from
353         `elmo-net-quote-chars-regexp'.
354         (elmo-net-format-quoted): Add optional argument `extra-chars'.
355
356         * elmo-pop3.el (elmo-folder-initialize): Fix the token separators
357         by info document. Check token `uidl' is started an alphabet.
358
359         * elmo-nntp.el (elmo-folder-initialize): Fix the token separators
360         by info document. Check token `user' is started an alphabet.
361
362         * elmo-imap4.el (elmo-folder-initialize): Ditto.
363         (elmo-folder-list-subfolders): Quote user.
364
365 2005-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
366
367         * elmo-util.el (elmo-quoted-specials-list): New constant.
368         (elmo-quoted-token): New function.
369
370         * elmo-net.el (elmo-net-quote-chars-regexp): New constant.
371         (elmo-net-format-quoted): New function.
372         (elmo-net-parse-network): Ditto.
373         (elmo-folder-initialize): Use it.
374
375         * elmo-nntp.el (elmo-folder-initialize): Use
376         `elmo-net-parse-network' to parse network specification instead of
377         `elmo-folder-initialize#elmo-net'.
378
379         * elmo-pop3.el (elmo-folder-initialize): Ditto.
380
381         * elmo-imap4.el (elmo-folder-initialize): Ditto.
382         (elmo-folder-list-subfolders): Quote folder name by
383         `elmo-net-format-quoted'.
384
385 2005-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
386
387         * elmo-nntp.el (elmo-nntp-use-server-search-p): New function.
388         (elmo-folder-search): Use it.
389
390 2005-04-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
391
392         * modb-standard.el (modb-standard-loaded-message-id): Use
393         `elmo-msgdb-message-entity-field'.
394
395 2005-04-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
396
397         * elmo-util.el (elmo-object-load): Call `elmo-set-auto-coding'
398         without filename.
399
400 2005-04-11  Katsumi Yamaoka  <yamaoka@jpl.org>
401
402         * elmo-util.el (elmo-set-auto-coding): New function.
403         (elmo-object-load): Use it.
404
405 2005-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
406
407         * elmo-date.el (elmo-time-less-p): Renamed from `elmo-time<'.
408         (elmo-time<): Define as alias of `elmo-time-less-p'.
409         (elmo-time-to-datevec): New function.
410
411         * elmo-date.el (elmo-time-to-days): New function.
412
413 2005-04-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
414
415         * elmo-util.el (elmo-map-recursive): Call `function' if `object'
416         is not cons cell.
417
418 2005-04-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
419
420         * modb-entity.el (modb-entity-encode-string-recursive): Fixed
421         parenthesis.
422
423         * elmo-util.el (elmo-map-recursive): New function.
424
425         * modb-entity.el (modb-entity-decode-string-recursive): Use it.
426         (modb-entity-encode-string-recursive): Ditto.
427
428 2005-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
429
430         * elmo-maildir.el (elmo-maildir-sequence-number): New function.
431         (elmo-maildir-make-unique-string): Throw Emacs 18 away.
432         (elmo-maildir-list-location): Use `elmo-maildir-sequence-number' to
433         compare sequence number when last modified time is nil.
434
435 2005-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
436
437         * elmo-maildir.el (elmo-folder-msgdb-create): Don't sort by date.
438
439         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
440
441 2005-04-01  Yuuichi Teranishi  <teranisi@gohome.org>
442
443         * elmo-maildir.el (elmo-maildir-list-location): Sort by last
444         modification time of the file.
445
446 2005-03-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
447
448         * elmo-util.el (elmo-condition-optimize): Discriminated against
449         preserved fields, extra fields and the other weight.
450
451 2005-03-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
452
453         * modb-entity.el (initialize-instance): Define.
454         (modb-entity-handler-mime-charset): New internal function.
455         (modb-standard-entity-set-field): Use it.
456         (elmo-msgdb-message-entity-field): Ditto.
457         (elmo-msgdb-message-entity-field): Ditto.
458
459         * modb.el (elmo-msgdb-match-condition): Rewrite with
460         `elmo-condition-match'.
461         (elmo-msgdb-match-condition-primitive): New function.
462
463         * modb-entity.el (elmo-msgdb-message-match-condition): Removed
464         arguments `flags' and `numbers'.
465         (elmo-msgdb-match-condition-primitive): Abolished (merged to
466         `elmo-msgdb-message-match-condition').
467         (modb-buffer-entity-handler): New class.
468
469         * elmo.el (elmo-folder-search): Optimize condition to use
470         `elmo-condition-optimize'.
471         (elmo-message-buffer-match-condition): New function.
472         (elmo-message-match-condition): Use
473         `elmo-message-buffer-match-condition' instead of
474         `elmo-buffer-field-condition-match'.
475
476         * elmo-util.el (elmo-condition-match): New function.
477         (elmo-condition-optimize): Ditto.
478         (elmo-buffer-field-primitive-condition-match): Abolish.
479         (elmo-buffer-field-condition-match): Ditto.
480
481         * elmo-archive.el (elmo-archive-field-condition-match): Use
482         `elmo-message-buffer-match-condition' instead of
483         `elmo-buffer-field-condition-match'.
484
485 2005-03-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
486
487         * elmo-flag.el (elmo-global-flags-initialize): Check the
488         existence of the flag directory.
489
490 2005-03-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
491
492         * elmo-access.el (elmo-folder-initialize): Call
493         `elmo-multi-connect-signals'.
494
495         * elmo-pipe.el (elmo-folder-close): Define.
496
497         * elmo-multi.el (elmo-folder-close): Call `elmo-folder-close' with
498         children folders.
499
500         * elmo-filter.el (elmo-folder-close): Call `elmo-folder-close'
501         with target folder.
502
503         * modb-entity.el (elmo-msgdb-message-entity-set-number): Return
504         `number'.
505
506         * elmo-multi.el (elmo-message-entity): Don't use return value of
507         `elmo-message-entity-set-number'.
508
509 2005-03-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
510
511         * modb.el (modb-generic): Added slot `mime-charset'.
512
513         * modb-standard.el (modb-standard): Added slot `overview-handler'.
514         (modb-standard-save-entity-1): Use `modb-entity-handler-equal-p'
515         and `modb-entity-handler-dump-parameters'.
516         (modb-standard-default-entity-handler): Abolish.
517         (elmo-msgdb-message-entity-handler): Save created handler by
518         instance slot.
519
520         * modb-entity.el (modb-entity-handler): Added slot `mime-charset'.
521         (modb-entity-handler-list-parameters): New method.
522         (modb-entity-handler-equal-p): New function.
523         (modb-entity-handler-dump-parameters): Ditto.
524         (modb-entity-parse-address-string): Encode return value.
525         (modb-entity-make-address-string): Decode argument value.
526         (modb-entity-decode-string-recursive): New function.
527         (modb-entity-encode-string-recursive): Ditto.
528         (modb-standard-entity-normalizer): Set to encode field value.
529         (modb-standard-entity-specializer): Follow the above change.
530         (modb-standard-entity-set-field): Bind `elmo-mime-charset' by
531         mime-charset of handler.
532         (elmo-msgdb-message-entity-field): Ditto.
533         (elmo-msgdb-copy-message-entity): Fixed reference to internal
534         structure.
535         (modb-entity-make-mailing-list-info-string): Decode `ml-name'.
536
537         * elmo.el (elmo-folder): Added slot `mime-charset'.
538         (elmo-make-folder): Added argument `mime-charset'.
539         (elmo-folder-msgdb-load): Call `elmo-load-msgdb' with
540         `mime-charest'.
541
542         * elmo-msgdb.el (elmo-load-msgdb): Added argument `mime-charset'.
543         (elmo-make-msgdb): Likewise.
544
545         * elmo-internal.el (elmo-internal-folder-initialize): Call
546         `luna-make-entity' with :mime-charset parameter.
547
548 2005-03-21  Yuuichi Teranishi  <teranisi@gohome.org>
549
550         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Decode
551         encoded words in `from' and `subject' field.
552
553 2005-03-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
554
555         * modb.el (elmo-msgdb-message-field): Add argument `type'.
556         (elmo-msgdb-match-condition): Get handler from entity instead of
557         msgdb.
558
559         * modb-standard.el (modb-standard-economize-entity-size): Abolish.
560         (modb-standard-load-entity): Treat new file format.
561         (modb-standard-save-entity-1): Save as new file format.
562         (modb-standard-save-entity): Split messages into section here.
563         (elmo-msgdb-message-field): Follow the API change.
564         (modb-standard-default-entity-handler): New internal variable.
565         (elmo-msgdb-message-entity-handler): Define.
566
567         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
568         to `elmo-vars.el'.
569         (modb-entity-field-extractor-alist): New user option.
570         (elmo-msgdb-message-entity-field): Removed argument `decode' and
571         added argument `type'.
572         (elmo-msgdb-copy-message-entity): Add optional argument
573         `make-handler'.
574         (modb-set-field-converter): New function.
575         (modb-convert-field-value): Ditto.
576         (modb-entity-string-decoder): Ditto.
577         (modb-entity-string-encoder): Ditto.
578         (modb-entity-parse-date-string): Ditto.
579         (modb-entity-make-date-string): Ditto.
580         (modb-entity-mime-decoder): Ditto.
581         (modb-entity-mime-encoder): Ditto.
582         (modb-entity-address-list-decoder): Ditto.
583         (modb-entity-address-list-encoder): Ditto.
584         (modb-entity-parse-address-string): Ditto.
585         (modb-entity-make-address-string): Ditto.
586         (modb-entity-create-field-indices): Ditto.
587         (modb-legacy-entity-field-slots): New constant.
588         (modb-legacy-entity-field-indices): Ditto.
589         (modb-legacy-entity-normalizer): New variable.
590         (modb-legacy-entity-specializer): Ditto.
591         (modb-legacy-entity-field-index): New macro.
592         (modb-legacy-entity-set-field): New function.
593         (modb-legacy-make-message-entity): Rewrite.
594         (elmo-msgdb-create-message-entity-from-buffer): Use
595         `elmo-msgdb-get-references-from-buffer'. Use
596         `elmo-decoded-field-body' instead of `elmo-unfold-field-body'.
597         Use `modb-legacy-entity-set-field' instead of
598         `elmo-msgdb-message-entity-set-field'.
599         (elmo-msgdb-message-entity-field): Rewrite.
600         (elmo-msgdb-message-entity-set-field): Ditto.
601         (elmo-msgdb-copy-message-entity): Make new entity by
602         `make-handler' if it specified.
603         (elmo-msgdb-message-match-condition): Define a method of
604         `modb-entity-handler' and follow the API change.
605         (modb-standard-entity-handler): New class.
606         (modb-entity-extract-ml-info-from-x-sequence): New function.
607         (modb-entity-extract-ml-info-from-subject): Ditto.
608         (modb-entity-extract-ml-info-from-return-path): Ditto.
609         (modb-entity-extract-ml-info-from-delivered-to): Ditto.
610         (modb-entity-extract-ml-info-from-mailing-list): Ditto.
611         (modb-entity-extract-mailing-list-info): Ditto.
612         (modb-entity-extract-mailing-list-info-functions): New variable.
613
614         * elmo.el (elmo-message-field): Add optional argument `type'.
615
616         * elmo-vars.el (elmo-msgdb-prefer-in-reply-to-for-parent): Moved
617         from `modb-entity.el'.
618
619         * elmo-util.el (elmo-object-load): Decode by coding-system from
620         `set-auto-coding-function'.
621         (elmo-object-save): Use `detect-mime-charset-region' and add
622         coding cookie if encode.
623         (elmo-msgdb-get-references-from-buffer): New function.
624         (elmo-parse-addresses): Ditto (renamed from `wl-parse-addresses').
625
626         * elmo-spam.el (elmo-spam-message-spam-p): Follow the API change.
627
628         * elmo-shimbun.el (elmo-shimbun-parse-time-string): Removed.
629         (elmo-shimbun-entity-to-header): Use `shimbun-create-header'
630         instead of `shimbun-make-header' and follow the API change.
631         (elmo-shimbun-update-overview): Follow the API change.
632         (elmo-map-folder-list-message-locations): Ditto.
633
634         * elmo-pipe.el (elmo-message-field): Ditto.
635
636         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
637         Ditto.
638
639         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
640
641         * elmo-multi.el (elmo-message-field): Ditto.
642
643         * elmo-msgdb.el (elmo-message-entity-field): Ditto.
644         (elmo-msgdb-sort-by-date): Ditto.
645         (elmo-msgdb-flag-table): Use `elmo-msgdb-message-field' instead of
646         `elmo-message-entity-field'.
647         (elmo-msgdb-overview-entity-get-from-no-decode): Follow the API
648         change.
649         (elmo-msgdb-overview-entity-get-from): Ditto.
650         (elmo-msgdb-overview-entity-get-subject): Ditto.
651         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
652         (elmo-msgdb-overview-entity-get-date): Ditto.
653         (elmo-msgdb-overview-entity-get-to): Ditto.
654         (elmo-msgdb-overview-entity-get-cc): Ditto.
655
656         * elmo-mime.el (elmo-message-mime-entity): Ditto.
657         (elmo-mime-collect-message/partial-pieces): Ditto.
658
659         * elmo-filter.el (elmo-message-field): Ditto.
660
661         * elmo-date.el (elmo-datevec-to-time): New function.
662         (elmo-time-parse-date-string): Ditto.
663         (elmo-time-make-date-string): Ditto.
664         (elmo-time<): Ditto.
665
666         * elmo-version.el (elmo-version): Up to 2.15.1.
667
668 2005-03-14  Yoichi NAKAYAMA  <yoichi@geiin.org>
669
670         * elmo-flag.el (elmo-global-flags-initialize): Don't include
671         member of elmo-local-flags.
672
673 2005-03-13  Yuuichi Teranishi  <teranisi@gohome.org>
674
675         * elmo-version.el (elmo-version): Up to 2.15.0.
676
677 2005-03-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
678
679         * elmo.el (elmo-folder-synchronize): Ignore `mask' when
680         `ignore-msgdb' is non-nil.
681
682 2005-03-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
683
684         * elmo-util.el (elmo-condition-in-msgdb-p-internal): Removed.
685         (elmo-condition-in-msgdb-p): Ditto.
686         (elmo-file-field-primitive-condition-match): Ditto.
687         (elmo-file-field-condition-match): Ditto.
688
689         * elmo-localdir.el (elmo-localdir-field-condition-match): Ditto.
690
691 2005-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
692
693         * elmo-flag.el (elmo-folder-list-subfolders): Don't list from
694         subdirectories here.
695         (elmo-global-flags-initialize): New function.
696
697         * elmo.el (toplevel): Added autoload setting for
698         `elmo-global-flags-initialize'.
699
700 2005-03-07  Yoichi NAKAYAMA  <yoichi@geiin.org>
701
702         * elmo.el (message-number-changed): Define new signal.
703         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Emit
704         message-number-changed signal.
705         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
706         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
707         Respect `elmo-pack-number-check-strict'.
708
709 2005-03-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
710
711         * elmo-signal.el (elmo-connect-signal): Document.
712         (elmo-emit-signal): Ditto.
713         (elmo-emit-signal): It should pass source argument to filter and
714         handler, not slot-source.
715
716 2005-03-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
717
718         * modb.el (elmo-msgdb-update-entity): New API and define generic
719         implement.
720
721         * modb-standard.el (elmo-msgdb-update-entity): Define.
722
723         * modb-entity.el (elmo-msgdb-message-entity-update-fields): New
724         API and define generic implement.
725
726         * elmo.el (update-overview): New singnal.
727
728         * elmo-shimbun.el (elmo-shimbun-update-overview): Rewrite use
729         `elmo-msgdb-update-entity' and emit signal `update-overview'.
730         (elmo-message-entity-parent): Define.
731
732         * elmo-pipe.el (elmo-pipe-connect-signals): Connect to signal
733         `update-overview'.
734
735         * elmo-multi.el (elmo-multi-connect-signals): Ditto.
736
737         * elmo-filter.el (elmo-filter-connect-signals): Ditto.
738
739 2005-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
740
741         * elmo.el (elmo-folder-synchronize): Sort the return value of
742         `elmo-list-diff'.
743
744         * elmo-util.el (elmo-list-diff): Don't care the order of the returned
745         list.
746
747 2005-02-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
748
749         * elmo-util.el (elmo-with-enable-multibyte): Don't bind
750         `default-enable-multibyte-characters'.
751         (elmo-object-load): Use `with-temp-buffer' instead of
752         `elmo-set-work-buf'.
753         (elmo-object-save): Ditto.
754         (elmo-mime-string): Use `elmo-with-enable-multibyte' instead of
755         `elmo-set-work-buf'.
756         (elmo-decoded-field-body): Ditto.
757
758         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Ditto.
759
760         * elmo-sendlog.el (elmo-sendlog-folder-list-message-locations):
761         Use `with-temp-buffer' instead of `elmo-set-work-buf'.
762
763         * elmo-version.el (elmo-version): Up to 2.13.3.
764
765 2005-02-27  Tetsurou Okazaki  <okazaki@be.to>
766
767         * elmo-util.el (elmo-list-diff): Fix the last change.
768         Reverse order of result lists.
769
770 2005-02-26  Yuuichi Teranishi  <teranisi@gohome.org>
771
772         * modb-standard.el (elmo-msgdb-set-flag): Use
773         `elmo-list-diff-nonsortable' instead of `elmo-list-diff'.
774         (elmo-msgdb-unset-flag): Ditto.
775
776         * elmo.el (elmo-strict-folder-diff): Don't use third argument of
777         `elmo-list-diff'.
778
779         * elmo-util.el (elmo-list-diff): Rewrite.
780         (elmo-list-diff-nonsortable): New function.
781
782 2005-02-26  Tetsurou Okazaki  <okazaki@be.to>
783
784         * elmo-util.el (elmo-multibyte-buffer-name): Renamed from
785         `elmo-multibypte-buffer-name'.  All referers are updated.
786
787 2005-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
788
789         * elmo-mime.el (elmo-mime-entity-reassembled-p): New method.
790         (elmo-mime-entity-fragment-p): New function.
791         (mime-elmo-buffer-entity): Added slot `reassembled'.
792         (elmo-message-mime-entity): Added 4th argument `reassemble'.
793         (elmo-message-mime-entity-internal): New function (renamed from
794         `elmo-message-mime-entity').
795         (elmo-mime-inherit-field-list-from-enclosed): New constant.
796         (elmo-mime-make-reassembled-mime-entity): New function.
797         (elmo-message-reassembled-mime-entity): Ditto.
798         (elmo-mime-collect-message/partial-pieces): Ditto.
799
800 2005-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
801
802         * elmo.el (elmo-message-fetch-string): Disable multibyte.
803
804         * elmo-util.el (elmo-multibypte-buffer-name): New constant.
805         (elmo-with-enable-multibyte): New macro.
806
807         * modb-entity.el (elmo-msgdb-get-decoded-cache): Use it.
808
809 2005-02-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
810
811         * elmo-filter.el (elmo-filter-add-flag-count): Removed unused
812         argument `number'.
813         (elmo-filter-connect-signals): Follow the above change.
814
815 2005-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
816
817         * modb-standard.el (elmo-msgdb-unset-flag): Bind inhibit-quit.
818
819         * elmo-maildir.el (elmo-folder-append-messages): Fix the problem
820         that only the first flag is used.
821
822 2005-02-17  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
823
824         * elmo-shimbun.el (elmo-folder-exists-p): Use `shimbun-group-p' 
825         if available.
826
827 2005-02-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
828
829         * elmo-signal.el: New file.
830
831         * elmo.el (toplevel): Require elmo-signal.
832         (flag-changing, flag-changed, cache-changed): New signal.
833         (elmo-folder): Remove slog `handlers'.
834         (elmo-message-set-cached): Use `elmo-emit-signal' instead of
835         `elmo-folder-notify-event'.
836         (elmo-folder-set-flag): Likewise. Emit signal `flag-changing'.
837         (elmo-folder-unset-flag): Ditto.
838         (elmo-event-handler): Abolish.
839         (elmo-event-handler-flag-changed): Ditto.
840         (elmo-event-handler-cache-changed): Ditto.
841         (elmo-folder-add-handler): Ditto.
842         (elmo-folder-remove-handler): Ditto.
843         (elmo-folder-notify-event): Ditto.
844
845         * elmo-pipe.el (toplevel): Require elmo-signal.
846         (elmo-folder-initialize): Call `elmo-pipe-connect-signals'.
847         (elmo-pipe-connect-signals): New function.
848         (elmo-message-fetch): Does not call `elmo-folder-notify-event'.
849         (elmo-folder-set-flag): Ditto.
850         (elmo-folder-unset-flag): Ditto.
851         (elmo-message-set-cached): Ditto.
852
853         * elmo-multi.el (toplevel): Require elmo-signal.
854         (elmo-folder-initialize): Call `elmo-multi-connect-signals'.
855         (elmo-multi-connect-signals): New function.
856         (elmo-multi-map-numbers): Ditto.
857         (elmo-message-set-cached): Does not call `elmo-folder-notify-event'.
858         (elmo-message-fetch): Ditto.
859         (elmo-folder-set-flag): Ditto.
860         (elmo-folder-unset-flag): Ditto.
861
862         * elmo-filter.el (toplevel): Require elmo-signal.
863         (elmo-folder-initialize): Call `elmo-filter-connect-signals'.
864         (elmo-filter-connect-signals): New function.
865         (elmo-filter-add-flag-count): Ditto.
866         (elmo-message-fetch): Does not call
867         `elmo-filter-folder-countup-message-flags' and
868         `elmo-folder-notify-event'.
869         (elmo-message-set-cached): Ditto.
870         (elmo-folder-set-flag): Ditto.
871         (elmo-folder-unset-flag): Ditto.
872
873         * elmo-version.el (elmo-version): Up to 2.13.2.
874
875 2005-02-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
876
877         * elmo-imap4.el (elmo-imap4-flags-to-imap): Preserve argument
878         `flags'.
879
880 2005-02-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
881
882         * elmo-filter.el (elmo-message-set-cached): Call
883         `elmo-folder-notify-event' with event `cache-changed'.
884
885         * elmo-multi.el (elmo-message-set-cached): Ditto.
886
887         * elmo-pipe.el (elmo-message-set-cached): Ditto.
888
889 2005-02-16  Yoichi NAKAYAMA  <yoichi@geiin.org>
890
891         * elmo.el (elmo-folder-encache): Abolish.
892
893 2005-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
894
895         * elmo-dop.el (elmo-folder-delete-messages-dop): Delete 'Append' queue.
896         (elmo-folder-next-message-number-dop): Return appropriate negative
897         integer.
898
899 2005-02-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
900
901         * elmo-dop.el (elmo-dop-queue-flush): Remove files in dop spool on
902         clearing pending operations.
903         (elmo-folder-next-message-number-dop): Return appropriate negative
904         integer.
905
906 2005-02-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
907
908         * elmo.el (toplevel): Added autoload setting for `md5'.
909         (elmo-msgdb-path-encode-threshold): New user option.
910         (elmo-folder-msgdb-path): Encode msgdb path if its length is
911         longer than `elmo-msgdb-path-encode-threshold'.
912
913         * elmo-flag.el (elmo-global-mark-migrate): Use
914         `elmo-folder-expand-msgdb-path' instead of
915         `elmo-folder-msgdb-path'.
916
917 2005-02-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
918
919         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when the
920         element of the difference is nil.
921
922 2005-02-11  Yuuichi Teranishi  <teranisi@gohome.org>
923
924         * elmo-maildir.el (elmo-maildir-separator): Added some OS types
925         to the check logic of file systems which are weak in colon character.
926
927 2005-02-11  Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>
928
929         * elmo-maildir.el (elmo-maildir-move-file): Simplify.
930
931 2005-02-10  Yuuichi Teranishi  <teranisi@gohome.org>
932
933         * elmo-maildir.el (elmo-maildir-move-file): New function.
934         (elmo-folder-append-buffer): Use it.
935         (elmo-folder-append-messages): Ditto.
936         (These changes are based on Ron Isaacson's patch [wl-en: 01205])
937
938         * elmo-imap4.el (elmo-imap4-decode-folder-string): Call `utf7-decode'.
939         (elmo-imap4-encode-folder-string): Call `utf7-encode'.
940
941         * elmo-maildir.el (elmo-maildir-separator): New user option.
942         (elmo-maildir-adjust-separator): New macro.
943         (elmo-maildir-list-location): Use it.
944         (elmo-maildir-update-current): Ditto.
945         (elmo-maildir-set-mark): Ditto.
946         (elmo-maildir-delete-mark): Ditto.
947         (These changes are based on Hiroya Murata's patch [wl: 13437])
948
949 2005-02-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
950
951         * elmo-nntp.el (elmo-nntp-server-command-index): Add entry `xhdr'.
952
953 2005-02-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
954
955         * elmo-flag.el (elmo-flag-valid-p): Simplify.
956         (elmo-folder-list-subfolders): Copy `elmo-global-flags'.
957         (elmo-folder-delete): Update `elmo-global-flag-folder-alist'.
958
959 2005-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
960
961         * elmo-util.el (elmo-passwd-alist-load, elmo-passwd-alist-save):
962         Use `with-temp-buffer'.
963
964 2005-01-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
965
966         * elmo-flag.el (elmo-folder-initialize): Fixed the last change.
967
968         * elmo-util.el (elmo-read-search-condition): Eliminate (renamed to
969         `wl-read-search-condition').
970         (elmo-read-search-condition-internal): Likewise.
971
972         * elmo-flag.el (elmo-flag-char-regexp): New constant.
973         (elmo-flag-valid-p): New function.
974         (elmo-folder-initialize): Check flag name is valid.
975
976 2005-01-26  Yuuichi Teranishi  <teranisi@gohome.org>
977
978         * elmo-imap4.el (elmo-folder-list-subfolders): Use root mailbox without
979         delimiter to obtain root mailbox itself.
980
981 2005-01-25  Tetsurou Okazaki  <okazaki@be.to>
982
983         * elmo-net.el (elmo-network-session-idle-timeout): Fix customization
984         type mismatch.
985
986 2005-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
987
988         * elmo-mime.el (elmo-mime-entity-display): Bind elmo-message-displaying
989         as t.
990
991 2005-01-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
992
993         * elmo-shimbun.el (toplevel): Require cl at compile.
994
995         * elmo-nntp.el (toplevel): Ditto.
996
997         * elmo-nmz.el (toplevel): Ditto.
998
999         * elmo-multi.el (toplevel): Ditto.
1000
1001         * elmo-file.el (toplevel): Ditto.
1002
1003         * elmo-dop.el (toplevel): Ditto.
1004
1005         * elmo-archive.el (toplevel): Likewise elmo and cl (at compile).
1006
1007 2005-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
1008
1009         * mmimap.el (mmimap-make-mime-entity): Set children's top node number
1010         as nil.
1011
1012         * elmo.el (elmo-message-fetch): Return t even when the output buffer
1013         size of elmo-message-fetch-internal is 0 byte.
1014
1015 2005-01-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1016
1017         * elmo-maildir.el (elmo-map-message-fetch): Fixed last change.
1018
1019 2005-01-13  Yoichi NAKAYAMA  <yoichi@geiin.org>
1020
1021         * elmo-shimbun.el (elmo-folder-plugged-p): Treat "@" as
1022         always plugged.
1023
1024 2005-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1025
1026         * elmo-maildir.el (elmo-map-message-fetch): Call
1027         `elmo-map-folder-set-flag'.
1028
1029         * elmo.el (elmo-message-fetch-with-cache-process): Abolish.
1030         (elmo-message-fetch): Merge from
1031         `elmo-message-fetch-with-cache-process'.
1032
1033         * elmo-sendlog.el (elmo-message-fetch-with-cache-process): Abolish.
1034         (elmo-message-fetch): Define.
1035
1036         * elmo-nntp.el (elmo-message-fetch): Renamed from
1037         `elmo-message-fetch-with-cache-process'.
1038
1039         * elmo-cache.el (elmo-message-fetch-with-cache-process): Abolish.
1040         (elmo-message-fetch): Define.
1041
1042         * elmo-util.el (elmo-condition-parse-primitive): Downcase
1043         search-key.
1044
1045         * elmo-shimbun.el (shimbun-mua-search-id): Use
1046         `elmo-message-entity' instead of `elmo-msgdb-message-entity'.
1047         (elmo-shimbun-folder-shimbun-header): Ditto.
1048         (elmo-shimbun-get-headers): Ditto.
1049         (elmo-shimbun-update-overview): Ditto.
1050
1051         * elmo-pipe.el (elmo-folder-detach-messages): Define.
1052
1053         * elmo-net.el (elmo-folder-list-messages-unplugged): Use
1054         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1055
1056 2005-01-13  Yuuichi Teranishi  <teranisi@gohome.org>
1057
1058         * elmo.el (elmo-message-fetch): Unset unread flag on server when
1059         message is cached.
1060         (elmo-message-fetch-string): Fixed argument.
1061
1062 2005-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1063
1064         * elmo.el (elmo-message-fetch): Removed argument `outbuf' and
1065         exchange order of arguments `section' and `unread'.
1066         (elmo-message-encache): Follow the API change.
1067         (elmo-message-match-condition): Ditto.
1068         (elmo-generic-folder-append-messages): Ditto.
1069         (elmo-message-fetch-string): New function.
1070
1071         * elmo-split.el (elmo-split-subr): Ditto.
1072
1073         * elmo-spam.el (elmo-spam-message-fetch): Ditto.
1074
1075         * elmo-pipe.el (elmo-message-fetch): Ditto.
1076
1077         * elmo-multi.el (elmo-message-fetch): Ditto.
1078
1079         * elmo-mime.el (elmo-message-mime-entity): Ditto.
1080
1081         * elmo-flag.el (elmo-global-flag-set-internal): Ditto.
1082
1083         * elmo-filter.el (elmo-message-fetch): Ditto.
1084
1085         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
1086
1087         * elmo-imap4.el (mime-imap-location-section-body): Use
1088         `elmo-message-fetch-string' instead of `elmo-message-fetch' and
1089         follow the API change.
1090
1091 2005-01-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1092
1093         * elmo-access.el: New file.
1094
1095         * elmo-null.el: Ditto.
1096
1097         * elmo-internal.el (elmo-internal-folder-list): Added `null'.
1098
1099 2005-01-08  Yuuichi Teranishi  <teranisi@gohome.org>
1100
1101         * elmo-net.el (elmo-network-session-idle-timeout): New option.
1102         (elmo-network-session): New attribute `last-accessed'.
1103         (elmo-network-get-session): Discard network cache if elapsed time
1104         since last-accessed is larger than elmo-network-session-idle-timeout.
1105
1106 2005-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1107
1108         * elmo.el (elmo-find-fetch-strategy): Removed argument `entity'
1109         and added `number', `require-entireness'.
1110         (elmo-find-fetch-strategy): Rewrite.
1111         (elmo-message-fetch): Unset `unread' flag when argument unread is
1112         non-nil.
1113
1114         * elmo-spam.el (elmo-spam-message-fetch): Follow the API change.
1115
1116         * elmo-multi.el (elmo-find-fetch-strategy): Ditto.
1117         (elmo-message-fetch): Notify event `flag-changed'.
1118
1119         * elmo-pipe.el: Likewise.
1120
1121         * elmo-mime.el (elmo-mime-entity): New class.
1122         (elmo-mime-entity-display-p): New generic function.
1123         (elmo-mime-entity-display): Ditto.
1124         (elmo-mime-entity-display-as-is): Ditto.
1125         (mime-elmo-buffer-entity, mime-elmo-imap-entity): Inherit
1126         elmo-mime-entity.
1127         (elmo-make-mime-message-location): Removed.
1128         (elmo-mime-message-display): Ditto.
1129         (elmo-mime-display-as-is): Ditto.
1130         (elmo-message-mime-entity): New function.
1131
1132         * elmo-imap4.el (elmo-find-fetch-strategy): Rewrite.
1133
1134         * elmo-filter.el (elmo-find-fetch-strategy): Follow the API
1135         change.
1136         (elmo-message-fetch): Re-count flagged message number and notify
1137         event `flag-changed'.
1138
1139         * elmo-version.el (elmo-version): Up to 2.13.1.
1140
1141 2005-01-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1142
1143         * elmo-filter.el (elmo-message-field): Define.
1144         (elmo-message-set-field): Ditto.
1145
1146 2004-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1147
1148         * elmo.el (elmo-message-set-cached): Call
1149         `elmo-folder-notify-event' with cache-changed.
1150         (elmo-event-handler-cache-changed): New generic function.
1151
1152 2004-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1153
1154         * elmo-maildir.el (elmo-folder-append-buffer): Use elmo-copy-file
1155         instead of elmo-add-name-to-file.
1156         (elmo-folder-append-messages): Ditto.
1157
1158 2004-12-21  Yoichi NAKAYAMA  <yoichi@geiin.org>
1159
1160         * elmo.el (elmo-folder-update-threshold): Add nil to range.
1161
1162 2004-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
1163
1164         * elmo-version.el (elmo-version): Up to 2.13.0.
1165
1166         * elmo-vars.el (elmo-msgdb-convert-type): Changed default value to
1167         `auto'.
1168
1169         * modb-standard.el (modb-standard-economize-entity-size): Changed
1170         default value to `t'.
1171
1172         * elmo-vars.el (elmo-msgdb-default-type): Changed default value to
1173         `standard'.
1174
1175         * elmo-imap4.el (elmo-network-initialize-session): Erase buffer
1176         after parsing greeting string.
1177
1178 2004-11-23  Daishi Kato <daishi@axlight.com>
1179
1180         * elsp-spamoracle.el (elmo-spam-spamoracle-spam-header-regexp):
1181         New user option.
1182         (elmo-spam-spamoracle-call): Use it.
1183
1184 2004-11-23  Yoichi NAKAYAMA  <yoichi@geiin.org>
1185
1186         * elmo.el (elmo-message-accessible-p): Message in dop spool
1187         is accessible.
1188
1189 2004-11-23  Daishi Kato <daishi@axlight.com>
1190
1191         * elsp-spamoracle.el: New file.
1192
1193 2004-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1194
1195         * elmo.el (elmo-message-flags-for-append): New function.
1196         (elmo-generic-folder-append-messages): Use it.
1197
1198         * elmo-split.el (elmo-split-subr): Ditto.
1199
1200         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Add argument
1201         `flags' and use elmo-folder-append-buffer instead of
1202         write-region-as-binary.
1203         (elmo-dop-filter-pending-messages): New function.
1204         (elmo-folder-append-buffer-dop): Call
1205         elmo-dop-spool-folder-append-buffer with `flag'.
1206         (elmo-folder-set-flag-dop): Filter messages by
1207         elmo-dop-filter-pending-messages.
1208         (elmo-folder-unset-flag-dop): Ditto.
1209         (elmo-folder-append-buffer-dop-delayed): Use
1210         elmo-message-flags-for-append to get flags of the message and
1211         simplify.
1212
1213 2004-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
1214
1215         * elmo-mime.el (elmo-mime-display-as-is): Treat ignore-cache argument.
1216
1217 2004-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1218
1219         * elmo.el (elmo-folder): Added handlers slot.
1220         (elmo-event-handler): New class.
1221         (elmo-event-handler-flag-changed): New API.
1222         (elmo-folder-add-handler): New function.
1223         (elmo-folder-remove-handler): Ditto.
1224         (elmo-folder-notify-event): Ditto.
1225         (elmo-folder-set-flag): Call `elmo-folder-notify-event' with event
1226         `flag-changed'.
1227         (elmo-folder-unset-flag): Ditto.
1228
1229         * elmo-pipe.el (elmo-folder-set-flag): Ditto.
1230         (elmo-folder-unset-flag): Ditto.
1231
1232         * elmo-multi.el (elmo-folder-set-flag): Ditto.
1233         (elmo-folder-unset-flag): Ditto.
1234
1235         * elmo-filter.el (elmo-folder-set-flag): Ditto.
1236         (elmo-folder-unset-flag): Ditto.
1237
1238         * elmo-version.el (elmo-version): Up to 2.11.33.
1239
1240 2004-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1241
1242         * modb-legacy.el (elmo-msgdb-unset-flag): Accept flag `all'.
1243
1244 2004-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1245
1246         * elmo-multi.el (elmo-folder-unset-flag): Ignore errors.
1247
1248         * elmo-flag.el (elmo-folder-unset-flag): Define.
1249         (elmo-global-flag-detach): Do process when the flag is not target
1250         flag.
1251
1252 2004-10-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1253
1254         * modb-entity.el (elmo-msgdb-prefer-in-reply-to-for-parent): New
1255         variable.
1256         (elmo-msgdb-create-message-entity-from-buffer): Use it.
1257
1258 2004-10-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1259
1260         * elmo-filter.el (elmo-filter-folder-copy-flag-count): New
1261         function.
1262         (elmo-folder-delete-messages): Detach messages before delete
1263         messages from target folder.
1264         (elmo-folder-detach-messages): Set updated number-list to slot.
1265
1266 2004-10-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1267
1268         * elmo-filter.el (elmo-folder-detach-messages): Always return t.
1269
1270 2004-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1271
1272         * elmo.el (elmo-generic-folder-commit): Fixed parenthesis.
1273
1274 2004-10-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1275
1276         * elmo.el (elmo-folder-delete-messages-internal): New API (for
1277         internal use only).
1278         (elmo-generic-folder-commit): Save `killed-list' even if msgdb is
1279         not modified.
1280         (elmo-folder-delete-messages): Define.
1281         (elmo-folder-move-messages): Don't call
1282         `elmo-folder-detach-messages'.
1283         (elmo-folder-synchronize): Rewrite.
1284         (elmo-folder-detach-messages): Delete numbers from `killed-list'.
1285
1286         * elmo-util.el (elmo-last): New function.
1287         (elmo-set-list): Ditto.
1288         (elmo-number-set-delete-list): Ditto.
1289         (elmo-number-set-delete): Ditto.
1290
1291         * elmo-shimbun.el (elmo-folder-delete-messages): Define.
1292
1293         * elmo-map.el (elmo-folder-delete-messages-internal): Renamed from
1294         `elmo-folder-delete-messages' and don't delete location map.
1295         (elmo-folder-detach-messages): Define.
1296
1297         * elmo-imap4.el (elmo-folder-delete): Use
1298         `elmo-folder-delete-messages-internal' instead of
1299         `elmo-folder-delete-messages'.
1300
1301         * elmo-filter.el (elmo-folder-delete-messages): Call
1302         `elmo-folder-detach-messages'.
1303         (elmo-folder-detach-messages): Don't call
1304         `elmo-folder-detach-messages' for target folder.
1305
1306         * elmo-cache.el (elmo-map-folder-delete-messages): Return t when
1307         message deletion is succeeded.
1308
1309         * elmo-maildir.el (elmo-map-folder-delete-messages): Ditto.
1310
1311         * elmo-archive.el (elmo-folder-delete-messages-internal): Renamed
1312         from `elmo-folder-delete-messages'.
1313
1314         * elmo-flag.el (elmo-folder-delete-messages-internal): Ditto.
1315
1316         * elmo-localdir.el (elmo-folder-delete-messages-internal): Ditto.
1317
1318         * elmo-net.el (elmo-folder-delete-messages-internal): Ditto.
1319
1320         * elmo-version.el (elmo-version): Up to 2.11.32.
1321
1322 2004-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1323
1324         * elmo.el (autoload): Added autoload setting for `elmo-local-flag-p'.
1325         (elmo-global-flag-list): Added obsolete variable setting.
1326
1327         * elmo-vars.el (elmo-preserved-flags): Fixed docstring.
1328
1329         * elmo-mime.el (elmo-mime-display-header-analysis): New variable.
1330         (elmo-mime-insert-header-from-buffer): Don't decode header content when
1331         `elmo-mime-display-header-analysis' is nil.
1332
1333         * elmo-flag.el (elmo-global-flags): Renamed from
1334         `elmo-global-flag-list' (All other related portions are changed).
1335         (elmo-local-flags): New variable.
1336         (elmo-local-flag-p): New function.
1337         (elmo-global-flag-set-internal): Cause an error when flag is not
1338         global.
1339
1340 2004-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
1341
1342         * elmo-util.el (elmo-concat-path): Treat empty path.
1343
1344 2004-10-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1345
1346         * elmo-split.el (elmo-split-address-equal): Fixed typo (field =>
1347         field-or-fields).
1348         (elmo-split-address-match): Ditto.
1349         (elmo-split-equal): Ditto.
1350         (elmo-split-match): Ditto.
1351
1352 2004-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
1353
1354         * elmo.el (elmo-message-flags): Abolish optional argument `msgid'.
1355         (elmo-generic-folder-append-messages): If src message exists but
1356         has no flag, pass (read) for the FLAG argument of
1357         `elmo-folder-append-buffer'. Otherwise, pass nil.
1358
1359         * elmo-split.el (elmo-split-subr): Likewise.
1360
1361         * elmo-pipe.el (elmo-message-flags): Abolish optional argument `msgid'.
1362
1363         * elmo-multi.el (elmo-message-flags): Ditto.
1364
1365         * elmo-filter.el (elmo-message-flags): Ditto.
1366
1367         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1368         (elmo-generic-folder-append-messages): If elmo-message-flags return nil,
1369         pass (read) for the FLAG argument of elmo-folder-append-buffer.
1370         
1371 2004-10-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
1372
1373         * elmo-split.el (elmo-split-rule): Update comment.
1374         (elmo-split-address-equal): Allow 2nd argument to be a list.
1375         (elmo-split-address-match): Ditto.
1376         (elmo-split-equal): Ditto.
1377         (elmo-split-match): Ditto.
1378
1379 2004-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
1380
1381         * elmo.el (elmo-folder-append-buffer): Fix docstring.
1382         (elmo-folder-append-msgdb): Don't treat `read'.
1383         (elmo-message-flags): Don't return `read'.
1384
1385         * elmo-dop.el (elmo-folder-set-read-delayed): Don't treat `read'.
1386         (elmo-folder-unset-read-delayed): Ditto.
1387
1388         * elmo-imap4.el (elmo-imap4-flags-to-imap): Ditto.
1389
1390 2004-09-26  Yoichi NAKAYAMA  <yoichi@geiin.org>
1391
1392         * elmo-imap4.el (elmo-folder-delete): Clear current-mailbox after
1393         deletion.
1394
1395 2004-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1396
1397         * elmo-mime.el (elmo-mime-display-as-is-internal): Insert decoded
1398         header.
1399
1400 2004-09-23  Yuuichi Teranishi  <teranisi@gohome.org>
1401
1402         * modb-standard.el (modb-standard-load-entity): Don't bind inhibit-quit
1403         here.
1404         (elmo-msgdb-save): Bind inhibit-quit.
1405         (modb-standard-message-entity): Ditto.
1406
1407 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1408
1409         * elmo-database.el: No need to require elmo-msgdb.
1410
1411 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1412
1413         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
1414         instead of `elmo-list-subdirectories'.
1415
1416 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
1417
1418         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
1419         group entry.
1420         (elmo-folder-exists-p): "[" is empty.
1421         (elmo-folder-list-subfolders): Define.
1422         (elmo-folder-have-subfolder-p): Ditto.
1423
1424 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
1425
1426         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
1427
1428 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
1429
1430         * elmo-filter.el (elmo-folder-local-p): Define.
1431
1432 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1433
1434         * modb-standard.el (modb-standard-loaded-message-id): Return nil
1435         when entity is garbaged.
1436         (modb-standard-save-entity-1): Don't modify the original entity.
1437
1438 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
1439
1440         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
1441
1442 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1443
1444         * elmo.el (elmo-strict-folder-diff): Use
1445         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
1446
1447 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1448
1449         * modb.el (elmo-msgdb-flag-available-p): New generic function.
1450         (elmo-msgdb-message-number): Ditto.
1451         (elmo-msgdb-message-field): Ditto.
1452
1453         * modb-standard.el (modb-standard-economize-entity-size): New user
1454         option.
1455         (modb-standard-loaded-message-id): New inline function.
1456         (modb-standard-load-entity): Use it.
1457         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
1458         throw message-id string away.
1459         (elmo-msgdb-flag-available-p): Define.
1460         (elmo-msgdb-message-number): Ditto.
1461         (elmo-msgdb-message-field): Ditto.
1462
1463         * modb-legacy.el (modb-legacy-flag-list): Fix typo
1464         (suppoted -> supported).
1465         (modb-legacy-supported-flag-p): Ditto.
1466         (elmo-msgdb-set-flag): Ditto.
1467         (elmo-msgdb-unset-flag): Ditto.
1468         (elmo-msgdb-flag-available-p): Define.
1469
1470         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
1471         is `t', treat it as legacy entity.
1472         
1473         * elmo.el (elmo-message-flag-available-p): New generic function.
1474         (elmo-message-number): Ditto.
1475         (elmo-message-field): Use `elmo-msgdb-message-field'.
1476
1477         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
1478
1479         * elmo-pipe.el (elmo-message-flag-available-p): Define.
1480         (elmo-message-number): Ditto.
1481
1482         * elmo-multi.el (elmo-message-number): Define.
1483         (elmo-message-flag-available-p): Ditto.
1484
1485         * elmo-filter.el (elmo-message-flag-available-p): Define.
1486         (elmo-message-number): Ditto.
1487
1488         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
1489         (elmo-folder-initialize): Load `max-number'.
1490         (elmo-folder-commit): Save it.
1491         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
1492         (elmo-global-flag-set-internal): Set up max-number slot.
1493
1494 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
1495
1496         * elmo-version.el (elmo-version): Up to 2.11.31.
1497
1498 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
1499
1500         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
1501         unibyte string of the current buffer for the argument of `md5'
1502         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
1503
1504 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1505
1506         * modb-legacy.el (modb-legacy-flag-list): New constant.
1507         (modb-legacy-suppoted-flag-p): New internal function.
1508         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
1509         (elmo-msgdb-unset-flag): Ditto.
1510
1511 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
1512
1513         * elmo.el (elmo-make-folder): Remove text properties for prefix.
1514
1515         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
1516         from msgdb.
1517
1518 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1519
1520         * elmo-multi.el (elmo-folder-count-flags): Changed return value
1521         (follow the API change).
1522
1523         * elmo-filter.el (elmo-folder-count-flags): Ditto.
1524
1525 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
1526
1527         * modb-standard.el (modb-standard-digest-flags): Abolish.
1528         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
1529
1530         * elmo-vars.el (elmo-digest-flags): New variable.
1531         (elmo-preserved-flags): Moved from elmo-flag.el.
1532
1533         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
1534         (elmo-imap4-flag-to-imap-criteria): Ditto.
1535         (elmo-imap4-folder-list-flagged): Use it.
1536
1537         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
1538
1539         * elmo.el (elmo-folder-count-flags): Changed return value.
1540
1541         * elmo-flag.el (elmo-preserved-flags): New variable.
1542         (elmo-get-global-flags): Use it.
1543
1544         * modb-standard.el (modb-standard-digest-flags): New variable.
1545         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
1546         Changed behavior of `any'.
1547
1548         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
1549         which are defined the Internet draft
1550         (draft-melnikov-imap-keywords-03.txt).
1551         (elmo-imap4-flags-to-imap): New function.
1552         (elmo-folder-append-buffer): Use it.
1553
1554         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
1555         in the docstring.
1556
1557         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
1558         avoid the bug of Emacs 21.3.
1559
1560 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
1561
1562         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
1563         function find-coding-system does not exist.
1564
1565 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1566
1567         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
1568         parsing.
1569
1570 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1571
1572         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
1573         response codes.
1574
1575 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
1576
1577         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
1578         (elmo-network-close-session): Follow the changes in
1579         `elmo-pop3-read-response'.
1580         (elmo-pop3-auth-user): Ditto.
1581         (elmo-pop3-auth-apop): Ditto.
1582         (elmo-network-initialize-session): Ditto.
1583         (elmo-network-authenticate-session): Ditto.
1584         (elmo-network-setup-session): Ditto.
1585         (elmo-folder-status): Ditto.
1586         (elmo-message-fetch-plugged): Ditto.
1587         (elmo-pop3-delete-msg): Ditto.
1588
1589 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
1590
1591         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
1592         on failure.
1593
1594 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1595
1596         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
1597         style.
1598         (elmo-bind-directory): Ditto.
1599
1600 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
1601
1602         * elmo.el (elmo-folder-append-messages): Note on return value.
1603         * elmo-archive.el (elmo-folder-append-messages): Don't return
1604         message numbers which could not be appended.
1605
1606 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1607
1608         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
1609
1610 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1611
1612         * elmo-version.el (elmo-version): Up to 2.11.30.
1613
1614 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1615
1616         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
1617         `mask'.
1618
1619         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
1620
1621         * elmo-multi.el (elmo-folder-synchronize): Likewise.
1622         (elmo-multi-split-numbers): Add elmo-folder object into each
1623         element of return value at first.
1624         (elmo-folder-delete-messages): Follow the above change.
1625         (elmo-folder-detach-messages): Ditto.
1626
1627         * elmo-filter.el (elmo-folder-synchronize): Minimize message
1628         number which is synchronized in target folder.
1629
1630 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1631
1632         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
1633         Change default value to symbol `all'.
1634         (elmo-map-message-fetch): Change condition to update overview
1635         follow the above.
1636
1637 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
1638
1639         * elmo-shimbun.el (elmo-map-message-fetch): Change default
1640         behavior to update overview.
1641         (elmo-shimbun-update-overview-folder-list): Note it.
1642
1643 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1644
1645         * modb-standard.el (modb-standard-message-entity): Avoid infinite
1646         recursive call.
1647
1648 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1649
1650         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
1651         buffer-disable-undo, it is unnecessary.
1652         (elmo-spam-register-good-messages): Ditto.
1653
1654         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
1655         Ditto.
1656
1657         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
1658
1659 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1660
1661         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
1662         (elmo-set-work-buf): Use set-buffer-multibyte instead of
1663         elmo-set-buffer-multibyte.
1664         (elmo-object-load): Ditto.
1665         (elmo-save-buffer): Ditto.
1666         (elmo-delete-char): Ditto.
1667         (elmo-file-field-primitive-condition-match): Ditto.
1668         (elmo-mime-string): Ditto.
1669
1670         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
1671         (elmo-archive-field-condition-match): Ditto.
1672
1673         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
1674
1675         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
1676
1677         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
1678         (elmo-nntp-msgdb-create-message): Ditto.
1679
1680         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1681
1682         * elmo.el (elmo-message-match-condition): Ditto.
1683         (elmo-message-match-condition): Ditto.
1684
1685         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1686         Ditto.
1687
1688         * elmo-version.el (elmo-version): Up to 2.11.29.
1689
1690         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
1691         (elsp-header): New backend.
1692
1693         * elmo-util.el (elmo-decoded-field-body): New function.
1694
1695 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1696
1697         * elmo-version.el (elmo-version): Up to 2.11.28.
1698
1699 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1700
1701         * elmo-filter.el: Rewrite.
1702
1703         * elmo-version.el (elmo-version): Up to 2.11.27.
1704
1705 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
1706
1707         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
1708         msgdb path for the localdir folder with absolute path.
1709
1710         * utf7.el: Synch up with latest gnus/utf7.el;
1711         Modified for latest Emacs.
1712
1713 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1714
1715         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
1716         shimbun backend couldn't open.
1717
1718 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
1719
1720         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
1721         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
1722         when a destination folder is a filter folder.
1723
1724 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1725
1726         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
1727         (elmo-generic-folder-append-messages): Call elmo-message-flags
1728         with argument `msgid'.
1729
1730         * elmo-split.el (elmo-split-subr): Ditto.
1731
1732         * elmo-pipe.el (elmo-message-flags): Follow the API change.
1733
1734         * elmo-multi.el (elmo-message-flags): Ditto.
1735
1736 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1737
1738         * elmo.el (elmo-folder): Add new slot `flag-table'.
1739         (elmo-folder-flag-table): New API.
1740         (elmo-folder-close-flag-table): Ditto.
1741         (elmo-folder-preserve-flags): New function.
1742         (elmo-generic-folder-append-messages): Use
1743         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
1744         Flag of a non-registered message, it sets to nil.
1745         Does not set flag to flag-table.
1746
1747         * elmo-maildir.el (elmo-folder-append-buffer): Use
1748         `elmo-folder-preserve-flags'.
1749         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1750         `elmo-folder-close-flag-table'.
1751
1752         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
1753         (elmo-archive-folder-append-buffer): Use
1754         `elmo-folder-preserve-flags'.
1755
1756         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
1757
1758         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
1759
1760         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1761         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
1762         `elmo-folder-close-flag-table'.
1763
1764         * elmo-version.el (elmo-version): Up to 2.11.26.
1765
1766 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1767
1768         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
1769
1770         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
1771         md5's 4th and 5th argument (non-existent in flim one).
1772
1773 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1774
1775         * elmo-split.el (elmo-split-subr): Flag of a non-registered
1776         message, It sets to nil.
1777
1778 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1779
1780         * elmo.el (elmo-folder-list-messages): Merge lists only if both
1781         list is non-nil.
1782
1783 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
1784
1785         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
1786
1787         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
1788
1789         * elmo-util.el (elmo-uniq-sorted-list): New function.
1790         (elmo-make-number-list): Ditto.
1791         (elmo-number-set-to-number-list): Use elmo-make-number-list
1792         and don't use nreverse.
1793
1794 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1795
1796         * elmo-version.el (elmo-version): Up to 2.11.25.
1797
1798 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1799
1800         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
1801         field not exists in message, Use md5 message digest of header.
1802
1803 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
1804
1805         * elmo.el (elmo-folder-append-buffer): Add note on return value.
1806         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
1807         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
1808         * elmo-split.el (elmo-split-subr): Check return value of
1809         elmo-folder-append-buffer.
1810
1811         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
1812         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1813
1814         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
1815         message-id.
1816
1817 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
1818
1819         * elmo-split.el (elmo-split-subr): Append message with flag.
1820
1821         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
1822         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
1823         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
1824
1825 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
1826
1827         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
1828         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
1829         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1830
1831 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
1832
1833         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
1834         with a function call of `process-buffer'.  All callers are updated.
1835         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
1836         Remove redundant `set-buffer' in a while loop.
1837
1838 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
1839
1840         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
1841         calls.
1842
1843 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1844
1845         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
1846         elsp-spamfilter-register-buffer-internal with current buffer.
1847         (elmo-spam-register-spam-buffer): Ditto.
1848         (elmo-spam-register-good-buffer): Ditto.
1849
1850 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
1851
1852         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
1853         if it is not contained in the response(A workaround for courier-imap).
1854
1855 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1856
1857         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
1858         parenthesis.
1859
1860 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
1861
1862         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
1863         range.
1864
1865 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1866
1867         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
1868         of nconc.
1869
1870         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
1871         argument handler.
1872         (elmo-msgdb-message-match-condition): Follow the change above.
1873
1874 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1875
1876         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
1877         folder name.
1878
1879 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1880
1881         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
1882
1883 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1884
1885         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
1886
1887 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1888
1889         * elmo-file.el (elmo-file-find): Fixed the problem when file is
1890         not found.
1891
1892 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
1893
1894         * elmo-file.el (elmo-file-find): Use expand-file-name for return
1895         value.
1896         (elmo-file-command-argument): Undo last change for cygwin.
1897         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
1898         Don't return nil.
1899         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
1900
1901 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1902
1903         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
1904         value returned from elmo-file-find is nil.
1905
1906 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
1907
1908         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
1909         to elmo-vars.el.
1910
1911         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
1912         instead of insert-file-contents-as-binary.
1913         (elmo-message-set-field): New generic function.
1914
1915         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
1916         behavior change on `split-string'.
1917
1918         * elmo-file.el (elmo-file-find): New function.
1919         (elmo-file-command): New user option.
1920         (elmo-file-command-argument): Ditto.
1921         (elmo-file-fetch-max-size): Ditto.
1922         (elmo-file-detect-format): New function.
1923         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
1924         Use elmo-file-detect-format.
1925         (elmo-map-folder-list-message-locations): Don't treat directories.
1926
1927 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1928
1929         * elmo-util.el (elmo-string-partial-p): Removed unused function.
1930         (elmo-passwd-alist-clear): Shred password before clear.
1931         (elmo-remove-passwd): Remove all mached pair.
1932
1933 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
1934
1935         * elmo.el (elmo-folder-synchronize): Fix description of the return
1936         value.
1937
1938 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
1939
1940         * elmo.el (elmo-message-fetch-bodystructure): New method.
1941         (elmo-message-fetch-bodystructure): Define default.
1942
1943         * elmo-imap4.el (mime-imap-location-bodystructure): Call
1944         elmo-message-fetch-bodystructure.
1945         (elmo-message-fetch-bodystructure): Define.
1946
1947         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
1948
1949 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
1950
1951         * elmo-filter.el (elmo-message-folder): Define.
1952
1953 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
1954
1955         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
1956         elmo-delete-cr-buffer.
1957
1958         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
1959
1960         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
1961
1962         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
1963
1964         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
1965         type seems to be a text.
1966
1967 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
1968
1969         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
1970         (elmo-spam-register-good-buffer): Ditto.
1971         (elmo-spam-spamassassin-register-messages): Ditto.
1972
1973         * elmo-util.el (elmo-string-member-ignore-case): Define with
1974         static-cond.
1975
1976 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
1977
1978         * elmo.el (elmo-folder-type): Undo last change.
1979
1980         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
1981
1982         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
1983         warnings.
1984
1985         * elmo-file.el: New file.
1986         
1987         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
1988
1989         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
1990         variable.
1991         (elmo-spam-spamassassin-register-messages): New inline function.
1992         (elmo-spam-register-spam-messages): Define.
1993         (elmo-spam-register-good-messages): Ditto.
1994
1995         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
1996         Fixed typo.
1997
1998         * elmo.el (toplevel): Added autoload setting for
1999         `elmo-get-global-flags'.
2000         (elmo-message-has-global-flag-p): New function.
2001         (elmo-message-set-global-flags): Ditto.
2002         (elmo-folder-type): Improvement for name: format.
2003
2004         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
2005         availability of keyword flags.
2006         (elmo-imap4-folder-list-flagged): Treat keyword flags.
2007         (elmo-folder-list-flagged-plugged): Renamed from
2008         elmo-folder-list-flagged-unplugged.
2009         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
2010         accept any flag as keyword flag.
2011         (elmo-folder-set-flag-plugged): Accept keyword flags.
2012         (toplevel): Added autoload setting for `elmo-get-global-flags'.
2013
2014         * elmo-flag.el (elmo-get-global-flags): New function.
2015
2016         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
2017         folders.
2018
2019         * elmo-version.el (elmo-version): Up to 2.11.24.
2020
2021 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
2022
2023         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
2024         elmo-multiple-field-body instead of std11-field-body to check all
2025         headers.
2026
2027 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2028
2029         * elmo-util.el (elmo-cache-expire): Completion require match "age"
2030         or "size".
2031
2032 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2033
2034         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
2035         unintern is unbound.
2036
2037 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
2038
2039         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
2040         Protect from infinite loop.
2041
2042 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2043
2044         * elsp-bogofilter.el
2045         (elmo-spam-bogofilter-max-messages-per-process): New user option.
2046         (elmo-spam-bogofilter-register-messages): New internal function.
2047         (elmo-spam-register-spam-messages): Define.
2048         (elmo-spam-register-good-messages): Ditto.
2049
2050 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2051
2052         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2053         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
2054         (elmo-spam-bogofilter-call): Fixed the last change.
2055         (elmo-spam-bogofilter-arguments): Ditto.
2056
2057         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
2058         Follow the options change of latest bogofilter.
2059
2060         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
2061         (elmo-spam-bogofilter-good-switch): Ditto.
2062         (elmo-spam-bogofilter-arguments-alist): New user option.
2063         (elmo-spam-bogofilter-debug): Ditto.
2064         (elmo-spam-bogofilter-call): Renamed from
2065         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
2066         is non-nil, insert output in buffer for debug.
2067         (elmo-spam-bogofilter-arguments): New macro.
2068         (elmo-spam-buffer-spam-p): Use it.
2069         (elsp-bogofilter-register-buffer): Ditto.
2070
2071 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2072
2073         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
2074         regexp.
2075
2076 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2077
2078         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
2079         value as "ruby".
2080         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
2081         (elmo-spam-bsfilter-program): Set default value as full path for
2082         `bsfilter'.
2083         (elmo-spam-bsfilter-debug): New user option.
2084         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
2085         non-nil, insert output in buffer for debug. Fix treating of
2086         argument.
2087
2088 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2089
2090         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
2091         `elmo-maildir-flag-specs' element instead of one.
2092         (elmo-map-folder-unset-flag): Ditto.
2093         (Reported by Ken Makimura <macky@astem.or.jp>)
2094
2095         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
2096         (elmo-folder-unset-flag-plugged): Ditto.
2097
2098 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2099
2100         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
2101         to `reads' slot only if `in-msgdb' is nil.
2102
2103 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2104
2105         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
2106         and complement argument list.
2107
2108 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2109
2110         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
2111         instead of elmo-folder-list-flagged.
2112
2113 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2114
2115         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
2116
2117         * elsp-bsfilter.el: New file.
2118
2119         * elmo-pipe.el (elmo-folder-list-unreads,
2120         elmo-folder-list-answereds,
2121         elmo-folder-list-importants,
2122         elmo-folder-flag-as-important,
2123         elmo-folder-unflag-important,
2124         elmo-folder-flag-as-read,
2125         elmo-folder-unflag-read,
2126         elmo-folder-flag-as-answered,
2127         elmo-folder-unflag-answered): Remove.
2128         (elmo-folder-set-flag): Define.
2129         (elmo-folder-unset-flag): Ditto.
2130
2131         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
2132         (elmo-folder-set-flag): Define.
2133         (elmo-folder-unset-flag): Ditto.
2134         (elmo-folder-list-unreads): Remove.
2135         (elmo-folder-list-flagged): Define.
2136
2137         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
2138         (elmo-folder-list-unreads,
2139         elmo-folder-list-importants,
2140         elmo-folder-list-answereds,
2141         elmo-folder-list-unreads-plugged,
2142         elmo-folder-list-importants-plugged,
2143         elmo-folder-list-answereds-plugged): Remove.
2144         (elmo-folder-list-flagged-plugged): New method.
2145         (elmo-folder-unflag-important,
2146         elmo-folder-flag-as-important,
2147         elmo-folder-unflag-read,
2148         elmo-folder-flag-as-read,
2149         elmo-folder-unflag-answered,
2150         elmo-folder-flag-as-answered,
2151         elmo-folder-flag-as-read-unplugged,
2152         elmo-folder-unflag-read-unplugged,
2153         elmo-folder-flag-as-important-unplugged,
2154         elmo-folder-unflag-important-unplugged,
2155         elmo-folder-flag-as-answered-unplugged,
2156         elmo-folder-unflag-answered-unplugged): Remove.
2157         (elmo-folder-set-flag): Define.
2158         (elmo-folder-unset-flag): Ditto.
2159         (elmo-folder-set-flag-unplugged): Ditto.
2160         (elmo-folder-unset-flag-unplugged): Ditto.
2161
2162         * elmo-multi.el (elmo-folder-list-unreads,
2163         elmo-folder-list-answereds,
2164         elmo-folder-list-importants,
2165         elmo-folder-flag-as-important,
2166         elmo-folder-unflag-important,
2167         elmo-folder-flag-as-read,
2168         elmo-folder-unflag-read,
2169         elmo-folder-flag-as-answered,
2170         elmo-folder-unflag-answered): Remove.
2171         (elmo-folder-set-flag): Define.
2172         (elmo-folder-unset-flag): Ditto.
2173
2174         * elmo-map.el (elmo-map-folder-unflag-important,
2175         elmo-map-folder-flag-as-important,
2176         elmo-map-folder-unflag-read,
2177         elmo-map-folder-flag-as-read,
2178         elmo-map-folder-unflag-answered,
2179         elmo-map-folder-flag-as-answered): Remove.
2180         (elmo-map-folder-set-flag): New method.
2181         (elmo-map-folder-unset-flag): Ditto.
2182         (elmo-map-folder-list-unreads,
2183         elmo-map-folder-list-importants,
2184         elmo-map-folder-list-answereds): Remove.
2185         (elmo-folder-list-flagged-internal): Define.
2186         (elmo-map-folder-list-flagged): New method.
2187
2188         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
2189         (elmo-map-folder-list-unreads,
2190         elmo-map-folder-list-importants,
2191         elmo-map-folder-list-flagged): Remove.
2192         (elmo-map-folder-list-flagged): Define.
2193         (elmo-map-folder-flag-as-important,
2194         elmo-map-folder-unflag-important,
2195         elmo-map-folder-flag-as-read,
2196         elmo-map-folder-unflag-read,
2197         elmo-map-folder-flag-as-answered,
2198         elmo-map-folder-unflag-answered): Remove.
2199         (elmo-maildir-set-mark-messages): New internal function.
2200         (elmo-map-folder-set-flag): Define.
2201         (elmo-map-folder-unset-flag): Ditto.
2202
2203         * elmo.el (toplevel): Added autoload setting for
2204         `elmo-folder-list-global-flag-messages'.
2205         (elmo-folder-list-unreads,
2206         elmo-folder-list-importants,
2207         elmo-folder-list-answereds): Remove.
2208         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
2209         Return a list whitch merged with messages have global flag.
2210         (elmo-folder-list-flagged-internal): New method.
2211         (elmo-folder-unflag-important,
2212         elmo-folder-flag-as-important,
2213         elmo-folder-unflag-read,
2214         elmo-folder-flag-as-read,
2215         elmo-folder-unflag-answered,
2216         elmo-folder-flag-as-answered): Remove.
2217         (elmo-folder-set-flag): New method.
2218         (elmo-folder-unset-flag): Ditto.
2219         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
2220         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
2221
2222         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
2223         (elmo-folder-list-unreads-plugged,
2224         elmo-folder-list-importants-plugged,
2225         elmo-folder-list-answereds-plugged,
2226         elmo-folder-list-flagged-unplugged,
2227         elmo-folder-unflag-important-plugged,
2228         elmo-folder-flag-as-important-plugged,
2229         elmo-folder-unflag-read-plugged,
2230         elmo-folder-flag-as-read-plugged,
2231         elmo-folder-unflag-answered-plugged,
2232         elmo-folder-flag-as-answered-plugged): Remove.
2233         (elmo-folder-set-flag-plugged,
2234         elmo-folder-unset-flag-plugged): Define.
2235
2236         * elmo-flag.el (elmo-folder-initialize): Register to
2237         `elmo-global-flag-list' if flag is not global.
2238         (elmo-folder-append-messages): Set flag to source messages.
2239
2240         * elmo-filter.el (elmo-filter-folder-list-unreads,
2241         elmo-folder-list-unreads,
2242         elmo-filter-folder-list-importants,
2243         elmo-folder-list-importants,
2244         elmo-folder-flag-as-read,
2245         elmo-folder-unflag-read,
2246         elmo-folder-flag-as-important,
2247         elmo-folder-unflag-important,
2248         elmo-folder-flag-as-answered,
2249         elmo-folder-unflag-answered): Remove.
2250         (elmo-folder-set-flag): Define.
2251         (elmo-folder-unset-flag): Ditto.
2252
2253         * elmo-dop.el (elmo-folder-flag-as-read-dop,
2254         elmo-folder-unflag-read-dop,
2255         elmo-folder-flag-as-important-dop,
2256         elmo-folder-unflag-important-dop,
2257         elmo-folder-flag-as-answered-dop,
2258         elmo-folder-unflag-answered-dop): Remove.
2259         (elmo-folder-set-flag-dop,
2260         elmo-folder-unset-flag-dop,
2261         elmo-folder-set-important-delayed,
2262         elmo-folder-unset-important-delayed,
2263         elmo-folder-set-read-delayed,
2264         elmo-folder-unset-read-delayed,
2265         elmo-folder-set-answered-delayed,
2266         elmo-folder-unset-answered-delayed): New function.
2267         (elmo-dop-queue-merge-method-list): Follow the above chagned.
2268         (elmo-dop-queue-method-name-alist): Ditto.
2269
2270         * elmo-version.el (elmo-version): Up to 2.11.23.
2271
2272 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
2273
2274         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
2275
2276         * elsp-sa.el: New file.
2277
2278 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2279
2280         * modb-standard.el (modb-standard-message-entity): New function.
2281         (elmo-msgdb-message-entity): Use it.
2282
2283 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2284
2285         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
2286         behavior when one-level is nil.
2287
2288         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
2289
2290         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
2291
2292 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2293
2294         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
2295         get max number.
2296         (elmo-generic-folder-diff): Ditto.
2297
2298         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
2299         (elmo-folder-update-number): Ditto.
2300
2301         * elmo-dop.el (elmo-folder-status-dop): Ditto.
2302         (elmo-folder-next-message-number-dop): Ditto.
2303
2304 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2305
2306         * elmo-filter.el (elmo-folder-msgdb-create): Use
2307         `elmo-message-entity' and `elmo-message-flags' instead of
2308         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
2309
2310 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2311
2312         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
2313         `if-exists'.
2314
2315 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2316
2317         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
2318
2319         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
2320
2321         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
2322
2323 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2324
2325         * elmo-version.el (elmo-version): Up to 2.11.22.
2326
2327 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2328
2329         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
2330
2331 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2332
2333         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
2334         if the message dose not exist.
2335
2336 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
2337
2338         * elmo-version.el (elmo-version): Up to 2.11.21.
2339
2340 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2341
2342         * modb-standard.el (toplevel): Don't require mime.
2343
2344 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2345
2346         * elsp-bogofilter.el (toplevel): Don't require path-util.
2347         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
2348         (elmo-spam-bogofilter-header): Abolish.
2349         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
2350         (elmo-spam-bogofilter-args): New user option.
2351         (elsp-bogofilter-call-bogofilter): New internal function.
2352         (elmo-spam-buffer-spam-p): Use it.
2353         (elsp-bogofilter-register-buffer): Renamed from
2354         `elmo-spam-bogofilter-register-buffer';
2355         Use `elsp-bogofilter-call-bogofilter'.
2356         (elmo-spam-register-spam-buffer): Follow the change above.
2357         (elmo-spam-register-good-buffer): Ditto.
2358
2359 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2360
2361         * modb-standard.el (elmo-msgdb-append-entity): If entity or
2362         message-id is nil do nothing.
2363
2364 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
2365
2366         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
2367         Revival.
2368         (elmo-imap4-session): Removed use-flag slot.
2369         (elmo-imap4-session-select-mailbox): Undo last change.
2370         (elmo-folder-use-flag-p): Use
2371         elmo-imap4-disuse-server-flag-mailbox-regexp.
2372
2373 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
2374
2375         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
2376         (elmo-imap4-session-select-mailbox): Set it up.
2377         (elmo-folder-use-flag-p): Return value of use-flag slot.
2378
2379 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2380
2381         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
2382         message-id is nil.
2383         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
2384
2385         * modb-entity.el (elmo-message-entity-handler): Likewise.
2386
2387 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
2388
2389         * elmo.el (toplevel): Remove setting of autoloding for
2390         elmo-global-flag-initialize.
2391         (elmo-init): Don't call elmo-global-flag-initialize.
2392         (toplevel): Added autoload setting for elmo-global-mark-migrate.
2393
2394         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
2395         (elmo-global-mark-migrate): Don't call it.
2396         (elmo-global-mark-upgrade): Ditto.
2397
2398 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
2399
2400         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
2401         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
2402
2403         * elmo-vars.el (elmo-init-hook): New user option.
2404
2405         * elmo.el (elmo-init): Run the elmo-init-hook.
2406
2407         * elmo-flag.el (elmo-global-mark-migrate): New function.
2408
2409 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2410
2411         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
2412         Undo last change (move to elmo-msgdb-unset-flag).
2413         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
2414         flag is unset.
2415
2416 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
2417
2418         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
2419         read flag is set.
2420         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
2421         (elmo-msgdb-unset-flag): Ditto.
2422
2423 2003-11-05  Andreas Fuchs <asf@boinkor.net>
2424
2425         * elmo-split.el (elmo-split): Return split message count.
2426
2427 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2428
2429         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
2430         is nil.
2431
2432 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2433
2434         * elmo.el (elmo-folder-unflag-important): Call
2435         `elmo-global-flag-detach' with 4th argument delete-if-none that is
2436         a symbol `always'.
2437
2438         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
2439         before unset flag.
2440         (elmo-global-flag-detach): Delete the message from flag folder, if
2441         `delete-if-none' is a symbol `always'.
2442
2443 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2444
2445         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
2446         `elmo-spam-spamfilter-decode-buffer'.
2447         (elsp-spamfilter-register-buffer-internal): New internal function.
2448         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
2449         (elmo-spam-register-spam-buffer): Ditto.
2450         (elmo-spam-register-good-buffer): Ditto.
2451
2452         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
2453         change.
2454         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
2455         (elmo-spam-register-spam-buffer): Follow the API change.
2456         (elmo-spam-register-good-buffer): Ditto.
2457
2458         * elmo-split.el (toplevel): Require elmo-spam when copmile.
2459         (elmo-split-spam-p): Added argument plist; Call
2460         `elmo-spam-buffer-spam-p' with new argument register.
2461
2462         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
2463         `register'.
2464         (elmo-spam-message-spam-p): Ditto.
2465         (elmo-spam-register-spam-buffer): Added optional argument
2466         `restore'.
2467         (elmo-spam-register-good-buffer): Ditto.
2468         (elmo-spam-register-spam-messages): Ditto.
2469         (elmo-spam-register-good-messages): Ditto.
2470
2471 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2472
2473         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
2474         register into good corpus.
2475         (elmo-spam-register-good-buffer): Fixed to register into bad
2476         corpus.
2477
2478 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2479
2480         * elmo-version.el (elmo-version): Up to 2.11.20.
2481
2482         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
2483         change.
2484
2485         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
2486         flag without depending on \Recent flag.
2487
2488 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2489
2490         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
2491         (elmo-spam-modified-p): Defined.
2492         (elmo-spam-save-status): Set `modified' slot to nil.
2493         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
2494         (elmo-spam-register-good-buffer): Ditto.
2495
2496         * elmo-spam.el (elmo-spam-modified-p): New API.
2497
2498 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2499
2500         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
2501         duplicate definition.
2502
2503         * elmo-util.el (elmo-unfold-field-body): New function.
2504         (elmo-msgdb-get-message-id-from-buffer): Use it.
2505
2506         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2507         Fixed the last change; Use elmo-unfold-field-body.
2508
2509 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2510
2511         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
2512         Unfold date value.
2513
2514 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2515
2516         * elmo-spam.el (elmo-spam-save-status): New API.
2517
2518         * elsp-spamfilter.el: New file.
2519
2520 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2521
2522         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
2523
2524 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2525
2526         * elmo-split.el (elmo-split-spam-p): New function.
2527
2528         * elmo-spam.el: New file.
2529
2530         * elsp-bogofilter.el: Ditto.
2531
2532 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
2533
2534         * elmo.el (elmo-folder-next-message-number): New API.
2535         (elmo-folder-next-message-number): Define.
2536         (elmo-message-field): Don't check folder length.
2537
2538         * elmo-net.el (elmo-folder-next-message-number): Define.
2539         (elmo-folder-next-message-number-unplugged): Define.
2540
2541         * elmo-map.el (elmo-folder-next-message-number): Define.
2542         (elmo-folder-delete-messages): Clear hash value.
2543
2544         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
2545
2546         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
2547         (elmo-folder-delete-messages-dop-delayed): Always return t.
2548
2549         * elmo-version.el (elmo-version): Up to 2.11.19.
2550
2551 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2552
2553         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
2554         change.
2555
2556         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
2557         identical cons cell into the mark-alist and the hash table.
2558
2559 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
2560
2561         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
2562         elmo-folder-list-messages with argument `visible-only' as t.
2563
2564         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
2565         (elmo-folder-msgdb-create): Check the target folder.
2566
2567 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
2568
2569         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
2570         `permanentflag' instead of `flags'.
2571         (elmo-folder-open): Ditto.
2572         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
2573         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
2574         (elmo-folder-use-flag-p): Always return t.
2575         (elmo-imap4-session-select-mailbox): Use value of `flags' if
2576         `permanentflags' does not exist.
2577         (elmo-folder-open): Ditto.
2578
2579 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
2580
2581         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
2582         is nil.
2583         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
2584
2585         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
2586         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
2587         response.
2588         (elmo-folder-open): Ditto.
2589         (elmo-imap4-set-flag): Send store flag command only when the `flags'
2590         slot of the session includes the flag.
2591         (elmo-imap4-session-flag-available-p): New function.
2592         (elmo-imap4-folder-list-flagged): Ditto.
2593         (elmo-folder-list-unreads-plugged): Use it.
2594         (elmo-folder-list-importants-plugged): Ditto.
2595         (elmo-folder-list-answereds-plugged): Ditto.
2596         (elmo-imap4-search-internal-primitive): Ditto.
2597         (elmo-imap4-folder-list-any-plugged,
2598         elmo-imap4-folder-list-digest-plugged): Abolish.
2599
2600         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
2601         if numbers is nil.
2602
2603 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2604
2605         * elmo-util.el (toplevel): Require emu for char-list-to-string.
2606
2607 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2608
2609         * elmo-util.el (elmo-get-hash-val): Simplify.
2610         (elmo-set-hash-val): Rewrite.
2611
2612 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2613
2614         * elmo.el (elmo-folder-list-messages): Append killed messages into
2615         result if `visible-only' is nil and `in-msgdb' is non-nil.
2616
2617         * elmo-util.el (elmo-uniq-list): Added optional argument
2618         `delete-function'.
2619
2620         * modb.el (elmo-msgdb-flag-count): New API.
2621
2622         * modb-standard.el (modb-standard): Added slot flag-count.
2623         (modb-standard-countup-flags): New function.
2624         (modb-standard-load-flag): Call it.
2625         (elmo-msgdb-append): Ditto.
2626         (elmo-msgdb-clear): Clear slot flag-count.
2627         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
2628         (elmo-msgdb-unset-flag): Treat `all' flag and call
2629         modb-standard-countup-flags.
2630         (elmo-msgdb-flag-count): Define.
2631         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
2632         (elmo-msgdb-delete-messages): Ditto.
2633
2634         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
2635         (elmo-msgdb-flag-count): Define.
2636
2637         * elmo.el (elmo-folder-list-messages): Undo last change.
2638         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
2639         (elmo-folder-kill-messages): Unset all flags to numbers.
2640
2641         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
2642         elmo-folder-kill-messages.
2643
2644         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
2645         (elmo-nntp-folder-delete-messages): Abolish.
2646
2647         * elmo-version.el (elmo-version): Up to 2.11.18.
2648
2649 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2650
2651         * elmo.el (elmo-folder-kill-messages-before): Abolish.
2652         (elmo-folder-kill-messages-range): New function.
2653         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
2654         instead of elmo-folder-kill-messages-before.
2655
2656 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
2657
2658         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
2659         elmo-imap4-current-msgdb to decide entity handler.
2660
2661 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2662
2663         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
2664
2665         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
2666         inline function.
2667         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
2668         (elmo-msgdb-overview-entity-set-number,
2669         elmo-msgdb-overview-entity-get-references,
2670         elmo-msgdb-overview-entity-set-references,
2671         elmo-msgdb-overview-entity-get-from-no-decode,
2672         elmo-msgdb-overview-entity-get-from,
2673         elmo-msgdb-overview-entity-set-from,
2674         elmo-msgdb-overview-entity-get-subject,
2675         elmo-msgdb-overview-entity-get-subject-no-decode,
2676         elmo-msgdb-overview-entity-set-subject,
2677         elmo-msgdb-overview-entity-get-date,
2678         elmo-msgdb-overview-entity-set-date,
2679         elmo-msgdb-overview-entity-get-to,
2680         elmo-msgdb-overview-entity-get-cc,
2681         elmo-msgdb-overview-entity-get-size,
2682         elmo-msgdb-overview-entity-set-size,
2683         elmo-msgdb-overview-entity-get-extra,
2684         elmo-msgdb-overview-entity-set-extra,
2685         elmo-msgdb-overview-entity-get-extra-field,
2686         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
2687         (elmo-msgdb-make-index): Use
2688         `elmo-msgdb-overview-entity-get-number-internal'.
2689         (elmo-msgdb-clear-index): Ditto.
2690         (elmo-msgdb-append-entity): Ditto;
2691         Use `elmo-msgdb-overview-entity-get-id-internal'.
2692
2693         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
2694         elmo-msgdb-overview-entity-set-number,
2695         elmo-msgdb-overview-entity-get-references,
2696         elmo-msgdb-overview-entity-set-references,
2697         elmo-msgdb-overview-entity-get-from-no-decode,
2698         elmo-msgdb-overview-entity-get-from,
2699         elmo-msgdb-overview-entity-set-from,
2700         elmo-msgdb-overview-entity-get-subject,
2701         elmo-msgdb-overview-entity-get-subject-no-decode,
2702         elmo-msgdb-overview-entity-set-subject,
2703         elmo-msgdb-overview-entity-get-date,
2704         elmo-msgdb-overview-entity-set-date,
2705         elmo-msgdb-overview-entity-get-to,
2706         elmo-msgdb-overview-entity-get-cc,
2707         elmo-msgdb-overview-entity-get-size,
2708         elmo-msgdb-overview-entity-set-size,
2709         elmo-msgdb-overview-entity-get-extra,
2710         elmo-msgdb-overview-entity-set-extra,
2711         elmo-msgdb-overview-entity-get-extra-field,
2712         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
2713         and rewrote for backward compatibility.
2714
2715 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2716
2717         * elmo.el (elmo-message-entity-number,
2718         elmo-message-entity-set-number,
2719         elmo-message-entity-field,
2720         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
2721
2722         * elmo-msgdb.el (elmo-message-entity-number,
2723         elmo-message-entity-set-number,
2724         elmo-message-entity-field,
2725         elmo-message-entity-set-field): Moved from elmo.el.
2726
2727 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2728
2729         * elmo.el (toplevel): Changed definition orders.
2730
2731 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2732
2733         * modb.el (elmo-msgdb-search): New API .
2734         (elmo-msgdb-match-condition): Ditto.
2735
2736         * modb-standard.el (elmo-msgdb-search): Define.
2737
2738         * modb-legacy.el (elmo-msgdb-search): Ditto.
2739
2740         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
2741         from elmo-msgdb-match-condition-internal.
2742
2743         * elmo.el (elmo-folder-search-fast): Abolish.
2744         (elmo-folder-search): Use elmo-msgdb-search and
2745         elmo-with-progress-display.
2746
2747         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
2748         as msgdb API.
2749
2750         * elmo.el (elmo-folder): Remove slot message-modified and
2751         flag-modified.
2752         (elmo-folder-set-message-modified): Abolish.
2753         (elmo-generic-folder-commit): Follow the change above.
2754         (elmo-folder-synchronize): Ditto.
2755
2756         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
2757
2758         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2759
2760         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
2761
2762 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2763
2764         * modb-standard.el (modb-standard-make-message-entity,
2765         elmo-msgdb-make-message-entity,
2766         elmo-msgdb-create-message-entity-from-buffer,
2767         elmo-msgdb-message-entity-number,
2768         elmo-msgdb-message-entity-set-number,
2769         elmo-msgdb-message-entity-field,
2770         elmo-msgdb-message-entity-set-field,
2771         elmo-msgdb-copy-message-entity,
2772         elmo-msgdb-match-condition-internal): Remove.
2773
2774         * modb-entity.el: New file (again).
2775
2776         * modb.el (toplevel): Require modb-entity.
2777         (elmo-msgdb-message-entity-handler): New method.
2778
2779         * modb-standard.el (modb-standard-entity-id): Use
2780         elmo-message-entity-handler.
2781         (modb-standard-load-entity): Ditto.
2782         (elmo-msgdb-append-entity): Ditto.
2783         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2784
2785         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
2786         elmo-msgdb-decoded-cache-hashtb,
2787         (modb-legacy-make-message-entity,
2788         elmo-msgdb-make-message-entity,
2789         elmo-msgdb-create-message-entity-from-buffer,
2790         elmo-msgdb-message-entity-number,
2791         elmo-msgdb-message-entity-set-number,
2792         elmo-msgdb-message-entity-field,
2793         elmo-msgdb-message-entity-set-field,
2794         elmo-msgdb-copy-message-entity,
2795         elmo-msgdb-match-condition-internal,
2796         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
2797
2798         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
2799         (elmo-message-entity-set-number): Ditto.
2800         (elmo-message-entity-field): Ditto.
2801         (elmo-message-entity-set-field): Ditto.
2802
2803         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
2804
2805         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2806
2807         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
2808
2809         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
2810         (elmo-nntp-msgdb-create-message): Ditto.
2811
2812         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
2813         (elmo-folder-msgdb-create): Add unread flag.
2814
2815         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2816
2817         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
2818
2819         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
2820
2821         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2822
2823         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
2824         elmo-msgdb-messge-entity-handler.
2825         * elmo-version.el (elmo-version): Up to 2.11.17.
2826
2827 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2828
2829         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
2830         change.
2831
2832 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
2833
2834         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
2835
2836         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
2837         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
2838         (elmo-msgdb-flag-table): Ditto.
2839         (elmo-msgdb-sort-by-date): Ditto.
2840
2841         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
2842
2843         * modb-standard.el (toplevel): Require mime.
2844         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
2845         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
2846         elmo-msgdb-message-entity-number.
2847         (elmo-msgdb-append-entity): Ditto.
2848         (elmo-msgdb-create-message-entity-from-file): Remove.
2849         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
2850         corresponds to the entity.
2851         (elmo-msgdb-message-entity-number): Do nothing currently.
2852         (elmo-msgdb-message-entity-field): Ditto.
2853         (elmo-msgdb-message-entity-set-field): Ditto.
2854         (elmo-msgdb-copy-message-entity): Ditto.
2855         (elmo-msgdb-match-condition-internal): Ditto.
2856
2857         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
2858         elmo-util.el.
2859         (elmo-msgdb-create-message-entity-from-file): Remove.
2860
2861         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
2862         modb-legacy.el.
2863         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
2864
2865         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
2866
2867 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2868
2869         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
2870         (elmo-msgdb-message-entity-field): Ditto.
2871         (elmo-msgdb-message-entity-number): Ditto.
2872
2873 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2874
2875         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
2876         Fixed how to set extra field into entity.
2877         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2878         symbol.
2879
2880         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
2881         Fixed how to set extra field into entity.
2882         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
2883         symbol.
2884
2885 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
2886
2887         * modb.el (elmo-message-entity-db): New function.
2888         (elmo-msgdb-make-message-entity): New API.
2889         (elmo-msgdb-message-entity-number): Ditto.
2890         (elmo-msgdb-message-entity-set-number): Ditto.
2891         (elmo-msgdb-message-entity-field): Ditto.
2892         (elmo-msgdb-message-entity-set-field): Ditto.
2893         (elmo-msgdb-copy-message-entity): Ditto.
2894         (elmo-msgdb-create-message-entity-from-file): Ditto.
2895         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2896         (elmo-msgdb-match-condition-internal): Ditto.
2897
2898         * modb-standard.el (modb-legacy): Require modb-legacy.
2899         (modb-standard-make-message-entity): New inline function.
2900         (elmo-msgdb-make-message-entity): Define.
2901         (elmo-msgdb-create-message-entity-from-file): Ditto.
2902         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2903         (elmo-msgdb-message-entity-field): Ditto.
2904         (elmo-msgdb-message-entity-set-field): Ditto.
2905         (elmo-msgdb-copy-message-entity): Ditto.
2906         (elmo-msgdb-match-condition-internal): Ditto.
2907
2908         * modb-legacy.el: Don't require modb-entity.
2909         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
2910         (elmo-msgdb-match-condition-primitive): Ditto.
2911         (elmo-msgdb-get-decoded-cache): Ditto.
2912         (elmo-msgdb-overview-entity-get-id): Ditto.
2913         (elmo-msgdb-overview-entity-get-number): Ditto.
2914         (elmo-msgdb-overview-entity-set-number): Ditto.
2915         (elmo-msgdb-overview-entity-get-references): Ditto.
2916         (elmo-msgdb-overview-entity-set-references): Ditto.
2917         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
2918         (elmo-msgdb-overview-entity-get-from): Ditto.
2919         (elmo-msgdb-overview-entity-set-from): Ditto.
2920         (elmo-msgdb-overview-entity-get-subject): Ditto.
2921         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
2922         (elmo-msgdb-overview-entity-set-subject): Ditto.
2923         (elmo-msgdb-overview-entity-get-date): Ditto.
2924         (elmo-msgdb-overview-entity-set-date): Ditto.
2925         (elmo-msgdb-overview-entity-get-to): Ditto.
2926         (elmo-msgdb-overview-entity-get-cc): Ditto.
2927         (elmo-msgdb-overview-entity-get-size): Ditto.
2928         (elmo-msgdb-overview-entity-set-size): Ditto.
2929         (elmo-msgdb-overview-entity-get-extra): Ditto.
2930         (elmo-msgdb-overview-entity-set-extra): Ditto.
2931         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
2932         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2933         (elmo-msgdb-number-load): Ditto.
2934         (elmo-msgdb-overview-load): Ditto.
2935         (elmo-msgdb-mark-load): Ditto.
2936         (elmo-msgdb-number-save): Ditto.
2937         (elmo-msgdb-mark-save): Ditto.
2938         (elmo-msgdb-overview-save): Ditto.
2939         (modb-legacy-make-message-entity): New inline function.
2940         (elmo-msgdb-insert-file-header): Ditto.
2941         (elmo-msgdb-make-message-entity): Define.
2942         (elmo-msgdb-create-message-entity-from-file): Ditto.
2943         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
2944         (elmo-msgdb-message-entity-number): Ditto.
2945         (elmo-msgdb-message-entity-set-number): Ditto.
2946         (elmo-msgdb-message-entity-field): Ditto.
2947         (elmo-msgdb-message-entity-set-field): Ditto.
2948         (elmo-msgdb-copy-message-entity): Ditto.
2949         (elmo-msgdb-match-condition-internal): Ditto.
2950
2951         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
2952         (elmo-message-copy-entity): Rewrite.
2953         (elmo-message-entity-number): Ditto.
2954         (elmo-message-entity-set-number): Ditto.
2955         (elmo-message-entity-field): Use elmo-message-entity-db.
2956         (elmo-message-entity-set-field): Ditto.
2957         (elmo-message-field): Rewrite.
2958
2959         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
2960         elmo-msgdb.el
2961         (elmo-msgdb-get-message-id-from-buffer): Ditto.
2962
2963         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2964         elmo-message-entity-field.
2965         (elmo-shimbun-folder-shimbun-header): Ditto.
2966         (elmo-shimbun-entity-to-header): Ditto.
2967         (elmo-folder-msgdb-create): Ditto.
2968         (elmo-shimbun-msgdb-create-entity): Ditto;
2969         Use elmo-msgdb-create-message-entity-from-buffer.
2970         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
2971         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
2972
2973         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
2974         elmo-msgdb-create-message-entity-from-file and 
2975         elmo-message-entity-field.
2976
2977         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2978         elmo-message-entity-number.
2979         (elmo-pop3-msgdb-create-message): Use
2980         elmo-msgdb-create-message-entity-from-buffer,
2981         elmo-message-entity-set-field, elmo-message-entity-number and
2982         elmo-message-entity-set-number.
2983
2984         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
2985         the API change in elmo-msgdb-make-message-entity.
2986         (elmo-nntp-msgdb-create-message): Use
2987         elmo-msgdb-create-message-entity-from-buffer.
2988
2989         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
2990         elmo-message-entity-field and
2991         elmo-msgdb-create-message-entity-from-file.
2992
2993         * elmo-msgdb.el (toplevel): Don't require modb-entity.
2994         (elmo-msgdb-get-field): Abolish.
2995         (elmo-msgdb-get-number): Rewrite.
2996         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
2997         (elmo-msgdb-flag-table): Ditto.
2998         (elmo-msgdb-get-last-message-id,
2999         elmo-msgdb-number-load, elmo-msgdb-overview-load,
3000         elmo-msgdb-mark-load, elmo-msgdb-number-save,
3001         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
3002         (elmo-msgdb-create-overview-from-buffer,
3003         elmo-msgdb-overview-get-parent-entity): Abolish.
3004
3005         * elmo-mime.el (elmo-mime-display-as-is): Use
3006         elmo-message-entity-field.
3007
3008         * elmo-map.el (elmo-folder-pack-numbers): Use
3009         elmo-message-entity-set-number.
3010
3011         * elmo-maildir.el (elmo-folder-msgdb-create): 
3012         elmo-msgdb-create-message-entity-from-file instead of
3013         elmo-msgdb-create-overview-entity-from-file.
3014
3015         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
3016         msgdb.
3017         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
3018         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
3019
3020         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
3021         elmo-messge-entity-field and elmo-message-entity-number.
3022         (elmo-imap4-fetch-callback-1): Call
3023         elmo-msgdb-create-message-entity-from-buffer instead of
3024         elmo-msgdb-create-overview-from-buffer. 
3025         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
3026         (elmo-find-fetch-strategy): Likewise.
3027
3028         * elmo-flag.el (elmo-folder-msgdb-create): Call 
3029         elmo-localdir-msgdb-create-entity with argument msgdb.
3030
3031         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
3032         and elmo-message-entity-set-number.
3033
3034         * elmo-cache.el (elmo-folder-msgdb-create): Use
3035         elmo-message-entity-field.
3036         (elmo-folder-msgdb-create): Call
3037         elmo-msgdb-create-message-entity-from-file instead of
3038         elmo-msgdb-create-overview-entity-from-file.
3039
3040         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
3041         argument msgdb; Call elmo-msgdb-create-message-from-buffer
3042         instead of elmo-msgdb-create-overview-from-buffer.
3043         (elmo-archive-msgdb-create-entity): Ditto.
3044         (elmo-archive-msgdb-create-as-numlist-subr1): Use
3045         elmo-message-entity-field.
3046         (elmo-archive-parse-mmdf): Ditto.
3047
3048         * modb-entity.el: Removed.
3049
3050         * elmo-version.el (elmo-version): Up to 2.11.16.
3051
3052 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
3053
3054         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
3055         `is-local'.
3056         (elmo-folder-flag-as-answered): Ditto.
3057
3058 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3059
3060         * modb-standard.el: New file.
3061
3062         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
3063         elmo-msgdb-convert-type is `sync'.
3064
3065         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
3066         (elmo-msgdb-convert-type): New user option.
3067
3068         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
3069         (elmo-load-msgdb): Auto detect saved type.
3070
3071         * elmo-version.el (elmo-version): Up to 2.11.15.
3072
3073 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
3074
3075         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
3076
3077         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
3078         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
3079         with argument `delete-if-none' when dst-folder is 'null.
3080
3081         * elmo-flag.el (elmo-folder-append-messages): Defined.
3082         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
3083
3084 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3085
3086         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
3087
3088 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3089
3090         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
3091         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
3092         (elmo-folder-commit): Ditto.
3093
3094 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
3095
3096         * elmo-flag.el: New file.
3097
3098         * elmo-mark.el: Removed.
3099
3100         * modb-legacy.el (modb-legacy-new-mark,
3101         modb-legacy-unread-uncached-mark,
3102         modb-legacy-unread-cached-mark,
3103         modb-legacy-read-uncached-mark,
3104         modb-legacy-answered-cached-mark,
3105         modb-legacy-answered-uncached-mark,
3106         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
3107         All other related portions are changed.
3108
3109         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
3110         (elmo-folder-list-messages-with-global-mark): Abolish.
3111         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
3112         (elmo-folder-flag-as-important): Ditto.
3113         (elmo-folder-unflag-read): Ditto.
3114         (elmo-folder-flag-as-read): Ditto.
3115         (elmo-folder-unflag-answered): Ditto.
3116         (elmo-folder-flag-as-answered): Ditto.
3117         (elmo-message-encache): Return the cache path.
3118         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
3119         (elmo-message-set-flag): Transitional implementation.
3120         (elmo-message-unset-flag): Ditto.
3121         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
3122         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
3123         (elmo-init): Call elmo-global-flag-initialize.
3124         (toplevel): Added autoload settings for elmo-flag.
3125
3126         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
3127
3128         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
3129         (elmo-file-cache-delete): Don't treat global-mark.
3130
3131         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3132
3133         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3134
3135         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
3136         `elmo-global-flags-set'.
3137
3138         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
3139         `flag'.
3140         (elmo-folder-unflag-read): Ditto.
3141         (elmo-folder-unflag-important): Ditto.
3142         (elmo-folder-flag-as-important): Ditto.
3143         (elmo-folder-unflag-answered): Ditto.
3144         (elmo-folder-flag-as-answered): Ditto.
3145
3146         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
3147         `elmo-global-flags-set'.
3148         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
3149
3150         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
3151
3152         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
3153         `flag'.
3154         (elmo-folder-flag-as-important): 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-multi.el (elmo-folder-list-importants): Don't call
3163         elmo-folder-list-messages-with-global-mark.
3164         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
3165         (elmo-folder-unflag-important): Ditto.
3166         (elmo-folder-flag-as-read): Ditto.
3167         (elmo-folder-unflag-read): Ditto.
3168         (elmo-folder-flag-as-answered): Ditto.
3169         (elmo-folder-unflag-answered): Ditto.
3170
3171         * elmo-msgdb.el (elmo-msgdb-new-mark,
3172         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
3173         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
3174         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
3175         (Moved to modb-legacy.el).
3176         (elmo-flag-table-get): Treat important flag too.
3177
3178         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
3179         `mark' to `flag'.
3180         (elmo-map-folder-flag-as-important): Ditto.
3181         (elmo-map-folder-unflag-read): Ditto.
3182         (elmo-map-folder-flag-as-read): Ditto.
3183         (elmo-map-folder-unflag-answered): Ditto.
3184         (elmo-map-folder-flag-as-answered): Ditto.
3185         (elmo-folder-unflag-important): Ditto.
3186         (elmo-folder-flag-as-important): Ditto.
3187         (elmo-folder-unflag-read): Ditto.
3188         (elmo-folder-flag-as-read): Ditto.
3189         (elmo-folder-unflag-answered): Ditto.
3190         (elmo-folder-flag-as-answered): Ditto.
3191
3192         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3193         (elmo-map-folder-flag-as-important): Renamed from `mark' to
3194         `flag'.
3195         (elmo-map-folder-unflag-important): Ditto.
3196         (elmo-map-folder-flag-as-read): Ditto.
3197         (elmo-map-folder-unflag-read): Ditto.
3198         (elmo-map-folder-flag-as-answered): Ditto.
3199         (elmo-map-folder-unflag-answered): Ditto.
3200
3201         * elmo-localdir.el (elmo-folder-msgdb-create): Call
3202         `elmo-global-flags-set'.
3203         (elmo-global-flags-set): Added autoload setting.
3204
3205         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
3206         `flag'.
3207
3208         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
3209         `elmo-msgdb-global-mark-set'.
3210         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
3211         Call `elmo-global-flags-set'.
3212         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
3213         `flag'.
3214         (elmo-folder-flag-as-important-plugged): Ditto.
3215         (elmo-folder-unflag-read-plugged): Ditto.
3216         (elmo-folder-flag-as-read-plugged): Ditto.
3217         (elmo-folder-unflag-answered-plugged): Ditto.
3218         (elmo-folder-flag-as-answered-plugged): Ditto.
3219         (elmo-global-flags-set): Added autoload setting.
3220
3221         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
3222         `flag'.
3223         (elmo-folder-unflag-read): Ditto.
3224         (elmo-folder-flag-as-important): Ditto.
3225         (elmo-folder-unflag-important): Ditto.
3226         (elmo-folder-flag-as-answered): Ditto.
3227         (elmo-folder-unflag-answered): Ditto.
3228
3229         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
3230         change of `mark'->`flag'.
3231         (elmo-dop-queue-method-name-alist): Ditto.
3232         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
3233         (elmo-folder-unflag-read-dop): Ditto.
3234         (elmo-folder-flag-as-important-dop): Ditto.
3235         (elmo-folder-unflag-important-dop): Ditto.
3236         (elmo-folder-flag-as-answered-dop): Ditto.
3237         (elmo-folder-unflag-answered-dop): Ditto.
3238
3239         * elmo-cache.el (elmo-folder-msgdb-create): Call
3240         `elmo-global-flags-set'.
3241
3242         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3243         Call `elmo-global-flags-set'.
3244         (elmo-archive-msgdb-create-as-numlist-subr2): Call
3245         elmo-archive-parse-mmdf with argument `folder'.
3246         (elmo-archive-parse-mmdf): Added argument `folder';
3247         Call `elmo-global-flags-set'.
3248
3249         * elmo-version.el (elmo-version): Up to 2.11.14.
3250
3251 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3252
3253         * modb.el (elmo-msgdb-length): Define.
3254
3255         * elmo.el (elmo-make-folder): Fixed.
3256         (elmo-generic-folder-append-messages): Follow the API change.
3257
3258         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
3259         API change.
3260
3261 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3262
3263         * modb.el: New file.
3264
3265         * modb-entity.el: Ditto.
3266
3267         * modb-legacy.el: Ditto.
3268
3269         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
3270         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
3271         of `elmo-msgdb-overview-get-entity'.
3272         (elmo-msgdb-get-field): Ditto.
3273         (elmo-msgdb-merge): Moved to `elmo.el'.
3274         (elmo-msgdb-length): Removed; redefine as modb method.
3275         (elmo-msgdb-change-mark): Abolish.
3276         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
3277         (elmo-msgdb-match-condition): Don't use mark.
3278         (elmo-msgdb-overview-get-entity): Abolish.
3279         Split modb part into `modb*.el'.
3280
3281         * elmo-vars.el (elmo-msgdb-default-type): New user option.
3282
3283         * elmo-shimbun.el (shimbun-mua-search-id): Use
3284         `elmo-msgdb-message-entity' instead of
3285         `elmo-msgdb-overview-get-entity'.
3286         (elmo-shimbun-folder-shimbun-header): Ditto.
3287         (elmo-shimbun-get-headers): Ditto.
3288         (elmo-shimbun-update-overview): Ditto.
3289
3290         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3291
3292         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3293
3294         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
3295         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
3296
3297         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
3298         `elmo-msgdb-mark-to-flags'.
3299
3300         * elmo-map.el (elmo-folder-pack-numbers): Don't use
3301         `elmo-msgdb-set-path'.
3302
3303         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
3304  
3305         * elmo-version.el (elmo-version): Up to 2.11.13.
3306
3307         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
3308
3309         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
3310         of mark.
3311
3312 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3313
3314         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
3315         mismatch.
3316
3317 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3318
3319         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
3320         instead of `elmo-msgdb-get-cached'.
3321         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
3322
3323         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
3324         (elmo-msgdb-set-cached): Ditto.
3325         (elmo-msgdb-set-flag): Rewrite.
3326         (elmo-msgdb-unset-flag): Ditto.
3327
3328         * elmo-msgdb.el: Rewrite with luna.
3329
3330         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
3331         (elmo-folder-msgdb): Follow the change above.
3332         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
3333         (elmo-folder-unmark-important): Follow the API change.
3334         (elmo-folder-mark-as-important): Ditto.
3335         (elmo-folder-unmark-read): Ditto.
3336         (elmo-folder-mark-as-read): Ditto.
3337         (elmo-folder-unmark-answered): Ditto.
3338         (elmo-folder-mark-as-answered): Ditto.
3339         (elmo-folder-clear): Likewise.
3340
3341         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
3342         instead of `elmo-msgdb-load' (renamed).
3343
3344         * elmo-version.el (elmo-version): Up to 2.11.12.
3345
3346 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3347
3348         * elmo.el (elmo-generic-folder-append-messages): Follow the API
3349         change.
3350         (elmo-message-mark): Abolish.
3351         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
3352         instead of `elmo-msgdb-change-mark'.
3353
3354         * elmo-pipe.el (elmo-message-mark): Abolish.
3355
3356         * elmo-multi.el (elmo-message-mark): Ditto.
3357
3358         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
3359         (elmo-msgdb-unread-uncached-mark): Ditto.
3360         (elmo-msgdb-unread-cached-mark): Ditto.
3361         (elmo-msgdb-read-uncached-mark): Ditto.
3362         (elmo-msgdb-answered-cached-mark): Ditto.
3363         (elmo-msgdb-answered-uncached-mark): Ditto.
3364         (elmo-msgdb-important-mark): Ditto.
3365         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
3366         `use-cache'.
3367         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
3368         `flags'.
3369         (elmo-flag-table-load): Changed flag to list of flag.
3370         (elmo-flag-table-set): If flags is nil, set read flag.
3371         (elmo-flag-table-get): Return derived flags from global mark,
3372         cache status and saved flags.
3373         (elmo-msgdb-flag-table): Follow the change above.
3374         (elmo-msgdb-out-of-date-messages): New function.
3375
3376         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
3377
3378         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3379
3380         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
3381
3382         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3383         (elmo-nntp-msgdb-create-message): Ditto.
3384
3385         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3386
3387         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
3388         independent.
3389         (elmo-folder-msgdb-create): Follow the API change.
3390
3391         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3392         (elmo-folder-append-messages): Ditto.
3393
3394         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3395         (elmo-folder-append-buffer): Ditto.
3396
3397         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3398
3399         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3400
3401         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3402         (elmo-archive-parse-mmdf): Ditto.
3403
3404         * elmo-version.el (elmo-version): Up to 2.11.11.
3405
3406 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3407
3408         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
3409         `elmo-msgdb-mark'.
3410
3411         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
3412
3413         * elmo-pipe.el (elmo-message-flags): Defined.
3414
3415         * elmo-multi.el (elmo-message-flags): Ditto.
3416
3417 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3418
3419         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
3420         `elmo-msgdb-delete-msgs'.
3421
3422         * elmo.el (elmo-folder-count-flags): Don't use
3423         `elmo-msgdb-get-mark-alist'.
3424         (elmo-folder-detach-messages): Follow the API change.
3425
3426         * elmo.el (elmo-folder-list-messages): Append killed messages into
3427         result if `visible-only' is nil.
3428
3429         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
3430         canceled messages.
3431         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
3432         (elmo-folder-update-number): Likewise.
3433
3434         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
3435         (elmo-pop3-sort-msgdb-by-original-number): Use
3436         `elmo-msgdb-sort-entities'.
3437
3438         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
3439         (elmo-msgdb-sort-by-date): Use it.
3440         (elmo-msgdb-overview-sort-by-date): Abolish.
3441
3442         * elmo-dop.el (elmo-folder-status-dop): Fixed.
3443
3444         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
3445         (elmo-msgdb-flags): New function.
3446         (elmo-msgdb-merge): Use elmo-msgdb-append.
3447
3448         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
3449         change.
3450
3451         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
3452
3453         * elmo-dop.el (elmo-folder-status-dop): Use
3454         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
3455
3456 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3457
3458         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
3459
3460         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
3461
3462         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
3463
3464         * elmo-util.el (elmo-with-progress-display): New macro.
3465
3466         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
3467
3468 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3469
3470         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
3471         `elmo-folder-list-message-entities' instead of
3472         `elmo-msgdb-get-overview'.
3473         (elmo-map-folder-list-message-locations): Ditto.
3474
3475         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
3476         methods instead of treat directly).
3477         (elmo-msgdb-clear): Ditto.
3478         (elmo-msgdb-delete-msgs): Ditto.
3479         (elmo-msgdb-sort-by-date): Ditto.
3480
3481         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
3482         local variables.
3483         (elmo-nntp-folder-msgdb-create): Follow the API change.
3484
3485         * elmo-version.el (elmo-version): Up to 2.11.10.
3486
3487 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3488
3489         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
3490         (elmo-msgdb-flags-to-mark): Ditto.
3491         (elmo-msgdb-append-entity): Ditto.
3492
3493         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
3494         Use `elmo-msgdb-append-entity' instead of construct msgdb.
3495         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3496         (elmo-archive-parse-mmdf): Ditto.
3497
3498         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3499
3500         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
3501
3502         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
3503
3504         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3505
3506         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
3507
3508         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3509
3510         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3511
3512         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3513
3514         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
3515         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
3516         to empty msgdb.
3517
3518         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
3519         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
3520         instead of directly construction.
3521         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
3522         instead of construct msgdb.
3523
3524         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
3525         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
3526         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
3527         instead of construct msgdb.
3528
3529 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3530
3531         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
3532         when field is from or subject.
3533
3534 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
3535
3536         * elmo-multi.el (elmo-message-entity-parent): Define.
3537         (elmo-folder-search): Rewrite.
3538
3539 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3540
3541         * elmo-multi.el (elmo-message-cached-p): Define.
3542
3543         * elmo.el (elmo-message-cached-p): New method.
3544         (elmo-message-accessible-p): Use it instead of msgdb API directly.
3545         (elmo-message-flags): New method.
3546         (elmo-message-flagged-p): New function.
3547
3548         * elmo-version.el (elmo-version): Up to 2.11.9.
3549
3550 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3551
3552         * elmo-version.el (elmo-version): Up to 2.11.8.
3553
3554         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
3555
3556         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
3557
3558 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
3559
3560         * elmo.el (elmo-folder-detach-messages): Undo last change.
3561
3562 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
3563
3564         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
3565
3566         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
3567         only when src folder type is pop3.
3568
3569 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
3570
3571         * elmo-msgdb.el (elmo-msgdb-make-index): Use
3572         elmo-msgdb-overview-entity-get-number instead of
3573         elmo-message-entity-number.
3574
3575 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3576
3577         * elmo-version.el (elmo-version): Up to 2.11.7.
3578
3579 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
3580
3581         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
3582         function.
3583
3584         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
3585         (elmo-msgdb-merge): New function.
3586         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
3587         (elmo-msgdb-make-index): Rewrite.
3588
3589         * elmo-version.el (elmo-version): Up to 2.11.6.
3590
3591         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
3592         use it as a the path for loading message entities.
3593
3594         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
3595
3596 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
3597
3598         * elmo-filter.el (elmo-folder-set-message-modified): Set 
3599         message-modified slot of itself if it does not require target msgdb.
3600
3601         * elmo-mime.el (elmo-mime-message-display): Display message entirely
3602         if folder length is zero.
3603         (elmo-mime-display-as-is): Ditto.
3604
3605         * elmo-filter.el (elmo-folder-set-message-modified): Define.
3606
3607         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
3608
3609 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3610
3611         * elmo.el (elmo-folder-set-message-modified): New method.
3612         (elmo-generic-folder-commit): Use it.
3613         (elmo-folder-synchronize): Ditto.
3614
3615         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
3616         (elmo-folder-commit): Remove duplicate definition.
3617
3618 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3619
3620         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
3621
3622 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3623
3624         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
3625         (elmo-strict-folder-diff): Ditto.
3626         (elmo-folder-set-info-max-by-numdb): Simplify.
3627
3628         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
3629         elmo-msgdb-list-messages.
3630
3631         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
3632         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
3633
3634 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
3635
3636         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
3637         visible-only is non-nil.
3638         (elmo-folder-confirm-appends): Changed message.
3639         (elmo-folder-synchronize): Added argument disable-killed.
3640
3641         * elmo-multi.el (elmo-folder-synchronize): Added argument
3642         disable-killed.
3643
3644         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
3645
3646         * elmo-version.el (elmo-version): Up to 2.11.5.
3647
3648         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
3649         elmo-list-filter.
3650
3651         * elmo-util.el (elmo-list-filter): Simplify.
3652
3653         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
3654         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
3655         (elmo-generic-folder-diff): Abolish argument.
3656         (elmo-msgdb-load): Don't use number-alist.
3657
3658         * elmo-filter.el (elmo-folder-diff): Abolish argument.
3659
3660         * elmo-pipe.el (elmo-folder-diff): Ditto.
3661
3662         * elmo-nmz.el (elmo-folder-diff): Ditto.
3663
3664         * elmo-net.el (elmo-folder-diff): Ditto.
3665
3666         * elmo-maildir.el (elmo-folder-diff): Ditto.
3667
3668         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
3669
3670         * elmo-multi.el (elmo-folder-diff): Ditto
3671         (elmo-multi-folder-diff): Rewrite.
3672
3673 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3674
3675         * elmo-pipe.el (elmo-folder-msgdb): Define.
3676
3677 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
3678
3679         * elmo.el (elmo-message-set-cached): Define as a method.
3680
3681         * elmo-pipe.el (elmo-message-set-cached): Define.
3682         (elmo-find-fetch-strategy): Ditto.
3683
3684         * elmo-multi.el (elmo-message-set-cached): Define.
3685         (elmo-find-fetch-strategy): Rewrite.
3686
3687         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
3688
3689         * elmo-pipe.el (elmo-message-folder): Fixed definition.
3690
3691 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
3692
3693         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
3694         instead of number-alist.
3695
3696         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
3697         mark nor message-id when msgdb of source folder is not loaded.
3698
3699         * elmo.el (elmo-generic-folder-append-messages): Ditto.
3700
3701         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
3702
3703 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
3704
3705         * elmo.el (elmo-folder-length): Don't require msgdb.
3706
3707 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
3708
3709         * elmo.el (elmo-message-mark): Cause an error when empty folder.
3710         (elmo-message-field): Ditto.
3711
3712         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
3713         (elmo-map-folder-list-message-locations): Setup `answered-locations'
3714         slot.
3715         (elmo-map-folder-list-answereds): Define.
3716         (elmo-maildir-list-location): Treat 'R' info.
3717         (elmo-folder-msgdb-create): Treat flag-table.
3718         (elmo-folder-append-messages): Save flag-table.
3719
3720 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
3721
3722         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
3723         Use SELECT when elmo-imap4-use-select-to-update-status is t.
3724
3725 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3726
3727         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
3728
3729         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
3730         'read when mark is null.
3731
3732 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
3733
3734         * elmo-version.el (elmo-version): Up to 2.11.4.
3735
3736 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3737
3738         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
3739         (elmo-folder-mark-as-answered): Ditto.
3740
3741 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
3742
3743         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
3744         (elmo-pop3-get-session): Make msgdb directory after session.
3745         (elmo-folder-exists-p): Check exactly at the first time even when the
3746         elmo-pop3-exists-exactly is nil.
3747
3748         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
3749         (elmo-folder-list-messages): Define instead of
3750         elmo-folder-list-messages-internal.
3751         (elmo-folder-check): Check destination folder.
3752         (elmo-folder-synchronize): Drain the pipe.
3753
3754         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
3755         when msgdb is not loaded.
3756
3757         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
3758
3759         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
3760         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
3761         messages.
3762
3763         * elmo.el (elmo-folder-kill-messages-before): New function.
3764         (elmo-folder-kill-messages): Ditto.
3765         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
3766
3767         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
3768         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
3769         killed not by synchronize (e.g. scoring).
3770
3771 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3772
3773         * elmo.el (elmo-folder-search-fast): Return t if condition is not
3774         treated.
3775         (elmo-folder-search): Follow the change above.
3776
3777         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
3778         into the candidates of search field.
3779
3780 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
3781
3782         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
3783         (elmo-msgdb-unset-flag): Ditto.
3784
3785         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
3786
3787 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
3788
3789         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
3790         (elmo-folder-commit): Define.
3791         (elmo-folder-synchronize): Ditto.
3792         (elmo-folder-list-flagged): Ditto.
3793         (elmo-folder-commit): Ditto.
3794         (elmo-folder-length): Ditto.
3795         (elmo-folder-count-flags): Ditto.
3796         (elmo-message-mark): Ditto.
3797         (elmo-message-field): Ditto.
3798         (elmo-message-entity): Ditto.
3799         (elmo-message-folder): Ditto.
3800
3801 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
3802
3803         * elmo.el (elmo-message-field): Define as a method.
3804
3805         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
3806         (elmo-message-field): Define.
3807
3808         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
3809         (elmo-folder-list-importants): Ditto.
3810         (elmo-folder-list-answereds): Ditto.
3811
3812         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
3813         qualifier.
3814         (elmo-folder-mark-as-read): Ditto.
3815         (elmo-folder-unmark-read): Ditto.
3816         (elmo-folder-mark-as-answered): Ditto.
3817         (elmo-folder-unmark-answered): Ditto.
3818         (elmo-folder-list-flagged): Define.
3819         (elmo-folder-commit): Ditto.
3820         (elmo-folder-length): Ditto.
3821         (elmo-folder-count-flags): Ditto.
3822
3823 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3824
3825         * elmo.el (elmo-folder-detach-messages): New method.
3826         (elmo-folder-move-messages): Use it.
3827         (elmo-folder-synchronize): Ditto.
3828
3829         * elmo-multi.el (elmo-folder-detach-messages): Define.
3830
3831         * elmo.el (elmo-message-copy-entity): New function.
3832         (elmo-message-entity-set-number): Ditto.
3833         (elmo-message-mark): Define as method.
3834
3835         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
3836         (elmo-folder-synchronize): Return 0 (Should be reconsider).
3837         (elmo-message-entity): Fixed last change.
3838         (elmo-message-mark): Define.
3839         (elmo-folder-msgdb-create): Abolish.
3840         (elmo-multi-folder-append-msgdb): Ditto.
3841         (elmo-multi-folder-diff): Fixed.
3842         (elmo-multi-split-number-alist): Removed.
3843         (elmo-multi-split-mark-alist): Removed.
3844         (elmo-folder-list-messages): Define.
3845         (elmo-folder-list-messages-internal): Removed.
3846
3847         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
3848         local file messages.
3849         (elmo-folder-msgdb-create): Fixed read mark.
3850
3851 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3852
3853         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
3854         if mark is nil.
3855
3856 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
3857
3858         * elmo.el (elmo-folder-list-message-entities): Define as inline
3859         function.
3860         (elmo-folder-messages): Abolish.
3861
3862         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
3863         folder.
3864         (elmo-folder-synchronize): Define.
3865         (elmo-message-entity): Define.
3866
3867 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
3868
3869         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
3870         elmo-imap4-session-select-mailbox.
3871
3872         * elmo.el (elmo-folder-move-messages): Don't display any message.
3873
3874         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
3875         parsing.
3876         (elmo-imap4-session-check): Don't wait CHECK response.
3877         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
3878
3879 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
3880
3881         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
3882
3883 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3884
3885         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
3886         API.
3887         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
3888
3889
3890         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
3891         (elmo-folder-list-message-entities): Added argument in-msgdb and
3892         numbers.
3893         (elmo-folder-synchronize): Define as a method.
3894
3895         * elmo-nntp.el (elmo-folder-initialize): Don't use
3896         elmo-nntp-default-user if zero-length username is specified
3897         explicitly.
3898
3899 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
3900
3901         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
3902         server name in case with username.
3903         (XXX: this is ad-hoc fix against username includes "@", it
3904         should be solved fundamentally)
3905
3906 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
3907
3908         * elmo-nntp.el (elmo-nntp-debug): New function.
3909         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
3910         (elmo-network-authenticate-session): Hide auth-info from the log.
3911
3912         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
3913         user name if it is equal to elmo-nntp-default-user.
3914
3915 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
3916
3917         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
3918         instead of shimbun-server-internal;
3919         Use shimbun-current-group instead of shimbun-current-group-internal.
3920         (elmo-folder-plugged-p): Use shimbun-server instead of
3921         shimbun-server-internal.
3922         (elmo-folder-set-plugged): Ditto.
3923         (elmo-net-port-info): Ditto.
3924         (elmo-folder-check): Ditto.
3925         (elmo-folder-expand-msgdb-path): Ditto.
3926         (elmo-folder-list-subfolders): Ditto.
3927
3928 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
3929
3930         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
3931         Convert field-name to lower case.
3932         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
3933
3934 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
3935
3936         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
3937         `message' and `error' take format string.
3938
3939 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3940
3941         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
3942
3943 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3944
3945         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
3946         recursive call (can't byte compile on emacs 20.7).
3947
3948 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
3949
3950         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
3951         (elmo-folder-list-message-entities): New API.
3952         (elmo-message-entity): Ditto.
3953         (elmo-message-entity-parent): Ditto.
3954         (elmo-folder-do-each-message-entity): Ditto.
3955         (elmo-message-entity-number): Ditto.
3956         (elmo-message-entity-field): Ditto.
3957         (elmo-message-entity-set-field): Ditto.
3958         (elmo-folder-count-flags): Ditto.
3959         (elmo-folder-length): Ditto.
3960
3961         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
3962         not.
3963
3964         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
3965         (elmo-msgdb-count-marks): Abolish.
3966         (elmo-msgdb-make-entity): Ditto.
3967         (elmo-msgdb-do-each-entity): Ditto.
3968         (elmo-msgdb-message-entity): New inline function.
3969         (elmo-msgdb-message-entity-field): Ditto.
3970         (elmo-msgdb-message-entity-set-field): Ditto.
3971         (elmo-msgdb-make-message-entity): New function.
3972
3973 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
3974
3975         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
3976         to flag. (All other related portions are changed.)
3977         (elmo-folder-msgdb-create): Likewise.
3978         (elmo-generic-folder-append-messages): Use flag-table instead of
3979         seen-list.
3980         (elmo-folder-move-messages): Removed redundant process.
3981         (elmo-folder-synchronize): Likewise.
3982
3983         * elmo-msgdb.el (elmo-flag-table-get): New function.
3984         (elmo-flag-table-save): Fixed.
3985         (elmo-msgdb-length): New inline function.
3986         (elmo-msgdb-flag-table): New function.
3987         (elmo-msgdb-mark): Add optional argument new.
3988         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
3989         (elmo-msgdb-seen-list): Ditto.
3990         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3991
3992
3993 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
3994
3995         * elmo.el (elmo-message-set-mark): Abolish.
3996         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
3997         (All related portions are changed.)
3998
3999         * elmo-msgdb.el (toplevel): Added comment.
4000         (elmo-load-msgdb): Added 4th element `path'.
4001         (elmo-msgdb-append): Follow the change above.
4002         (elmo-msgdb-clear): Ditto.
4003         (elmo-msgdb-delete-msgs): Ditto.
4004         (elmo-msgdb-get-path): New inline function.
4005         (elmo-msgdb-set-path): Ditto.
4006         (elmo-flag-table-filename): New variable.
4007         (elmo-flag-table-load): New function.
4008         (elmo-flag-table-set): Ditto.
4009         (elmo-flag-table-save): Ditto.
4010         (elmo-msgdb-get-field-value): Abolish.
4011         (elmo-msgdb-overview-get-entity-by-number): Ditto.
4012
4013 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
4014
4015         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
4016         the folder has been deleted successfully.
4017         * elmo-imap4.el (elmo-folder-delete): Ditto.
4018         * elmo-archive.el (elmo-folder-delete): Ditto.
4019         * elmo-localdir.el (elmo-folder-delete): Ditto.
4020         * elmo-maildir.el (elmo-folder-delete): Ditto.
4021
4022 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
4023
4024         * elmo-util.el (elmo-string-member-ignore-case): New function.
4025         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
4026         (elmo-imap4-fetch-callback-1-subr): Likewise.
4027
4028 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
4029
4030         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
4031         the case of the name attribute "\Noselect".
4032
4033 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4034
4035         * elmo.el (elmo-folder-rename-internal): New method to cause error.
4036
4037         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
4038         flist, is not always a member of onum-alist.
4039
4040 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4041
4042         * elmo-version.el (elmo-version): Up to 2.11.3.
4043
4044 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4045
4046         * elmo-maildir.el (elmo-folder-rename-internal): New method,
4047         copied from localdir's one.
4048
4049         * elmo-pipe.el (elmo-folder-rename): New method, rename
4050         destination folder with leaving source folder as it is.
4051
4052 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
4053
4054         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
4055         replace-regexp.
4056
4057 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4058
4059         * elmo-version.el (elmo-version): Up to 2.11.2.
4060
4061 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4062
4063         * elmo-shimbun.el (elmo-folder-initialize): Do not call
4064         shimbun-open in case of "@".
4065         (elmo-folder-open-internal): Cope with shimbun = nil case.
4066         (elmo-folder-plugged-p): Ditto.
4067         (elmo-folder-list-subfolders): Make list for "@/" group.
4068
4069 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4070
4071         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
4072         mailbox (e.g. for %~/something).
4073
4074 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4075
4076         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
4077         Replace nested conditional with guard clauses.
4078
4079 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
4080
4081         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
4082         error [wl:11327].
4083
4084         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
4085         print-depth.
4086
4087 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4088
4089         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
4090         Replace nested conditional with guard clauses.
4091
4092 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4093
4094         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
4095         (elmo-passwd-alist-save): Ditto.
4096         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
4097
4098 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4099
4100         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
4101         dir-name only if it is absolute path.
4102         (TODO: distinguish +/something and +something)
4103
4104 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4105
4106         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
4107         path for "+~/something".
4108
4109 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4110
4111         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
4112         as non-directory, cause error before rename-file.
4113         * elmo-archive.el (elmo-folder-rename-internal): Create directory
4114         apropriately, mimic localdir's one.
4115         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
4116
4117 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
4118
4119         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
4120
4121 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
4122
4123         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
4124
4125         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
4126         
4127         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
4128         is included in the global-mark or not.
4129
4130 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4131
4132         * utf7.el (toplevel): Avoid error when the function
4133         find-coding-system does not exist.
4134
4135 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4136
4137         * elmo-nntp.el (elmo-folder-search): Body search is to search from
4138         cache even if the folder is plugged.
4139         (elmo-nntp-search-primitive): Do nothing when body search is
4140         invoked (although it is not used by the change above).
4141         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
4142
4143 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
4144
4145         * elmo-version.el (elmo-version): Up to 2.11.1.
4146
4147 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
4148
4149         * elmo-archive.el: Specify charset.
4150
4151 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
4152
4153         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
4154         process buffer lives or not.
4155
4156         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
4157         while flushing queues (It causes infinite loop).
4158
4159 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
4160
4161         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
4162
4163 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
4164
4165         * utf7.el (toplevel): Check the ucs features dynamically.
4166         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
4167
4168         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
4169         folder is creatabe or not if it already exists.
4170
4171 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
4172
4173         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
4174
4175         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
4176
4177         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
4178         (elmo-imap4-read-response): Take care of garbage response.
4179
4180 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4181
4182         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
4183         just return nil instead of error.
4184
4185 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4186
4187         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
4188         search-key is "body".
4189
4190 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4191
4192         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
4193         of elmo-string-matched-assoc to use match-data.
4194         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
4195
4196 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4197
4198         * elmo-split.el (elmo-split->): New function.
4199         (elmo-split-<): Ditto.
4200
4201 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
4202
4203         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
4204         workaround for invalid message-id.
4205
4206 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
4207
4208         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
4209         return normal pop3 session or pop3 biff session.
4210
4211 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4212
4213         * elmo-maildir.el (elmo-maildir-update-current): Don't append
4214         info part to the cur files when the new files already have it.
4215         (Adviced by Jared Rhine <jared@wordzoo.com>)
4216
4217 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4218
4219         * elmo-split.el (elmo-split-default-action): New variable.
4220         (elmo-split-subr): Use it if all other conditions are passed.
4221         Extend `fname' and rename it as `action'. (implemented
4222         Teranishi-san's idea in [wl:10800])
4223
4224 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4225
4226         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
4227         * elmo-util.el: Ditto.
4228
4229 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
4230
4231         * elmo.el (elmo-message-accessible-p): Renamed from
4232         elmo-message-cached-p and rewritten.
4233
4234 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
4235
4236         * elmo.el (elmo-folder-list-flagged): New generic function.
4237         (elmo-folder-list-importants): New implementation.
4238         (elmo-folder-list-answereds): Ditto.
4239         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
4240         Added 'digest'.
4241         (elmo-message-cached-p): New function.
4242         (elmo-message-set-flag): Ditto (no content).
4243         (elmo-message-unset-flag): Ditto.
4244         (elmo-folder-list-messages-mark-match): Abolish.
4245
4246         * elmo-util.el (elmo-regexp-opt): New function.
4247
4248         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
4249         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
4250         Added 'digest'.
4251         (elmo-msgdb-list-flagged): New function.
4252
4253         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
4254         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
4255         Added 'digest'.
4256
4257         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
4258
4259 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
4260
4261         * elmo-version.el (elmo-version): Up to 2.11.0.
4262
4263 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4264
4265         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
4266         `elmo-file-cache-exists-p'; use proper mark that depends on
4267         `use-cache'.
4268         (elmo-msgdb-unset-flag): Ditto.
4269         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
4270
4271         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
4272         with 4th argument `use-cache'.
4273
4274 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
4275
4276         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
4277         (elmo-folder-mark-as-important): Ditto.
4278         (elmo-folder-unmark-read): Ditto.
4279         (elmo-folder-mark-as-read): Ditto.
4280         (elmo-folder-unmark-answered): Ditto.
4281         (elmo-folder-mark-as-answered): Ditto.
4282
4283         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
4284         message status.
4285         (elmo-msgdb-mark): Likewise.
4286         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
4287         (elmo-msgdb-unset-flag): Likewise.
4288
4289         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
4290
4291 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4292
4293         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
4294         `last:' filter.
4295
4296 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4297
4298         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
4299         set spool-length to 0.
4300
4301 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4302
4303         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
4304         (elmo-dop-queue-flush): Fixed last change.
4305
4306 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4307
4308         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
4309         if require-msgdb slot is nil.
4310         (elmo-folder-list-importants): Likewise.
4311
4312 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4313
4314         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
4315         mark is changed.
4316
4317         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
4318         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
4319         is changed.
4320
4321 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
4322
4323         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
4324
4325 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
4326
4327         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
4328
4329         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
4330
4331 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4332
4333         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
4334         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
4335
4336 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4337
4338         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
4339         the problem reported by Sean Rima [wl-en:180].
4340
4341 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
4342
4343         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
4344
4345         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
4346
4347         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
4348
4349         * elmo-map.el (elmo-folder-unmark-read): Ditto.
4350
4351         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
4352
4353         * elmo-net.el (elmo-folder-unmark-read): Ditto.
4354
4355         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
4356
4357 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
4358
4359         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
4360         status number.
4361
4362 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4363
4364         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
4365         (elmo-folder-mark-as-read): Follow the API change.
4366         (elmo-message-set-cached): New function.
4367
4368         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
4369
4370         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
4371
4372         * elmo-net.el (elmo-folder-unmark-important): Set :before 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-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
4380         (elmo-folder-unmark-important): Ditto.
4381         (elmo-folder-mark-as-read): Ditto.
4382         (elmo-folder-unmark-read): Ditto.
4383         (elmo-folder-mark-as-answered): Ditto.
4384         (elmo-folder-unmark-answered): Ditto.
4385
4386         * elmo-mark.el (toplevel): Removed some mark method definitions.
4387
4388         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
4389         (elmo-map-folder-mark-as-answered): Ditto.
4390         (elmo-folder-unmark-important): Add :before qualifier.
4391         (elmo-folder-mark-as-important): Ditto.
4392         (elmo-folder-unmark-read): Ditto.
4393         (elmo-folder-mark-as-read): Ditto.
4394         (elmo-folder-unmark-answered): Define.
4395         (elmo-folder-mark-as-answered): Ditto.
4396
4397         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
4398         (elmo-map-folder-unmark-answered): Ditto.
4399
4400         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
4401
4402         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
4403         (elmo-folder-mark-as-important): Ditto.
4404         (elmo-folder-unmark-read): Ditto.
4405         (elmo-folder-mark-as-read): Ditto.
4406         (elmo-folder-unmark-answered): Ditto.
4407         (elmo-folder-mark-as-answered): Ditto.
4408
4409         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
4410         `mark'; evaluate mark condition.
4411         (elmo-msgdb-match-condition-internal): New function.
4412         (elmo-msgdb-match-condition): Call it; changed argument.
4413
4414         * elmo.el (elmo-folder-search): Follow the API change on
4415         `elmo-msgdb-match-condition'.
4416
4417 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4418
4419         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
4420         original mark is non-nil.
4421
4422 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
4423
4424         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
4425         (elmo-map-folder-list-answereds): New method.
4426         (elmo-folder-list-unreads): Add :around qualifier.
4427         (elmo-folder-list-importants): Ditto.
4428         (elmo-folder-list-answereds): Ditto.
4429
4430 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
4431
4432         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
4433
4434         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
4435         method if msgdb is not required.
4436         (elmo-filter-folder-list-importants): Don't treat global-mark.
4437
4438         * elmo.el (elmo-folder-list-importants): Ditto.
4439
4440         * elmo-net.el (elmo-folder-list-importants): Ditto.
4441
4442         * elmo-map.el (elmo-folder-list-importants): Ditto.
4443
4444         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
4445
4446         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
4447         (elmo-imap4-folder-list-any-plugged): New function.
4448         (elmo-imap4-search-internal-primitive): Use it.
4449
4450         * elmo-filter.el (elmo-folder-check): Synchronize original folder
4451         only when require-msgdb slot is non-nil.
4452         (elmo-folder-close): Clear target folder's msgdb.
4453
4454 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4455
4456         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
4457         (elmo-pop3-msgdb-create-by-header): Ditto.
4458         (elmo-pop3-msgdb-create-message): Ditto.
4459
4460         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
4461
4462         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
4463
4464         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
4465
4466         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
4467         (elmo-folder-msgdb-create): Ditto.
4468         (elmo-nntp-folder-msgdb-create): Ditto.
4469         (elmo-nntp-msgdb-create-by-header): Ditto.
4470         (elmo-nntp-msgdb-create-message): Ditto.
4471         (elmo-folder-list-unreads): Define.
4472
4473         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
4474         (elmo-folder-append-messages): Ditto.
4475         (elmo-folder-list-unreads): Define.
4476         (elmo-folder-list-importants): Ditto.
4477         (elmo-folder-list-answereds): Ditto.
4478
4479         * elmo-net.el (elmo-folder-list-unreads): Define.
4480         (elmo-folder-list-importants): Ditto.
4481         (elmo-folder-list-answereds): Ditto.
4482         (elmo-folder-list-answereds-plugged): Ditto.
4483         (elmo-folder-msgdb-create): Follow the API change.
4484         (elmo-folder-msgdb-create-unplugged): Ditto.
4485         (elmo-folder-unmark-answered): Define.
4486         (elmo-folder-mark-as-answered-unplugged): Ditto.
4487         (elmo-folder-unmark-answered-unplugged): Ditto.
4488
4489         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
4490         (elmo-msgdb-unread-uncached-mark): Ditto.
4491         (elmo-msgdb-unread-cached-mark): Ditto.
4492         (elmo-msgdb-read-uncached-mark): Ditto.
4493         (elmo-msgdb-answered-cached-mark): Ditto.
4494         (elmo-msgdb-answered-uncached-mark): Ditto.
4495         (elmo-msgdb-important-mark): Ditto.
4496         (elmo-msgdb-set-mark): Rewrite.
4497         (elmo-msgdb-count-marks): Rewrite.
4498         (elmo-msgdb-mark-alist-set): Abolish.
4499         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
4500         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
4501
4502         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
4503         (elmo-folder-close): Define.
4504         (elmo-folder-msgdb-create): Follow the API change.
4505         (elmo-folder-list-unreads): Rewrite.
4506         (elmo-folder-mark-as-important): Ditto.
4507         (elmo-folder-unmark-important): Ditto.
4508         (elmo-folder-mark-as-read): Ditto.
4509         (elmo-folder-unmark-read): Ditto.
4510         (elmo-folder-mark-as-answered): Define.
4511         (elmo-folder-unmark-answered): Ditto.
4512
4513         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
4514         (elmo-folder-append-messages): Ditto.
4515
4516         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
4517
4518         * elmo-map.el (elmo-folder-list-unreads): Ditto.
4519         (elmo-folder-list-importants): Ditto.
4520
4521         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
4522         (elmo-folder-append-messages): Ditto.
4523
4524         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
4525         change.
4526         (elmo-folder-msgdb-create-plugged): Ditto.
4527         (elmo-folder-append-messages): Ditto.
4528         (elmo-folder-list-answereds-plugged): Define.
4529         (elmo-imap4-search-internal-primitive): Add `mark' processing.
4530         (elmo-folder-unmark-answered-plugged): Define.
4531         (elmo-folder-mark-as-answered-plugged): Ditto.
4532         (elmo-folder-search-requires-msgdb-p): Ditto.
4533
4534         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
4535         (elmo-folder-initialize): Set it.
4536         (elmo-folder-msgdb): Define.
4537         (elmo-folder-check): Call elmo-folder-synchronize.
4538         (elmo-folder-close): Define.
4539         (elmo-folder-commit): Ditto.
4540         (elmo-folder-msgdb-create): Rewrite.
4541         (elmo-folder-list-unreads): Ditto.
4542         (elmo-folder-list-importants): Ditto.
4543         (elmo-folder-mark-as-read): Ditto.
4544         (elmo-folder-unmark-read): Ditto.
4545         (elmo-folder-mark-as-important): Ditto.
4546         (elmo-folder-unmark-important): Ditto.
4547         (elmo-folder-mark-as-answered): Define.
4548         (elmo-folder-unmark-answered): Ditto.
4549
4550         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
4551         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
4552         (elmo-dop-queue-method-name-alist): Likewise.
4553         (elmo-folder-mark-as-answered-dop): New inline function.
4554         (elmo-folder-unmark-answered-dop): Ditto.
4555         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
4556
4557         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
4558         (elmo-folder-msgdb-create): Ditto.
4559         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
4560         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
4561         (elmo-archive-parse-mmdf): Ditto.
4562
4563         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
4564         (elmo-folder-list-unreads-internal): Ditto.
4565
4566         * elmo.el (elmo-folder-msgdb): Define as generic function.
4567         (elmo-folder-list-messages): Added argument `in-msgdb'.
4568         (elmo-folder-list-unreads): Define as generic function.
4569         (elmo-folder-list-importants): Ditto.
4570         (elmo-folder-list-answereds): Ditto.
4571         (elmo-folder-list-messages-with-global-mark): New function.
4572         (elmo-folder-msgdb-create): Removed mark arguments.
4573         (elmo-folder-unmark-answered): New generic function.
4574         (elmo-folder-mark-as-answered): Ditto.
4575         (elmo-folder-append-messages): Removed argunment `unread-marks'
4576         (elmo-folder-list-unreads-internal): Abolish.
4577         (elmo-folder-list-importants-internal): Ditto.
4578         (elmo-folder-search-requires-msgdb-p): New generic function.
4579         (elmo-folder-search-requires-msgdb-p-internal): New function.
4580         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
4581         elmo-msgdb-load.
4582         (elmo-folder-search-fast): Added key 'mark'.
4583         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
4584         instead of unread-marks argument.
4585         (elmo-folder-move-messages): Removed argunment `unread-marks'
4586         (elmo-folder-unmark-important): Define.
4587         (elmo-folder-mark-as-important): Ditto.
4588         (elmo-folder-unmark-read): Ditto.
4589         (elmo-folder-mark-as-read): Ditto.
4590         (elmo-folder-unmark-answered): Ditto.
4591         (elmo-folder-mark-as-answered): Ditto.
4592         (elmo-folder-replace-marks): Abolish.
4593         (elmo-generic-folder-append-msgdb): Append msgdb before checking
4594         duplicates.
4595         (elmo-folder-synchronize): Removed mark arguments;
4596         return crosspost only number.
4597
4598 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4599
4600         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
4601         Remove redundunt connectivity check.
4602
4603 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4604
4605         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
4606         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
4607
4608 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
4609
4610         * pldap.el (ldap-decode-string): Return string as-is if
4611         `ldap-coding-system' is nil.
4612         (ldap-encode-string): Ditto.
4613         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
4614         (ldap-default-host): Fixed docstring.
4615
4616 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
4617
4618         * elmo-util.el (elmo-warning): Define as a macro which uses
4619         `display-warning' if it is defined as a function.
4620
4621         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
4622         (elmo-split-equal): Use it.
4623         (elmo-split-match): Ditto.
4624         (elmo-split-message-entity): New buffer-local variable.
4625         (elmo-split-subr): Set it.
4626
4627         * elmo-version.el (elmo-version): Up to 2.9.15.
4628
4629 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
4630
4631         * elmo-imap4.el (elmo-network-initialize-session):
4632         Check capability after starttls.
4633
4634 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
4635
4636         * elmo-util.el (elmo-list-delete): Added optional argument
4637         DELETE-FUNCTION.
4638
4639         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
4640
4641         * elmo-util.el (elmo-warning): Ignore errors while recenter.
4642
4643         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
4644
4645         * elmo-imap4.el (elmo-folder-initialize): Don't use
4646         elmo-imap4-default-mailbox.
4647
4648 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4649
4650         * elmo-split.el (toplevel): Use `product-provide'.
4651         (elmo-split): Checkdoc.
4652
4653 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
4654
4655         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
4656         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
4657         the function `elmo-imap4-debug-1'.
4658
4659 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4660
4661         * elmo-split.el (elmo-split): Moved to run hooks and to show
4662         message from elmo-split-subr.
4663         (elmo-split-subr): Follow the change above.
4664
4665         * elmo-split.el (elmo-split-subr): New function (renamed from
4666         elmo-split-subr).
4667         (elmo-split): Changed to call elmo-split-subr by element of
4668         elmo-split-folder.
4669         (elmo-split-folder): Changed customization type to choice.
4670
4671 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4672
4673         * elmo-split.el (elmo-split-and): Fixed condition.
4674
4675 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4676
4677         * elmo-split.el: New file.
4678         (elmo-split): Fixed logic.
4679         Display "Test:" instead of "Folder:" when reharsal.
4680
4681         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
4682         explicitly.
4683
4684         * elmo-version.el (elmo-version): Up to 2.9.14.
4685
4686         * elmo-util.el (elmo-expand-newtext): New function (renamed from
4687         wl-expand-newtext).
4688
4689 2002-06-10  Kenichi Sato <ksato@sonycom.com>
4690
4691         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
4692         message with no message-id field.
4693
4694 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
4695
4696         * elmo-version.el (elmo-version): Up to 2.9.13.
4697
4698         * elmo-dop.el (elmo-folder-status-dop): Fix.
4699
4700 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
4701
4702         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
4703
4704         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
4705         changing default value of default-mime-charset.
4706         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
4707
4708         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
4709
4710         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
4711         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
4712         instead of elmo-dop-queue-method-name-alist to check merging queue.
4713         (elmo-folder-delete-messages-dop): Delete from queue if negative
4714         message number.
4715         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
4716         file is already removed.
4717
4718 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
4719
4720         * elmo-vars.el: Bind colon keywords for old Emacsen.
4721
4722 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4723
4724         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
4725         against non-exsisting charset.
4726
4727 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
4728
4729         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
4730         Use eword-decode-and-unfold-unstructured-field-body.
4731
4732         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
4733         (elmo-msgdb-create-overview-from-buffer): Use document charset if
4734         exists to decode raw subject string.
4735         (toplevel): Require 'mime.
4736
4737         * elmo-version.el (elmo-version): Up to 2.9.12.
4738
4739 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
4740
4741         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
4742         (elmo-msgdb-set-mark): Ditto.
4743
4744         * elmo-version.el (elmo-version): Up to 2.9.11.
4745
4746 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
4747
4748         * elmo-util.el (elmo-delete-match-files): New function.
4749
4750         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
4751         instead of elmo-delete-directory.
4752
4753         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
4754         elmo-hash-minimun-size as 63.
4755
4756         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
4757         elmo-diff-unread is nil.
4758
4759         * elmo-imap4.el (elmo-folder-open): Fix.
4760
4761         * elmo.el (elmo-message-mark): Rewrite.
4762         (elmo-message-field): Ditto.
4763         (elmo-message-set-mark): Ditto.
4764         (elmo-folder-replace-marks): New function.
4765         (elmo-generic-folder-append-msgdb): Removed third argument for
4766         elmo-msgdb-append.
4767         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
4768         (elmo-msgdb-load): New implementation.
4769
4770         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
4771
4772         * elmo-util.el (elmo-list-insert): New implementation.
4773
4774         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
4775         argument for elmo-msgdb-append.
4776         
4777
4778         * elmo-msgdb.el (elmo-load-msgdb): New function.
4779         (elmo-make-msgdb): Ditto.
4780         (elmo-msgdb-get-index): New inline function.
4781         (elmo-msgdb-set-index): Ditto.
4782         (elmo-msgdb-get-entity-hashtb): Ditto.
4783         (elmo-msgdb-get-mark-hashtb): Ditto.
4784         (elmo-msgdb-get-mark): Ditto.
4785         (elmo-msgdb-set-mark): Ditto.
4786         (elmo-msgdb-count-marks): Ditto.
4787         (elmo-msgdb-get-number): Ditto.
4788         (elmo-msgdb-get-field): Ditto.
4789         (elmo-msgdb-seen-list): Ditto.
4790         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
4791         (elmo-msgdb-delete-msgs): Follow the changes above.
4792         (elmo-msgdb-overview-get-entity): Ditto.
4793         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
4794         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
4795         and rewritten.
4796         (elmo-msgdb-make-index): Likewise.
4797         (elmo-msgdb-append): Removed third argument.
4798         (elmo-msgdb-clear): Clear index as nil.
4799         (elmo-folder-set-info-hashtb): Removed.
4800         (elmo-folder-set-info-max-by-numdb): Ditto.
4801         (elmo-folder-info-make-hashtb): Ditto.
4802
4803         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
4804
4805         * elmo-map.el (elmo-folder-pack-number): Ditto.
4806
4807 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
4808
4809         * elmo-version.el (elmo-version): Up to 2.9.10.
4810
4811         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
4812
4813         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
4814
4815 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
4816
4817         * elmo-utils.el (elmo-make-directory): Add option.
4818         Default file mode is 700.
4819
4820 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4821
4822         * elmo-shimbun.el (elmo-folder-local-p): Defined.
4823
4824 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
4825
4826         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
4827         mime-charset.
4828
4829         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
4830         and "smaller".
4831
4832 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4833
4834         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
4835         (elmo-shimbun-folder-entity-hash): New function.
4836         (elmo-shimbun-folder-shimbun-header): Ditto.
4837         (elmo-shimbun-entity-to-header): Ditto.
4838         (elmo-shimbun-msgdb-to-headers): Removed.
4839         (elmo-shimbun-folder-setup): Ditto.
4840         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
4841         for hash key.
4842         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
4843         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
4844         Removed useless local bind.
4845         (elmo-folder-open-internal): Don't call
4846         `elmo-shimbun-folder-setup'.
4847         (elmo-folder-close-internal): Clear entity-hash slot.
4848         (elmo-folder-clear): Ditto.
4849         (elmo-shimbun-msgdb-create-entity): Use
4850         `elmo-shimbun-folder-shimbun-header'.
4851         (elmo-map-message-fetch): Ditto.
4852         (elmo-shimbun-update-overview): Use overview entity instead of
4853         shimbun header to lookup id by references.
4854         (elmo-map-folder-list-message-locations): Use not only headers but
4855         also overviews to list locations.
4856
4857 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4858
4859         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
4860         msgdb path.
4861
4862         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
4863
4864 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4865
4866         * elmo-util.el (elmo-read-search-condition-internal): Give default
4867         value for date.
4868
4869 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
4870
4871         * elmo-util.el (elmo-condition-parse-search-value): Accept
4872         YYYY-MM-DD format to search.
4873         * elmo-date.el (elmo-date-get-datevec): Likewise.
4874
4875 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
4876
4877         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
4878         debugging code.
4879
4880 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4881
4882         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
4883         from t.
4884
4885         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
4886
4887         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
4888         case from `elmo-folder-exists-p'.
4889         (elmo-folder-exists-p): Removed.
4890         (elmo-folder-creatable-p) Ditto.
4891
4892         * elmo-net.el (elmo-folder-create): Defined.
4893         (elmo-folder-create-unplugged): New function.
4894         (elmo-folder-exists-p): Changed default value to nil from t.
4895
4896         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
4897         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
4898
4899         * elmo-dop.el (elmo-folder-create-dop): Renamed from
4900         `elmo-create-folder-dop' and append queue
4901         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
4902         (elmo-folder-create-dop-delayed): New function.
4903
4904         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
4905
4906         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
4907
4908         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
4909         (elmo-folder-writable-p) : Ditto.
4910
4911         * elmo-version.el (elmo-version): Up to 2.9.9.
4912
4913 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4914
4915         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
4916         `elmo-message-use-cache-p' returns nil.
4917         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
4918         (ignore cache file and refer the substance in local folders)
4919
4920 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4921
4922         * elmo-version.el (elmo-version): Up to 2.9.8.
4923
4924 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
4925
4926         * elmo-version.el (elmo-version): Up to 2.9.7.
4927
4928         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
4929
4930 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
4931
4932         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
4933
4934 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
4935
4936         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
4937         from --early.
4938         (elmo-map-folder-list-message-locations): Reverse location list.
4939
4940 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
4941
4942         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
4943
4944 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
4945
4946         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
4947         as a key.
4948         (elmo-nntp-folder-list-subfolders): Follow the change above.
4949
4950 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
4951
4952         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
4953         name if authentication type is specified.
4954
4955 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
4956
4957         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
4958         variable.
4959         (elmo-default-nntp-stream-type): Ditto.
4960         (elmo-default-pop3-stream-type): Ditto.
4961
4962 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
4963
4964         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
4965
4966 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4967
4968         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
4969         elmo-vars.el.
4970         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
4971
4972         * elmo-vars.el (elmo-localnews-folder-path): Removed.
4973         (elmo-maildir-folder-path): Ditto.
4974         (elmo-maildir-list): Ditto (abolished).
4975
4976 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
4977
4978         * elmo-version.el (elmo-version): Up to 2.9.6.
4979
4980 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4981
4982         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
4983         (elmo-maildir-folder-path): Ditto.
4984         (elmo-msgdb-directory): Ditto.
4985         (elmo-passwd-life-time): Ditto.
4986         (elmo-msgdb-extra-fields): Ditto.
4987         (elmo-enable-disconnected-operation): Ditto.
4988
4989 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
4990
4991         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4992         other choices.
4993         (elmo-pop3-default-authenticate-type): Ditto.
4994
4995 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4996
4997         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
4998         choices for custom.
4999         (elmo-pop3-default-authenticate-type): Ditto.
5000
5001 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
5002
5003         * elmo-imap4.el (elmo-folder-rename-internal): Change current
5004         mailbox to new-folder.
5005
5006 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
5007
5008         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
5009         less than new, set new as unread.
5010
5011         * elmo-util.el (elmo-string): Don't put text-property if nil.
5012
5013 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5014
5015         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
5016         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
5017
5018 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
5019
5020         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5021         is nil on `completing-read'.
5022
5023 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
5024
5025         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
5026         for namespace part.
5027         (elmo-imap4-parse-namespace-subr): Ditto.
5028         (elmo-folder-list-subfolders): Append a delimiter when the specified
5029         folder path is a root with namespace and does not end with delimiter.
5030
5031 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5032
5033         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
5034         was used.
5035
5036 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5037
5038         * elmo-util.el (elmo-save-buffer): The first argument of message
5039         is a format control string.
5040
5041 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5042
5043         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
5044         `elmo-folder-diff').
5045         (elmo-diff-unread): Likewise.
5046
5047 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5048
5049         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
5050         is t on `completing-read'.
5051
5052 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5053
5054         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
5055         method of target folder with self mark-alist if MARK-ALIST is nil.
5056
5057 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
5058
5059         * elmo-version.el (elmo-version): Up to 2.9.5.
5060
5061 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
5062
5063         * elmo-dop.el (elmo-dop-queue-merge): Implement.
5064         (elmo-dop-merge-funcs): Remove.
5065
5066 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5067
5068         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
5069         Return t if PATH is directory, too.
5070         Use `dolist' instead of while loop.
5071
5072 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5073
5074         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
5075         is deleted.
5076
5077 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5078
5079         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
5080         return value to t.
5081         (elmo-folder-list-messages-unplugged): Return t if
5082         elmo-enable-disconnected-operation is nil.
5083
5084         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
5085         `elmo-folder-list-messages-internal'.
5086
5087 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5088
5089         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
5090         Change to looking-at `[23][0-9]+'.
5091         (elmo-network-initialize-session): Use 'error-msg'
5092         * elmo-net.el (elmo-network-open-session): Set unplugged
5093         if elmo-network-initialize-session returns 'elmo-open-err.
5094
5095 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
5096
5097         * elmo-version.el (elmo-version): Up to 2.9.4.
5098
5099 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5100
5101         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
5102         `elmo-folder-list-messages-internal'.
5103
5104 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5105
5106         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
5107         (elmo-message-match-condition): New method.
5108         (elmo-folder-search-fast): New inline function.
5109         (elmo-msgdb-search): Removed.
5110
5111         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
5112         target folder if it is unplugged.
5113         (elmo-folder-list-messages-internal): Return t if target folder is
5114         unplugged and itself is persistent; In this case, use list be
5115         searched already.
5116
5117         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
5118         (elmo-msgdb-search-internal-primitive): Ditto.
5119         (elmo-msgdb-match-condition): New function.
5120         (elmo-msgdb-match-condition-primitive): Ditto.
5121
5122         * elmo-util.el (elmo-filter-condition-p): New macro.
5123
5124         * elmo-cache.el (elmo-folder-search): Removed.
5125
5126         * elmo-localdir.el (elmo-folder-search): Ditto.
5127
5128         * elmo-maildir.el (elmo-folder-search): Ditto.
5129
5130         * elmo-mark.el (elmo-folder-search): Ditto.
5131
5132         * elmo-nmz.el (elmo-folder-search): Ditto.
5133
5134         * elmo-sendlog.el (elmo-folder-search): Ditto.
5135
5136         * elmo-shimbun.el (elmo-folder-search): Ditto.
5137
5138         * elmo-imap4.el (elmo-folder-search): Call method of parent class
5139         if folder is unplugged.
5140
5141         * elmo-nntp.el (elmo-folder-search): Likewise.
5142         (elmo-nntp-search-internal): New function.
5143
5144         * elmo-version.el (elmo-version): Up to 2.9.3.
5145
5146 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5147
5148         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
5149
5150 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
5151
5152         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
5153
5154 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
5155
5156         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
5157
5158 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
5159
5160         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
5161         (elmo-map-folder-list-message-locations): Do drive letter conversion
5162         on Windows environment.
5163         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
5164         (elmo-map-message-fetch): Ditto.
5165
5166 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
5167
5168         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
5169         (elmo-network-initialize-session): Ditto.
5170
5171 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5172
5173         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
5174
5175         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
5176
5177         * elmo-util.el (elmo-progress-clear): Ditto.
5178
5179         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
5180         `DD-Mon-YYYY' type date.
5181
5182 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5183
5184         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
5185         `elmo-date-make-sortable-string' instead of
5186         `timezone-make-date-sortable'.
5187
5188         * elmo-date.el (elmo-date-make-sortable-string): Use
5189         `timezone-make-time-string'.
5190
5191 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5192
5193         * elmo.el (elmo-folder-synchronize): Delete important messages too.
5194
5195         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
5196         `since'; Fix timezone.
5197
5198         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
5199
5200         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
5201
5202 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5203
5204         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
5205
5206 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5207
5208         * elmo.el (elmo-generic-folder-append-messages): Make
5209         fetch-strategy with `use-cache' as 'maybe. Check return value of
5210         `elmo-message-fetch'.
5211         (elmo-message-fetch): Return return value of
5212         `elmo-message-fetch-with-cache-process'.
5213         (elmo-message-fetch-with-cache-process): Return non-nil if
5214         fetching was succeed. Load cache when fetching was failed and
5215         fetch-strategy-use-cache is 'maybe.
5216
5217         * elmo-util.el (elmo-file-cache-load): New function.
5218
5219         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
5220         defun.
5221
5222         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
5223         non-nil if fetching was succeed.
5224
5225         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
5226
5227         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
5228
5229         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
5230         (elmo-message-fetch-with-cache-process): Likwise.
5231
5232         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
5233
5234         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
5235
5236         * elmo-version.el (elmo-version): Up to 2.9.2.
5237
5238 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
5239
5240         * elmo.el (elmo-folder-delete): Delete msgdb path.
5241
5242         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
5243
5244         * elmo-maildir.el (elmo-folder-delete): Ditto.
5245
5246         * elmo-localdir.el (elmo-folder-delete): Ditto.
5247
5248         * elmo-imap4.el (elmo-folder-delete): Ditto.
5249
5250 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
5251
5252         * elmo.el (luna-define-class): Added `biff' slot.
5253
5254         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
5255         (elmo-pop3-debug-inhibit-logging): Abolished.
5256         (elmo-network-close-session): Eliminated needless let.
5257         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
5258         (elmo-pop3-send-command): Added `no-log' argument.
5259         (elmo-pop3-process-filter): Use `with-current-buffer'.
5260         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
5261         if login failure.
5262         (elmo-pop3-auth-apop): Likewise.
5263         (elmo-network-authenticate-session): Likewise.
5264
5265         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
5266         if biff folder.
5267
5268         * elmo-net.el (elmo-network-session-password-key): Use class symbol
5269         string to determine protocol.
5270         (elmo-network-session-name-prefix): Abolished.
5271         (elmo-network-session-cache-key): Follow the change above.
5272         (elmo-network-open-session): Ditto.
5273
5274         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
5275         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
5276
5277         * elmo-version.el (elmo-version): Up to 2.9.1.
5278
5279         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
5280         unmatch condition checking.
5281
5282         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
5283         condition.
5284
5285 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5286
5287         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
5288
5289 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
5290
5291         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
5292         test for while loop to execute at least one SEARCH command.
5293
5294 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
5295
5296         * elmo-version.el (elmo-version): Up to 2.9.0.
5297
5298 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5299
5300         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
5301         (elmo-archive-folder-path): Define.
5302         (elmo-folder-initialize): Setup `dir-name' slot.
5303         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
5304         Use `dir-name' as prefix of each subfolders.
5305         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
5306
5307 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5308
5309         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
5310         (elmo-pipe-folder-list-target-messages): New internal function.
5311         (elmo-pipe-drain): Use new argument `ignore-list' instead of
5312         `killed-list'.
5313         (elmo-pipe-folder-copied-list-load): New function.
5314         (elmo-pipe-folder-copied-list-save): Ditto.
5315         (elmo-folder-open-internal): Follow the change above.
5316         (elmo-folder-status): Fixed for copy.
5317
5318 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
5319
5320         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
5321
5322 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
5323
5324         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
5325         elmo-copy-file instead of elmo-add-name-to-file.
5326
5327         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
5328
5329         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
5330         "file://..." index.
5331
5332         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
5333         of accept-process-output as 1.
5334         (elmo-pop3-read-contents): Ditto.
5335         (elmo-pop3-read-body): Ditto.
5336
5337 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5338
5339         * elmo-version.el (product-version-as-string): Remove define.
5340
5341 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5342
5343         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
5344         (elmo-imap4-copy-messages): Chop number set using
5345         `elmo-imap4-number-set-chop-length'.
5346         (elmo-imap4-set-flag): Ditto.
5347         (elmo-imap4-search-internal-primitive): Ditto.
5348
5349 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5350
5351         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
5352         `elmo-folder-make-temp-dir'
5353
5354         * elmo-vars.el (elmo-cache-directory): New variable.
5355         (elmo-cache-dir): Abolished.
5356         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
5357
5358         * elmo-version.el (elmo-version): Up to 2.7.7.
5359
5360 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
5361
5362         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
5363         defcustom; Set default value as t.
5364
5365 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
5366
5367         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
5368         (ldap-search-program-arguments): Changed default value.
5369         (ldap-search-basic): Accept exit status 4.
5370         (ldap/field-body): Parse options.
5371         (ldap/collect-field): Ditto.
5372         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
5373
5374         * elmo-imap4.el (elmo-imap4-process-bye): New function.
5375         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
5376         (elmo-imap4-accept-ok): Ditto.
5377         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
5378         'notify-bye, only BYE error is reported.
5379         (elmo-folder-exists-p-plugged): Set no-error argument of
5380         `elmo-imap4-session-select-mailbox' as 'notify-bye.
5381
5382         * elmo.el (elmo-imap4-bye-error): Changed message.
5383
5384         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
5385         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
5386         queues (It causes infinite loop).
5387
5388 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5389
5390         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
5391         (RECENT UNSEEN MESSAGES) extension.
5392
5393 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
5394
5395         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
5396         Check number of overview fields.
5397
5398 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5399
5400         * elmo.el (elmo-folder-confirm-appends): Changed message.
5401         (elmo-folder-confirm-appends): Ditto.
5402
5403         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
5404         `with-temp-buffer'.
5405         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
5406
5407 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
5408
5409         * elmo.el (elmo-folder-confirm-appends): Check whether the value
5410         of elmo-folder-update-threshold is nil, which can be set by
5411         wl-summary-update-confirm-threshold.
5412
5413 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
5414
5415         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
5416         (elmo-nmz-index-alias-alist): Ditto.
5417         (elmo-map-folder-list-message-locations): Follow the change above.
5418
5419 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5420
5421         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
5422
5423         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
5424
5425         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
5426
5427         * elmo-util.el (elmo-read): Ditto.
5428         (elmo-display-error): Ditto.
5429
5430         * elmo-vars.el (elmo-date-match): Ditto.
5431
5432         * pldap.el (ldap-coding-system): Ditto.
5433
5434         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
5435         `elmo-inhibit-number-mapping' as nil.
5436
5437 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
5438
5439         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
5440         space delimiter for list response.
5441
5442 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5443
5444         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
5445
5446 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5447
5448         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
5449         (elmo-map-message-fetch): Fix.
5450         * elmo-map.el (elmo-folder-status): Fix for killed.
5451
5452 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
5453
5454         * elmo-sendlog.el: New file.
5455         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
5456
5457 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5458
5459         * acap.el (acap-logging-out): New buffer local variable.
5460         (acap-close): Set it.
5461         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
5462         an error.
5463
5464 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5465
5466         * acap.el (acap-response-bye-p): New function.
5467         (acap-response-bye-message): Ditto.
5468         (acap-wait-for-response): If bye response is received, cause an error.
5469         (acap-parse-response): Make bye response when 'Bye' is received.
5470
5471 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
5472
5473         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5474
5475 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5476
5477         * elmo-util.el (elmo-copy-file): Added argument
5478         `ok-if-already-exists'.
5479         (elmo-copy-file): Fixed typo.
5480
5481 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5482
5483         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
5484
5485 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
5486
5487         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
5488
5489 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
5490
5491         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
5492         to killed-list.
5493
5494 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
5495
5496         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
5497         (elmo-folder-initialize): Fix for `copy'.
5498         (elmo-pipe-drain): Ditto.
5499         (elmo-folder-open-internal): Ditto.
5500         (elmo-folder-newsgroups): Fix.
5501
5502 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
5503
5504         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
5505         for each message.
5506
5507         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
5508         recent value is returned from imap folder.
5509
5510         * elmo.el (elmo-folder-newsgroups): New generic function.
5511
5512         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
5513         (elmo-folder-initialize): Set it.
5514         (elmo-folder-expand-msgdb-path): Use it.
5515         (elmo-folder-newsgroups): Define.
5516
5517         * elmo-filter.el (elmo-folder-newsgroups): Define.
5518
5519         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
5520
5521         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
5522
5523         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
5524
5525 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5526
5527         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
5528         user option.
5529         (elmo-shimbun-header-extra-field): New inline function.
5530         (elmo-shimbun-header-set-extra-field): Ditto.
5531         (elmo-shimbun-folder-header-hash-setup): Ditto.
5532         (elmo-shimbun-update-overview): Ditto.
5533         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
5534         (elmo-shimbun-folder-setup): Use
5535         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
5536         (elmo-shimbun-get-headers): Ditto.
5537         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
5538         Insert `X-Shimbun-Id:' header if extra field is set.
5539         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
5540         field's value instead of `shimbun-header-id'.
5541
5542         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
5543         inline function.
5544         (elmo-msgdb-overview-entity-set-date): Ditto.
5545         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
5546
5547 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
5548
5549         * mmimap.el (mmimap-entity-section): Changed body node number from
5550         "0" to "1".
5551
5552 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5553
5554         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
5555         `elmo-folder-delete-messages'.
5556
5557         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
5558         (elmo-folder-initialize): Changed to expand alias into index path.
5559
5560         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
5561         `elmo-mime-insert-header-from-buffer' with 6th arg
5562         `sorted-fields'.
5563
5564 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
5565
5566         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
5567
5568         * elmo.el (elmo-diff-new): New inline function.
5569         (elmo-diff-unread): Ditto.
5570         (elmo-diff-all): Ditto.
5571
5572         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
5573         value from responseb.
5574         (elmo-imap4-folder-diff-plugged): Ditto.
5575         (elmo-imap4-server-diff-async): Added recent argument.
5576         (elmo-server-diff-async): Ditto.
5577         (elmo-imap4-folder-diff-plugged): Ditto.
5578
5579         * elmo-version.el (elmo-version): Up to 2.7.6.
5580
5581 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5582
5583         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
5584         in quoted-stirng.
5585
5586 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
5587
5588         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
5589
5590         * elmo-imap4.el (elmo-folder-initialize): Ditto.
5591
5592         * elmo-nntp.el (elmo-folder-initialize): Ditto.
5593
5594         * elmo-multi.el (elmo-folder-initialize): Ditto.
5595
5596         * elmo-util.el (elmo-parse-token): New function.
5597         (elmo-parse-prefixed-element): Ditto.
5598
5599 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
5600
5601         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
5602         delete process.
5603         (elmo-imap4-accept-ok): Ditto.
5604
5605 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5606
5607         * mmimap.el (mime-imap-entity-header-string): Don't check first
5608         element of node-id is `0' (Follow last change).
5609
5610 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5611
5612         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
5613         assigned irregular node-id to nested multipart section.
5614         (initialize-instance): Followed above change.
5615
5616 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5617
5618         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
5619         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
5620         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
5621         `elmo-shimbun-get-headers');
5622         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
5623         visible article on summary exists in headers).
5624         (elmo-map-message-fetch): Cause an error when folder is unplugged.
5625
5626 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
5627
5628         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
5629         definition.
5630
5631 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
5632
5633         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
5634
5635 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5636
5637         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
5638         header separator into loop condition.
5639
5640 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5641
5642         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
5643         Return duplicate folder if it has subfolder.
5644
5645 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
5646
5647         * elmo.el (elmo-make-folder): Add folder name error check.
5648
5649         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
5650         (elmo-nntp-encode-group-string): New inline function.
5651         (elmo-nntp-decode-group-string): Ditto.
5652         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
5653         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
5654         Use `not' instead of `null';
5655         Use elmo-nntp-decode-group-string.
5656
5657         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
5658
5659         * elmo-version.el (elmo-version): Up to 2.7.5.
5660
5661 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5662
5663         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
5664         Hide progress gauge if `elmo-folder-move-messages' exits
5665         nonlocally.
5666
5667 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
5668
5669         * elmo-imap4.el (elmo-folder-initialize): Use
5670         `elmo-imap4-encode-folder-string' for folder name.
5671
5672 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5673
5674         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
5675         `done'.
5676
5677 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5678
5679         * elmo-util.el (elmo-progress-counter-alist): New internal
5680         variable.
5681         (elmo-progress-counter-value): New macro.
5682         (elmo-progress-counter-all-value): Ditto.
5683         (elmo-progress-counter-format): Ditto.
5684         (elmo-progress-counter-set-value): Ditto.
5685         (elmo-progress-set): New function.
5686         (elmo-progress-clear): Ditto.
5687         (elmo-progress-notify): Ditto.
5688
5689         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
5690         counter.
5691
5692         * elmo.el (elmo-generic-folder-append-messages): Call
5693         `elmo-progress-notify'.
5694         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
5695
5696         * elmo-archive.el (elmo-folder-append-messages): Call
5697         `elmo-progress-notify'.
5698
5699         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
5700
5701         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
5702
5703         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
5704
5705 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
5706
5707         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
5708         'Create'.
5709         (elmo-message-encache-dop): Added argument `read'.
5710
5711         * elmo-shimbun.el (elmo-message-encache): Ditto.
5712
5713         * elmo-net.el (elmo-message-encache): Ditto.
5714
5715         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
5716         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
5717         elmo-imap4-seen-messages.
5718         (elmo-folder-msgdb-create-plugged): Initialize
5719         elmo-imap4-seen-messages;
5720         Set seen mark on elmo-imap4-seen-messages.
5721
5722         * elmo-pipe.el (elmo-folder-message-file-p): Define.
5723
5724         * elmo.el (elmo-generic-folder-append-messages): Check return value of
5725         elmo-folder-append-buffer.
5726         (elmo-folder-encache): Added optional argument `read'.
5727         (elmo-message-encache): Ditto.
5728
5729         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
5730
5731         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
5732
5733         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
5734         if append buffer content succeds.
5735
5736 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
5737
5738         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
5739         elmo-display-progress.
5740
5741         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
5742         Set 4th argument of mime-display-message.
5743         (elmo-mime-display-as-is): Ditto.
5744
5745 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
5746
5747         * elmo-nmz.el (toplevel): Require 'mime-edit.
5748         (elmo-nmz-content-type-alist): Abolished.
5749         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
5750         content is not a message.
5751         (elmo-map-message-fetch): Changed behavior exept for message content;
5752         Detect mime-charset automatically, Use `mime-find-file-type' to detect
5753         content-type, Add From: and Subject: field.
5754
5755 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5756
5757         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
5758         (elmo-map-message-fetch): Add `Content-Type' field if contents is
5759         not a message.
5760
5761 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5762
5763         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
5764         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
5765
5766         * elmo-archive.el (elmo-folder-writable-p): Defined.
5767
5768         * elmo-cache.el (elmo-folder-writable-p): Ditto.
5769
5770         * elmo-filter.el (elmo-folder-writable-p): Ditto.
5771
5772         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
5773
5774         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
5775
5776         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
5777
5778         * elmo-mark.el (elmo-folder-writable-p): Ditto.
5779
5780         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
5781
5782         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
5783
5784 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
5785
5786         * elmo-util.el (elmo-address-quote-specials): New function;
5787         Renamed from `wl-address-quote-specials'.
5788
5789 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5790
5791         * elmo-version.el (elmo-version): Up to 2.7.4.
5792
5793 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
5794
5795         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
5796
5797 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
5798
5799         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
5800         both compile-time and run-time to avoid byte-compile warning.
5801
5802 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
5803
5804         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
5805
5806 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
5807
5808         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
5809         option.
5810         (elmo-mime-display-as-is-internal): Use it.
5811
5812         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
5813         if `read-passwd' is not defined.
5814
5815 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
5816
5817         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
5818         by original number.
5819         (elmo-folder-status): Call `elmo-folder-open-internal';
5820         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
5821         (elmo-folder-close-internal): Set location-alist as nil.
5822         (elmo-folder-clear): Define.
5823         (elmo-folder-check): Don't set location-alist as nil.
5824
5825         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
5826
5827 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
5828
5829         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
5830         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
5831
5832         * mmimap.el (mime-imap-entity::requested): New slot.
5833         (mime-imap-location-fetch-entity-p): New generic function.
5834         (mime-decode-parameters): Define using `defun-maybe'.
5835         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
5836         content-type structure.
5837         (mime-entity-body): Return empty body if
5838         `mime-imap-location-fetch-entity-p' returns nil in the first request.
5839
5840         * elmo.el (elmo-message-displaying): New variable.
5841
5842         * elmo-mime.el (elmo-mime-message-display): Bind
5843         elmo-message-displaying as t.
5844
5845         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
5846
5847 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
5848
5849         * acap.el (acap-open): erase buffer before starting network process.
5850         (acap-store): Rewrite.
5851
5852 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
5853
5854         * elmo-imap4.el (elmo-imap4-default-mailbox,
5855         elmo-imap4-default-server
5856         elmo-imap4-default-authenticate-type,
5857         elmo-imap4-default-user,
5858         elmo-imap4-default-port,
5859         elmo-imap4-default-stream-type,
5860         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
5861
5862         * elmo-pop3.el (elmo-pop3-default-user,
5863         elmo-pop3-default-server,
5864         elmo-pop3-default-authenticate-type,
5865         elmo-pop3-default-port,
5866         elmo-pop3-default-stream-type,
5867         elmo-pop3-stream-type-alist): Ditto.
5868
5869         * elmo-nntp.el (elmo-nntp-default-server,
5870         elmo-nntp-default-user,
5871         elmo-nntp-default-port,
5872         elmo-nntp-default-stream-type,
5873         elmo-nntp-stream-type-alist): Ditto.
5874
5875         * elmo-vars.el: Follow changes above.
5876         (elmo-setting): New custom group; added 'elmo-setting group to
5877         above variables.
5878
5879         * elmo-version.el (elmo-version): Up to 2.7.3.
5880
5881         * acap.el (acap-parse-response): Don't delete process when BYE
5882         response (It causes hang-up on slow network environment).
5883         (toplevel): Added comment.
5884
5885 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
5886
5887         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
5888
5889         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
5890         parsing NIL.
5891         (acap-parse-return-metadata): Ditto.
5892
5893         * slp.el: New file.
5894         (toplevel): Fixed typo.
5895
5896         * acap.el: New file.
5897         (acap-network-stream-open): Show "Connecting..." message.
5898         (acap-parse-response): Fixed problem for BYE untagged response.
5899         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
5900         (toplevel): Added tiny comments.
5901
5902 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
5903
5904         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
5905         space delimiter for uidl response.
5906
5907 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
5908
5909         * elmo-vars.el (elmo-use-semi): Eliminated.
5910
5911         * elmo-util.el (elmo-string-assoc-all): New function.
5912
5913 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5914
5915         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
5916         property 'mime-preview-situation for `mime-preview-quit'.
5917
5918 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5919
5920         * elmo.el (elmo-message-fetch-with-cache-process): Call
5921         elmo-message-fetch-internal instead of causing an error when fetch
5922         strategy is 'entire but only 'section cache is available.
5923
5924 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
5925
5926         * elmo-version.el (elmo-version): Up to 2.7.2.
5927
5928         * elmo.el (elmo-generic-folder-append-messages): Make
5929         fetch-strategy with `use-cache'.
5930
5931         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
5932         (elmo-dop-queue-method-name): New macro.
5933
5934 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5935
5936         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
5937         unbalanced parenthesis.
5938
5939 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
5940
5941         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
5942
5943 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
5944
5945         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
5946         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
5947
5948 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
5949
5950         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
5951         local variables.
5952
5953 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
5954
5955         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
5956         (elmo-message-use-cache-p): Define.
5957         (elmo-folder-msgdb-create): Treat cache.
5958
5959 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
5960
5961         * elmo-nntp.el (elmo-network-initialize-session): Call
5962         `elmo-nntp-send-mode-reader'.
5963         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
5964
5965 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
5966
5967         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
5968         alist.
5969         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
5970         assoc.
5971
5972         * elmo-net.el (elmo-network-get-session): Set stream-type argument
5973         for `elmo-plugged-p'.
5974         (elmo-open-network-stream): Fixed stream-type argument.
5975
5976 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
5977
5978         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
5979         unknown archive type is specified.
5980
5981 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
5982
5983         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
5984
5985         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
5986         while loading msgdb.
5987
5988         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
5989         (elmo-folder-open-internal): Rewrite.
5990
5991 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
5992
5993         * elmo-mime.el (elmo-mime-display-as-is-internal):
5994         Adjust buffer-multibyte status.
5995
5996 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
5997
5998         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
5999         of elmo-condition-find-key.
6000
6001         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
6002         (elmo-condition-in-msgdb-p): Ditto.
6003         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
6004         argument.
6005
6006 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
6007
6008         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
6009
6010 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
6011
6012         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
6013         label for elmo-display-progress.
6014
6015 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
6016
6017         * elmo.el (elmo-folder-clear): New method.
6018         (elmo-folder-clear): Define.
6019         (elmo-folder-synchronize): Call `elmo-folder-clear'.
6020
6021         * elmo-shimbun.el (elmo-folder-check): Rewrite.
6022         (elmo-folder-clear): Define.
6023
6024         * elmo-map.el (elmo-folder-clear): Define.
6025
6026         * elmo-version.el (elmo-version): Up to 2.7.1.
6027
6028 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
6029
6030         * elmo.el (elmo-folder-synchronize): Return list of nil when no
6031         updates.
6032
6033 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
6034
6035         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
6036         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
6037
6038 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
6039
6040         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
6041
6042         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
6043         and re-written.
6044
6045         * elmo-imap4.el (elmo-folder-initialize): Use
6046         elmo-get-network-stream-type.
6047
6048         * elmo-nntp.el (elmo-folder-initialize): Ditto.
6049
6050         * elmo-pop3.el (elmo-folder-initialize): Ditto.
6051
6052 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
6053
6054         * elmo.el (elmo-message-encache): Set unread argument for
6055         elmo-message-fetch.
6056
6057         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
6058
6059         * elmo.el (elmo-net-port-info): New method.
6060
6061         * elmo-shimbun.el (elmo-net-port-info): Define.
6062         (elmo-message-encache): Ditto.
6063
6064         * elmo-net.el (elmo-net-port-info): Define as method.
6065
6066         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
6067         unplugged status when elmo-enable-disconnected-operation is t.
6068
6069         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
6070         of spool folder before checking new number.
6071
6072 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
6073
6074         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
6075         (elmo-network-setup-session): Ditto.
6076         (elmo-message-fetch-plugged): Ditto.
6077         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
6078         (elmo-network-initialize-session): Ditto.
6079         (elmo-pop3-read-response): Abolish 3rd argument.
6080         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
6081         (elmo-pop3-read-contents): Ditto.
6082         (elmo-pop3-read-body): Ditto.
6083         (elmo-folder-status): Call elmo-folder-close.
6084         (elmo-pop3-lock): Abolish.
6085         (elmo-pop3-unlock): Ditto.
6086         (elmo-pop3-locked-p): Ditto.
6087         (elmo-folder-check): Don't call elmo-pop3-locked-p.
6088
6089 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
6090
6091         * elmo-version.el (elmo-version): Up to 2.7.0.
6092
6093         * elmo-pop3.el (elmo-pop3-debug): New variable.
6094         (elmo-pop3-debug-inhibit-logging): Ditto.
6095         (elmo-pop3-debug): New function.
6096         (elmo-pop3-send-command): Call elmo-pop3-debug.
6097         (elmo-pop3-read-response): Added keep-lock optional argument;
6098         Don't unlock if keep-lock is non-nil.
6099         (elmo-pop3-process-filter): Call elmo-pop3-debug.
6100         (elmo-network-authenticate-session): Bind
6101         elmo-pop3-debug-inhibit-logging as t.
6102         (elmo-network-setup-session): Call elmo-pop3-read-response with
6103         keep-lock argument.
6104         (elmo-pop3-read-msg): Ditto.
6105         (elmo-pop3-locked-p): Call elmo-pop3-debug.
6106         (elmo-pop3-read-body): Call elmo-pop3-unlock.
6107         (elmo-network-initialize-session): Call elmo-pop3-lock.
6108         (elmo-folder-close-internal): Don't clear location-alist slot.
6109         (elmo-folder-check): Clear location-alist slot.
6110
6111 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
6112
6113         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
6114         (elmo-pop3-send-command): Call elmo-pop3-lock.
6115         (elmo-pop3-read-response): Call elmo-pop3-unlock.
6116         (elmo-pop3-read-contents): Ditto.
6117         (elmo-pop3-lock): New function.
6118         (elmo-pop3-unlock): Ditto.
6119         (elmo-pop3-locked-p): Ditto.
6120         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
6121         returns t.
6122
6123 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
6124
6125         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
6126
6127         * elmo-util.el (elmo-file-field-primitive-condition-match):
6128         New inline function (Don't fetch file content if "first" or "last").
6129         (elmo-file-field-condition-match): Use
6130         elmo-file-field-primitive-condition-match.
6131
6132         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
6133         "first".
6134
6135         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
6136         (elmo-message-fetch-plugged): Fixed.
6137
6138         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
6139
6140 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
6141
6142         * elmo.el (elmo-folder-move-messages): Bind
6143         elmo-inhibit-display-retrieval-progress as t while moving messages.
6144
6145         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
6146         New variable.
6147         (elmo-inhibit-display-retrieval-progress): Ditto.
6148
6149         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
6150         for retrieval progress;
6151         Don't display progress when total buffer size is smaller than
6152         elmo-display-retrieval-progress-threshold.
6153         (elmo-message-fetch-plugged): Don't display progress when
6154         elmo-inhibit-display-retrieval-progress is non-nil.
6155
6156         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
6157         for retrieval progress;
6158         Don't display progress when literal size is smaller than
6159         elmo-display-retrieval-progress-threshold.
6160         (elmo-imap4-message-fetch): Don't display progress when
6161         elmo-inhibit-display-retrieval-progress is non-nil.
6162
6163 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
6164
6165         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
6166         (elmo-imap4-find-next-line): Display progress whille literal fetching.
6167         (elmo-imap4-message-fetch): Likewise.
6168
6169         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
6170         (elmo-shimbun-index-range-alist): Ditto.
6171         (elmo-shimbun-use-entire-index): Abolish.
6172         (shimbun-mua-use-entire-index): Ditto.
6173         (elmo-shimbun-folder): Added new slot `range'.
6174         (elmo-folder-initialize): Setup slot `range'.
6175
6176 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
6177
6178         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
6179         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
6180         (elmo-shimbun-get-headers): Use return value of
6181         `shimbun-article-expiration-days'.
6182         (elmo-folder-close-internal): Clean up last-check slot.
6183
6184         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
6185         (elmo-pop3-total-size): New variable.
6186         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
6187
6188         * elmo.el (elmo-folder-reserve-status-p): New method.
6189
6190         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
6191         (elmo-shimbun-use-entire-index): New user option.
6192         (shimbun-elmo-mua): New class.
6193         (shimbun-mua-search-id): Define.
6194         (shimbun-mua-use-entire-index): Ditto.
6195         (elmo-shimbun-folder:last-check): New slot.
6196         (elmo-shimbun-headers-cache-header-list): Abolish.
6197         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6198         (elmo-shimbun-headers-cache-header-hash): Ditto.
6199         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6200         (elmo-shimbun-headers-cache-last-check): Ditto.
6201         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6202         (elmo-shimbun-headers-check-p): Rewrite.
6203         (elmo-shimbun-msgdb-to-headers): New function.
6204         (elmo-shimbun-get-headers): Rewrite.
6205         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
6206         (elmo-folder-open-internal): Get headers only if
6207         `elmo-shimbun-headers-check-p' is non-nil.
6208         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
6209         is non-nil.
6210         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
6211         (elmo-quit): Removed.
6212
6213         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
6214         function.
6215         (elmo-msgdb-overview-entity-set-extra): Ditto.
6216         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
6217
6218         * elmo-map.el (elmo-folder-status): Don't call
6219         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
6220         is non-nil.
6221
6222 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6223
6224         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
6225         of `elmo-msgdb-search-internal-primitive' when condition's car is
6226         `and' or `or'.
6227
6228 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
6229
6230         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
6231
6232 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6233
6234         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
6235         call `elmo-pipe-drain'.
6236
6237 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6238
6239         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
6240         typo. (elmo-cache-folder -> elmo-mark-folder)
6241
6242 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6243
6244         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
6245         `elmo-message-fetch'.
6246
6247 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6248
6249         * elmo-net.el (elmo-message-encache): Fixed typo.
6250         (elmo-message-fetch-unplugged): Changed call
6251         `elmo-message-fetch-internal' without argument `outbuf'.
6252
6253 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
6254
6255         * elmo.el (elmo-message-encache): Define as generic function.
6256         (elmo-message-fetch-field): New generic function.
6257         (elmo-message-fetch-with-cache-process): Cause an error when
6258         fetch strategy is 'entire but only 'section cache is available.
6259         (toplevel): Fixed nmz folder definition.
6260
6261         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
6262         (elmo-msgdb-resume-list-filename): Ditto.
6263         (elmo-queue-filename): Ditto.
6264         (elmo-enable-disconnected-operation): Changed default value to t.
6265
6266         * elmo-util.el (elmo-cache-path-section-p): New function.
6267         (elmo-file-cache-get): Use it.
6268         (elmo-dop-queue-filename): Moved from elmo-dop.el.
6269         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
6270         (elmo-dop-queue-save): Ditto.
6271
6272         * elmo-net.el (elmo-folder-status-unplugged): Call
6273         elmo-folder-status-dop.
6274         (elmo-folder-list-messages-unplugged): Implemented.
6275         (elmo-folder-delete-messages-unplugged): Define.
6276         (elmo-folder-msgdb-create): Define.
6277         (elmo-folder-msgdb-create-unplugged): Define.
6278         (elmo-folder-mark-as-read-unplugged): Ditto.
6279         (elmo-folder-unmark-read-unplugged): Ditto.
6280         (elmo-folder-mark-as-important-unplugged): Ditto.
6281         (elmo-folder-unmark-important-unplugged): Ditto.
6282         (elmo-message-encache): Ditto.
6283
6284         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
6285         (elmo-dop-queue-save): Ditto.
6286
6287         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
6288         `elmo-folder-msgdb-create'.
6289         (elmo-folder-append-buffer): Implemented unplugged operation.
6290         (elmo-folder-append-messages): Call parent method in unplugged status.
6291         (elmo-message-fetch-unplugged): Removed definition.
6292         (elmo-message-fetch-field): Implemented.
6293
6294         * elmo-dop.el (toplevel): Require 'elmo-localdir.
6295         (elmo-dop-folder): Removed variable definition.
6296         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
6297         (elmo-dop-queue-flush): Implemented.
6298         (elmo-dop-queue-merge): Removed definition (TODO).
6299         (elmo-dop-spool-folder): New function.
6300         (elmo-dop-spool-folder-append-buffer): Ditto.
6301         (elmo-dop-spool-folder-list-messages): Ditto.
6302         (elmo-dop-list-deleting-messages): Ditto.
6303         (elmo-folder-append-buffer-dop): Ditto.
6304         (elmo-folder-delete-messages-dop): Ditto.
6305         (elmo-message-encache-dop): New inline function.
6306         (elmo-create-folder-dop): Ditto.
6307         (elmo-folder-mark-as-read-dop): Ditto.
6308         (elmo-folder-unmark-read-dop): Ditto.
6309         (elmo-folder-mark-as-important-dop): Ditto.
6310         (elmo-folder-unmark-important-dop): Ditto.
6311         (elmo-folder-status-dop): Fixed.
6312         (elmo-folder-append-buffer-dop-delayed): New function.
6313         (elmo-folder-delete-messages-dop-delayed): Ditto.
6314         (elmo-dop-msgdb): Ditto.
6315
6316 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6317
6318         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
6319
6320 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6321
6322         * elmo.el (elmo-folder-move-messages): Fixed problem when
6323         `dst-folder' is 'null.
6324
6325 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6326
6327         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
6328         instead of current mark.
6329
6330         * elmo-multi.el (elmo-folder-list-importants-internal): No
6331         operation if importants is not list.
6332
6333         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
6334         Return t if importants is not list.
6335
6336         * elmo-map.el (elmo-map-folder-list-importants): Define.
6337         (elmo-folder-list-importants-internal): Check return value of
6338         `elmo-map-folder-list-importants-internal'.
6339
6340         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
6341
6342         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
6343
6344         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
6345
6346         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
6347
6348 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
6349
6350         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
6351         (Patch is provided by <kita@coe.nttdata.co.jp>).
6352
6353 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6354
6355         * elmo.el (elmo-folder-synchronize): Don't check important mark in
6356         mark folder.
6357
6358 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6359
6360         * elmo.el (elmo-message-fetch): Define.
6361         (elmo-message-fetch-with-cache-process): New generic method.
6362         (elmo-message-fetch-internal): New generic method.
6363         (elmo-folder-synchronize):
6364
6365         * elmo-archive.el (elmo-message-fetch-internal): Define.
6366         (elmo-message-fetch): Eliminated.
6367
6368         * elmo-localdir.el (elmo-message-fetch-internal): Define.
6369         (elmo-message-fetch): Eliminated.
6370
6371         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
6372         argument OUTBUF.
6373         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
6374
6375         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
6376         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
6377
6378         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
6379         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
6380
6381         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
6382
6383         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
6384
6385         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
6386
6387         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
6388         (elmo-message-fetch-unplugged): New generic method.
6389         (elmo-message-fetch-internal): Remove cache process (Renamed from
6390         `elmo-message-fetch').
6391
6392         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
6393         (elmo-message-fetch): Eliminated.
6394         (elmo-message-fetch-unplugged): Ditto.
6395
6396         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
6397
6398 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6399
6400         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
6401         of `to-be-deleted' from number-alist to number-list.
6402
6403 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6404
6405         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
6406         (elmo-folder-mark-as-important): Ditto.
6407
6408 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
6409
6410         * elmo.el (elmo-folder): Added process-duplicates slot.
6411
6412         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
6413         (elmo-folder-unmark-read): Ditto.
6414         (elmo-folder-unmark-important): Ditto.
6415         (elmo-folder-mark-as-important): Ditto.
6416
6417         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
6418         duplicated message processing.
6419
6420         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
6421
6422 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6423
6424         * elmo-util.el (elmo-list-subdirectories-1): New function.
6425         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
6426         (elmo-mapcar-list-of-list): New function.
6427
6428         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
6429         `elmo-mapcar-list-of-list' instead of `mapcar'.
6430
6431         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
6432
6433         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
6434         `elmo-have-link-count'. Return the fully qualified folder name.
6435
6436 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
6437
6438         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
6439         (elmo-shimbun-headers-cache): New internal variable.
6440         (elmo-shimbun-headers-cache-header-list): New inline function.
6441         (elmo-shimbun-headers-cache-set-header-list): Ditto.
6442         (elmo-shimbun-headers-cache-header-hash): Ditto.
6443         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
6444         (elmo-shimbun-headers-cache-last-check): Ditto.
6445         (elmo-shimbun-headers-cache-set-last-check): Ditto.
6446         (elmo-shimbun-lapse-seconds): Ditto.
6447         (elmo-shimbun-headers-cache-check-p): Ditto.
6448         (elmo-shimbun-get-headers): New function.
6449         (elmo-folder-open-internal): Call it.
6450         (elmo-quit): Define (Clear headers-cache).
6451
6452 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
6453
6454         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
6455
6456         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
6457         (elmo-msgdb-flist-save): Ditto.
6458
6459         * elmo-shimbun.el (elmo-folder-list-subfolders):
6460         Use `shimbun-groups' instead of `shimbun-groups-internal'.
6461         (elmo-folder-exists-p): Ditto.
6462
6463         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
6464         argument for `shimbun-header-insert'.
6465
6466 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
6467
6468         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
6469         at first time.
6470
6471         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
6472         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
6473
6474 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
6475
6476         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
6477         (elmo-folder-plugged-p): Define.
6478         (elmo-folder-set-plugged): Ditto.
6479         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
6480         (elmo-folder-list-messages-internal): Return t if unplugged.
6481         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
6482
6483         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
6484         when elmo-folder-list-messages-internal method of children returns t.
6485
6486         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
6487         pair is nil.
6488         (elmo-folder-open-internal): Don't update if unplugged status.
6489
6490 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
6491
6492         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
6493         new message.
6494
6495 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
6496
6497         * elmo-util.el (elmo-file-cache-save): Ignore errors.
6498
6499         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
6500         saving.
6501
6502 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
6503
6504         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
6505
6506         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
6507         (elmo-folder-open-internal): Set up headers slot.
6508         (elmo-folder-check): Call elmo-folder-close-internal and
6509         elmo-folder-open-internal.
6510         (elmo-folder-close-internal): Clean up headers slot.
6511
6512 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6513
6514         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
6515         exactly folder list.
6516         (elmo-folder-append-messages): Fixed append archive with prefix.
6517
6518         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
6519         make temp files with start-number.
6520
6521         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
6522
6523 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6524
6525         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
6526         argument `visible-only'.
6527         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
6528         instead of `if'.
6529
6530         * elmo-pop3.el (elmo-folder-open-internal): Check
6531         `elmo-inhibit-number-mapping' is non-nil.
6532
6533         * elmo-pipe.el (elmo-folder-status): Fixed.
6534
6535 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
6536
6537         * elmo.el (elmo-dop-queue-flush): Added autload setting.
6538
6539         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
6540         (elmo-folder-open-internal): Setup `header-hash' slot.
6541         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
6542         information.
6543         (elmo-map-message-fetch): Ditto.
6544
6545 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
6546
6547         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6548         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6549         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6550         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
6551
6552         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
6553
6554 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
6555
6556         * sb-airs.el: Added footer.
6557
6558         * shimbun.el (shimbun-article): Define as luna-method.
6559
6560         * sb-tcup.el: New file.
6561
6562         * sb-airs.el (toplevel): Require 'sb-mhonarc.
6563         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
6564
6565 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
6566
6567         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
6568         (shimbun-get-headers): Ditto.
6569
6570         * elmo.el: Moved obsolete variable definitions from
6571         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
6572
6573         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
6574         groups.
6575
6576         * shimbun.el: New file.
6577
6578         * elmo-shimbun.el: New file.
6579
6580         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
6581         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
6582         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
6583         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
6584
6585 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
6586
6587         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
6588         hierarchy is t.
6589
6590 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
6591
6592         * elmo.el (elmo-folder-msgdb): Define as macro.
6593         (elmo-folder-open): Added argument `load-msgdb'.
6594         (elmo-generic-folder-open): Ditto.
6595         (elmo-folder-encache): New function.
6596
6597         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
6598
6599         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
6600
6601         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
6602         Eliminated argument FOLDER and added argument MSGDB.
6603         (elmo-dop-queue-load): Moved from elmo-dop.el.
6604         (elmo-dop-queue-save): Ditto.
6605
6606         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
6607
6608         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
6609
6610         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
6611         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
6612         (elmo-filter-folder-list-importants-internal): Ditto.
6613
6614         * elmo-map.el (elmo-folder-pack-number): Ditto.
6615
6616         * elmo-mime.el (elmo-mime-message-display): Ditto.
6617
6618         * elmo.el (elmo-generic-folder-commit): Ditto.
6619         (elmo-folder-list-unreads): Ditto.
6620         (elmo-folder-list-importants): Ditto.
6621         (elmo-generic-folder-commit): Ditto.
6622         (elmo-message-set-mark): Ditto.
6623         (elmo-generic-folder-append-msgdb): Ditto.
6624         (elmo-folder-synchronize): Ditto.
6625         (elmo-folder-messages): Ditto.
6626         (elmo-init): Call elmo-dop-queue-load.
6627         (elmo-folder-list-messages): Ditto.
6628
6629         * elmo-nntp.el (elmo-folder-update-number): Ditto.
6630         (elmo-nntp-folder-process-crosspost): Ditto.
6631         (elmo-folder-list-unreads-internal): Ditto.
6632
6633         * elmo-dop.el: Removed old functions.
6634
6635 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
6636
6637         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
6638         `folder' to `msgdb'.
6639
6640 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
6641
6642         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
6643         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
6644
6645         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
6646         case-fold-search.
6647
6648 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
6649
6650         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
6651         defined.
6652
6653         * mmimap.el (toplevel): Require 'mime-parse and 'static.
6654         (mmimap-parse-parameters-from-list): Define as alias for
6655         `mime-decode-parameter-plist' if it is defined as function.
6656         (mmimap-make-mime-entity): Added argument `number'.
6657         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
6658         as 0.
6659         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
6660
6661         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
6662
6663         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
6664
6665         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
6666
6667 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
6668
6669         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
6670
6671         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
6672         when elmo-imap4-default-authenticate-type is nil.
6673         (elmo-folder-list-subfolders): Ditto
6674         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
6675         (elmo-imap4-fetch-callback-1-subr): Renamed from
6676         `elmo-imap4-fetch-callback-1' and define as inline function.
6677         (elmo-imap4-fetch-callback-1):
6678         Renamed from `elmo-imap4-fetch-callback'.
6679         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
6680
6681         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
6682         msgdb path (To keep compatibility with main trunk).
6683
6684         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
6685
6686         * elmo-util.el (elmo-make-file-cache): Moved position of
6687         some macros.
6688
6689         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
6690         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
6691         instead of `elmo-pop3-inhibit-uidl'.
6692         (elmo-folder-exists-p): Ditto.
6693         (elmo-pop3-folder-list-messages): Ditto.
6694
6695         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
6696         instead of `elmo-pop3-inhibit-uidl'.
6697         (elmo-folder-status): Ditto.
6698
6699         * elmo-dop.el (elmo-dop-folder): New variable.
6700         (elmo-dop-lock-message): Eliminated.
6701         (elmo-dop-unlock-message): Ditto.
6702         (elmo-dop-lock-list-load): Ditto.
6703         (elmo-dop-lock-list-save): Ditto.
6704         (elmo-dop-delete-folder): Ditto.
6705         (elmo-dop-rename-folder): Ditto.
6706
6707         * elmo.el: Removed incomplete commentary.
6708
6709 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6710
6711         * elmo.el (toplevel): Require 'elmo-version first;
6712         for little `recursive-load-depth' settings.
6713         Fix "ends here" comment.
6714
6715 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
6716
6717         * elmo-util.el (toplevel): Require 'poem;
6718         Some functions are moved from elmo-cache.el.
6719
6720         * elmo-net.el (toplevel): Require 'elmo-cache.
6721
6722         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
6723
6724         * elmo.el (toplevel): Ditto.
6725
6726         * elmo-cache.el: Rewrite with luna;
6727         Some functions are moved to elmo-util.el.
6728
6729         * elmo-internal.el (elmo-internal-folder-list): New variable.
6730         (elmo-internal-folder-initialize): Rewrite.
6731         (elmo-folder-list-subfolders): Ditto.
6732
6733         * elmo-cache.el (elmo-cache-search-all): Eliminated.
6734         (elmo-cache-collect-sub-directories): Ditto.
6735
6736 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
6737
6738         * elmo-version.el (elmo-version): Up to 2.5.8.
6739
6740         * elmo.el (elmo-folder-list-messages-mark-match): New function.
6741
6742         * elmo-util.el (elmo-list-insert): New function.
6743
6744 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
6745
6746         * elmo.el (elmo-init): New function.
6747         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
6748
6749         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
6750         (Renamed from `elmo-localdir-header-chop-length').
6751
6752         * elmo-pop3.el (elmo-pop3-use-cache,
6753         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
6754
6755         * elmo-nntp.el (elmo-message-fetch): Define.
6756         (elmo-message-fetch-unplugged): Ditto.
6757         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
6758         (elmo-nntp-use-cache): Ditto.
6759         (elmo-nntp-max-number-precedes-list-active): Ditto.
6760
6761         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
6762
6763         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
6764         `elmo-msgdb-insert-file-header'.
6765         Use `elmo-msgdb-file-header-chop-length'.
6766
6767         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
6768         `elmo-vars.el'.
6769
6770         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
6771         (elmo-cache-msgdb-create-overview-entity-from-file): Use
6772         `elmo-msgdb-insert-file-header'.
6773
6774         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
6775         Use new variable;
6776         Define obsolete variables with `elmo-define-obsolete-variable',
6777
6778         * elmo-util.el (elmo-warning-buffer-name): New constant.
6779         (elmo-warning): New function.
6780         (elmo-obsolete-variable-alist): New variable.
6781         (elmo-obsolete-variable-show-warnings): New variable.
6782         (elmo-define-obsolete-variable): New function.
6783         (elmo-resque-obsolete-variable): Ditto.
6784         (elmo-resque-obsolete-variables): Ditto.
6785
6786 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6787
6788         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
6789         Eliminated.
6790
6791         * elmo-pop3.el, elmo-nntp.el: Use custom.
6792
6793 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6794
6795         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
6796         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
6797
6798 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6799
6800         * Luna-fy Kenichi OKADA's following changes.
6801         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
6802         `nohide'.
6803         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
6804
6805 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
6806
6807         * elmo-util.el (elmo-display-progress): Prefer
6808         `progress-feedback-with-label' to `lprogress-display'.
6809
6810 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
6811
6812         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
6813
6814 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
6815
6816         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
6817         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
6818         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6819         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6820         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
6821         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
6822         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6823         * elmo-filter.el (elmo-filter-list-folder): Ditto.
6824         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6825         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6826         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6827         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6828         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6829
6830 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6831
6832         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
6833         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
6834
6835 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
6836
6837         * elmo.el (elmo-folder-process-crosspost): New generic method.
6838         (elmo-folder-writable-p): Ditto.
6839         (elmo-folder-message-appendable-p): Eliminated.
6840         (elmo-generic-folder-append-msgdb): Rewrite.
6841         (elmo-newsgroups-hashtb): New internal variable.
6842         (elmo-crosspost-message-set): Eliminated.
6843         (elmo-crosspost-message-delete): Ditto.
6844         (elmo-setup-subscribed-newsgroups): New function.
6845         (elmo-crosspost-message-alist-modified): New internal variable.
6846         (elmo-crosspost-message-alist-load): New function (Renamed from
6847         `wl-crosspost-alist-load').
6848         (elmo-crosspost-message-alist-save): Ditto (Renamed from
6849         `wl-crosspost-alist-save').
6850
6851         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
6852
6853         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
6854         `unreads'.
6855         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
6856         elmo-newsgroups-hashtb).
6857         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
6858         `elmo-nntp-folder-update-crosspost-message-alist'.
6859         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
6860         `elmo-nntp-groups-hashtb'.
6861         (elmo-nntp-make-groups-hashtb): Eliminated.
6862         (elmo-nntp-parse-newsgroups): New function (Renamed from
6863         `wl-parse-newsgroups').
6864         (elmo-folder-creatable-p, elmo-folder-writable-p,
6865         elmo-folder-close-internal, elmo-folder-mark-as-read,
6866         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
6867         Define.
6868         (elmo-nntp-folder-update-crosspost-message-alist): New function.
6869
6870         * elmo-net.el (elmo-message-fetch): Check buffer size.
6871
6872         * elmo-multi.el (elmo-multi-split-number-alist): New function.
6873
6874         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
6875
6876         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
6877         before `close' command.
6878
6879         * elmo.el (elmo-folder-list-unreads-internal): Added argument
6880         `mark-alist' (All other related portions are changed).
6881
6882 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
6883
6884         * elmo-util.el (elmo-create-hash-size): Eliminated.
6885         (elmo-make-hash) Make a hash with `one less than a power of two'
6886         length.
6887
6888         * elmo-vars.el (elmo-hash-minimum-size): New variable.
6889         (elmo-hash-maximum-size): Changed value.
6890
6891 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
6892
6893         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
6894         (elmo-mime-message-display-as-is): Ditto.
6895
6896 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
6897
6898         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
6899         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
6900
6901 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
6902
6903         * elmo-mark.el: New file.
6904
6905         * elmo-internal.el: Rewrite (Almost empty).
6906
6907 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
6908
6909         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
6910         (mime-imap-entity-header-string): Ditto.
6911         (mmimap-entity-section): Rewrite.
6912
6913 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
6914
6915         * elmo-nmz.el: New file.
6916
6917         * elmo-pipe.el: Rewrite with luna.
6918
6919 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
6920
6921         * elmo-archive.el: Rewrite with luna.
6922
6923         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
6924         (elmo-folder-list-importants-internal): Ditto.
6925
6926 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
6927
6928         * elmo-archive.el (elmo-archive-version): Abolish.
6929         (toplevel) Removed `boso' comment.
6930
6931 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
6932
6933         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
6934         elmo-msgdb-add-msgs-to-seen-list-subr;
6935         Changed argument seen-marks to unread-marks.
6936
6937         * elmo-nntp.el: Rewrite with luna.
6938
6939 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
6940
6941         * elmo-filter.el: Rewrite with luna.
6942
6943 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
6944
6945         * elmo-pop3.el: Rewrite with luna.
6946
6947 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
6948
6949         * elmo-multi.el: Rewrite with luna.
6950
6951         * elmo-vars.el (elmo-use-killed-list): Abolish.
6952         All other related portions are changed.
6953         (elmo-filename-replace-string-alist): Renamed from
6954         elmo-msgid-replace-string-alist.
6955
6956 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
6957
6958         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
6959
6960         * elmo-map.el: New file.
6961         * elmo-maildir.el: Rewrite with luna.
6962
6963 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
6964
6965         * elmo.el: Changed meaning of `elmo-folder-commit'.
6966         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
6967
6968 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
6969
6970         * elmo.el (elmo-folder-append-buffer): New function.
6971         (Renamed from `elmo-append-msg')
6972
6973 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
6974
6975         * elmo-mime.el: New file.
6976
6977 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
6978
6979         * elmo-cache.el: Rewrite.
6980
6981 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
6982
6983         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
6984
6985 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
6986
6987         * elmo-vars.el (elmo): New group.
6988         (elmo-strict-diff-folder-regexp): New variable.
6989
6990         * elmo-util.el (elmo-call-func): Abolish.
6991         (elmo-folder-get-type): Ditto.
6992         (elmo-*-get-spec): Ditto.
6993         (elmo-*-spec-*): Ditto.
6994         (elmo-imap4-identical-name-space-p): Ditto.
6995         (elmo-folder-identical-system-p): Ditto.
6996         (elmo-folder-direct-copy-alist): Ditto.
6997         (elmo-folder-direct-copy-p): Ditto.
6998
6999         * elmo-pipe.el (elmo-pipe-folder): New luna class.
7000         (elmo-folder-initialize): Define.
7001         (elmo-folder-get-primitive-list): Ditto.
7002
7003         * elmo-nntp.el (elmo-nntp-folder): New luna class.
7004         (elmo-folder-initialize): Define.
7005         Renamed `elmo-network-session-host-internal' to
7006         `elmo-network-session-server-internal'.
7007
7008         * elmo-multi.el (elmo-multi-folder): New luna class.
7009         (elmo-folder-initialize): Define.
7010         (elmo-folder-get-primitive-list): Ditto.
7011         (elmo-folder-contains-type): Ditto.
7012         (elmo-message-use-cache-p): Ditto.
7013
7014         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
7015         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
7016
7017         * elmo-maildir.el (elmo-maildir-folder): New luna class.
7018         (elmo-folder-initialize): Define.
7019
7020         * elmo-filter.el (elmo-filter-folder): New luna class.
7021         (elmo-folder-initialize): Define.
7022         (elmo-folder-get-primitive-list): Ditto.
7023         (elmo-folder-contains-type): Ditto.
7024
7025 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7026
7027         * elmo-imap4.el: Rewrite with luna.
7028
7029         * mmimap.el: New file.
7030
7031         * mmelmo.el, mmelmo-imap4.el: Removed.
7032
7033         * elmo-net.el: Ditto.
7034
7035         * elmo-pop3.el (elmo-pop3-folder): New luna class.
7036         (elmo-folder-initialize): Define.
7037
7038         * elmo-archive.el (elmo-archive-folder): New luna class.
7039         (elmo-folder-initialize): Define.
7040
7041         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
7042         `elmo-folder-msgdb-path'.
7043         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
7044         `elmo-make-folder'.
7045
7046 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
7047
7048         * elmo.el: New file.
7049
7050         * elmo2.el: Renamed to elmo.el.
7051
7052 \f
7053 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
7054
7055         * elmo-cache.el (elmo-cache-expire-by-size): Count
7056         a disk usage for a cache file entry in KB even when
7057         its kind is a directory.
7058
7059 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
7060
7061         * elmo-version.el (elmo-version): Up to 2.5.7.
7062
7063 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7064
7065         * elmo-version.el (elmo-version): Up to 2.5.6.
7066
7067 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
7068
7069         * elmo-version.el (elmo-version): Up to 2.5.5.
7070
7071 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7072
7073         * elmo-imap4.el (elmo-network-authenticate-session):
7074         Fixed a logic for response checking.
7075
7076 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
7077
7078         * elmo-net.el: Add autoload settings for `starttls-negotiate',
7079         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
7080         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
7081         `sasl-mechanisms'.
7082
7083         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
7084         for `starttls-open-stream' and `starttls-negotiate'.
7085
7086         * elmo-nntp.el: Remove autoload settings for
7087         `starttls-open-stream' and `starttls-negotiate'.
7088
7089         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
7090         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
7091         `luna-define-class' with `eval-and-compile'.
7092
7093 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
7094
7095         * elmo-util.el (elmo-read-search-condition-internal):
7096         Require an element of table for searching field.
7097
7098 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
7099
7100         * elmo-version.el (elmo-version): Up to 2.5.4.
7101
7102 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
7103
7104         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
7105
7106 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
7107
7108         * elmo-nntp.el (elmo-network-initialize-session): omitted.
7109
7110 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
7111
7112         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
7113         before greeting.
7114
7115 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7116
7117         * elmo-imap4.el (elmo-imap4-delete-folder):
7118         Send "close" before "delete" (Use commented out line).
7119         (elmo-imap4-rename-folder): Ditto.
7120
7121         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7122         folder string itself.
7123         (elmo-dop-list-deleted): New function.
7124         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7125         killed.
7126
7127         * elmo-util.el (elmo-string-rassoc-all): New function.
7128
7129 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
7130
7131         * elmo-version.el (elmo-version): Up to 2.5.3.
7132
7133         * elmo-net.el (elmo-network-get-session): Changed logic for
7134         checking process status.
7135
7136         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
7137         process is nil;
7138         Changed logic for checking process status.
7139
7140 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
7141
7142         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
7143         before greeting.
7144         (elmo-network-setup-session): Set UIDL hash size according to
7145         the length of list response.
7146         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
7147         according to the length of list response;
7148         Return the length of list response.
7149         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
7150
7151 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7152
7153         * elmo-imap4.el (toplevel): Require 'ssl.
7154         Add autoload 'starttls.
7155         * elmo-pop3.el (toplevel): Ditto.
7156         * elmo-nntp.el (toplevel): Ditto.
7157
7158 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7159
7160         * elmo-imap4.el (toplevel): defun at compile time.
7161         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7162         sasl-next-step, sasl-step-data, sasl-step-set-data.
7163         * elmo-pop3.el (toplevel): Ditto.
7164
7165 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7166
7167         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7168
7169 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7170
7171         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7172         if error.
7173         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7174         and `elmo-pop-auth-apop'.
7175
7176 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7177
7178         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7179
7180 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7181
7182         * elmo-pop3.el (elmo-network-authenticate-session): Split
7183         encoded response value.
7184
7185 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7186
7187         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7188         `elmo-pop3-force-login'.
7189         Redefine `sasl-mechanisms'.
7190         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7191
7192 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7193
7194         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7195         Delete `elmo-imap4-authenticator-alist'.
7196         (elmo-imap4-auth-cram-md5): Delete.
7197         (elmo-imap4-auth-digest-md5): Delete.
7198
7199 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7200
7201         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7202         (elmo-pop3-auth-scram-md5): Ditto.
7203         (elmo-pop3-auth-cram-md5): Ditto.
7204
7205 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7206
7207         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7208         Delete `elmo-pop3-authenticator-alist'.
7209
7210 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7211
7212         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7213         new SASL API.
7214         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7215
7216 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
7217
7218         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
7219
7220 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
7221
7222         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7223         Fixed problem when `elmo-pop3-use-uidl' is nil.
7224         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
7225
7226 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7227
7228         * elmo-version.el (elmo-version): Up to 2.5.2.
7229
7230 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
7231
7232         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
7233         New function.
7234         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
7235         (elmo-pop3-msgdb-create-as-numlist): Use it.
7236
7237         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
7238         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
7239
7240         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
7241         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
7242
7243 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7244
7245         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
7246         when elmo-mark-as-read is called with second argument nil.
7247
7248 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
7249
7250         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7251         Moved to elmo-util.el.
7252
7253         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
7254         Moved from elmo-pipe.el
7255
7256         * elmo-archive.el (elmo-archive-call-process): Enclose with
7257         static-if.
7258
7259         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
7260         "RFC822" (because RFC822.PEEK is obsolete).
7261         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
7262
7263 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
7264
7265         * elmo-archive.el (elmo-archive-call-process): Don't check for
7266         the exit status when Nemacs is running.
7267
7268 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
7269
7270         * elmo-net.el (elmo-network-session-password-key): Don't set default to
7271         'plain.
7272
7273         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
7274         (elmo-pop3-get-spec): Set default of auth to 'user.
7275
7276         * elmo-imap4.el (elmo-imap4-session-check):
7277         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
7278         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
7279         (elmo-imap4-auth-login): New function; Revival.
7280         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
7281         `elmo-imap4-auth-login'.
7282
7283 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7284
7285         * elmo2.el (toplevel): Move `product-provide' declare.
7286         * mmelmo.el (toplevel): Ditto.
7287
7288 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7289
7290         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
7291
7292 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
7293
7294         * elmo-util.el (elmo-folder-get-store-type): New function.
7295         (elmo-folder-direct-copy-p): Use it.
7296
7297 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
7298
7299         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
7300         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
7301         and result of `elmo-imap4-use-flag-p'.
7302         (elmo-imap4-fetch-callback-1): Set mark according to
7303         the result of `elmo-imap4-use-flag-p'.
7304
7305 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
7306
7307         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
7308         (elmo-generic-list-folder-unread): Ditto.
7309         (elmo-folder-get-info): Ditto.
7310         (elmo-folder-set-info-max-by-numdb): Ditto.
7311         (elmo-folder-get-info-max): Ditto.
7312         (elmo-folder-get-info-length): Ditto.
7313         (elmo-folder-get-info-unread): Ditto.
7314         (elmo-folder-info-make-hashtb): Ditto.
7315
7316         * elmo2.el: Removed above functions.
7317
7318 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
7319
7320         * elmo-imap4.el (toplevel): Require 'ssl.
7321         Add autoload 'starttls.
7322         * elmo-pop3.el (toplevel): Ditto.
7323         * elmo-nntp.el (toplevel): Ditto.
7324
7325 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7326
7327         * elmo-imap4.el (toplevel): defun at compile time.
7328         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
7329         sasl-next-step, sasl-step-data, sasl-step-set-data.
7330         * elmo-pop3.el (toplevel): Ditto.
7331
7332 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7333
7334         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
7335
7336 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7337
7338         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
7339         if error.
7340         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
7341         and `elmo-pop-auth-apop'.
7342
7343 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7344
7345         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
7346
7347 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7348
7349         * elmo-pop3.el (elmo-network-authenticate-session): Split
7350         encoded response value.
7351
7352 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7353
7354         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
7355         `elmo-pop3-force-login'.
7356         Redefine `sasl-mechanisms'.
7357         * elmo-vars.el (elmo-pop3-force-login): Ditto.
7358
7359 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7360
7361         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
7362         Delete `elmo-imap4-authenticator-alist'.
7363         (elmo-imap4-auth-cram-md5): Delete.
7364         (elmo-imap4-auth-digest-md5): Delete.
7365
7366 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
7367
7368         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
7369         (elmo-pop3-auth-scram-md5): Ditto.
7370         (elmo-pop3-auth-cram-md5): Ditto.
7371
7372 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7373
7374         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
7375         Delete `elmo-pop3-authenticator-alist'.
7376
7377 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
7378
7379         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
7380         new SASL API.
7381         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
7382
7383 \f
7384 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
7385
7386         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
7387
7388 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
7389
7390         * elmo-nntp.el (elmo-nntp-get-folders-info):
7391         Fixed problem when '\' character is contained in user-id.
7392         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
7393
7394 \f
7395 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
7396
7397         * elmo-imap4.el (elmo-imap4-delete-folder):
7398         Send "close" before "delete" (Use commented out line).
7399         (elmo-imap4-rename-folder): Ditto.
7400
7401         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
7402         folder string itself.
7403         (elmo-dop-list-deleted): New function.
7404         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
7405         killed.
7406
7407         * elmo-util.el (elmo-string-rassoc-all): New function.
7408
7409         * elmo-version.el (elmo-version): Up to 2.5.1.
7410
7411 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
7412
7413         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
7414
7415         * elmo-internal.el (elmo-internal-search): Fix last change.
7416
7417 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
7418
7419         * elmo-internal.el (elmo-internal-search): Rewrite.
7420         (Fixed problem which is pointed out by Akihiro MOTOKI
7421         <motoki@da.jp.nec.com>)
7422
7423         * elmo-version.el (elmo-version): Up to 2.5.0.
7424
7425 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7426
7427         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
7428
7429 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
7430
7431         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
7432         non-nil, make hierarchy.
7433
7434 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
7435
7436         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
7437         `elmo-pop3-use-uidl' must be bound to nil.
7438         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
7439
7440 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
7441
7442         * elmo-util.el (elmo-copy-file): Don't cause an error after
7443         `add-name-to-file' failed.
7444
7445         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
7446         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
7447
7448 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7449
7450         * elmo-version.el (elmo-version): Up to 2.3.93.
7451
7452 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
7453
7454         * elmo-util.el (elmo-flatten): New function.
7455
7456 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7457
7458         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
7459         sync Author header.
7460         * elmo-cache.el (toplevel): Ditto.
7461         * elmo-database.el (toplevel): Ditto.
7462         * elmo-date.el (toplevel): Ditto.
7463         * elmo-dop.el (toplevel): Ditto.
7464         * elmo-filter.el (toplevel): Ditto.
7465         * elmo-imap4.el (toplevel): Ditto.
7466         * elmo-internal.el (toplevel): Ditto.
7467         * elmo-localdir.el (toplevel): Ditto.
7468         * elmo-localnews.el (toplevel): Ditto.
7469         * elmo-maildir.el (toplevel): Ditto.
7470         * elmo-msgdb.el (toplevel): Ditto.
7471         * elmo-multi.el (toplevel): Ditto.
7472         * elmo-net.el (toplevel): Ditto.
7473         * elmo-nntp.el (toplevel): Ditto.
7474         * elmo-pipe.el (toplevel): Ditto.
7475         * elmo-pop3.el (toplevel): Ditto.
7476         * elmo-util.el (toplevel): Ditto.
7477         * elmo-vars.el (toplevel): Ditto.
7478         * elmo2.el (toplevel): Ditto.
7479         * mmelmo-imap4.el (toplevel): Ditto.
7480         * mmelmo.el (toplevel): Ditto.
7481
7482         * elmo-version.el (elmo-version): Move to top.
7483
7484         * elmo-cache.el (toplevel): Fixed multiple Author header format.
7485         * elmo-imap4.el (toplevel): Ditto.
7486         * elmo-localdir.el (toplevel): Ditto.
7487         * elmo-msgdb.el (toplevel): Ditto.
7488         * elmo-nntp.el (toplevel): Ditto.
7489         * elmo-pop3.el (toplevel): Ditto.
7490         * elmo-version.el (toplevel): Ditto.
7491
7492         * elmo-localnews.el (toplevel): Added Keyword header.
7493
7494 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
7495
7496         * elmo-version.el (product-version-as-string): Defined using
7497         `defun-maybe'.
7498         (toplevel): Use it.
7499
7500         * elmo-localdir.el (toplevel): Updated copyright notice.
7501         * elmo-version.el (toplevel): Ditto.
7502         * elmo-msgdb.el (toplevel): Ditto.
7503         * elmo-imap4.el (toplevel): Ditto.
7504         * elmo-nntp.el (toplevel): Ditto.
7505         * elmo-pop3.el (toplevel): Ditto.
7506
7507 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
7508
7509         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
7510         messages.
7511
7512         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
7513         parameter value (It sometimes contains raw kanji).
7514
7515 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7516
7517         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
7518         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
7519
7520 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7521
7522         * elmo-imap4.el (elmo-network-initialize-session): Fix.
7523
7524 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
7525
7526         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
7527         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
7528
7529 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
7530
7531         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
7532         value if selecting folder succceeded.
7533         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
7534
7535 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7536
7537         * elmo-util.el (elmo-make-directory): Fixed permission lateral
7538         representation.
7539
7540         * elmo-util.el (elmo-string-matched-member): New function.
7541
7542 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
7543
7544         * elmo-util.el (elmo-unintern): New macro.
7545         (elmo-number-set-member): Fixed docstring.
7546
7547         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
7548         tag token.
7549
7550 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
7551
7552         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
7553         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
7554
7555 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
7556
7557         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
7558         `no-error'.
7559         Added docstring.
7560         Return non-nil if selecting folder succeeded.
7561         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
7562
7563 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
7564
7565         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
7566         `file-name-completion' returns t.
7567         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
7568         (elmo-maildir-set-mark): Put `info' part to the files in the cur
7569         directory if it does not exist.
7570         (elmo-maildir-update-current): Use `while' instead of `mapcar'
7571         for iteration.
7572
7573 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
7574
7575         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
7576         enclosure (It's harmful in unplugged status).
7577
7578         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
7579
7580         * mmelmo-1.el: Removed.
7581
7582         * mmelmo-2.el: Ditto.
7583
7584         * mmelmo-imap4-1.el: Ditto.
7585
7586         * mmelmo-imap4-2.el: Ditto.
7587
7588         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
7589
7590         * mmelmo.el: Merged mmelmo-2.el.
7591
7592         * elmo-version.el (elmo-version): Up to 2.3.92.
7593
7594 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7595
7596         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
7597         elmo-update-number): Remove last period in "...done." message.
7598         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
7599         Ditto.
7600         * elmo-cache.el (elmo-cache-expire-by-size,
7601         elmo-cache-get-sorted-cache-file-list,
7602         elmo-cache-msgdb-create-as-numlist): Ditto.
7603         * elmo-dop.el (elmo-dop-save-pending-messages,
7604         (elmo-dop-flush-pending-append-operations): Ditto.
7605         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
7606         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
7607         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
7608         (elmo-localdir-pack-number): Ditto.
7609         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
7610         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
7611         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
7612         mime-write-entity-content): Ditto.
7613         * pldap.el (ldap-search-basic): Ditto.
7614
7615 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
7616
7617         * elmo-version.el (elmo-version): Up to 2.3.91.
7618
7619         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
7620         Only when filter is 'last'.
7621
7622         * elmo-util.el (elmo-condition-atom-regexp): New constant.
7623         (elmo-condition-parse-search-value): Use it.
7624         (elmo-read-search-condition-internal): Quote value only when
7625         it is not an atom.
7626
7627 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
7628
7629         * elmo2.el (elmo-generic-folder-diff): Fix.
7630
7631 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
7632
7633         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
7634         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
7635         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
7636         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
7637         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
7638         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
7639
7640 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
7641
7642         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
7643         extra-fields.
7644
7645 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
7646
7647         * elmo-version.el (elmo-version): Up to 2.3.90.
7648
7649         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
7650         (elmo-imap4-list-folder-important): Ditto.
7651
7652 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7653
7654         * elmo-nntp.el (elmo-network-initialize-session): Fix.
7655
7656 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
7657
7658         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
7659
7660 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
7661
7662         * elmo-nntp.el (elmo-network-initialize-session):
7663         Add starttls negotiation.
7664
7665 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7666
7667         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
7668         response.
7669         (elmo-network-setup-session): Define.
7670         Call `elmo-nntp-send-mode-reader' when session opened.
7671
7672 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7673
7674         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
7675
7676 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
7677
7678         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
7679         an invalid SPACE character ahead of `SEARCH' command.  Move
7680         a valid SPACE character following `SEARCH' from conditional
7681         `format' arguments to control-strings.
7682
7683 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
7684
7685         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
7686         was succeeded.
7687
7688         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
7689
7690 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
7691
7692         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
7693         `w32-get-true-file-link-count' as t.
7694
7695         * elmo-imap4.el (elmo-imap4-read): Abolished.
7696         (Renamed to `elmo-read' and moved to elmo-util.el)
7697         All other related portions are changed.
7698
7699         * elmo-util.el (elmo-read): New function.
7700         (elmo-condition-parse-search-value): Use it.
7701
7702 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
7703
7704         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
7705
7706         * elmo-nntp.el (elmo-nntp-session): Define.
7707         (elmo-nntp-setting): Abolished.
7708         All other related portions are changed.
7709         (elmo-nntp-get-server-command): Changed argument.
7710         (elmo-nntp-set-server-command): Ditto.
7711         (elmo-nntp-xover-p): Ditto.
7712         (elmo-nntp-set-xover): Ditto.
7713         (elmo-nntp-listgroup-p): Ditto.
7714         (elmo-nntp-set-listgroup): Ditto.
7715         (elmo-nntp-list-active-p): Ditto.
7716         (elmo-nntp-set-list-active): Ditto.
7717         (elmo-nntp-xhdr-p): Ditto.
7718         (elmo-nntp-set-xhdr): Ditto.
7719         (elmo-nntp-flush-connection): Abolished.
7720         (elmo-nntp-get-connection): Abolished.
7721         (elmo-nntp-get-session): New function.
7722         (elmo-network-initialize-session): Defined.
7723         (elmo-network-authenticate-session): Ditto.
7724         (elmo-nntp-send-mode-reader): Changed argument.
7725         (elmo-nntp-send-command): Changed argument.
7726         All other related portions are changed.
7727         (elmo-nntp-read-response): Ditto.
7728         (elmo-nntp-read-raw-response): Ditto.
7729         (elmo-nntp-read-contents): Ditto.
7730         (elmo-nntp-read-body): Ditto.
7731         (elmo-nntp-goto-folder): Abolished.
7732         (elmo-nntp-select-group): New function.
7733         All other related portions are changed.
7734         (This function substitutes `elmo-nntp-goto-folder')
7735         (elmo-nntp-msgdb-create-by-header): Rewrite.
7736         (elmo-nntp-get-overview): Eliminated.
7737         (elmo-nntp-get-message): Ditto.
7738         (elmo-nntp-open-connection) Abolished.
7739         (elmo-nntp-read-msg): Rewrite.
7740         (elmo-nntp-post): Ditto.
7741         (elmo-nntp-send-data): Abolished.
7742         (elmo-nntp-send-buffer): New function.
7743         (elmo-nntp-send-data-line): Define as inline function.
7744         (elmo-nntp-get-folders-info-prepare): Use session as key.
7745         (elmo-nntp-groups-read-response): Changed argument.
7746         (elmo-nntp-retrieve-headers): Ditto.
7747         (elmo-nntp-msgdb-create-message): Ditto.
7748
7749         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
7750         when searching by 'since' or 'before'.
7751
7752 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7753
7754         * elmo-version.el (toplevel): Use product-version-as-string for set
7755         verstion-string, if defined.
7756
7757 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
7758
7759         * elmo-util.el: Doc fixes.
7760
7761 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7762
7763         * elmo-archive.el (toplevel): Use product-provide.
7764         * elmo-cache.el (toplevel): Ditto.
7765         * elmo-database.el (toplevel): Ditto.
7766         * elmo-date.el (toplevel): Ditto.
7767         * elmo-dop.el (toplevel): Ditto.
7768         * elmo-filter.el (toplevel): Ditto.
7769         * elmo-imap4.el (toplevel): Ditto.
7770         * elmo-internal.el (toplevel): Ditto.
7771         * elmo-localdir.el (toplevel): Ditto.
7772         * elmo-localnews.el (toplevel): Ditto.
7773         * elmo-maildir.el (toplevel): Ditto.
7774         * elmo-msgdb.el (toplevel): Ditto.
7775         * elmo-multi.el (toplevel): Ditto.
7776         * elmo-net.el (toplevel): Ditto.
7777         * elmo-nntp.el (toplevel): Ditto.
7778         * elmo-pipe.el (toplevel): Ditto.
7779         * elmo-pop3.el (toplevel): Ditto.
7780         * elmo-util.el (toplevel): Ditto.
7781         * elmo-vars.el (toplevel): Ditto.
7782         * elmo2.el (toplevel): Ditto.
7783         * mmelmo-1.el (toplevel): Ditto.
7784         * mmelmo-2.el (toplevel): Ditto.
7785         * mmelmo-imap4-1.el (toplevel): Ditto.
7786         * mmelmo-imap4-2.el (toplevel): Ditto.
7787         * mmelmo-imap4.el (toplevel): Ditto.
7788         * mmelmo.el (toplevel): Ditto.
7789
7790 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
7791
7792         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
7793         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
7794
7795 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
7796
7797         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
7798         before splitting.
7799         (elmo-multi-split-number-alist): Ditto.
7800
7801 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
7802
7803         * elmo-version.el: New file.  Use product.el.
7804         * elmo2.el: Add (require 'elmo-version).
7805         * elmo-vars.el (elmo-appname, elmo-version): Move to
7806         elmo-version.el
7807
7808 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
7809
7810         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
7811         `elmo-msgdb-expand-path'.
7812         (elmo-msgdb-load): Ditto.
7813         Abolished 2nd argument. If 1st argument is not string, treat as spec.
7814         (elmo-generic-list-folder-unread): Rewrite.
7815         (elmo-generic-list-folder-important): Changed argument.
7816         (elmo-list-folder-unread): Ditto.
7817         (elmo-list-folder-important): Ditto.
7818         (elmo-folder-diff): Rewrite.
7819         (elmo-generic-folder-diff): New function.
7820         (elmo-multi-get-number-alist-list): Abolished
7821         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
7822         (elmo-multi-folder-diff): Moved to elmo-multi.el
7823         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
7824
7825         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
7826         `elmo-msgdb-expand-path'.
7827         (elmo-pop3-msgdb-create-as-numlist): Ditto.
7828         (elmo-pop3-read-msg): Ditto.
7829         (elmo-pop3-delete-msgs): Ditto.
7830         (elmo-pop3-folder-diff): New alias.
7831
7832         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
7833         `elmo-msgdb-expand-path'.
7834         (elmo-pipe-list-folder-unread): Changed arguments.
7835         (elmo-pipe-list-folder-important): Ditto.
7836         (elmo-pipe-folder-diff): New alias.
7837
7838         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
7839         `elmo-msgdb-expand-path'.
7840         (elmo-nntp-max-of-folder): Ditto.
7841         (elmo-nntp-msgdb-create): Ditto.
7842         (elmo-nntp-delete-msgs): Ditto.
7843         (elmo-nntp-folder-diff): New alias.
7844
7845         * elmo-multi.el (elmo-multi-folder-diff): New function.
7846         (elmo-multi-split-mark-alist): Ditto.
7847         (elmo-multi-split-number-alist): Ditto.
7848         (elmo-multi-mark-alist-list): Abolished (Renamed to
7849         elmo-multi-split-mark-alist).
7850         (elmo-multi-list-folder-unread): Rewrite.
7851         (elmo-multi-list-folder-important): Ditto.
7852         (elmo-multi-list-folder): Set `spec' as 1st argument for
7853         `elmo-msgdb-expand-path'.
7854         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
7855         instead of `elmo-multi-get-number-alist-list'.
7856
7857         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
7858         If 1st argument is not string, treat as spec.
7859         (elmo-list-folder-by-location): Set `spec' as 1st argument for
7860         `elmo-msgdb-expand-path'.
7861         (elmo-msgdb-flist-load): Ditto.
7862         (elmo-msgdb-flist-save): Ditto.
7863         (elmo-msgdb-delete-path): Ditto.
7864         (elmo-msgdb-rename-path): Ditto.
7865
7866         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
7867         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7868         (elmo-maildir-delete-mark-msgs): Ditto.
7869         (elmo-maildir-msgdb-create): Ditto.
7870         (elmo-maildir-read-msg): Ditto.
7871         (elmo-maildir-delete-msgs): Ditto.
7872         (elmo-maildir-list-folder-subr): Ditto.
7873         (elmo-maildir-search): Ditto.
7874         (elmo-maildir-get-msg-filename): Ditto.
7875         (elmo-maildir-pack-number): Ditto.
7876         (elmo-maildir-folder-diff): New alias.
7877
7878         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
7879
7880         * elmo-localdir.el (elmo-localdir-list-folder-subr):
7881         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7882         (elmo-localdir-folder-diff): New alias.
7883
7884         * elmo-internal.el (elmo-internal-list-folder-subr):
7885         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7886         (elmo-internal-list-folder-by-location): Ditto.
7887         (elmo-internal-msgdb-create): Ditto.
7888         (elmo-internal-delete-msgs): Ditto.
7889         (elmo-internal-read-msg): Ditto.
7890         (elmo-internal-folder-diff): New alias.
7891
7892         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
7893         (elmo-imap4-list-folder): Set `spec' as 1st argument for
7894         `elmo-msgdb-expand-path'.
7895         (elmo-imap4-list-folder-unread): Changed arguments.
7896         (elmo-imap4-list-folder-important): Ditto.
7897
7898         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
7899         (elmo-filter-list-folder-important): Ditto.
7900         (elmo-filter-folder-diff): New function.
7901
7902         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
7903
7904         * elmo-cache.el (elmo-cache-list-folder):
7905         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7906         (elmo-cache-copy-msgs): Ditto.
7907         (elmo-cache-folder-diff): New alias.
7908
7909         * elmo-archive.el (elmo-archive-list-folder-subr):
7910         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
7911         (elmo-archive-get-archive-name): Ditto.
7912         (elmo-archive-create-file): Ditto.
7913         (elmo-archive-append-msg): Ditto.
7914         (elmo-archive-copy-msgs): Ditto.
7915         (elmo-archive-copy-msgs-froms): Ditto.
7916         (elmo-archive-get-msg-filename): Ditto.
7917         (elmo-archive-folder-diff): New alias.
7918
7919 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
7920
7921         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
7922         (elmo-pop3-stream-type-alist): New variable.
7923         (elmo-nntp-stream-type-alist): New variable.
7924
7925         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
7926         (elmo-kill-buffer): Ditto.
7927         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
7928         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
7929         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
7930         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
7931         (elmo-imap4-get-spec): Take into account
7932         `elmo-imap4-stream-type-alist'.
7933
7934 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
7935
7936         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
7937         (elmo-nntp-list-folders-get-cache): Ditto.
7938
7939 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
7940
7941         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
7942         character before 'uid'.
7943
7944 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
7945
7946         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
7947
7948         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
7949
7950         * elmo-util.el (elmo-number-set-member): New function.
7951         (elmo-number-set-append-list): Ditto.
7952         (elmo-number-set-append): Ditto.
7953
7954         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
7955         Use `elmo-number-set-member'.
7956         (elmo-living-messages): Ditto.
7957         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
7958         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
7959
7960         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
7961         (elmo-imap4-add-to-cont-list): Abolished.
7962         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
7963         instead of elmo-imap4-add-to-cont-list.
7964
7965         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
7966         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
7967
7968         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
7969
7970 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
7971
7972         * elmo-util.el (elmo-condition-parse-search-value):
7973         Fixed date parsing.
7974
7975 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
7976
7977         * elmo-util.el (elmo-condition-find-key-internal): New function.
7978         (elmo-condition-find-key): Ditto.
7979
7980         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
7981         (elmo-msgdb-search-internal): Ditto.
7982         (elmo-msgdb-search): Ditto.
7983
7984 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
7985
7986         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
7987         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
7988
7989         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
7990         (elmo-nntp-search-primitive): Fixed problem when condition is
7991         'unmatch'.
7992
7993         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
7994
7995         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
7996         (elmo-nntp-xhdr-p): New macro.
7997         (elmo-nntp-set-xhdr): Ditto.
7998         (elmo-nntp-parse-xhdr-response): New function.
7999         (elmo-nntp-retrieve-field): Ditto.
8000         (elmo-nntp-search-primitive): Ditto.
8001         (elmo-nntp-search): Implemented.
8002
8003         * elmo-date.el (elmo-date-make-sortable-string): New macro.
8004
8005         * elmo-archive.el (elmo-archive-search): Set all number list to
8006         `elmo-archive-field-condition-match'
8007
8008         * elmo-localdir.el (elmo-localdir-search): Likewise.
8009
8010         * elmo-maildir.el (elmo-maildir-search): Likewise.
8011
8012 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
8013
8014         * elmo-msgdb.el (elmo-living-messages): New function.
8015         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
8016         * elmo-cache.el (elmo-cache-list-folder): Ditto.
8017         * elmo-dop.el (elmo-dop-list-folder): Ditto.
8018         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
8019         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
8020         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
8021         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
8022         * elmo-multi.el (elmo-multi-list-folder): Ditto.
8023         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
8024         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
8025         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
8026
8027 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
8028
8029         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
8030
8031         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
8032
8033         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
8034
8035         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
8036         arguments for `SEARCH' command.
8037         (elmo-imap4-parse-string): Set `POS' argument for char-after.
8038         All other related portions are changed.
8039
8040         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
8041
8042         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
8043         (elmo-list-folder-unread): Rewrite.
8044         (elmo-list-folder-important): Ditto.
8045
8046         * elmo-util.el (elmo-filter-get-spec): Rewrite.
8047         (elmo-condition-parse-error): New inline function.
8048         (elmo-read-search-condition): New function.
8049         (elmo-read-search-condition-internal): Ditto.
8050         (elmo-parse-search-condition): Rewrite.
8051         (elmo-condition-parse): New function.
8052         (elmo-condition-parse-or-expr): Ditto.
8053         (elmo-condition-parse-and-expr): Ditto.
8054         (elmo-condition-parse-primitive): Ditto.
8055         (elmo-condition-parse-search-value): Ditto.
8056         (elmo-buffer-field-primitive-condition-match): Ditto.
8057         (elmo-buffer-field-condition-match): Rewrite.
8058         (elmo-file-field-condition-match): Ditto.
8059
8060         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
8061         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
8062
8063         * elmo-internal.el (elmo-internal-search): Set `number' and
8064         `number-list' argument of `elmo-file-field-condition-match'.
8065
8066         * elmo-maildir.el (elmo-maildir-search): Ditto.
8067
8068         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
8069         `msgdb' as argument instead of `mark-alist'.
8070         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
8071         `overview'.
8072
8073         * elmo-multi.el: Likewise.
8074
8075         * elmo-pipe.el: Likewise.
8076
8077         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
8078         (elmo-imap4-search-internal): Rewrite.
8079         (elmo-imap4-search): Ditto.
8080
8081         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
8082         (elmo-filter-list-folder-unread): Ditto.
8083         (elmo-filter-list-folder-important): Ditto.
8084         (elmo-filter-search): Rewrite.
8085
8086         * elmo-cache.el (elmo-cache-search-all): Set `number' and
8087         `number-list' argument of `elmo-file-field-condition-match'.
8088         (elmo-cache-search): Ditto.
8089
8090         * elmo-localdir.el: Likewise.
8091
8092         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
8093         number-list and pass it to `elmo-buffer-field-condition-match'.
8094         (elmo-archive-field-condition-match): Pass `number-list' to
8095         `elmo-archive-field-condition-match'
8096
8097 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
8098
8099         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
8100         `listgroup'.
8101
8102         * elmo2.el (elmo-folder-diff-async-callback): New variable.
8103         (elmo-folder-diff-async-callback-data): Ditto.
8104         (elmo-folder-diff-async): New function.
8105
8106         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8107         (elmo-network-session-cache-key): Use it as a prefix of the session
8108         name.
8109         (elmo-network-open-session): Ditto.
8110
8111         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
8112         (elmo-imap4-status-callback-data): Ditto.
8113         (elmo-imap4-server-diff-async-callback): New variable.
8114         (elmo-imap4-server-diff-async-callback-data): Ditto.
8115         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
8116         `elmo-imap4-status-callback-data'.
8117         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
8118         `elmo-imap4-status-callback-data' as nil.
8119         (elmo-imap4-server-diff): Ditto.
8120         (elmo-imap4-server-diff-async-callback-1): New function.
8121         (elmo-imap4-server-diff-async): Ditto.
8122         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
8123
8124 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
8125
8126         * elmo-util.el (elmo-list-delete): Doc fix.
8127         (elmo-delete-lists): Abolish.
8128         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
8129         instead of `elmo-delete-lists'.
8130
8131 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
8132
8133         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
8134         before `sort'.
8135
8136 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
8137
8138         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
8139         `elmo-imap4-literal-subr'.
8140         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
8141         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
8142
8143 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8144
8145         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
8146         (elmo-archive-list-folder): Fix.
8147         (elmo-archive-max-of-folder): Fix.
8148
8149 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
8150
8151         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
8152          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
8153         (elmo-localdir-append-msg): Ditto.
8154         (elmo-localdir-list-folder): Fix for `nonsort'.
8155         (elmo-localdir-list-folder-subr): Fix for `killed'.
8156         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
8157         (elmo-maildir-list-folder-subr): Ditto.
8158         * elmo-archive.el (elmo-archive-list-folder): Ditto.
8159         (elmo-archive-list-folder-subr): Ditto.
8160         * elmo-internal.el (elmo-internal-list-folder): Ditto.
8161         (elmo-internal-list-folder-subr): Ditto.
8162
8163 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
8164
8165         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
8166
8167 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
8168
8169         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
8170
8171 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
8172
8173         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
8174         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8175
8176         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
8177         before greeting.
8178         (elmo-imap4-read-part): Use "body.peek" to fetch part.
8179         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
8180
8181 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
8182
8183         * mmelmo-imap4-2.el (mime-entity-children): Defined.
8184
8185         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
8186         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
8187         before STORE command.
8188
8189 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
8190
8191         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
8192
8193         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
8194         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
8195         of `response'.
8196         (elmo-imap4-list-folders): Removed unused local variable.
8197         (elmo-network-initialize-session): Ditto.
8198         (elmo-imap4-delete-msg-by-id): Ditto.
8199         (elmo-imap4-parse-fetch): Ditto.
8200         (elmo-imap4-copy-msgs): Ditto.
8201         Use `dst-spec' instead of `dst-folder'.
8202         (elmo-network-authenticate-session): Check authenticate type `plain'.
8203
8204 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
8205
8206         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
8207         garbage checking.
8208         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
8209         `elmo-imap4-response-value'.
8210         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
8211
8212 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
8213
8214         * elmo-imap4.el (elmo-imap4-send-command):
8215         Cause elmo-imap4-bye-error when current response is BYE.
8216         (elmo-imap4-arrival-filter): Changed greeting response value.
8217
8218         * elmo2.el (elmo-imap4-bye-error): Define.
8219
8220         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
8221         (elmo-imap4-server-diff): Ditto.
8222         (elmo-imap4-response-bye-p): New macro.
8223         (elmo-imap4-response-error-text): Get text from BYE response.
8224         (elmo-imap4-read-response): Return if BYE response.
8225         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
8226         (elmo-imap4-folder-exists-p): Ditto.
8227         (elmo-imap4-commit): Do nothing when different mailbox is selected.
8228         (elmo-imap4-parse-bye): New function.
8229         (elmo-imap4-parse-response): Remove needless let.
8230         Call `elmo-imap4-parse-bye'.
8231
8232 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
8233
8234         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
8235         the mailbox does not exist.
8236         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
8237
8238 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
8239
8240         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
8241
8242 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
8243
8244         * elmo-vars.el (elmo-search-mime-charset): Abolished.
8245
8246         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
8247         (elmo-network-initialize-session-buffer): Defined.
8248
8249         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
8250         Abolished.
8251         (mmelmo-imap4-get-mime-entity): Rewrite.
8252
8253         * elmo2.el (elmo-error): Capitalize error message.
8254
8255         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
8256         (elmo-network-session-buffer): New macro.
8257         (elmo-network-open-session): Use it.
8258
8259         * elmo-imap4.el: Rewrite.
8260
8261 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
8262
8263         * elmo-nntp.el (Toplevel): Require 'elmo-net.
8264
8265 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
8266
8267         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
8268         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
8269         (elmo-imap4-create-msgdb-from-overview-string): Use
8270         `elmo-msgdb-create-overview-from-buffer'.
8271
8272 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
8273
8274         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
8275         (elmo-imap4-default-hierarchy-delimiter): New variable.
8276         (elmo-imap4-list-folders): Use it.
8277
8278 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
8279
8280         * elmo-net.el (elmo-network-open-session): Add user and
8281         stream-type for process-buffer name.
8282
8283         * elmo-pop3.el (elmo-network-initialize-session): Call
8284         buffer-disable-undo.
8285
8286         * elmo-imap4.el (elmo-network-initialize-session):
8287         Set current-buffer as an argument for `buffer-disable-undo'.
8288
8289         * elmo-pop3.el (elmo-network-close-session): Don't use
8290         `process-live-p'.
8291
8292         * elmo-vars.el (elmo-default-pop3-authenticate-type):
8293         Set default as 'user.
8294
8295         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
8296
8297         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
8298         and `elmo-imap4-flush-connection'.
8299
8300         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
8301         (elmo-pop3-get-spec): Assume auth as symbol.
8302         (elmo-open-network-stream): Moved to `elmo-net'.
8303
8304         * elmo-pop3.el (toplevel): Require 'elmo-net.
8305         Define `sasl-cram-md5' to silence byte compilier.
8306         (elmo-pop3-connection-cache) Abolished.
8307         (elmo-pop3-authenticator-alist) New variable.
8308         (elmo-pop3-session): Define.
8309         (elmo-pop3-connection-get-process): Abolished.
8310         (elmo-pop3-connection-get-buffer): Ditto.
8311         (elmo-pop3-close-connection): Ditto.
8312         (elmo-pop3-flush-connection): Ditto.
8313         (elmo-pop3-get-connection): Ditto.
8314         (elmo-pop3-get-session): New function.
8315         (Replacement for `elmo-pop3-get-connection').
8316         All other related modules are changed.
8317         (elmo-network-close-session): Define.
8318         (elmo-pop3-send-command): Abolished argument `buffer'.
8319         All other related modules are changed.
8320         (elmo-pop3-read-response): Likewise.
8321         (elmo-pop3-open-connection): Abolished.
8322         (elmo-pop3-auth-user): New function.
8323         (elmo-pop3-auth-apop): Ditto.
8324         (elmo-pop3-auth-cram-md5): Ditto.
8325         (elmo-pop3-auth-scram-md5): Ditto.
8326         (elmo-pop3-auth-digest-md5): Ditto.
8327         (elmo-network-initialize-session): Define.
8328         (elmo-network-authenticate-session): Ditto.
8329         (elmo-network-setup-session): Ditto.
8330
8331         * elmo-imap4.el (toplevel): Require 'elmo-net.
8332         (elmo-imap4-session): Define.
8333         (elmo-imap4-connection-cache): Abolished.
8334         (elmo-imap4-password-key): Ditto.
8335         (elmo-imap4-flush-connection): Ditto.
8336         (elmo-imap4-get-connection): Ditto.
8337         All other related modules are changed.
8338         (elmo-imap4-get-session): New function
8339         (Replacement for `elmo-imap4-get-connection').
8340         (elmo-imap4-read-response): Abolished argument `buffer'.
8341         All other related modules are changed.
8342         (elmo-imap4-send-command): Likewise.
8343         (elmo-imap4-select-folder): Abolished.
8344         All other related modules are changed.
8345         (elmo-imap4-select-mailbox): New function.
8346         (Replacement for `elmo-imap4-select-folder').
8347         (elmo-imap4-auth-login): Simplify.
8348         (Assume current buffer as process buffer)
8349         (elmo-imap4-auth-cram-md5): Ditto.
8350         (elmo-imap4-auth-digest-md5): Ditto.
8351         (elmo-imap4-login): Ditto.
8352         (elmo-imap4-open-connection): Abolished.
8353         (elmo-imap4-open-connection-1): Abolished.
8354         (elmo-network-initialize-sessoin): Define.
8355         (elmo-network-authenticate-session): Ditto.
8356         (elmo-network-setup-session): Ditto.
8357
8358         * elmo-net.el: New module.
8359
8360 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
8361
8362         * elmo-util.el (elmo-define-error): New function.
8363
8364         * elmo2.el (elmo-error): Define.
8365         (elmo-open-error): Define.
8366         (elmo-authenticate-error): Define.
8367
8368         * elmo-imap4.el (elmo-imap4-error): Abolish.
8369         (elmo-imap4-error-type): Abolish.
8370         (elmo-imap4-error-process): Abolish.
8371         (elmo-imap4-error-message): Abolish
8372         (elmo-imap4-list-folders): Don't quote lambda.
8373         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
8374         (elmo-imap4-parse-namespace): Ditto.
8375         (elmo-imap4-open-connection): Rewrite.
8376         (elmo-imap4-open-connection-1): Simplified (authenticate only).
8377         (elmo-imap4-get-connection): Abolish local variable `result'.
8378
8379 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
8380
8381         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
8382         wrong-type-argument error when auth is nil.
8383
8384 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
8385
8386         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
8387         (elmo-default-nntp-stream-type): Ditto.
8388         (elmo-default-pop3-stream-type): Ditto.
8389         (elmo-network-stream-type-alist): Ditto.
8390         (elmo-default-imap4-ssl): Abolished.
8391         (elmo-default-nntp-ssl): Ditto.
8392         (elmo-default-pop3-ssl): Ditto.
8393
8394         * elmo-util.el: (toplevel): Removed needless requires.
8395         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
8396         (elmo-open-network-stream): Open network stream according to
8397         the value of `elmo-network-stream-type-alist'.
8398         (elmo-get-network-stream-type): New function.
8399         (elmo-network-stream-type-spec-string): New macro.
8400         (elmo-network-stream-type-symbol): Ditto.
8401         (elmo-network-stream-type-function): Ditto.
8402
8403         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
8404         network-stream-type. All other related portions are changed.
8405         (elmo-pop3-open-connection): Ditto.
8406
8407         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
8408         network-stream-type. All other related portions are changed.
8409
8410         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
8411         network-stream-type.All other related portions are changed.
8412         (elmo-imap4-error): New macro.
8413         (elmo-imap4-error-type): Ditto.
8414         (elmo-imap4-error-process): Ditto.
8415         (elmo-imap4-error-message): Ditto.
8416         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
8417         (elmo-imap4-auth-cram-md5): Ditto.
8418         (elmo-imap4-auth-digest-md5): Ditto.
8419         (elmo-imap4-login): Ditto.
8420         (elmo-imap4-open-connection): Remove password entry if authentication
8421         was in vain.
8422         (elmo-imap4-user-at-host): Abolished.
8423         (elmo-imap4-password-key): New buffer local variable.
8424         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
8425         using protocol, port, auth and stream-type.
8426
8427         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
8428
8429 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
8430
8431         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
8432
8433         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
8434
8435         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
8436         (elmo-imap4-authenticator-alist): New variable.
8437         (elmo-imap4-open-connection-1): Rename from
8438         elmo-imap4-open-connection.
8439         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
8440         only wraps elmo-imap4-open-connection-1.
8441         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
8442         user-at-host.
8443         (elmo-imap4-auth-login): New function.
8444         (elmo-imap4-auth-cram-md5): New function.
8445         (elmo-imap4-auth-digest-md5): New function.
8446         (elmo-imap4-login): New function.
8447
8448 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8449
8450         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
8451         function `error'.
8452
8453 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
8454
8455         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
8456
8457 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
8458
8459         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
8460
8461 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
8462
8463         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
8464         for server responses, quote `*' regardless of where it appears.
8465
8466 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8467
8468         * elmo-maildir.el (elmo-maildir-commit): New alias.
8469
8470 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
8471
8472         * elmo-util.el (elmo-display-progress):
8473                 Use `progress-feedback-with-label'.
8474
8475 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
8476
8477         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
8478         (elmo-imap4-non-atom-char-regex): Ditto.
8479         (elmo-imap4-non-text-char-regex): Ditto.
8480         (elmo-imap4-literal-threshold): Ditto.
8481         (elmo-imap4-atom-p): New function.
8482         (elmo-imap4-quotable-p): Ditto.
8483         (elmo-imap4-nil): Ditto.
8484         (elmo-imap4-atom): Ditto.
8485         (elmo-imap4-quoted): Ditto.
8486         (elmo-imap4-literal-subr): Ditto.
8487         (elmo-imap4-literal): Ditto.
8488         (elmo-imap4-buffer-literal): Ditto.
8489         (elmo-imap4-string-subr): Ditto.
8490         (elmo-imap4-string): Ditto.
8491         (elmo-imap4-buffer-string): Ditto.
8492         (elmo-imap4-astring-subr): Ditto.
8493         (elmo-imap4-astring): Ditto.
8494         (elmo-imap4-buffer-astring): Ditto.
8495         (elmo-imap4-nstring): Ditto.
8496         (elmo-imap4-buffer-nstring): Ditto.
8497         (elmo-imap4-mailbox): New alias.
8498         (elmo-imap4-field-body): Ditto.
8499         (elmo-imap4-userid): Ditto.
8500         (elmo-imap4-password): Ditto.
8501         (elmo-imap4-format-quoted): New function.
8502         (elmo-imap4-send-command): Rewritten.  Accept a list of command
8503         arguments and handle "atom", "quoted" and "literal" string here.
8504         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
8505         `elmo-imap4-send-command'.
8506         (elmo-imap4-folder-exists-p): Likewise.
8507         (elmo-imap4-create-folder): Likewise.
8508         (elmo-imap4-delete-folder): Likewise.
8509         (elmo-imap4-rename-folder): Likewise.
8510         (elmo-imap4-max-of-folder): Likewise.
8511         (elmo-imap4-check-validity): Likewise.
8512         (elmo-imap4-sync-validity): Likewise.
8513         (elmo-imap4-server-diff): Likewise.
8514         (elmo-imap4-select-folder): Likewise.
8515         (elmo-imap4-copy-msgs): Likewise.
8516         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
8517         (elmo-imap4-mark-set-on-msgs): Likewise.
8518         (elmo-imap4-read-part): Likewise.
8519         (elmo-imap4-read-msg): Likewise.
8520         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
8521         `elmo-imap4-password' for `elmo-imap4-send-command'.
8522         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
8523         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
8524         `elmo-imap4-buffer-literal'.
8525         (elmo-imap4-append-msg): Likewise.
8526
8527         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
8528         `delete' for removing dead connection from the connection cache.
8529         Move deletion of the process buffer after that.
8530         (elmo-imap4-list): Change `defsubst' to `defun'.
8531         (elmo-imap4-commit): Make error message verbose.
8532         (elmo-imap4-search): Ditto.
8533         (elmo-imap4-list): Ditto.
8534         (elmo-imap4-select-folder): Ditto.
8535         (elmo-imap4-copy-msgs): Ditto.
8536         (elmo-imap4-delete-msg-by-id): Ditto.
8537         (elmo-imap4-append-msg-by-id): Ditto.
8538         (elmo-imap4-append-msg): Ditto.
8539
8540 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
8541
8542         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
8543         when dired is used on XEmacs.
8544
8545 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
8546
8547         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
8548         instead of `append'.
8549         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
8550         `elmo-plugged-p' directly.
8551         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
8552         of `elmo-plugged-p' directly.
8553
8554         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
8555         Eliminate unused variable.  Use `memq' for checking a process status.
8556         Use `cons' instead of `append' for updating the connection cache.
8557         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
8558         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
8559
8560 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
8561
8562         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
8563         `elmo-imap4-read-point' exactly.
8564
8565         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
8566         the local variable `folder' to `mailbox'.
8567         Rename the argument `fld' to `folder'.
8568
8569 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
8570
8571         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
8572         * elmo-imap4.el (elmo-imap4-commit): Ditto.
8573
8574 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
8575
8576         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
8577         (elmo-pop3-number-uidl-hash): New buffer-local variable.
8578         (elmo-pop3-uidl-number-hash): Ditto.
8579         (elmo-pop3-size-hash): Ditto.
8580         (elmo-pop3-uidl-done): Ditto.
8581         (elmo-pop3-list-done): Ditto.
8582         (elmo-pop3-connection-get-process): New defmacro.
8583         (elmo-pop3-connection-get-buffer): Ditto.
8584         (elmo-pop3-close-connection): Delete buffer and process.
8585         (elmo-pop3-flush-connection): Don't delete buffer and process.
8586         (elmo-pop3-get-connection): Added optional argument `if-exists'.
8587         Setup UIDL and size hash.
8588         (elmo-pop3-send-command-no-erase): Deleted
8589         (elmo-pop3-send-command): Added optional argument `no-erase'.
8590         (elmo-pop3-parse-uidl-response): New function.
8591         (elmo-pop3-parse-list-response): Set size hash.
8592         (elmo-pop3-list-location): New function.
8593         (elmo-pop3-list-by-uidl-subr): Ditto.
8594         (elmo-pop3-list-by-list): Ditto.
8595         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
8596         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
8597         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
8598         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
8599         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
8600         Use uidl.
8601         (elmo-pop3-uidl-to-number): New function.
8602         (elmo-pop3-number-to-uidl): Ditto.
8603         (elmo-pop3-number-to-size): Ditto.
8604         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
8605         Set number by use of uidl.
8606         (elmo-pop3-msgdb-create-message): Likewise.
8607         Set size, loc-alist in msgdb.
8608         (elmo-pop3-read-msg): Set number by use of uidl.
8609         Added optional argument `msgdb'.
8610         (elmo-pop3-delete-msg): Ditto.
8611         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
8612         (elmo-pop3-commit): Close connection.
8613
8614         * elmo-pipe.el (elmo-pipe-max-of-folder):
8615         Bind `elmo-pop3-use-uidl' as nil.
8616         (elmo-pipe-drain): Ditto.
8617         Call `elmo-commit'.
8618
8619         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
8620         (elmo-msgdb-overview-entity-set-size): New defsubst.
8621
8622 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
8623
8624         * elmo-vars.el (elmo-use-killed-list): New variable
8625         (Renamed from `elmo-nntp-use-killed-list').
8626         (elmo-nntp-use-killed-list): Eliminated.
8627
8628         * elmo-msgdb.el (elmo-msgdb-expand-path):
8629         Changed expanding msgdb path for elmo-multi.
8630
8631         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
8632         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
8633         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
8634         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
8635         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
8636         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
8637         (toplevel): Deleted time-stamp line.
8638
8639         * elmo2.el (elmo-clear-killed ): Defined as function
8640         (Abolished defining as a backend function).
8641         All other related modules are changed.
8642
8643 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
8644
8645         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
8646
8647 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
8648
8649         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
8650
8651 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
8652
8653         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
8654
8655 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
8656
8657         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
8658         asynchronous folder check.
8659
8660         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
8661
8662         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
8663         `elmo-nntp-use-killed-list'.
8664         (elmo-nntp-list-folder): Use killed list.
8665         (elmo-nntp-max-of-folder): Ditto.
8666         (elmo-nntp-msgdb-create): Set killed list.
8667
8668         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
8669
8670         * elmo2.el (elmo-clear-killed): New backend function.
8671         All other related modules are changed.
8672
8673 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
8674
8675         * elmo-util.el (elmo-imap4-spec-folder): Use
8676         `elmo-imap4-spec-mailbox'; Mark as obsolete.
8677         All callers changed.
8678
8679 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
8680
8681         * mmelmo-2.el (initialize-instance):
8682         Use `mime-buffer-entity-buffer-internal' instead of
8683         `mime-entity-buffer'.
8684
8685         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
8686         (mime-entity-body): Implemented.
8687         (mime-goto-header-start-point): Deleted.
8688         (mime-goto-body-end-point): Ditto.
8689         (mime-entity-point-min): Ditto.
8690         (mime-entity-point-max): Ditto.
8691         (mime-entity-children): Ditto.
8692         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
8693         instead of `mime-entity-buffer'.
8694         (mime-entity-header-buffer): Ditto.
8695         (mime-entity-body-buffer): Ditto.
8696         (mime-write-entity-content): Ditto.
8697
8698         * pldap.el (ldap-static-if): New macro.
8699         (toplevel): Use it instead of `static-if'.
8700
8701 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
8702
8703         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
8704         included in `attrs' argument.
8705
8706 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
8707
8708         * elmo-util.el (elmo-get-passwd): Use old backquote style.
8709
8710         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
8711         (ldap-ldif-safe-init-char-regexp): Ditto.
8712         (ldap-ldif-safe-string-regexp): Ditto.
8713         (ldap/ldif-safe-string-p): New macro.
8714         (ldap/ldif-insert-field): Ditto.
8715         (ldap-modify): Use it.
8716         (ldap-add): Ditto.
8717         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
8718         (ldap-decode-attribute): Decode only when `attr' is consp.
8719         (ldap-delete): Bind `ret'.
8720         (toplevel): Require 'cl at compile time.
8721         Removed (require 'poe) and (require 'std11).
8722         (pldap-version): Eliminated.
8723         (ldap-search-basic): Removed auth and dn binding.
8724         (ldap-ldif-field-name-regexp): New constant.
8725         (ldap-ldif-field-head-regexp): Ditto.
8726         (ldap-ldif-next-field-head-regexp): Ditto.
8727         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
8728         (ldap/field-end): New function.
8729         (ldap/field-body): Use it.
8730         (ldap/collect-field): Ditto.
8731         (ldap-search-basic): Use `ldap/field-body'.
8732
8733 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
8734
8735         * pldap.el (ldap-default-attribute-encoder): New user option.
8736         (ldap/field-body): Decode base64 string.
8737         (ldap/collect-field): Ditto.
8738         (ldap-encode-attribute): New function.
8739         (ldap-add-entries): Use it.
8740         (ldap-modify-entries): Ditto.
8741         (ldap-search-entries): Enclosed decoding function with
8742         `with-temp-buffer' and set as unibyte.
8743         (ldap-search-basic): Set process buffer as unibyte.
8744
8745         * elmo-util.el (elmo-folder-identical-system-p):
8746         Eliminated name space checking.
8747
8748         * pldap.el: New module.
8749         toplevel: Changed condition to detect built-in ldap feature.
8750         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
8751         (ldap-add): Added error handling.
8752         (ldap-modify): Ditto.
8753         (ldap-delete): Ditto.
8754
8755 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
8756
8757         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
8758         Initialize local variables with `let'.  Inline a temporary
8759         variable for the progress percentage.  Sort `setq' to reduce
8760         function call in the while-loop.
8761
8762         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
8763         into the conditional branch.
8764
8765 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
8766
8767         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
8768         Move a conditional out of the while-loop.
8769
8770 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8771
8772         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
8773         elmo-msgdb-overview-get-entity-by-number.
8774         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
8775         throw.
8776
8777 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
8778
8779         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
8780         the local variable for a packed number self descriptively.
8781
8782 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8783
8784         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
8785         * elmo-localdir.el (elmo-localdir-pack-number): Use
8786         `elmo-msgdb-overview-get-entity' instead of
8787         `elmo-msgdb-overview-get-entity-by-number'.
8788         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
8789         (elmo-msgdb-search-overview-entity): Removed.
8790         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
8791         by message-id or number.
8792         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
8793         instead of `elmo-msgdb-overview-get-entity-by-number'.
8794
8795 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8796
8797         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
8798         non-nil, use hash table for overview.
8799         (elmo-hash-maximum-size): New variable.
8800         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
8801         (elmo-msgdb-make-overview-hashtb): New function.
8802         (elmo-msgdb-clear-overview-hashtb): New function.
8803         (elmo-clear-hash-val): New macro.
8804         All other related modules are changed.
8805
8806 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
8807
8808         * elmo2.el (elmo-move-msgs): If there's other message with
8809         same message-id, don't use cache.
8810
8811 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
8812
8813         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
8814         number is already packed.
8815
8816 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
8817
8818         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
8819
8820 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8821
8822         * elmo-vars.el (elmo-display-progress-threshold): New variable.
8823         All other related modules are changed.
8824
8825 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
8826
8827         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
8828         of refiling failure on Maildir.
8829
8830 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8831
8832         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
8833         decoded mime-charset with cache.
8834         (elmo-msgdb-overview-entity-get-from): Ditto.
8835         (elmo-msgdb-overview-entity-get-subject): Ditto.
8836         * elmo-vars.el (elmo-use-decoded-cache): New variable.
8837
8838 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
8839
8840         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
8841         (elmo-remove-passwd): Fill password with 0 before erase.
8842         * elmo-vars.el (elmo-passwd-life-time): New variable.
8843
8844 \f
8845 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
8846
8847         * elmo-cache.el (elmo-buffer-cache-add):
8848         Set message cache buffer as unibyte.
8849
8850 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
8851
8852         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
8853         become nil.
8854
8855 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
8856
8857         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
8858         when display is finished.
8859         (elmo-nntp-msgdb-create): Ditto.
8860         (elmo-nntp-groups-read-response): Ditto.
8861         (elmo-nntp-retrieve-headers): Ditto.
8862         (elmo-nntp-msgdb-create-message): Ditto.
8863         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
8864         (elmo-pop3-msgdb-create-message): Ditto.
8865
8866 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8867
8868         * elmo-maildir.el (elmo-maildir-msgdb-create):
8869         Use `elmo-msgdb-sort-by-date'.
8870
8871 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
8872
8873         * elmo2.el (elmo-read-msg-no-cache):
8874         Eliminated arguments after `outbuf'.
8875         Don't use cache even if it exists.
8876         (elmo-read-msg): Don't pass arguments after `outbuf' to
8877         `elmo-read-msg-no-cache'.
8878
8879 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
8880
8881         * elmo-archive.el (elmo-archive-list-folders):
8882         Use `file-name-directory' if base folder does not exist.
8883
8884 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
8885
8886         * elmo-archive.el (elmo-archive-list-folders): Don't use
8887         `file-name-directory'.
8888
8889 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
8890
8891         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
8892         If `force' is non-nil, try flushing all operation queues.
8893
8894 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
8895
8896         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
8897         as-binary-process.
8898
8899 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8900
8901         * elmo-util.el (elmo-display-progress): Fixed.
8902
8903 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
8904
8905         * elmo-util.el (elmo-display-progress): New function.
8906         All other related modules are changed.