* elmo-database.el: No need to require elmo-msgdb.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
2
3         * elmo-database.el: No need to require elmo-msgdb.
4
5 2004-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
6
7         * elmo-nmz.el (elmo-folder-list-subfolders): Use `directory-files'
8         instead of `elmo-list-subdirectories'.
9
10 2004-09-20  Yoichi NAKAYAMA  <yoichi@geiin.org>
11
12         * elmo-nmz.el (elmo-folder-initialize): Enable "[" for access
13         group entry.
14         (elmo-folder-exists-p): "[" is empty.
15         (elmo-folder-list-subfolders): Define.
16         (elmo-folder-have-subfolder-p): Ditto.
17
18 2004-09-19  Yoichi NAKAYAMA  <yoichi@geiin.org>
19
20         * elmo-flag.el (elmo-folder-delete): Update elmo-global-flag-list.
21
22 2004-09-14  Tetsurou Okazaki  <okazaki@be.to>
23
24         * elmo-filter.el (elmo-folder-local-p): Define.
25
26 2004-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
27
28         * modb-standard.el (modb-standard-loaded-message-id): Return nil
29         when entity is garbaged.
30         (modb-standard-save-entity-1): Don't modify the original entity.
31
32 2004-09-13  Tetsurou Okazaki  <okazaki@be.to>
33
34         * elmo-util.el (elmo-delete-if): Reduce loop strength in a while loop.
35
36 2004-09-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
37
38         * elmo.el (elmo-strict-folder-diff): Use
39         `elmo-folder-list-messages' instead of `elmo-msgdb-list-messages'.
40
41 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
42
43         * modb.el (elmo-msgdb-flag-available-p): New generic function.
44         (elmo-msgdb-message-number): Ditto.
45         (elmo-msgdb-message-field): Ditto.
46
47         * modb-standard.el (modb-standard-economize-entity-size): New user
48         option.
49         (modb-standard-loaded-message-id): New inline function.
50         (modb-standard-load-entity): Use it.
51         (modb-standard-save-entity-1): If `modb-standard-economize-entity-size',
52         throw message-id string away.
53         (elmo-msgdb-flag-available-p): Define.
54         (elmo-msgdb-message-number): Ditto.
55         (elmo-msgdb-message-field): Ditto.
56
57         * modb-legacy.el (modb-legacy-flag-list): Fix typo
58         (suppoted -> supported).
59         (modb-legacy-supported-flag-p): Ditto.
60         (elmo-msgdb-set-flag): Ditto.
61         (elmo-msgdb-unset-flag): Ditto.
62         (elmo-msgdb-flag-available-p): Define.
63
64         * modb-entity.el (elmo-message-entity-handler): If CAR element of entity
65         is `t', treat it as legacy entity.
66         
67         * elmo.el (elmo-message-flag-available-p): New generic function.
68         (elmo-message-number): Ditto.
69         (elmo-message-field): Use `elmo-msgdb-message-field'.
70
71         * elmo-vars.el (elmo-preserved-flags): Added `forwarded'.
72
73         * elmo-pipe.el (elmo-message-flag-available-p): Define.
74         (elmo-message-number): Ditto.
75
76         * elmo-multi.el (elmo-message-number): Define.
77         (elmo-message-flag-available-p): Ditto.
78
79         * elmo-filter.el (elmo-message-flag-available-p): Define.
80         (elmo-message-number): Ditto.
81
82         * elmo-flag.el (elmo-flag-folder): Added slot `max-number'.
83         (elmo-folder-initialize): Load `max-number'.
84         (elmo-folder-commit): Save it.
85         (elmo-folder-list-global-flag-messages): Use `elmo-message-number'.
86         (elmo-global-flag-set-internal): Set up max-number slot.
87
88 2004-09-12  Yuuichi Teranishi  <teranisi@gohome.org>
89
90         * elmo-version.el (elmo-version): Up to 2.11.31.
91
92 2004-09-09  Yuuichi Teranishi  <teranisi@gohome.org>
93
94         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Use
95         unibyte string of the current buffer for the argument of `md5'
96         (Reported by Yoichi NAKAYAMA <yoichi@geiin.org>).
97
98 2004-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
99
100         * modb-legacy.el (modb-legacy-flag-list): New constant.
101         (modb-legacy-suppoted-flag-p): New internal function.
102         (elmo-msgdb-set-flag): Cause error when `flag' is not supported.
103         (elmo-msgdb-unset-flag): Ditto.
104
105 2004-09-05  Yuuichi Teranishi  <teranisi@gohome.org>
106
107         * elmo.el (elmo-make-folder): Remove text properties for prefix.
108
109         * elmo-flag.el (elmo-folder-list-subfolders): Fetch flag names
110         from msgdb.
111
112 2004-08-31  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
113
114         * elmo-multi.el (elmo-folder-count-flags): Changed return value
115         (follow the API change).
116
117         * elmo-filter.el (elmo-folder-count-flags): Ditto.
118
119 2004-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
120
121         * modb-standard.el (modb-standard-digest-flags): Abolish.
122         (elmo-msgdb-list-flagged): Use elmo-digest-flags instead.
123
124         * elmo-vars.el (elmo-digest-flags): New variable.
125         (elmo-preserved-flags): Moved from elmo-flag.el.
126
127         * elmo-imap4.el (elmo-imap4-flag-to-imap-search-key): New function.
128         (elmo-imap4-flag-to-imap-criteria): Ditto.
129         (elmo-imap4-folder-list-flagged): Use it.
130
131         * elmo-flag.el (elmo-preserved-flags): Moved to elmo-vars.el.
132
133         * elmo.el (elmo-folder-count-flags): Changed return value.
134
135         * elmo-flag.el (elmo-preserved-flags): New variable.
136         (elmo-get-global-flags): Use it.
137
138         * modb-standard.el (modb-standard-digest-flags): New variable.
139         (elmo-msgdb-list-flagged): Use it for `digest'; Add `uncached';
140         Changed behavior of `any'.
141
142         * elmo-imap4.el (elmo-imap4-flag-specs): Added keyword flags
143         which are defined the Internet draft
144         (draft-melnikov-imap-keywords-03.txt).
145         (elmo-imap4-flags-to-imap): New function.
146         (elmo-folder-append-buffer): Use it.
147
148         * modb-legacy.el (modb-legacy-answered-uncached-mark): Fixed typo
149         in the docstring.
150
151         * utf7.el (utf7-fragment-encode): Don't use narrow-to-region to
152         avoid the bug of Emacs 21.3.
153
154 2004-08-31  Yoichi NAKAYAMA  <yoichi@geiin.org>
155
156         * utf7.el (utf7-utf-16-coding-system): Avoid error when the
157         function find-coding-system does not exist.
158
159 2004-08-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
160
161         * elmo-util.el (elmo-condition-parse-search-value): Fixed atom
162         parsing.
163
164 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
165
166         * elmo-pop3.el (elmo-pop3-read-response): Refined the regexp for
167         response codes.
168
169 2004-08-09  Yuuichi Teranishi  <teranisi@gohome.org>
170
171         * elmo-pop3.el (elmo-pop3-read-response): Treat response codes.
172         (elmo-network-close-session): Follow the changes in
173         `elmo-pop3-read-response'.
174         (elmo-pop3-auth-user): Ditto.
175         (elmo-pop3-auth-apop): Ditto.
176         (elmo-network-initialize-session): Ditto.
177         (elmo-network-authenticate-session): Ditto.
178         (elmo-network-setup-session): Ditto.
179         (elmo-folder-status): Ditto.
180         (elmo-message-fetch-plugged): Ditto.
181         (elmo-pop3-delete-msg): Ditto.
182
183 2004-07-15  Yoichi NAKAYAMA  <yoichi@geiin.org>
184
185         * elmo-archive.el (elmo-archive-folder-append-buffer): Return nil
186         on failure.
187
188 2004-07-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
189
190         * elmo-util.el (elmo-set-work-buf): Define edebug spec and indent
191         style.
192         (elmo-bind-directory): Ditto.
193
194 2004-07-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
195
196         * elmo.el (elmo-folder-append-messages): Note on return value.
197         * elmo-archive.el (elmo-folder-append-messages): Don't return
198         message numbers which could not be appended.
199
200 2004-07-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
201
202         * elmo.el (elmo-message-fetch-threshold): Add nil to its range.
203
204 2004-06-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
205
206         * elmo-version.el (elmo-version): Up to 2.11.30.
207
208 2004-06-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
209
210         * elmo.el (elmo-folder-synchronize): Add 5th optional argument
211         `mask'.
212
213         * elmo-pipe.el (elmo-folder-synchronize): Follow the API chagne.
214
215         * elmo-multi.el (elmo-folder-synchronize): Likewise.
216         (elmo-multi-split-numbers): Add elmo-folder object into each
217         element of return value at first.
218         (elmo-folder-delete-messages): Follow the above change.
219         (elmo-folder-detach-messages): Ditto.
220
221         * elmo-filter.el (elmo-folder-synchronize): Minimize message
222         number which is synchronized in target folder.
223
224 2004-05-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
225
226         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list):
227         Change default value to symbol `all'.
228         (elmo-map-message-fetch): Change condition to update overview
229         follow the above.
230
231 2004-05-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
232
233         * elmo-shimbun.el (elmo-map-message-fetch): Change default
234         behavior to update overview.
235         (elmo-shimbun-update-overview-folder-list): Note it.
236
237 2004-05-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
238
239         * modb-standard.el (modb-standard-message-entity): Avoid infinite
240         recursive call.
241
242 2004-05-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
243
244         * elmo-spam.el (elmo-spam-register-good-messages): Don't call
245         buffer-disable-undo, it is unnecessary.
246         (elmo-spam-register-good-messages): Ditto.
247
248         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
249         Ditto.
250
251         * elsp-sa.el (elmo-spam-spamassassin-register-messages): Ditto.
252
253 2004-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
254
255         * elmo-util.el (elmo-set-buffer-multibyte): Abolish.
256         (elmo-set-work-buf): Use set-buffer-multibyte instead of
257         elmo-set-buffer-multibyte.
258         (elmo-object-load): Ditto.
259         (elmo-save-buffer): Ditto.
260         (elmo-delete-char): Ditto.
261         (elmo-file-field-primitive-condition-match): Ditto.
262         (elmo-mime-string): Ditto.
263
264         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Ditto.
265         (elmo-archive-field-condition-match): Ditto.
266
267         * elmo-imap4.el (elmo-imap4-setup-send-buffer): Ditto.
268
269         * elmo-net.el (elmo-network-initialize-session-buffer): Ditto.
270
271         * elmo-nntp.el (elmo-nntp-parse-overview-string): Ditto.
272         (elmo-nntp-msgdb-create-message): Ditto.
273
274         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
275
276         * elmo.el (elmo-message-match-condition): Ditto.
277         (elmo-message-match-condition): Ditto.
278
279         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
280         Ditto.
281
282         * elmo-version.el (elmo-version): Up to 2.11.29.
283
284         * elmo-spam.el (elmo-spam-scheme): Add `header' as a candidate.
285         (elsp-header): New backend.
286
287         * elmo-util.el (elmo-decoded-field-body): New function.
288
289 2004-05-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
290
291         * elmo-version.el (elmo-version): Up to 2.11.28.
292
293 2004-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
294
295         * elmo-filter.el: Rewrite.
296
297         * elmo-version.el (elmo-version): Up to 2.11.27.
298
299 2004-05-05  Yuuichi Teranishi  <teranisi@gohome.org>
300
301         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Changed
302         msgdb path for the localdir folder with absolute path.
303
304         * utf7.el: Synch up with latest gnus/utf7.el;
305         Modified for latest Emacs.
306
307 2004-05-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
308
309         * elmo-shimbun.el (elmo-folder-initialize): Set a dummy when the
310         shimbun backend couldn't open.
311
312 2004-04-25  Tetsurou Okazaki  <okazaki@be.to>
313
314         * elmo-pipe.el (elmo-message-folder): Call `elmo-message-folder' recursively.
315         (elmo-folder-diff): Avoid error `wrong-type-argument number-or-marker-p nil'
316         when a destination folder is a filter folder.
317
318 2004-04-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
319
320         * elmo.el (elmo-message-flags): Add optional argument `msgid'.
321         (elmo-generic-folder-append-messages): Call elmo-message-flags
322         with argument `msgid'.
323
324         * elmo-split.el (elmo-split-subr): Ditto.
325
326         * elmo-pipe.el (elmo-message-flags): Follow the API change.
327
328         * elmo-multi.el (elmo-message-flags): Ditto.
329
330 2004-04-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
331
332         * elmo.el (elmo-folder): Add new slot `flag-table'.
333         (elmo-folder-flag-table): New API.
334         (elmo-folder-close-flag-table): Ditto.
335         (elmo-folder-preserve-flags): New function.
336         (elmo-generic-folder-append-messages): Use
337         `elmo-folder-flag-table' and `elmo-folder-close-flag-table'.
338         Flag of a non-registered message, it sets to nil.
339         Does not set flag to flag-table.
340
341         * elmo-maildir.el (elmo-folder-append-buffer): Use
342         `elmo-folder-preserve-flags'.
343         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
344         `elmo-folder-close-flag-table'.
345
346         * elmo-archive.el (elmo-folder-append-buffer): Fix interface.
347         (elmo-archive-folder-append-buffer): Use
348         `elmo-folder-preserve-flags'.
349
350         * elmo-cache.el (elmo-folder-append-buffer): Ditto.
351
352         * elmo-imap4.el (elmo-folder-append-buffer): Ditto.
353
354         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
355         (elmo-folder-append-messages): Use `elmo-folder-flag-table' and
356         `elmo-folder-close-flag-table'.
357
358         * elmo-version.el (elmo-version): Up to 2.11.26.
359
360 2004-04-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
361
362         * elmo-vars.el (elmo-network-stream-type-alist): Add direct.
363
364         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): Don't use
365         md5's 4th and 5th argument (non-existent in flim one).
366
367 2004-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
368
369         * elmo-split.el (elmo-split-subr): Flag of a non-registered
370         message, It sets to nil.
371
372 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
373
374         * elmo.el (elmo-folder-list-messages): Merge lists only if both
375         list is non-nil.
376
377 2004-04-16  YAMASHITA Junji <ysjj@unixuser.org>
378
379         * elmo.el (elmo-folder-list-messages): Use elmo-uniq-sorted-list.
380
381         * elmo-nntp.el (elmo-nntp-make-msglist): Use elmo-make-number-list.
382
383         * elmo-util.el (elmo-uniq-sorted-list): New function.
384         (elmo-make-number-list): Ditto.
385         (elmo-number-set-to-number-list): Use elmo-make-number-list
386         and don't use nreverse.
387
388 2004-04-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
389
390         * elmo-version.el (elmo-version): Up to 2.11.25.
391
392 2004-04-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
393
394         * elmo-util.el (elmo-msgdb-get-message-id-from-buffer): If date
395         field not exists in message, Use md5 message digest of header.
396
397 2004-04-11  Yoichi NAKAYAMA  <yoichi@geiin.org>
398
399         * elmo.el (elmo-folder-append-buffer): Add note on return value.
400         * elmo-cache.el (elmo-folder-append-buffer): Return nil on failure.
401         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
402         * elmo-split.el (elmo-split-subr): Check return value of
403         elmo-folder-append-buffer.
404
405         * elmo-localdir.el (elmo-folder-append-buffer): Create flag-table.
406         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
407
408         * elmo-cache.el (elmo-folder-append-buffer): Check existence of
409         message-id.
410
411 2004-04-10  Yoichi NAKAYAMA  <yoichi@geiin.org>
412
413         * elmo-split.el (elmo-split-subr): Append message with flag.
414
415         * elmo-localdir.el (elmo-folder-append-buffer): Fix interface.
416         * elmo-flag.el (elmo-folder-append-buffer): Ditto.
417         * elmo-maildir.el (elmo-folder-append-buffer): Ditto.
418
419 2004-04-03  Tetsurou Okazaki  <okazaki@be.to>
420
421         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use `elmo-delete-cr-buffer'.
422         * elmo-nntp.el (elmo-nntp-retrieve-headers): Ditto.
423         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
424
425 2004-03-29  Tetsurou Okazaki  <okazaki@be.to>
426
427         * elmo-pop3.el (elmo-pop3-read-contents): Replace an argument `buffer'
428         with a function call of `process-buffer'.  All callers are updated.
429         (elmo-pop3-retrieve-headers): Likewise.  Move `process' to the 1st argument.
430         Remove redundant `set-buffer' in a while loop.
431
432 2004-03-28  Tetsurou Okazaki  <okazaki@be.to>
433
434         * elmo-pop3.el (elmo-pop3-send-command): Combine `process-send-string'
435         calls.
436
437 2004-03-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
438
439         * elsp-spamfilter.el (elmo-spam-buffer-spam-p): Call
440         elsp-spamfilter-register-buffer-internal with current buffer.
441         (elmo-spam-register-spam-buffer): Ditto.
442         (elmo-spam-register-good-buffer): Ditto.
443
444 2004-03-15  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
445
446         * elmo-imap4.el (elmo-folder-list-subfolders): Add root mailbox
447         if it is not contained in the response(A workaround for courier-imap).
448
449 2004-03-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
450
451         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fix mismatched
452         parenthesis.
453
454 2004-03-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
455
456         * elmo-vars.el (elmo-msgdb-default-type): Remove generic from the
457         range.
458
459 2004-03-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
460
461         * modb-standard.el (elmo-msgdb-list-flagged): Use append instead
462         of nconc.
463
464         * modb-entity.el (elmo-msgdb-match-condition-primitive): Added
465         argument handler.
466         (elmo-msgdb-message-match-condition): Follow the change above.
467
468 2004-02-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
469
470         * elmo-flag.el (elmo-folder-initialize): Complete abbreviated
471         folder name.
472
473 2004-02-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
474
475         * elmo.el (elmo-folder-kill-messages): Don't use msgdb directly.
476
477 2004-02-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
478
479         * elmo.el (elmo-folder-kill-messages): Fix to update killed list.
480
481 2004-02-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
482
483         * elmo-file.el (elmo-file-find): Fixed the problem when file is
484         not found.
485
486 2004-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
487
488         * elmo-file.el (elmo-file-find): Use expand-file-name for return
489         value.
490         (elmo-file-command-argument): Undo last change for cygwin.
491         (elmo-file-detect-content-type): Renamed from elmo-file-detect-format;
492         Don't return nil.
493         (elmo-map-message-fetch): Use elmo-file-detect-content-type.
494
495 2004-02-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
496
497         * elmo-file.el (elmo-file-command-argument): Fixed problem when a
498         value returned from elmo-file-find is nil.
499
500 2004-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
501
502         * elmo-mime.el (elmo-mime-display-as-is-coding-system): Moved
503         to elmo-vars.el.
504
505         * elmo.el (elmo-message-match-condition): Use elmo-message-fetch
506         instead of insert-file-contents-as-binary.
507         (elmo-message-set-field): New generic function.
508
509         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Follow the
510         behavior change on `split-string'.
511
512         * elmo-file.el (elmo-file-find): New function.
513         (elmo-file-command): New user option.
514         (elmo-file-command-argument): Ditto.
515         (elmo-file-fetch-max-size): Ditto.
516         (elmo-file-detect-format): New function.
517         (elmo-map-message-fetch): Use elmo-file-fetch-max-size;
518         Use elmo-file-detect-format.
519         (elmo-map-folder-list-message-locations): Don't treat directories.
520
521 2004-02-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
522
523         * elmo-util.el (elmo-string-partial-p): Removed unused function.
524         (elmo-passwd-alist-clear): Shred password before clear.
525         (elmo-remove-passwd): Remove all mached pair.
526
527 2004-02-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
528
529         * elmo.el (elmo-folder-synchronize): Fix description of the return
530         value.
531
532 2004-02-16  Yuuichi Teranishi  <teranisi@gohome.org>
533
534         * elmo.el (elmo-message-fetch-bodystructure): New method.
535         (elmo-message-fetch-bodystructure): Define default.
536
537         * elmo-imap4.el (mime-imap-location-bodystructure): Call
538         elmo-message-fetch-bodystructure.
539         (elmo-message-fetch-bodystructure): Define.
540
541         * elmo-filter.el (elmo-message-fetch-bodystructure): Define.
542
543 2004-02-15  Tetsurou Okazaki  <okazaki@be.to>
544
545         * elmo-filter.el (elmo-message-folder): Define.
546
547 2004-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
548
549         * elmo.el (elmo-message-fetch-with-cache-process): Don't call
550         elmo-delete-cr-buffer.
551
552         * elmo-imap4.el (elmo-imap4-message-fetch): Call elmo-delete-cr-buffer.
553
554         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
555
556         * elmo-nntp.el (elmo-nntp-read-body): Ditto.
557
558         * elmo-file.el (elmo-map-message-fetch): Decode body only when content
559         type seems to be a text.
560
561 2004-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
562
563         * elsp-sa.el (elmo-spam-register-spam-buffer): Don't specify '--forget'.
564         (elmo-spam-register-good-buffer): Ditto.
565         (elmo-spam-spamassassin-register-messages): Ditto.
566
567         * elmo-util.el (elmo-string-member-ignore-case): Define with
568         static-cond.
569
570 2004-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
571
572         * elmo.el (elmo-folder-type): Undo last change.
573
574         * slp.el (slp-exec-wait): Avoid byte-compile warnings.
575
576         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Avoid byte-compile
577         warnings.
578
579         * elmo-file.el: New file.
580         
581         * modb-standard.el (elmo-msgdb-list-flagged): Treat keyword flags.
582
583         * elsp-sa.el (elmo-spam-spamassassin-max-messages-per-process): New
584         variable.
585         (elmo-spam-spamassassin-register-messages): New inline function.
586         (elmo-spam-register-spam-messages): Define.
587         (elmo-spam-register-good-messages): Ditto.
588
589         * elsp-bogofilter.el (elmo-spam-bogofilter-max-messages-per-process):
590         Fixed typo.
591
592         * elmo.el (toplevel): Added autoload setting for
593         `elmo-get-global-flags'.
594         (elmo-message-has-global-flag-p): New function.
595         (elmo-message-set-global-flags): Ditto.
596         (elmo-folder-type): Improvement for name: format.
597
598         * elmo-imap4.el (elmo-imap4-session-flag-available-p): Check
599         availability of keyword flags.
600         (elmo-imap4-folder-list-flagged): Treat keyword flags.
601         (elmo-folder-list-flagged-plugged): Renamed from
602         elmo-folder-list-flagged-unplugged.
603         (elmo-imap4-set-flag): If "\*" is treated as permanent flag,
604         accept any flag as keyword flag.
605         (elmo-folder-set-flag-plugged): Accept keyword flags.
606         (toplevel): Added autoload setting for `elmo-get-global-flags'.
607
608         * elmo-flag.el (elmo-get-global-flags): New function.
609
610         * elmo-filter.el (elmo-folder-diff): Fix total number for filter
611         folders.
612
613         * elmo-version.el (elmo-version): Up to 2.11.24.
614
615 2004-02-08  Yoichi NAKAYAMA  <yoichi@geiin.org>
616
617         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
618         elmo-multiple-field-body instead of std11-field-body to check all
619         headers.
620
621 2004-02-07  TAKAHASHI Kaoru  <kaoru@kaisei.org>
622
623         * elmo-util.el (elmo-cache-expire): Completion require match "age"
624         or "size".
625
626 2004-01-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
627
628         * elmo-util.el (elmo-get-hash-val): Check symbol is bound if
629         unintern is unbound.
630
631 2004-01-25  Yoichi NAKAYAMA  <yoichi@geiin.org>
632
633         * elsp-bogofilter.el (elmo-spam-bogofilter-register-messages):
634         Protect from infinite loop.
635
636 2004-01-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
637
638         * elsp-bogofilter.el
639         (elmo-spam-bogofilter-max-messages-per-process): New user option.
640         (elmo-spam-bogofilter-register-messages): New internal function.
641         (elmo-spam-register-spam-messages): Define.
642         (elmo-spam-register-good-messages): Ditto.
643
644 2004-01-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
645
646         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
647         Added "-vv" if elmo-spam-bogofilter-debug is non-nil.
648         (elmo-spam-bogofilter-call): Fixed the last change.
649         (elmo-spam-bogofilter-arguments): Ditto.
650
651         * elsp-bogofilter.el (elmo-spam-bogofilter-arguments-alist):
652         Follow the options change of latest bogofilter.
653
654         * elsp-bogofilter.el (elmo-spam-bogofilter-spam-switch): Abolish.
655         (elmo-spam-bogofilter-good-switch): Ditto.
656         (elmo-spam-bogofilter-arguments-alist): New user option.
657         (elmo-spam-bogofilter-debug): Ditto.
658         (elmo-spam-bogofilter-call): Renamed from
659         `elsp-bogofilter-call-bogofilter'. If elmo-spam-bogofilter-debug
660         is non-nil, insert output in buffer for debug.
661         (elmo-spam-bogofilter-arguments): New macro.
662         (elmo-spam-buffer-spam-p): Use it.
663         (elsp-bogofilter-register-buffer): Ditto.
664
665 2004-01-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
666
667         * elmo-cache.el (elmo-folder-list-subfolders): Fix directory-files
668         regexp.
669
670 2004-01-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
671
672         * elsp-bsfilter.el (elmo-spam-bsfilter-shell-program): Set default
673         value as "ruby".
674         (elmo-spam-bsfilter-shell-switch): Set default value as nil.
675         (elmo-spam-bsfilter-program): Set default value as full path for
676         `bsfilter'.
677         (elmo-spam-bsfilter-debug): New user option.
678         (elsp-bsfilter-call-bsfilter): If elmo-spam-bsfilter-debug is
679         non-nil, insert output in buffer for debug. Fix treating of
680         argument.
681
682 2004-01-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
683
684         * elmo-maildir.el (elmo-map-folder-set-flag): Use cdr of
685         `elmo-maildir-flag-specs' element instead of one.
686         (elmo-map-folder-unset-flag): Ditto.
687         (Reported by Ken Makimura <macky@astem.or.jp>)
688
689         * elmo-imap4.el (elmo-folder-set-flag-plugged): Fixed.
690         (elmo-folder-unset-flag-plugged): Ditto.
691
692 2004-01-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
693
694         * elmo-nntp.el (elmo-folder-list-flagged): Return a list according
695         to `reads' slot only if `in-msgdb' is nil.
696
697 2004-01-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
698
699         * elmo-nntp.el (elmo-folder-list-flagged): Undo the last change
700         and complement argument list.
701
702 2004-01-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
703
704         * elmo-nntp.el (elmo-folder-list-flagged-internal): Define this
705         instead of elmo-folder-list-flagged.
706
707 2004-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
708
709         * elmo-spam.el (elmo-spam-scheme): Add 'bsfilter' as a candidate.
710
711         * elsp-bsfilter.el: New file.
712
713         * elmo-pipe.el (elmo-folder-list-unreads,
714         elmo-folder-list-answereds,
715         elmo-folder-list-importants,
716         elmo-folder-flag-as-important,
717         elmo-folder-unflag-important,
718         elmo-folder-flag-as-read,
719         elmo-folder-unflag-read,
720         elmo-folder-flag-as-answered,
721         elmo-folder-unflag-answered): Remove.
722         (elmo-folder-set-flag): Define.
723         (elmo-folder-unset-flag): Ditto.
724
725         * elmo-nntp.el (elmo-folder-flag-as-read): Remove.
726         (elmo-folder-set-flag): Define.
727         (elmo-folder-unset-flag): Ditto.
728         (elmo-folder-list-unreads): Remove.
729         (elmo-folder-list-flagged): Define.
730
731         * elmo-net.el (elmo-folder-list-flagged-internal): Define.
732         (elmo-folder-list-unreads,
733         elmo-folder-list-importants,
734         elmo-folder-list-answereds,
735         elmo-folder-list-unreads-plugged,
736         elmo-folder-list-importants-plugged,
737         elmo-folder-list-answereds-plugged): Remove.
738         (elmo-folder-list-flagged-plugged): New method.
739         (elmo-folder-unflag-important,
740         elmo-folder-flag-as-important,
741         elmo-folder-unflag-read,
742         elmo-folder-flag-as-read,
743         elmo-folder-unflag-answered,
744         elmo-folder-flag-as-answered,
745         elmo-folder-flag-as-read-unplugged,
746         elmo-folder-unflag-read-unplugged,
747         elmo-folder-flag-as-important-unplugged,
748         elmo-folder-unflag-important-unplugged,
749         elmo-folder-flag-as-answered-unplugged,
750         elmo-folder-unflag-answered-unplugged): Remove.
751         (elmo-folder-set-flag): Define.
752         (elmo-folder-unset-flag): Ditto.
753         (elmo-folder-set-flag-unplugged): Ditto.
754         (elmo-folder-unset-flag-unplugged): Ditto.
755
756         * elmo-multi.el (elmo-folder-list-unreads,
757         elmo-folder-list-answereds,
758         elmo-folder-list-importants,
759         elmo-folder-flag-as-important,
760         elmo-folder-unflag-important,
761         elmo-folder-flag-as-read,
762         elmo-folder-unflag-read,
763         elmo-folder-flag-as-answered,
764         elmo-folder-unflag-answered): Remove.
765         (elmo-folder-set-flag): Define.
766         (elmo-folder-unset-flag): Ditto.
767
768         * elmo-map.el (elmo-map-folder-unflag-important,
769         elmo-map-folder-flag-as-important,
770         elmo-map-folder-unflag-read,
771         elmo-map-folder-flag-as-read,
772         elmo-map-folder-unflag-answered,
773         elmo-map-folder-flag-as-answered): Remove.
774         (elmo-map-folder-set-flag): New method.
775         (elmo-map-folder-unset-flag): Ditto.
776         (elmo-map-folder-list-unreads,
777         elmo-map-folder-list-importants,
778         elmo-map-folder-list-answereds): Remove.
779         (elmo-folder-list-flagged-internal): Define.
780         (elmo-map-folder-list-flagged): New method.
781
782         * elmo-maildir.el (elmo-maildir-flag-specs): New internal variable.
783         (elmo-map-folder-list-unreads,
784         elmo-map-folder-list-importants,
785         elmo-map-folder-list-flagged): Remove.
786         (elmo-map-folder-list-flagged): Define.
787         (elmo-map-folder-flag-as-important,
788         elmo-map-folder-unflag-important,
789         elmo-map-folder-flag-as-read,
790         elmo-map-folder-unflag-read,
791         elmo-map-folder-flag-as-answered,
792         elmo-map-folder-unflag-answered): Remove.
793         (elmo-maildir-set-mark-messages): New internal function.
794         (elmo-map-folder-set-flag): Define.
795         (elmo-map-folder-unset-flag): Ditto.
796
797         * elmo.el (toplevel): Added autoload setting for
798         `elmo-folder-list-global-flag-messages'.
799         (elmo-folder-list-unreads,
800         elmo-folder-list-importants,
801         elmo-folder-list-answereds): Remove.
802         (elmo-folder-list-flagged): Use `elmo-folder-list-flagged-internal'.
803         Return a list whitch merged with messages have global flag.
804         (elmo-folder-list-flagged-internal): New method.
805         (elmo-folder-unflag-important,
806         elmo-folder-flag-as-important,
807         elmo-folder-unflag-read,
808         elmo-folder-flag-as-read,
809         elmo-folder-unflag-answered,
810         elmo-folder-flag-as-answered): Remove.
811         (elmo-folder-set-flag): New method.
812         (elmo-folder-unset-flag): Ditto.
813         (elmo-message-set-flag):Use `elmo-folder-set-flag'.
814         (elmo-message-unset-flag):Use `elmo-folder-unset-flag'.
815
816         * elmo-imap4.el (elmo-imap4-flag-specs): New internal variable.
817         (elmo-folder-list-unreads-plugged,
818         elmo-folder-list-importants-plugged,
819         elmo-folder-list-answereds-plugged,
820         elmo-folder-list-flagged-unplugged,
821         elmo-folder-unflag-important-plugged,
822         elmo-folder-flag-as-important-plugged,
823         elmo-folder-unflag-read-plugged,
824         elmo-folder-flag-as-read-plugged,
825         elmo-folder-unflag-answered-plugged,
826         elmo-folder-flag-as-answered-plugged): Remove.
827         (elmo-folder-set-flag-plugged,
828         elmo-folder-unset-flag-plugged): Define.
829
830         * elmo-flag.el (elmo-folder-initialize): Register to
831         `elmo-global-flag-list' if flag is not global.
832         (elmo-folder-append-messages): Set flag to source messages.
833
834         * elmo-filter.el (elmo-filter-folder-list-unreads,
835         elmo-folder-list-unreads,
836         elmo-filter-folder-list-importants,
837         elmo-folder-list-importants,
838         elmo-folder-flag-as-read,
839         elmo-folder-unflag-read,
840         elmo-folder-flag-as-important,
841         elmo-folder-unflag-important,
842         elmo-folder-flag-as-answered,
843         elmo-folder-unflag-answered): Remove.
844         (elmo-folder-set-flag): Define.
845         (elmo-folder-unset-flag): Ditto.
846
847         * elmo-dop.el (elmo-folder-flag-as-read-dop,
848         elmo-folder-unflag-read-dop,
849         elmo-folder-flag-as-important-dop,
850         elmo-folder-unflag-important-dop,
851         elmo-folder-flag-as-answered-dop,
852         elmo-folder-unflag-answered-dop): Remove.
853         (elmo-folder-set-flag-dop,
854         elmo-folder-unset-flag-dop,
855         elmo-folder-set-important-delayed,
856         elmo-folder-unset-important-delayed,
857         elmo-folder-set-read-delayed,
858         elmo-folder-unset-read-delayed,
859         elmo-folder-set-answered-delayed,
860         elmo-folder-unset-answered-delayed): New function.
861         (elmo-dop-queue-merge-method-list): Follow the above chagned.
862         (elmo-dop-queue-method-name-alist): Ditto.
863
864         * elmo-version.el (elmo-version): Up to 2.11.23.
865
866 2004-01-11  Yuuichi Teranishi  <teranisi@gohome.org>
867
868         * elmo-spam.el (elmo-spam-scheme): Add 'sa' as a candidate.
869
870         * elsp-sa.el: New file.
871
872 2003-12-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
873
874         * modb-standard.el (modb-standard-message-entity): New function.
875         (elmo-msgdb-message-entity): Use it.
876
877 2003-12-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
878
879         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite; Fixed
880         behavior when one-level is nil.
881
882         * elmo-flag.el (elmo-folder-list-subfolders): Defined.
883
884         * elmo-sendlog.el (elmo-folder-have-subfolder-p): Ditto.
885
886 2003-12-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
887
888         * elmo.el (elmo-folder-set-info-max-by-numdb): Don't use `sort' to
889         get max number.
890         (elmo-generic-folder-diff): Ditto.
891
892         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Ditto.
893         (elmo-folder-update-number): Ditto.
894
895         * elmo-dop.el (elmo-folder-status-dop): Ditto.
896         (elmo-folder-next-message-number-dop): Ditto.
897
898 2003-12-04  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
899
900         * elmo-filter.el (elmo-folder-msgdb-create): Use
901         `elmo-message-entity' and `elmo-message-flags' instead of
902         `elmo-msgdb-message-entity' and `elmo-msgdb-flags'.
903
904 2003-11-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
905
906         * elmo-spam.el (elmo-spam-processor): Added 3rd argument
907         `if-exists'.
908
909 2003-11-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
910
911         * elmo-multi.el (elmo-folder-newsgroups): Simplify.
912
913         * elmo-pipe.el (elmo-folder-get-primitive-list): Likewise.
914
915         * elmo-filter.el (elmo-folder-get-primitive-list): Fixed.
916
917 2003-11-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
918
919         * elmo-version.el (elmo-version): Up to 2.11.22.
920
921 2003-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
922
923         * modb-standard.el (elmo-msgdb-delete-messages): Always return t.
924
925 2003-11-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
926
927         * modb-standard.el (elmo-msgdb-delete-messages): Dose not process
928         if the message dose not exist.
929
930 2003-11-18  Tetsurou Okazaki  <okazaki@be.to>
931
932         * elmo-version.el (elmo-version): Up to 2.11.21.
933
934 2003-11-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
935
936         * modb-standard.el (toplevel): Don't require mime.
937
938 2003-11-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
939
940         * elsp-bogofilter.el (toplevel): Don't require path-util.
941         (elmo-spam-bogofilter-program): Don't use `exec-installed-p'.
942         (elmo-spam-bogofilter-header): Abolish.
943         (elmo-spam-bogofilter-bogosity-positive-spam-header): Ditto.
944         (elmo-spam-bogofilter-args): New user option.
945         (elsp-bogofilter-call-bogofilter): New internal function.
946         (elmo-spam-buffer-spam-p): Use it.
947         (elsp-bogofilter-register-buffer): Renamed from
948         `elmo-spam-bogofilter-register-buffer';
949         Use `elsp-bogofilter-call-bogofilter'.
950         (elmo-spam-register-spam-buffer): Follow the change above.
951         (elmo-spam-register-good-buffer): Ditto.
952
953 2003-11-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
954
955         * modb-standard.el (elmo-msgdb-append-entity): If entity or
956         message-id is nil do nothing.
957
958 2003-11-10  Yuuichi Teranishi  <teranisi@gohome.org>
959
960         * elmo-imap4.el (elmo-imap4-disuse-server-flag-mailbox-regexp):
961         Revival.
962         (elmo-imap4-session): Removed use-flag slot.
963         (elmo-imap4-session-select-mailbox): Undo last change.
964         (elmo-folder-use-flag-p): Use
965         elmo-imap4-disuse-server-flag-mailbox-regexp.
966
967 2003-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
968
969         * elmo-imap4.el (elmo-imap4-session): Added use-flag slot.
970         (elmo-imap4-session-select-mailbox): Set it up.
971         (elmo-folder-use-flag-p): Return value of use-flag slot.
972
973 2003-11-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
974
975         * elmo-msgdb.el (elmo-msgdb-flag-table): Fixed problem when
976         message-id is nil.
977         (Reported by MAKINO Takashi <makino@digitalway.co.jp>)
978
979         * modb-entity.el (elmo-message-entity-handler): Likewise.
980
981 2003-11-07  Yuuichi Teranishi  <teranisi@gohome.org>
982
983         * elmo.el (toplevel): Remove setting of autoloding for
984         elmo-global-flag-initialize.
985         (elmo-init): Don't call elmo-global-flag-initialize.
986         (toplevel): Added autoload setting for elmo-global-mark-migrate.
987
988         * elmo-flag.el (elmo-global-flag-initialize): Abolish.
989         (elmo-global-mark-migrate): Don't call it.
990         (elmo-global-mark-upgrade): Ditto.
991
992 2003-11-06  Yuuichi Teranishi  <teranisi@gohome.org>
993
994         * elmo-internal.el (elmo-internal-obsolete-folder-list): New variable.
995         (elmo-folder-initialize): Raise a warning when obsolete folder is used.
996
997         * elmo-vars.el (elmo-init-hook): New user option.
998
999         * elmo.el (elmo-init): Run the elmo-init-hook.
1000
1001         * elmo-flag.el (elmo-global-mark-migrate): New function.
1002
1003 2003-11-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1004
1005         * modb-standard.el (elmo-msgdb-set-flag): Simplify;
1006         Undo last change (move to elmo-msgdb-unset-flag).
1007         (elmo-msgdb-unset-flag): Simplify; Unset 'new flag when unread
1008         flag is unset.
1009
1010 2003-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
1011
1012         * modb-standard.el (elmo-msgdb-set-flag): Unset 'new flag when
1013         read flag is set.
1014         (elmo-msgdb-set-flag): Don't remove 'new flag unconditionally.
1015         (elmo-msgdb-unset-flag): Ditto.
1016
1017 2003-11-05  Andreas Fuchs <asf@boinkor.net>
1018
1019         * elmo-split.el (elmo-split): Return split message count.
1020
1021 2003-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1022
1023         * elmo-msgdb.el (elmo-flag-table-get): Check cached if saved flags
1024         is nil.
1025
1026 2003-11-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1027
1028         * elmo.el (elmo-folder-unflag-important): Call
1029         `elmo-global-flag-detach' with 4th argument delete-if-none that is
1030         a symbol `always'.
1031
1032         * elmo-flag.el (elmo-flag-folder-delete-message): Clear hash value
1033         before unset flag.
1034         (elmo-global-flag-detach): Delete the message from flag folder, if
1035         `delete-if-none' is a symbol `always'.
1036
1037 2003-11-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1038
1039         * elsp-spamfilter.el (elsp-spamfilter-decode-buffer): Renamed from
1040         `elmo-spam-spamfilter-decode-buffer'.
1041         (elsp-spamfilter-register-buffer-internal): New internal function.
1042         (elmo-spam-buffer-spam-p): Use it; Follow the API change.
1043         (elmo-spam-register-spam-buffer): Ditto.
1044         (elmo-spam-register-good-buffer): Ditto.
1045
1046         * elsp-bogofilter.el (elmo-spam-buffer-spam-p): Follow the API
1047         change.
1048         (elmo-spam-bogofilter-register-buffer): Added argument `restore'.
1049         (elmo-spam-register-spam-buffer): Follow the API change.
1050         (elmo-spam-register-good-buffer): Ditto.
1051
1052         * elmo-split.el (toplevel): Require elmo-spam when copmile.
1053         (elmo-split-spam-p): Added argument plist; Call
1054         `elmo-spam-buffer-spam-p' with new argument register.
1055
1056         * elmo-spam.el (elmo-spam-buffer-spam-p): Added optional argument
1057         `register'.
1058         (elmo-spam-message-spam-p): Ditto.
1059         (elmo-spam-register-spam-buffer): Added optional argument
1060         `restore'.
1061         (elmo-spam-register-good-buffer): Ditto.
1062         (elmo-spam-register-spam-messages): Ditto.
1063         (elmo-spam-register-good-messages): Ditto.
1064
1065 2003-10-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1066
1067         * elsp-spamfilter.el (elmo-spam-register-spam-buffer): Fixed to
1068         register into good corpus.
1069         (elmo-spam-register-good-buffer): Fixed to register into bad
1070         corpus.
1071
1072 2003-10-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1073
1074         * elmo-version.el (elmo-version): Up to 2.11.20.
1075
1076         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed last
1077         change.
1078
1079         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Determine new
1080         flag without depending on \Recent flag.
1081
1082 2003-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1083
1084         * elsp-spamfilter.el (elsp-spamfilter): Added new slot `modified'.
1085         (elmo-spam-modified-p): Defined.
1086         (elmo-spam-save-status): Set `modified' slot to nil.
1087         (elmo-spam-register-spam-buffer): Set `modified' slot to non nil.
1088         (elmo-spam-register-good-buffer): Ditto.
1089
1090         * elmo-spam.el (elmo-spam-modified-p): New API.
1091
1092 2003-10-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1093
1094         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Abolish
1095         duplicate definition.
1096
1097         * elmo-util.el (elmo-unfold-field-body): New function.
1098         (elmo-msgdb-get-message-id-from-buffer): Use it.
1099
1100         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1101         Fixed the last change; Use elmo-unfold-field-body.
1102
1103 2003-10-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1104
1105         * modb-entity.el (elmo-msgdb-create-message-entity-from-buffer):
1106         Unfold date value.
1107
1108 2003-10-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1109
1110         * elmo-spam.el (elmo-spam-save-status): New API.
1111
1112         * elsp-spamfilter.el: New file.
1113
1114 2003-10-21  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1115
1116         * elmo-split.el (toplevel): Add `elmo-spam-processor' args.
1117
1118 2003-10-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1119
1120         * elmo-split.el (elmo-split-spam-p): New function.
1121
1122         * elmo-spam.el: New file.
1123
1124         * elsp-bogofilter.el: Ditto.
1125
1126 2003-10-15  Yuuichi Teranishi  <teranisi@gohome.org>
1127
1128         * elmo.el (elmo-folder-next-message-number): New API.
1129         (elmo-folder-next-message-number): Define.
1130         (elmo-message-field): Don't check folder length.
1131
1132         * elmo-net.el (elmo-folder-next-message-number): Define.
1133         (elmo-folder-next-message-number-unplugged): Define.
1134
1135         * elmo-map.el (elmo-folder-next-message-number): Define.
1136         (elmo-folder-delete-messages): Clear hash value.
1137
1138         * elmo-imap4.el (elmo-folder-next-message-number-plugged): Define.
1139
1140         * elmo-dop.el (elmo-folder-next-message-number-dop): New function.
1141         (elmo-folder-delete-messages-dop-delayed): Always return t.
1142
1143         * elmo-version.el (elmo-version): Up to 2.11.19.
1144
1145 2003-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1146
1147         * modb-legacy.el (elmo-msgdb-append-entity): Fixed the last
1148         change.
1149
1150         * modb-legacy.el (elmo-msgdb-append-entity): Registered an
1151         identical cons cell into the mark-alist and the hash table.
1152
1153 2003-10-08  Yuuichi Teranishi  <teranisi@gohome.org>
1154
1155         * elmo-pipe.el (elmo-pipe-folder-list-target-messages): Call
1156         elmo-folder-list-messages with argument `visible-only' as t.
1157
1158         * elmo-filter.el (elmo-folder-search-requires-msgdb-p): Define.
1159         (elmo-folder-msgdb-create): Check the target folder.
1160
1161 2003-10-07  Yuuichi Teranishi  <teranisi@gohome.org>
1162
1163         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Use
1164         `permanentflag' instead of `flags'.
1165         (elmo-folder-open): Ditto.
1166         (elmo-imap4-set-flag): Treat \Deleted flag as an exception.
1167         (elmo-imap4-disuse-server-flag-mailbox-regexp): Abolish.
1168         (elmo-folder-use-flag-p): Always return t.
1169         (elmo-imap4-session-select-mailbox): Use value of `flags' if
1170         `permanentflags' does not exist.
1171         (elmo-folder-open): Ditto.
1172
1173 2003-10-06  Yuuichi Teranishi  <teranisi@gohome.org>
1174
1175         * modb-legacy.el (elmo-msgdb-message-entity): Return nil when key
1176         is nil.
1177         * modb-standard.el (elmo-msgdb-message-entity): Ditto.
1178
1179         * elmo-imap4.el (elmo-imap4-session): Added new slot `flags'.
1180         (elmo-imap4-session-select-mailbox): Set it according to the SELECT
1181         response.
1182         (elmo-folder-open): Ditto.
1183         (elmo-imap4-set-flag): Send store flag command only when the `flags'
1184         slot of the session includes the flag.
1185         (elmo-imap4-session-flag-available-p): New function.
1186         (elmo-imap4-folder-list-flagged): Ditto.
1187         (elmo-folder-list-unreads-plugged): Use it.
1188         (elmo-folder-list-importants-plugged): Ditto.
1189         (elmo-folder-list-answereds-plugged): Ditto.
1190         (elmo-imap4-search-internal-primitive): Ditto.
1191         (elmo-imap4-folder-list-any-plugged,
1192         elmo-imap4-folder-list-digest-plugged): Abolish.
1193
1194         * elmo-filter.el (elmo-folder-search): Don't call elmo-list-filter
1195         if numbers is nil.
1196
1197 2003-10-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
1198
1199         * elmo-util.el (toplevel): Require emu for char-list-to-string.
1200
1201 2003-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
1202
1203         * elmo-util.el (elmo-get-hash-val): Simplify.
1204         (elmo-set-hash-val): Rewrite.
1205
1206 2003-09-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1207
1208         * elmo.el (elmo-folder-list-messages): Append killed messages into
1209         result if `visible-only' is nil and `in-msgdb' is non-nil.
1210
1211         * elmo-util.el (elmo-uniq-list): Added optional argument
1212         `delete-function'.
1213
1214         * modb.el (elmo-msgdb-flag-count): New API.
1215
1216         * modb-standard.el (modb-standard): Added slot flag-count.
1217         (modb-standard-countup-flags): New function.
1218         (modb-standard-load-flag): Call it.
1219         (elmo-msgdb-append): Ditto.
1220         (elmo-msgdb-clear): Clear slot flag-count.
1221         (elmo-msgdb-set-flag): Call modb-standard-countup-flags.
1222         (elmo-msgdb-unset-flag): Treat `all' flag and call
1223         modb-standard-countup-flags.
1224         (elmo-msgdb-flag-count): Define.
1225         (elmo-msgdb-append-entity): Call modb-standard-countup-flags.
1226         (elmo-msgdb-delete-messages): Ditto.
1227
1228         * modb-legacy.el (elmo-msgdb-unset-flag): Treat `all' flag.
1229         (elmo-msgdb-flag-count): Define.
1230
1231         * elmo.el (elmo-folder-list-messages): Undo last change.
1232         (elmo-folder-count-flags): Use elmo-msgdb-flag-count.
1233         (elmo-folder-kill-messages): Unset all flags to numbers.
1234
1235         * elmo-sendlog.el (elmo-folder-delete-messages): Rewrite; use
1236         elmo-folder-kill-messages.
1237
1238         * elmo-nntp.el (elmo-folder-delete-messages): Ditto.
1239         (elmo-nntp-folder-delete-messages): Abolish.
1240
1241         * elmo-version.el (elmo-version): Up to 2.11.18.
1242
1243 2003-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1244
1245         * elmo.el (elmo-folder-kill-messages-before): Abolish.
1246         (elmo-folder-kill-messages-range): New function.
1247         (elmo-folder-synchronize): Use elmo-folder-kill-messages-range
1248         instead of elmo-folder-kill-messages-before.
1249
1250 2003-09-26  Yuuichi Teranishi  <teranisi@gohome.org>
1251
1252         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Use
1253         elmo-imap4-current-msgdb to decide entity handler.
1254
1255 2003-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
1256
1257         * elmo-dop.el (elmo-dop-msgdb): Rewrite.
1258
1259         * modb-legacy.el (elmo-msgdb-overview-entity-get-id-internal): New
1260         inline function.
1261         (elmo-msgdb-overview-entity-get-number-internal): Ditto.
1262         (elmo-msgdb-overview-entity-set-number,
1263         elmo-msgdb-overview-entity-get-references,
1264         elmo-msgdb-overview-entity-set-references,
1265         elmo-msgdb-overview-entity-get-from-no-decode,
1266         elmo-msgdb-overview-entity-get-from,
1267         elmo-msgdb-overview-entity-set-from,
1268         elmo-msgdb-overview-entity-get-subject,
1269         elmo-msgdb-overview-entity-get-subject-no-decode,
1270         elmo-msgdb-overview-entity-set-subject,
1271         elmo-msgdb-overview-entity-get-date,
1272         elmo-msgdb-overview-entity-set-date,
1273         elmo-msgdb-overview-entity-get-to,
1274         elmo-msgdb-overview-entity-get-cc,
1275         elmo-msgdb-overview-entity-get-size,
1276         elmo-msgdb-overview-entity-set-size,
1277         elmo-msgdb-overview-entity-get-extra,
1278         elmo-msgdb-overview-entity-set-extra,
1279         elmo-msgdb-overview-entity-get-extra-field,
1280         elmo-msgdb-overview-entity-set-extra-field): Moved to elmo-msgdb.el.
1281         (elmo-msgdb-make-index): Use
1282         `elmo-msgdb-overview-entity-get-number-internal'.
1283         (elmo-msgdb-clear-index): Ditto.
1284         (elmo-msgdb-append-entity): Ditto;
1285         Use `elmo-msgdb-overview-entity-get-id-internal'.
1286
1287         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-number,
1288         elmo-msgdb-overview-entity-set-number,
1289         elmo-msgdb-overview-entity-get-references,
1290         elmo-msgdb-overview-entity-set-references,
1291         elmo-msgdb-overview-entity-get-from-no-decode,
1292         elmo-msgdb-overview-entity-get-from,
1293         elmo-msgdb-overview-entity-set-from,
1294         elmo-msgdb-overview-entity-get-subject,
1295         elmo-msgdb-overview-entity-get-subject-no-decode,
1296         elmo-msgdb-overview-entity-set-subject,
1297         elmo-msgdb-overview-entity-get-date,
1298         elmo-msgdb-overview-entity-set-date,
1299         elmo-msgdb-overview-entity-get-to,
1300         elmo-msgdb-overview-entity-get-cc,
1301         elmo-msgdb-overview-entity-get-size,
1302         elmo-msgdb-overview-entity-set-size,
1303         elmo-msgdb-overview-entity-get-extra,
1304         elmo-msgdb-overview-entity-set-extra,
1305         elmo-msgdb-overview-entity-get-extra-field,
1306         elmo-msgdb-overview-entity-set-extra-field): Moved from modb-legacy.el
1307         and rewrote for backward compatibility.
1308
1309 2003-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1310
1311         * elmo.el (elmo-message-entity-number,
1312         elmo-message-entity-set-number,
1313         elmo-message-entity-field,
1314         elmo-message-entity-set-field): Moved to elmo-msgdb.el.
1315
1316         * elmo-msgdb.el (elmo-message-entity-number,
1317         elmo-message-entity-set-number,
1318         elmo-message-entity-field,
1319         elmo-message-entity-set-field): Moved from elmo.el.
1320
1321 2003-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
1322
1323         * elmo.el (toplevel): Changed definition orders.
1324
1325 2003-09-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1326
1327         * modb.el (elmo-msgdb-search): New API .
1328         (elmo-msgdb-match-condition): Ditto.
1329
1330         * modb-standard.el (elmo-msgdb-search): Define.
1331
1332         * modb-legacy.el (elmo-msgdb-search): Ditto.
1333
1334         * modb-entity.el (elmo-msgdb-message-match-condition): Renamed
1335         from elmo-msgdb-match-condition-internal.
1336
1337         * elmo.el (elmo-folder-search-fast): Abolish.
1338         (elmo-folder-search): Use elmo-msgdb-search and
1339         elmo-with-progress-display.
1340
1341         * elmo-msgdb.el (elmo-msgdb-match-condition): Removed; redefined
1342         as msgdb API.
1343
1344         * elmo.el (elmo-folder): Remove slot message-modified and
1345         flag-modified.
1346         (elmo-folder-set-message-modified): Abolish.
1347         (elmo-generic-folder-commit): Follow the change above.
1348         (elmo-folder-synchronize): Ditto.
1349
1350         * elmo-pipe.el (elmo-folder-set-message-modified): Abolish.
1351
1352         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
1353
1354         * elmo-filter.el (elmo-folder-set-message-modified): Ditto.
1355
1356 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
1357
1358         * modb-standard.el (modb-standard-make-message-entity,
1359         elmo-msgdb-make-message-entity,
1360         elmo-msgdb-create-message-entity-from-buffer,
1361         elmo-msgdb-message-entity-number,
1362         elmo-msgdb-message-entity-set-number,
1363         elmo-msgdb-message-entity-field,
1364         elmo-msgdb-message-entity-set-field,
1365         elmo-msgdb-copy-message-entity,
1366         elmo-msgdb-match-condition-internal): Remove.
1367
1368         * modb-entity.el: New file (again).
1369
1370         * modb.el (toplevel): Require modb-entity.
1371         (elmo-msgdb-message-entity-handler): New method.
1372
1373         * modb-standard.el (modb-standard-entity-id): Use
1374         elmo-message-entity-handler.
1375         (modb-standard-load-entity): Ditto.
1376         (elmo-msgdb-append-entity): Ditto.
1377         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1378
1379         * modb-legacy.el (elmo-msgdb-get-decoded-cache,
1380         elmo-msgdb-decoded-cache-hashtb,
1381         (modb-legacy-make-message-entity,
1382         elmo-msgdb-make-message-entity,
1383         elmo-msgdb-create-message-entity-from-buffer,
1384         elmo-msgdb-message-entity-number,
1385         elmo-msgdb-message-entity-set-number,
1386         elmo-msgdb-message-entity-field,
1387         elmo-msgdb-message-entity-set-field,
1388         elmo-msgdb-copy-message-entity,
1389         elmo-msgdb-match-condition-internal,
1390         elmo-msgdb-match-condition-primitive): Moved to modb-entity.el.
1391
1392         * elmo.el (elmo-message-copy-entity): Use elmo-message-entity-handler.
1393         (elmo-message-entity-set-number): Ditto.
1394         (elmo-message-entity-field): Ditto.
1395         (elmo-message-entity-set-field): Ditto.
1396
1397         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Ditto.
1398
1399         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
1400
1401         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1402
1403         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
1404         (elmo-nntp-msgdb-create-message): Ditto.
1405
1406         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Ditto.
1407         (elmo-folder-msgdb-create): Add unread flag.
1408
1409         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
1410
1411         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Ditto.
1412
1413         * elmo-imap4.el (elmo-imap4-fetch-callback-1): Ditto.
1414
1415         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
1416
1417         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Call
1418         elmo-msgdb-messge-entity-handler.
1419         * elmo-version.el (elmo-version): Up to 2.11.17.
1420
1421 2003-09-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1422
1423         * elmo-shimbun.el (elmo-shimbun-update-overview): Fixed the last
1424         change.
1425
1426 2003-09-22  Yuuichi Teranishi  <teranisi@gohome.org>
1427
1428         * elmo.el (elmo-message-field): Use elmo-message-entity-field.
1429
1430         * elmo-msgdb.el (elmo-msgdb-get-number): Abolish.
1431         (elmo-msgdb-get-parent-entity): Use elmo-message-entity-field.
1432         (elmo-msgdb-flag-table): Ditto.
1433         (elmo-msgdb-sort-by-date): Ditto.
1434
1435         * modb.el (elmo-msgdb-create-message-entity-from-file): Define.
1436
1437         * modb-standard.el (toplevel): Require mime.
1438         (modb-standard-entity-id): Use elmo-msgdb-message-entity-field.
1439         (modb-standard-load-entity): Use elmo-msgdb-message-entity-field and
1440         elmo-msgdb-message-entity-number.
1441         (elmo-msgdb-append-entity): Ditto.
1442         (elmo-msgdb-create-message-entity-from-file): Remove.
1443         (elmo-msgdb-create-message-entity-from-buffer): Use msgdb which 
1444         corresponds to the entity.
1445         (elmo-msgdb-message-entity-number): Do nothing currently.
1446         (elmo-msgdb-message-entity-field): Ditto.
1447         (elmo-msgdb-message-entity-set-field): Ditto.
1448         (elmo-msgdb-copy-message-entity): Ditto.
1449         (elmo-msgdb-match-condition-internal): Ditto.
1450
1451         * modb-legacy.el (elmo-msgdb-insert-file-header): Moved to
1452         elmo-util.el.
1453         (elmo-msgdb-create-message-entity-from-file): Remove.
1454
1455         * elmo-util.el (elmo-msgdb-insert-file-header): Moved from
1456         modb-legacy.el.
1457         (elmo-multiple-field-body): Moved from elmo-msgdb.el.
1458
1459         * elmo-msgdb.el (elmo-multiple-field-body): Moved to elmo-util.el.
1460
1461 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
1462
1463         * modb.el (elmo-msgdb-make-message-entity): Define simple one.
1464         (elmo-msgdb-message-entity-field): Ditto.
1465         (elmo-msgdb-message-entity-number): Ditto.
1466
1467 2003-09-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1468
1469         * modb-standard.el (elmo-msgdb-create-message-entity-from-buffer): 
1470         Fixed how to set extra field into entity.
1471         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
1472         symbol.
1473
1474         * modb-legacy.el (elmo-msgdb-create-message-entity-from-buffer):
1475         Fixed how to set extra field into entity.
1476         (elmo-msgdb-message-entity-set-field): Fixed mistake string for
1477         symbol.
1478
1479 2003-09-21  Yuuichi Teranishi  <teranisi@gohome.org>
1480
1481         * modb.el (elmo-message-entity-db): New function.
1482         (elmo-msgdb-make-message-entity): New API.
1483         (elmo-msgdb-message-entity-number): Ditto.
1484         (elmo-msgdb-message-entity-set-number): Ditto.
1485         (elmo-msgdb-message-entity-field): Ditto.
1486         (elmo-msgdb-message-entity-set-field): Ditto.
1487         (elmo-msgdb-copy-message-entity): Ditto.
1488         (elmo-msgdb-create-message-entity-from-file): Ditto.
1489         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1490         (elmo-msgdb-match-condition-internal): Ditto.
1491
1492         * modb-standard.el (modb-legacy): Require modb-legacy.
1493         (modb-standard-make-message-entity): New inline function.
1494         (elmo-msgdb-make-message-entity): Define.
1495         (elmo-msgdb-create-message-entity-from-file): Ditto.
1496         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1497         (elmo-msgdb-message-entity-field): Ditto.
1498         (elmo-msgdb-message-entity-set-field): Ditto.
1499         (elmo-msgdb-copy-message-entity): Ditto.
1500         (elmo-msgdb-match-condition-internal): Ditto.
1501
1502         * modb-legacy.el: Don't require modb-entity.
1503         (elmo-msgdb-decoded-cache-hashtb): Moved from elmo-msgdb.el
1504         (elmo-msgdb-match-condition-primitive): Ditto.
1505         (elmo-msgdb-get-decoded-cache): Ditto.
1506         (elmo-msgdb-overview-entity-get-id): Ditto.
1507         (elmo-msgdb-overview-entity-get-number): Ditto.
1508         (elmo-msgdb-overview-entity-set-number): Ditto.
1509         (elmo-msgdb-overview-entity-get-references): Ditto.
1510         (elmo-msgdb-overview-entity-set-references): Ditto.
1511         (elmo-msgdb-overview-entity-get-from-no-decode): Ditto.
1512         (elmo-msgdb-overview-entity-get-from): Ditto.
1513         (elmo-msgdb-overview-entity-set-from): Ditto.
1514         (elmo-msgdb-overview-entity-get-subject): Ditto.
1515         (elmo-msgdb-overview-entity-get-subject-no-decode): Ditto.
1516         (elmo-msgdb-overview-entity-set-subject): Ditto.
1517         (elmo-msgdb-overview-entity-get-date): Ditto.
1518         (elmo-msgdb-overview-entity-set-date): Ditto.
1519         (elmo-msgdb-overview-entity-get-to): Ditto.
1520         (elmo-msgdb-overview-entity-get-cc): Ditto.
1521         (elmo-msgdb-overview-entity-get-size): Ditto.
1522         (elmo-msgdb-overview-entity-set-size): Ditto.
1523         (elmo-msgdb-overview-entity-get-extra): Ditto.
1524         (elmo-msgdb-overview-entity-set-extra): Ditto.
1525         (elmo-msgdb-overview-entity-get-extra-field): Ditto.
1526         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
1527         (elmo-msgdb-number-load): Ditto.
1528         (elmo-msgdb-overview-load): Ditto.
1529         (elmo-msgdb-mark-load): Ditto.
1530         (elmo-msgdb-number-save): Ditto.
1531         (elmo-msgdb-mark-save): Ditto.
1532         (elmo-msgdb-overview-save): Ditto.
1533         (modb-legacy-make-message-entity): New inline function.
1534         (elmo-msgdb-insert-file-header): Ditto.
1535         (elmo-msgdb-make-message-entity): Define.
1536         (elmo-msgdb-create-message-entity-from-file): Ditto.
1537         (elmo-msgdb-create-message-entity-from-buffer): Ditto.
1538         (elmo-msgdb-message-entity-number): Ditto.
1539         (elmo-msgdb-message-entity-set-number): Ditto.
1540         (elmo-msgdb-message-entity-field): Ditto.
1541         (elmo-msgdb-message-entity-set-field): Ditto.
1542         (elmo-msgdb-copy-message-entity): Ditto.
1543         (elmo-msgdb-match-condition-internal): Ditto.
1544
1545         * elmo.el (elmo-find-fetch-strategy): Use elmo-message-entity-field.
1546         (elmo-message-copy-entity): Rewrite.
1547         (elmo-message-entity-number): Ditto.
1548         (elmo-message-entity-set-number): Ditto.
1549         (elmo-message-entity-field): Use elmo-message-entity-db.
1550         (elmo-message-entity-set-field): Ditto.
1551         (elmo-message-field): Rewrite.
1552
1553         * elmo-util.el (elmo-msgdb-get-last-message-id): Moved from
1554         elmo-msgdb.el
1555         (elmo-msgdb-get-message-id-from-buffer): Ditto.
1556
1557         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
1558         elmo-message-entity-field.
1559         (elmo-shimbun-folder-shimbun-header): Ditto.
1560         (elmo-shimbun-entity-to-header): Ditto.
1561         (elmo-folder-msgdb-create): Ditto.
1562         (elmo-shimbun-msgdb-create-entity): Ditto;
1563         Use elmo-msgdb-create-message-entity-from-buffer.
1564         (elmo-shimbun-update-overview): Use elmo-message-entity-set-field.
1565         (elmo-map-folder-list-message-locations): elmo-message-entity-field.
1566
1567         * elmo-sendlog.el (elmo-folder-msgdb-create): Use
1568         elmo-msgdb-create-message-entity-from-file and 
1569         elmo-message-entity-field.
1570
1571         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
1572         elmo-message-entity-number.
1573         (elmo-pop3-msgdb-create-message): Use
1574         elmo-msgdb-create-message-entity-from-buffer,
1575         elmo-message-entity-set-field, elmo-message-entity-number and
1576         elmo-message-entity-set-number.
1577
1578         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Follow
1579         the API change in elmo-msgdb-make-message-entity.
1580         (elmo-nntp-msgdb-create-message): Use
1581         elmo-msgdb-create-message-entity-from-buffer.
1582
1583         * elmo-nmz.el (elmo-nmz-msgdb-create-entity): Use
1584         elmo-message-entity-field and
1585         elmo-msgdb-create-message-entity-from-file.
1586
1587         * elmo-msgdb.el (toplevel): Don't require modb-entity.
1588         (elmo-msgdb-get-field): Abolish.
1589         (elmo-msgdb-get-number): Rewrite.
1590         (elmo-msgdb-sort-by-date): Use elmo-message-entity-field.
1591         (elmo-msgdb-flag-table): Ditto.
1592         (elmo-msgdb-get-last-message-id,
1593         elmo-msgdb-number-load, elmo-msgdb-overview-load,
1594         elmo-msgdb-mark-load, elmo-msgdb-number-save,
1595         elmo-msgdb-mark-save, elmo-msgdb-overview-save): Moved to modb-legacy.
1596         (elmo-msgdb-create-overview-from-buffer,
1597         elmo-msgdb-overview-get-parent-entity): Abolish.
1598
1599         * elmo-mime.el (elmo-mime-display-as-is): Use
1600         elmo-message-entity-field.
1601
1602         * elmo-map.el (elmo-folder-pack-numbers): Use
1603         elmo-message-entity-set-number.
1604
1605         * elmo-maildir.el (elmo-folder-msgdb-create): 
1606         elmo-msgdb-create-message-entity-from-file instead of
1607         elmo-msgdb-create-overview-entity-from-file.
1608
1609         * elmo-localdir.el (elmo-localdir-msgdb-create-entity): Added argument
1610         msgdb.
1611         (elmo-folder-msgdb-create): Use elmo-message-entity-field.
1612         (elmo-folder-pack-numbers): Use elmo-message-entity-set-number.
1613
1614         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Use
1615         elmo-messge-entity-field and elmo-message-entity-number.
1616         (elmo-imap4-fetch-callback-1): Call
1617         elmo-msgdb-create-message-entity-from-buffer instead of
1618         elmo-msgdb-create-overview-from-buffer. 
1619         (elmo-folder-msgdb-create-plugged): Use elmo-messge-entity-field.
1620         (elmo-find-fetch-strategy): Likewise.
1621
1622         * elmo-flag.el (elmo-folder-msgdb-create): Call 
1623         elmo-localdir-msgdb-create-entity with argument msgdb.
1624
1625         * elmo-dop.el (elmo-dop-msgdb): Use elmo-message-entity-number
1626         and elmo-message-entity-set-number.
1627
1628         * elmo-cache.el (elmo-folder-msgdb-create): Use
1629         elmo-message-entity-field.
1630         (elmo-folder-msgdb-create): Call
1631         elmo-msgdb-create-message-entity-from-file instead of
1632         elmo-msgdb-create-overview-entity-from-file.
1633
1634         * elmo-archive.el (elmo-archive-msgdb-create-entity-subr): Added
1635         argument msgdb; Call elmo-msgdb-create-message-from-buffer
1636         instead of elmo-msgdb-create-overview-from-buffer.
1637         (elmo-archive-msgdb-create-entity): Ditto.
1638         (elmo-archive-msgdb-create-as-numlist-subr1): Use
1639         elmo-message-entity-field.
1640         (elmo-archive-parse-mmdf): Ditto.
1641
1642         * modb-entity.el: Removed.
1643
1644         * elmo-version.el (elmo-version): Up to 2.11.16.
1645
1646 2003-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
1647
1648         * elmo-map.el (elmo-folder-unflag-answered): Added optional argument
1649         `is-local'.
1650         (elmo-folder-flag-as-answered): Ditto.
1651
1652 2003-09-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1653
1654         * modb-standard.el: New file.
1655
1656         * elmo.el (elmo-folder-clear): Reconstruct msgdb if
1657         elmo-msgdb-convert-type is `sync'.
1658
1659         * elmo-vars.el (elmo-msgdb-default-type): Added `standard'.
1660         (elmo-msgdb-convert-type): New user option.
1661
1662         * elmo-msgdb.el (elmo-msgdb-load-priorities): New internal variable.
1663         (elmo-load-msgdb): Auto detect saved type.
1664
1665         * elmo-version.el (elmo-version): Up to 2.11.15.
1666
1667 2003-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
1668
1669         * elmo-flag.el (elmo-folder-list-global-flag-messages): New function.
1670
1671         * elmo.el (elmo-folder-delete-messages): Added notice in docstring.
1672         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages
1673         with argument `delete-if-none' when dst-folder is 'null.
1674
1675         * elmo-flag.el (elmo-folder-append-messages): Defined.
1676         (elmo-global-flag-detach-messages): Added argumnet `delete-if-none'.
1677
1678 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
1679
1680         * elmo-flag.el (elmo-folder-initialize): Fixed ("/.minfo"->".minfo").
1681
1682 2003-09-18  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1683
1684         * elmo-flag.el (elmo-folder-expand-msgdb-path): Define.
1685         (elmo-folder-initialize): Use `elmo-folder-msgdb-path'.
1686         (elmo-folder-commit): Ditto.
1687
1688 2003-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
1689
1690         * elmo-flag.el: New file.
1691
1692         * elmo-mark.el: Removed.
1693
1694         * modb-legacy.el (modb-legacy-new-mark,
1695         modb-legacy-unread-uncached-mark,
1696         modb-legacy-unread-cached-mark,
1697         modb-legacy-read-uncached-mark,
1698         modb-legacy-answered-cached-mark,
1699         modb-legacy-answered-uncached-mark,
1700         modb-legacy-important-mark): New constants (Moved from elmo-msgdb.el);
1701         All other related portions are changed.
1702
1703         * elmo.el (luna-define-class): Changed mark-modified to flag-modified.
1704         (elmo-folder-list-messages-with-global-mark): Abolish.
1705         (elmo-folder-unflag-important): Renamed from `mark' to `flag'.
1706         (elmo-folder-flag-as-important): Ditto.
1707         (elmo-folder-unflag-read): Ditto.
1708         (elmo-folder-flag-as-read): Ditto.
1709         (elmo-folder-unflag-answered): Ditto.
1710         (elmo-folder-flag-as-answered): Ditto.
1711         (elmo-message-encache): Return the cache path.
1712         (elmo-folder-move-messages): Call elmo-global-flag-detach-messages.
1713         (elmo-message-set-flag): Transitional implementation.
1714         (elmo-message-unset-flag): Ditto.
1715         (elmo-folder-unflag-important): Call elmo-global-flag-detach.
1716         (elmo-folder-flag-as-important): Call elmo-global-flag-set.
1717         (elmo-init): Call elmo-global-flag-initialize.
1718         (toplevel): Added autoload settings for elmo-flag.
1719
1720         * elmo-vars.el (elmo-msgdb-global-mark-filename): Abolished.
1721
1722         * elmo-util.el: Removed all elmo-msgdb-global-mark stuff.
1723         (elmo-file-cache-delete): Don't treat global-mark.
1724
1725         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
1726
1727         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
1728
1729         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Call
1730         `elmo-global-flags-set'.
1731
1732         * elmo-pipe.el (elmo-folder-flag-as-read): Renamed from `mark' to
1733         `flag'.
1734         (elmo-folder-unflag-read): Ditto.
1735         (elmo-folder-unflag-important): Ditto.
1736         (elmo-folder-flag-as-important): Ditto.
1737         (elmo-folder-unflag-answered): Ditto.
1738         (elmo-folder-flag-as-answered): Ditto.
1739
1740         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Call
1741         `elmo-global-flags-set'.
1742         (elmo-folder-flag-as-read): Renamed from `mark' to `flag'.
1743
1744         * elmo-nmz.el (elmo-folder-msgdb-create): Always put `new' flag.
1745
1746         * elmo-net.el (elmo-folder-unflag-important): Renamed from `mark' to
1747         `flag'.
1748         (elmo-folder-flag-as-important): Ditto.
1749         (elmo-folder-unflag-important): Ditto.
1750         (elmo-folder-flag-as-important): Ditto.
1751         (elmo-folder-unflag-read): Ditto.
1752         (elmo-folder-flag-as-read): Ditto.
1753         (elmo-folder-unflag-answered): Ditto.
1754         (elmo-folder-flag-as-answered): Ditto.
1755
1756         * elmo-multi.el (elmo-folder-list-importants): Don't call
1757         elmo-folder-list-messages-with-global-mark.
1758         (elmo-folder-flag-as-important): Renamed from `mark' to `flag'.
1759         (elmo-folder-unflag-important): Ditto.
1760         (elmo-folder-flag-as-read): Ditto.
1761         (elmo-folder-unflag-read): Ditto.
1762         (elmo-folder-flag-as-answered): Ditto.
1763         (elmo-folder-unflag-answered): Ditto.
1764
1765         * elmo-msgdb.el (elmo-msgdb-new-mark,
1766         elmo-msgdb-unread-uncached-mark, elmo-msgdb-unread-cached-mark,
1767         elmo-msgdb-read-uncached-mark, elmo-msgdb-answered-cached-mark,
1768         elmo-msgdb-answered-uncached-mark, elmo-msgdb-important-mark): Removed
1769         (Moved to modb-legacy.el).
1770         (elmo-flag-table-get): Treat important flag too.
1771
1772         * elmo-map.el (elmo-map-folder-unflag-important): Renamed from
1773         `mark' to `flag'.
1774         (elmo-map-folder-flag-as-important): Ditto.
1775         (elmo-map-folder-unflag-read): Ditto.
1776         (elmo-map-folder-flag-as-read): Ditto.
1777         (elmo-map-folder-unflag-answered): Ditto.
1778         (elmo-map-folder-flag-as-answered): Ditto.
1779         (elmo-folder-unflag-important): Ditto.
1780         (elmo-folder-flag-as-important): Ditto.
1781         (elmo-folder-unflag-read): Ditto.
1782         (elmo-folder-flag-as-read): Ditto.
1783         (elmo-folder-unflag-answered): Ditto.
1784         (elmo-folder-flag-as-answered): Ditto.
1785
1786         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
1787         (elmo-map-folder-flag-as-important): Renamed from `mark' to
1788         `flag'.
1789         (elmo-map-folder-unflag-important): Ditto.
1790         (elmo-map-folder-flag-as-read): Ditto.
1791         (elmo-map-folder-unflag-read): Ditto.
1792         (elmo-map-folder-flag-as-answered): Ditto.
1793         (elmo-map-folder-unflag-answered): Ditto.
1794
1795         * elmo-localdir.el (elmo-folder-msgdb-create): Call
1796         `elmo-global-flags-set'.
1797         (elmo-global-flags-set): Added autoload setting.
1798
1799         * elmo-internal.el (elmo-internal-folder-list): Changed `mark' to
1800         `flag'.
1801
1802         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Don't call
1803         `elmo-msgdb-global-mark-set'.
1804         (elmo-folder-msgdb-create-plugged): Changed callback-data structure;
1805         Call `elmo-global-flags-set'.
1806         (elmo-folder-unflag-important-plugged): Renamed from `mark' to
1807         `flag'.
1808         (elmo-folder-flag-as-important-plugged): Ditto.
1809         (elmo-folder-unflag-read-plugged): Ditto.
1810         (elmo-folder-flag-as-read-plugged): Ditto.
1811         (elmo-folder-unflag-answered-plugged): Ditto.
1812         (elmo-folder-flag-as-answered-plugged): Ditto.
1813         (elmo-global-flags-set): Added autoload setting.
1814
1815         * elmo-filter.el (elmo-folder-flag-as-read): Renamed from `mark' to
1816         `flag'.
1817         (elmo-folder-unflag-read): Ditto.
1818         (elmo-folder-flag-as-important): Ditto.
1819         (elmo-folder-unflag-important): Ditto.
1820         (elmo-folder-flag-as-answered): Ditto.
1821         (elmo-folder-unflag-answered): Ditto.
1822
1823         * elmo-dop.el (elmo-dop-queue-merge-method-list): Follow the API
1824         change of `mark'->`flag'.
1825         (elmo-dop-queue-method-name-alist): Ditto.
1826         (elmo-folder-flag-as-read-dop): Renamed from `mark' to `flag'.
1827         (elmo-folder-unflag-read-dop): Ditto.
1828         (elmo-folder-flag-as-important-dop): Ditto.
1829         (elmo-folder-unflag-important-dop): Ditto.
1830         (elmo-folder-flag-as-answered-dop): Ditto.
1831         (elmo-folder-unflag-answered-dop): Ditto.
1832
1833         * elmo-cache.el (elmo-folder-msgdb-create): Call
1834         `elmo-global-flags-set'.
1835
1836         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
1837         Call `elmo-global-flags-set'.
1838         (elmo-archive-msgdb-create-as-numlist-subr2): Call
1839         elmo-archive-parse-mmdf with argument `folder'.
1840         (elmo-archive-parse-mmdf): Added argument `folder';
1841         Call `elmo-global-flags-set'.
1842
1843         * elmo-version.el (elmo-version): Up to 2.11.14.
1844
1845 2003-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1846
1847         * modb.el (elmo-msgdb-length): Define.
1848
1849         * elmo.el (elmo-make-folder): Fixed.
1850         (elmo-generic-folder-append-messages): Follow the API change.
1851
1852         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Follow the
1853         API change.
1854
1855 2003-09-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1856
1857         * modb.el: New file.
1858
1859         * modb-entity.el: Ditto.
1860
1861         * modb-legacy.el: Ditto.
1862
1863         * elmo-msgdb.el (elmo-make-msgdb): Added 2nd argument `type'.
1864         (elmo-msgdb-get-number): Use `elmo-msgdb-message-entity' instead
1865         of `elmo-msgdb-overview-get-entity'.
1866         (elmo-msgdb-get-field): Ditto.
1867         (elmo-msgdb-merge): Moved to `elmo.el'.
1868         (elmo-msgdb-length): Removed; redefine as modb method.
1869         (elmo-msgdb-change-mark): Abolish.
1870         (elmo-msgdb-out-of-date-messages): Rewrite; don't use it.
1871         (elmo-msgdb-match-condition): Don't use mark.
1872         (elmo-msgdb-overview-get-entity): Abolish.
1873         Split modb part into `modb*.el'.
1874
1875         * elmo-vars.el (elmo-msgdb-default-type): New user option.
1876
1877         * elmo-shimbun.el (shimbun-mua-search-id): Use
1878         `elmo-msgdb-message-entity' instead of
1879         `elmo-msgdb-overview-get-entity'.
1880         (elmo-shimbun-folder-shimbun-header): Ditto.
1881         (elmo-shimbun-get-headers): Ditto.
1882         (elmo-shimbun-update-overview): Ditto.
1883
1884         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
1885
1886         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
1887
1888         * elmo.el (elmo-folder-list-messages-with-global-mark): Ditto.
1889         (elmo-msgdb-merge): Moved from `elmo-msgdb.el'.
1890
1891         * elmo-mark.el (elmo-mark-folder-msgdb-create): Don't use
1892         `elmo-msgdb-mark-to-flags'.
1893
1894         * elmo-map.el (elmo-folder-pack-numbers): Don't use
1895         `elmo-msgdb-set-path'.
1896
1897         * elmo-localdir.el (elmo-folder-pack-numbers): Ditto.
1898  
1899         * elmo-version.el (elmo-version): Up to 2.11.13.
1900
1901         * elmo.el (elmo-generic-folder-commit): Don't load msgdb.
1902
1903         * elmo-mark.el (elmo-mark-folder-msgdb-create): Use flag instead
1904         of mark.
1905
1906 2003-09-14  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1907
1908         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Fixed paren
1909         mismatch.
1910
1911 2003-09-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1912
1913         * elmo.el (elmo-message-cached-p): Use `elmo-message-flagged-p'
1914         instead of `elmo-msgdb-get-cached'.
1915         (elmo-message-set-cached): Don't use `elmo-msgdb-set-cached'.
1916
1917         * elmo-msgdb.el (elmo-msgdb-get-cached): Abolish.
1918         (elmo-msgdb-set-cached): Ditto.
1919         (elmo-msgdb-set-flag): Rewrite.
1920         (elmo-msgdb-unset-flag): Ditto.
1921
1922         * elmo-msgdb.el: Rewrite with luna.
1923
1924         * elmo.el (elmo-folder-msgdb-load): Renamed from `elmo-msgdb-load'.
1925         (elmo-folder-msgdb): Follow the change above.
1926         (elmo-generic-folder-commit): Use `elmo-msgdb-save'.
1927         (elmo-folder-unmark-important): Follow the API change.
1928         (elmo-folder-mark-as-important): Ditto.
1929         (elmo-folder-unmark-read): Ditto.
1930         (elmo-folder-mark-as-read): Ditto.
1931         (elmo-folder-unmark-answered): Ditto.
1932         (elmo-folder-mark-as-answered): Ditto.
1933         (elmo-folder-clear): Likewise.
1934
1935         * elmo-imap4.el (elmo-folder-open): Use `elmo-folder-msgdb-load'
1936         instead of `elmo-msgdb-load' (renamed).
1937
1938         * elmo-version.el (elmo-version): Up to 2.11.12.
1939
1940 2003-09-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1941
1942         * elmo.el (elmo-generic-folder-append-messages): Follow the API
1943         change.
1944         (elmo-message-mark): Abolish.
1945         (elmo-folder-synchronize): Use `elmo-msgdb-out-of-date-messages'
1946         instead of `elmo-msgdb-change-mark'.
1947
1948         * elmo-pipe.el (elmo-message-mark): Abolish.
1949
1950         * elmo-multi.el (elmo-message-mark): Ditto.
1951
1952         * elmo-msgdb.el (elmo-msgdb-new-mark): Changed to constant.
1953         (elmo-msgdb-unread-uncached-mark): Ditto.
1954         (elmo-msgdb-unread-cached-mark): Ditto.
1955         (elmo-msgdb-read-uncached-mark): Ditto.
1956         (elmo-msgdb-answered-cached-mark): Ditto.
1957         (elmo-msgdb-answered-uncached-mark): Ditto.
1958         (elmo-msgdb-important-mark): Ditto.
1959         (elmo-msgdb-flags-to-mark): Remove arguments `cached' and
1960         `use-cache'.
1961         (elmo-msgdb-append-entity): Changed 3rd arg from `mark' to
1962         `flags'.
1963         (elmo-flag-table-load): Changed flag to list of flag.
1964         (elmo-flag-table-set): If flags is nil, set read flag.
1965         (elmo-flag-table-get): Return derived flags from global mark,
1966         cache status and saved flags.
1967         (elmo-msgdb-flag-table): Follow the change above.
1968         (elmo-msgdb-out-of-date-messages): New function.
1969
1970         * elmo-shimbun.el (elmo-folder-msgdb-create): Follow the API change.
1971
1972         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
1973
1974         * elmo-pop3.el (elmo-pop3-msgdb-create-message): Ditto.
1975
1976         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
1977         (elmo-nntp-msgdb-create-message): Ditto.
1978
1979         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
1980
1981         * elmo-maildir.el (elmo-maildir-list-location): Treat flags as
1982         independent.
1983         (elmo-folder-msgdb-create): Follow the API change.
1984
1985         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
1986         (elmo-folder-append-messages): Ditto.
1987
1988         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
1989         (elmo-folder-append-buffer): Ditto.
1990
1991         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
1992
1993         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
1994
1995         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
1996         (elmo-archive-parse-mmdf): Ditto.
1997
1998         * elmo-version.el (elmo-version): Up to 2.11.11.
1999
2000 2003-09-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2001
2002         * elmo.el (elmo-message-flags): Use `elmo-msgdb-flags' instead of
2003         `elmo-msgdb-mark'.
2004
2005         * elmo-util.el (elmo-with-progress-display): Fixed edebug spec.
2006
2007         * elmo-pipe.el (elmo-message-flags): Defined.
2008
2009         * elmo-multi.el (elmo-message-flags): Ditto.
2010
2011 2003-09-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2012
2013         * elmo-msgdb.el (elmo-msgdb-delete-messages): Renamed from
2014         `elmo-msgdb-delete-msgs'.
2015
2016         * elmo.el (elmo-folder-count-flags): Don't use
2017         `elmo-msgdb-get-mark-alist'.
2018         (elmo-folder-detach-messages): Follow the API change.
2019
2020         * elmo.el (elmo-folder-list-messages): Append killed messages into
2021         result if `visible-only' is nil.
2022
2023         * elmo-nntp.el (elmo-nntp-catchup-msgdb): Return a list of
2024         canceled messages.
2025         (elmo-nntp-folder-msgdb-create): Kill messages which already canceled.
2026         (elmo-folder-update-number): Likewise.
2027
2028         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number): Abolish.
2029         (elmo-pop3-sort-msgdb-by-original-number): Use
2030         `elmo-msgdb-sort-entities'.
2031
2032         * elmo-msgdb.el (elmo-msgdb-sort-entities): New function.
2033         (elmo-msgdb-sort-by-date): Use it.
2034         (elmo-msgdb-overview-sort-by-date): Abolish.
2035
2036         * elmo-dop.el (elmo-folder-status-dop): Fixed.
2037
2038         * elmo-msgdb.el (elmo-msgdb-list-messages): Undo last change.
2039         (elmo-msgdb-flags): New function.
2040         (elmo-msgdb-merge): Use elmo-msgdb-append.
2041
2042         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed the last
2043         change.
2044
2045         * elmo-map.el (elmo-folder-pack-numbers): Ditto.
2046
2047         * elmo-dop.el (elmo-folder-status-dop): Use
2048         elmo-folder-list-messages instead of elmo-msgdb-list-messages.
2049
2050 2003-09-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2051
2052         * elmo-map.el (elmo-folder-pack-numbers): Rewrite.
2053
2054         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed last change.
2055
2056         * elmo-msgdb.el (elmo-msgdb-append-entity): Fixed.
2057
2058         * elmo-util.el (elmo-with-progress-display): New macro.
2059
2060         * elmo-localdir.el (elmo-folder-pack-numbers): Rewrite.
2061
2062 2003-09-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2063
2064         * elmo-shimbun.el (elmo-shimbun-folder-entity-hash): Use
2065         `elmo-folder-list-message-entities' instead of
2066         `elmo-msgdb-get-overview'.
2067         (elmo-map-folder-list-message-locations): Ditto.
2068
2069         * elmo-msgdb.el (elmo-msgdb-append): Rewrite (use interface
2070         methods instead of treat directly).
2071         (elmo-msgdb-clear): Ditto.
2072         (elmo-msgdb-delete-msgs): Ditto.
2073         (elmo-msgdb-sort-by-date): Ditto.
2074
2075         * elmo-nntp.el (elmo-nntp-msgdb-create-message): Removed unused
2076         local variables.
2077         (elmo-nntp-folder-msgdb-create): Follow the API change.
2078
2079         * elmo-version.el (elmo-version): Up to 2.11.10.
2080
2081 2003-08-30  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2082
2083         * elmo-msgdb.el (elmo-msgdb-mark-to-flags): New function.
2084         (elmo-msgdb-flags-to-mark): Ditto.
2085         (elmo-msgdb-append-entity): Ditto.
2086
2087         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
2088         Use `elmo-msgdb-append-entity' instead of construct msgdb.
2089         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
2090         (elmo-archive-parse-mmdf): Ditto.
2091
2092         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
2093
2094         * elmo-filter.el (elmo-folder-msgdb-create): Ditto.
2095
2096         * elmo-localdir.el (elmo-folder-msgdb-create): Ditto.
2097
2098         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
2099
2100         * elmo-mark.el (elmo-mark-folder-msgdb-create): Ditto.
2101
2102         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
2103
2104         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
2105
2106         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
2107
2108         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Ditto.
2109         (elmo-folder-msgdb-create-plugged): Set elmo-imap4-current-msgdb
2110         to empty msgdb.
2111
2112         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Use
2113         `elmo-msgdb-make-message-entity' and `elmo-msgdb-append-entity'
2114         instead of directly construction.
2115         (elmo-nntp-msgdb-create-message): Use `elmo-msgdb-append-entity'
2116         instead of construct msgdb.
2117
2118         * elmo-pop3.el (elmo-pop3-sort-msgdb-by-original-number): Use
2119         `elmo-msgdb-set-overview' instead of reconstruct msgdb.
2120         (elmo-pop3-msgdb-create-message): Use `elmo-msgdb-append-entity'
2121         instead of construct msgdb.
2122
2123 2003-08-28  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2124
2125         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Decode value
2126         when field is from or subject.
2127
2128 2003-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
2129
2130         * elmo-multi.el (elmo-message-entity-parent): Define.
2131         (elmo-folder-search): Rewrite.
2132
2133 2003-08-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2134
2135         * elmo-multi.el (elmo-message-cached-p): Define.
2136
2137         * elmo.el (elmo-message-cached-p): New method.
2138         (elmo-message-accessible-p): Use it instead of msgdb API directly.
2139         (elmo-message-flags): New method.
2140         (elmo-message-flagged-p): New function.
2141
2142         * elmo-version.el (elmo-version): Up to 2.11.9.
2143
2144 2003-08-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2145
2146         * elmo-version.el (elmo-version): Up to 2.11.8.
2147
2148         * elmo.el (elmo-folder-move-messages): Removed unused arguments.
2149
2150         * elmo-pipe.el (elmo-pipe-drain): Follow the change above.
2151
2152 2003-08-14  Yuuichi Teranishi  <teranisi@gohome.org>
2153
2154         * elmo.el (elmo-folder-detach-messages): Undo last change.
2155
2156 2003-08-13  Yuuichi Teranishi  <teranisi@gohome.org>
2157
2158         * elmo.el (elmo-folder-detach-messages): Don't load msgdb if empty.
2159
2160         * elmo-pipe.el (elmo-pipe-drain): Bind elmo-inhibit-number-mapping
2161         only when src folder type is pop3.
2162
2163 2003-08-12  Yuuichi Teranishi  <teranisi@gohome.org>
2164
2165         * elmo-msgdb.el (elmo-msgdb-make-index): Use
2166         elmo-msgdb-overview-entity-get-number instead of
2167         elmo-message-entity-number.
2168
2169 2003-08-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2170
2171         * elmo-version.el (elmo-version): Up to 2.11.7.
2172
2173 2003-08-07  Yuuichi Teranishi  <teranisi@gohome.org>
2174
2175         * elmo.el (elmo-folder-append-msgdb): Rewrite and define as an inline
2176         function.
2177
2178         * elmo-msgdb.el (elmo-msgdb-append): Use elmo-msgdb-make-index-return.
2179         (elmo-msgdb-merge): New function.
2180         (elmo-msgdb-make-index-return): Renamed from elmo-msgdb-make-index.
2181         (elmo-msgdb-make-index): Rewrite.
2182
2183         * elmo-version.el (elmo-version): Up to 2.11.6.
2184
2185         * elmo-msgdb.el (elmo-msgdb-list-messages): If argument is a string,
2186         use it as a the path for loading message entities.
2187
2188         * elmo-dop.el (elmo-folder-status-dop): Use elmo-msgdb-list-messages.
2189
2190 2003-08-05  Yuuichi Teranishi  <teranisi@gohome.org>
2191
2192         * elmo-filter.el (elmo-folder-set-message-modified): Set 
2193         message-modified slot of itself if it does not require target msgdb.
2194
2195         * elmo-mime.el (elmo-mime-message-display): Display message entirely
2196         if folder length is zero.
2197         (elmo-mime-display-as-is): Ditto.
2198
2199         * elmo-filter.el (elmo-folder-set-message-modified): Define.
2200
2201         * elmo-multi.el (elmo-folder-set-message-modified): Ditto.
2202
2203 2003-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2204
2205         * elmo.el (elmo-folder-set-message-modified): New method.
2206         (elmo-generic-folder-commit): Use it.
2207         (elmo-folder-synchronize): Ditto.
2208
2209         * elmo-pipe.el (elmo-folder-set-message-modified): Define.
2210         (elmo-folder-commit): Remove duplicate definition.
2211
2212 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
2213
2214         * elmo.el (elmo-folder-list-message-entities): Ignore killed-list.
2215
2216 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2217
2218         * elmo.el (elmo-msgdb-load): Use elmo-msgdb-list-messages.
2219         (elmo-strict-folder-diff): Ditto.
2220         (elmo-folder-set-info-max-by-numdb): Simplify.
2221
2222         * elmo-nntp.el (elmo-nntp-folder-msgdb-create): Use
2223         elmo-msgdb-list-messages.
2224
2225         * elmo-msgdb.el (elmo-msgdb-seen-save): Abolish.
2226         (elmo-msgdb-list-flagged): Fixed problem when `flag' is `read'.
2227
2228 2003-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
2229
2230         * elmo.el (elmo-folder-list-messages): Treat killed-list only when
2231         visible-only is non-nil.
2232         (elmo-folder-confirm-appends): Changed message.
2233         (elmo-folder-synchronize): Added argument disable-killed.
2234
2235         * elmo-multi.el (elmo-folder-synchronize): Added argument
2236         disable-killed.
2237
2238         * elmo-pipe.el (elmo-folder-synchronize): Ditto.
2239
2240         * elmo-version.el (elmo-version): Up to 2.11.5.
2241
2242         * elmo-multi.el (elmo-folder-search): Use nil for 1st argument of
2243         elmo-list-filter.
2244
2245         * elmo-util.el (elmo-list-filter): Simplify.
2246
2247         * elmo.el (elmo-generic-folder-commit): Use elmo-folder-list-messages.
2248         (elmo-folder-set-info-max-by-numdb): Changed argument to number list.
2249         (elmo-generic-folder-diff): Abolish argument.
2250         (elmo-msgdb-load): Don't use number-alist.
2251
2252         * elmo-filter.el (elmo-folder-diff): Abolish argument.
2253
2254         * elmo-pipe.el (elmo-folder-diff): Ditto.
2255
2256         * elmo-nmz.el (elmo-folder-diff): Ditto.
2257
2258         * elmo-net.el (elmo-folder-diff): Ditto.
2259
2260         * elmo-maildir.el (elmo-folder-diff): Ditto.
2261
2262         * elmo-imap4.el (elmo-folder-diff-async): Ditto.
2263
2264         * elmo-multi.el (elmo-folder-diff): Ditto
2265         (elmo-multi-folder-diff): Rewrite.
2266
2267 2003-08-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2268
2269         * elmo-pipe.el (elmo-folder-msgdb): Define.
2270
2271 2003-08-01  Yuuichi Teranishi  <teranisi@gohome.org>
2272
2273         * elmo.el (elmo-message-set-cached): Define as a method.
2274
2275         * elmo-pipe.el (elmo-message-set-cached): Define.
2276         (elmo-find-fetch-strategy): Ditto.
2277
2278         * elmo-multi.el (elmo-message-set-cached): Define.
2279         (elmo-find-fetch-strategy): Rewrite.
2280
2281         * elmo-mime.el (elmo-mime-message-display): Use elmo-message-entity.
2282
2283         * elmo-pipe.el (elmo-message-folder): Fixed definition.
2284
2285 2003-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
2286
2287         * elmo-msgdb.el (elmo-msgdb-list-messages): Use number of overviews
2288         instead of number-alist.
2289
2290         * elmo-localdir.el (elmo-folder-append-messages): Don't refer
2291         mark nor message-id when msgdb of source folder is not loaded.
2292
2293         * elmo.el (elmo-generic-folder-append-messages): Ditto.
2294
2295         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
2296
2297 2003-07-29  Yuuichi Teranishi  <teranisi@gohome.org>
2298
2299         * elmo.el (elmo-folder-length): Don't require msgdb.
2300
2301 2003-07-28  Yuuichi Teranishi  <teranisi@gohome.org>
2302
2303         * elmo.el (elmo-message-mark): Cause an error when empty folder.
2304         (elmo-message-field): Ditto.
2305
2306         * elmo-maildir.el (luna-define-class): Added slot `answered-locations'.
2307         (elmo-map-folder-list-message-locations): Setup `answered-locations'
2308         slot.
2309         (elmo-map-folder-list-answereds): Define.
2310         (elmo-maildir-list-location): Treat 'R' info.
2311         (elmo-folder-msgdb-create): Treat flag-table.
2312         (elmo-folder-append-messages): Save flag-table.
2313
2314 2002-05-05  David Smith <ultrasoul@ultrasoul.com>
2315
2316         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): 
2317         Use SELECT when elmo-imap4-use-select-to-update-status is t.
2318
2319 2003-07-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2320
2321         * elmo.el (elmo-generic-folder-append-messages): Fixed last change.
2322
2323         * elmo-localdir.el (elmo-folder-append-messages): Set flag as
2324         'read when mark is null.
2325
2326 2003-07-24  Yuuichi Teranishi  <teranisi@gohome.org>
2327
2328         * elmo-version.el (elmo-version): Up to 2.11.4.
2329
2330 2003-07-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2331
2332         * elmo-pipe.el (elmo-folder-unmark-answered): Define.
2333         (elmo-folder-mark-as-answered): Ditto.
2334
2335 2003-07-22  Yuuichi Teranishi  <teranisi@gohome.org>
2336
2337         * elmo-pop3.el (elmo-pop3-exists-exactly): Set default value as nil.
2338         (elmo-pop3-get-session): Make msgdb directory after session.
2339         (elmo-folder-exists-p): Check exactly at the first time even when the
2340         elmo-pop3-exists-exactly is nil.
2341
2342         * elmo-pipe.el (elmo-folder-open-internal): Don't drain here.
2343         (elmo-folder-list-messages): Define instead of
2344         elmo-folder-list-messages-internal.
2345         (elmo-folder-check): Check destination folder.
2346         (elmo-folder-synchronize): Drain the pipe.
2347
2348         * elmo-localdir.el (elmo-folder-append-messages): Don't cause an error
2349         when msgdb is not loaded.
2350
2351         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): Abolish.
2352
2353         * elmo-imap4.el (elmo-folder-list-messages-plugged): Fixed.
2354         (elmo-imap4-folder-diff-plugged): Use uidnext to calculate number of
2355         messages.
2356
2357         * elmo.el (elmo-folder-kill-messages-before): New function.
2358         (elmo-folder-kill-messages): Ditto.
2359         (elmo-folder-synchronize): Use elmo-folder-kill-messages-before.
2360
2361         * elmo-imap4.el (elmo-folder-list-messages-plugged): 
2362         Don't use elmo-msgdb-max-of-killed. It is harmful when messages are
2363         killed not by synchronize (e.g. scoring).
2364
2365 2003-07-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2366
2367         * elmo.el (elmo-folder-search-fast): Return t if condition is not
2368         treated.
2369         (elmo-folder-search): Follow the change above.
2370
2371         * elmo-util.el (elmo-read-search-condition-internal): Add `Flag'
2372         into the candidates of search field.
2373
2374 2003-07-21  Yuuichi Teranishi  <teranisi@gohome.org>
2375
2376         * elmo-msgdb.el (elmo-msgdb-set-flag): Overwrite answered flag.
2377         (elmo-msgdb-unset-flag): Ditto.
2378
2379         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Precedes Seen flag.
2380
2381 2003-07-19  Yuuichi Teranishi  <teranisi@gohome.org>
2382
2383         * elmo-pipe.el (elmo-folder-msgdb-create): Don't define.
2384         (elmo-folder-commit): Define.
2385         (elmo-folder-synchronize): Ditto.
2386         (elmo-folder-list-flagged): Ditto.
2387         (elmo-folder-commit): Ditto.
2388         (elmo-folder-length): Ditto.
2389         (elmo-folder-count-flags): Ditto.
2390         (elmo-message-mark): Ditto.
2391         (elmo-message-field): Ditto.
2392         (elmo-message-entity): Ditto.
2393         (elmo-message-folder): Ditto.
2394
2395 2003-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
2396
2397         * elmo.el (elmo-message-field): Define as a method.
2398
2399         * elmo-multi.el (elmo-message-entity): Fixed bug when no entity found.
2400         (elmo-message-field): Define.
2401
2402         * elmo.el (elmo-folder-list-unreads): Don't use msgdb API.
2403         (elmo-folder-list-importants): Ditto.
2404         (elmo-folder-list-answereds): Ditto.
2405
2406         * elmo-multi.el (elmo-folder-mark-as-important): Remove :before
2407         qualifier.
2408         (elmo-folder-mark-as-read): Ditto.
2409         (elmo-folder-unmark-read): Ditto.
2410         (elmo-folder-mark-as-answered): Ditto.
2411         (elmo-folder-unmark-answered): Ditto.
2412         (elmo-folder-list-flagged): Define.
2413         (elmo-folder-commit): Ditto.
2414         (elmo-folder-length): Ditto.
2415         (elmo-folder-count-flags): Ditto.
2416
2417 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
2418
2419         * elmo.el (elmo-folder-detach-messages): New method.
2420         (elmo-folder-move-messages): Use it.
2421         (elmo-folder-synchronize): Ditto.
2422
2423         * elmo-multi.el (elmo-folder-detach-messages): Define.
2424
2425         * elmo.el (elmo-message-copy-entity): New function.
2426         (elmo-message-entity-set-number): Ditto.
2427         (elmo-message-mark): Define as method.
2428
2429         * elmo-multi.el (elmo-multi-real-folder-number): Changed position.
2430         (elmo-folder-synchronize): Return 0 (Should be reconsider).
2431         (elmo-message-entity): Fixed last change.
2432         (elmo-message-mark): Define.
2433         (elmo-folder-msgdb-create): Abolish.
2434         (elmo-multi-folder-append-msgdb): Ditto.
2435         (elmo-multi-folder-diff): Fixed.
2436         (elmo-multi-split-number-alist): Removed.
2437         (elmo-multi-split-mark-alist): Removed.
2438         (elmo-folder-list-messages): Define.
2439         (elmo-folder-list-messages-internal): Removed.
2440
2441         * elmo-localdir.el (elmo-folder-append-messages): Treat flags for
2442         local file messages.
2443         (elmo-folder-msgdb-create): Fixed read mark.
2444
2445 2003-07-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2446
2447         * elmo.el (elmo-generic-folder-append-messages): Set flag as nil
2448         if mark is nil.
2449
2450 2003-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
2451
2452         * elmo.el (elmo-folder-list-message-entities): Define as inline
2453         function.
2454         (elmo-folder-messages): Abolish.
2455
2456         * elmo-multi.el (elmo-folder-check): Call elmo-folder-check for each
2457         folder.
2458         (elmo-folder-synchronize): Define.
2459         (elmo-message-entity): Define.
2460
2461 2003-07-16  Yuuichi Teranishi  <teranisi@gohome.org>
2462
2463         * elmo-imap4.el (elmo-folder-delete-messages-plugged): Call
2464         elmo-imap4-session-select-mailbox.
2465
2466         * elmo.el (elmo-folder-move-messages): Don't display any message.
2467
2468         * elmo-imap4.el (elmo-imap4-send-command): Accept process output when
2469         parsing.
2470         (elmo-imap4-session-check): Don't wait CHECK response.
2471         (elmo-folder-delete-messages-plugged): Don't wait EXPUNGE response.
2472
2473 2003-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
2474
2475         * elmo.el (elmo-folder-synchronize): Fixed bug when sync-all.
2476
2477 2003-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
2478
2479         * elmo-multi.el (elmo-folder-process-crosspost): Follow the change in
2480         API.
2481         * elmo-nntp.el (elmo-folder-process-crosspost): Ditto.
2482
2483
2484         * elmo.el (elmo-folder-process-crosspost): Remove optional argument.
2485         (elmo-folder-list-message-entities): Added argument in-msgdb and
2486         numbers.
2487         (elmo-folder-synchronize): Define as a method.
2488
2489         * elmo-nntp.el (elmo-folder-initialize): Don't use
2490         elmo-nntp-default-user if zero-length username is specified
2491         explicitly.
2492
2493 2003-07-06  Yoichi NAKAYAMA  <yoichi@geiin.org>
2494
2495         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't omit
2496         server name in case with username.
2497         (XXX: this is ad-hoc fix against username includes "@", it
2498         should be solved fundamentally)
2499
2500 2003-07-05  Yoichi NAKAYAMA  <yoichi@geiin.org>
2501
2502         * elmo-nntp.el (elmo-nntp-debug): New function.
2503         (elmo-nntp-send-command, elmo-nntp-process-filter): Call it.
2504         (elmo-network-authenticate-session): Hide auth-info from the log.
2505
2506         * elmo-nntp.el (elmo-nntp-folder-list-subfolders): Don't append
2507         user name if it is equal to elmo-nntp-default-user.
2508
2509 2003-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
2510
2511         * elmo-shimbun.el (elmo-shimbun-get-headers): Use shimbun-server
2512         instead of shimbun-server-internal;
2513         Use shimbun-current-group instead of shimbun-current-group-internal.
2514         (elmo-folder-plugged-p): Use shimbun-server instead of
2515         shimbun-server-internal.
2516         (elmo-folder-set-plugged): Ditto.
2517         (elmo-net-port-info): Ditto.
2518         (elmo-folder-check): Ditto.
2519         (elmo-folder-expand-msgdb-path): Ditto.
2520         (elmo-folder-list-subfolders): Ditto.
2521
2522 2003-05-18  Yoichi NAKAYAMA  <yoichi@geiin.org>
2523
2524         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra-field):
2525         Convert field-name to lower case.
2526         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
2527
2528 2003-05-12  Yoichi NAKAYAMA  <yoichi@geiin.org>
2529
2530         * acap.el, elmo-imap4.el, elmo-nntp.el, elmo-util.el, pldap.el:
2531         `message' and `error' take format string.
2532
2533 2003-04-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2534
2535         * elmo-pipe.el (elmo-folder-clear): Implemented clear copied-list.
2536
2537 2003-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2538
2539         * elmo-msgdb.el (elmo-msgdb-message-entity-field): Don't use self
2540         recursive call (can't byte compile on emacs 20.7).
2541
2542 2003-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
2543
2544         * elmo.el (elmo-folder-list-messages): Redefine as a luna method.
2545         (elmo-folder-list-message-entities): New API.
2546         (elmo-message-entity): Ditto.
2547         (elmo-message-entity-parent): Ditto.
2548         (elmo-folder-do-each-message-entity): Ditto.
2549         (elmo-message-entity-number): Ditto.
2550         (elmo-message-entity-field): Ditto.
2551         (elmo-message-entity-set-field): Ditto.
2552         (elmo-folder-count-flags): Ditto.
2553         (elmo-folder-length): Ditto.
2554
2555         * elmo-util.el (elmo-get-hash-val): Check whether hashtable is nil or
2556         not.
2557
2558         * elmo-msgdb.el (elmo-msgdb-list-messages): New function.
2559         (elmo-msgdb-count-marks): Abolish.
2560         (elmo-msgdb-make-entity): Ditto.
2561         (elmo-msgdb-do-each-entity): Ditto.
2562         (elmo-msgdb-message-entity): New inline function.
2563         (elmo-msgdb-message-entity-field): Ditto.
2564         (elmo-msgdb-message-entity-set-field): Ditto.
2565         (elmo-msgdb-make-message-entity): New function.
2566
2567 2003-03-25  Yuuichi Teranishi  <teranisi@gohome.org>
2568
2569         * elmo.el (elmo-folder-append-buffer): Changed argument from unread 
2570         to flag. (All other related portions are changed.)
2571         (elmo-folder-msgdb-create): Likewise.
2572         (elmo-generic-folder-append-messages): Use flag-table instead of
2573         seen-list.
2574         (elmo-folder-move-messages): Removed redundant process.
2575         (elmo-folder-synchronize): Likewise.
2576
2577         * elmo-msgdb.el (elmo-flag-table-get): New function.
2578         (elmo-flag-table-save): Fixed.
2579         (elmo-msgdb-length): New inline function.
2580         (elmo-msgdb-flag-table): New function.
2581         (elmo-msgdb-mark): Add optional argument new.
2582         (elmo-msgdb-add-msgs-to-seen-list): Abolish.
2583         (elmo-msgdb-seen-list): Ditto.
2584         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
2585
2586
2587 2003-03-24  Yuuichi Teranishi  <teranisi@gohome.org>
2588
2589         * elmo.el (elmo-message-set-mark): Abolish.
2590         (elmo-folder-unmark-important): Added optional argument `ignore-flag'.
2591         (All related portions are changed.)
2592
2593         * elmo-msgdb.el (toplevel): Added comment.
2594         (elmo-load-msgdb): Added 4th element `path'.
2595         (elmo-msgdb-append): Follow the change above.
2596         (elmo-msgdb-clear): Ditto.
2597         (elmo-msgdb-delete-msgs): Ditto.
2598         (elmo-msgdb-get-path): New inline function.
2599         (elmo-msgdb-set-path): Ditto.
2600         (elmo-flag-table-filename): New variable.
2601         (elmo-flag-table-load): New function.
2602         (elmo-flag-table-set): Ditto.
2603         (elmo-flag-table-save): Ditto.
2604         (elmo-msgdb-get-field-value): Abolish.
2605         (elmo-msgdb-overview-get-entity-by-number): Ditto.
2606
2607 2003-03-30  Yoichi NAKAYAMA  <yoichi@geiin.org>
2608
2609         * elmo.el (elmo-folder-delete): Confirm deletion here, return t if
2610         the folder has been deleted successfully.
2611         * elmo-imap4.el (elmo-folder-delete): Ditto.
2612         * elmo-archive.el (elmo-folder-delete): Ditto.
2613         * elmo-localdir.el (elmo-folder-delete): Ditto.
2614         * elmo-maildir.el (elmo-folder-delete): Ditto.
2615
2616 2003-03-27  Tetsurou Okazaki  <okazaki@be.to>
2617
2618         * elmo-util.el (elmo-string-member-ignore-case): New function.
2619         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Use it.
2620         (elmo-imap4-fetch-callback-1-subr): Likewise.
2621
2622 2003-03-27  Kimura Fuyuki <fuyuki@hadaly.org>
2623
2624         * elmo-imap4.el (elmo-imap4-response-get-selectable-mailbox-list): Fix
2625         the case of the name attribute "\Noselect".
2626
2627 2003-02-16  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2628
2629         * elmo.el (elmo-folder-rename-internal): New method to cause error.
2630
2631         * elmo-localdir.el (elmo-folder-pack-numbers): onum, a member of
2632         flist, is not always a member of onum-alist.
2633
2634 2003-02-14  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2635
2636         * elmo-version.el (elmo-version): Up to 2.11.3.
2637
2638 2003-02-10  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2639
2640         * elmo-maildir.el (elmo-folder-rename-internal): New method,
2641         copied from localdir's one.
2642
2643         * elmo-pipe.el (elmo-folder-rename): New method, rename
2644         destination folder with leaving source folder as it is.
2645
2646 2003-02-08  KAMO Tomoyuki  <kamo@ITmanage.co.jp>
2647
2648         * elmo-nntp.el (elmo-nntp-get-folders-info): Don't use
2649         replace-regexp.
2650
2651 2003-02-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2652
2653         * elmo-version.el (elmo-version): Up to 2.11.2.
2654
2655 2003-02-05  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2656
2657         * elmo-shimbun.el (elmo-folder-initialize): Do not call
2658         shimbun-open in case of "@".
2659         (elmo-folder-open-internal): Cope with shimbun = nil case.
2660         (elmo-folder-plugged-p): Ditto.
2661         (elmo-folder-list-subfolders): Make list for "@/" group.
2662
2663 2003-01-31  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2664
2665         * elmo-imap4.el (elmo-folder-expand-msgdb-path): Don't expand
2666         mailbox (e.g. for %~/something).
2667
2668 2003-01-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2669
2670         * elmo-localdir.el (elmo-folder-rename-internal): Referctoring;
2671         Replace nested conditional with guard clauses.
2672
2673 2003-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
2674
2675         * pldap.el (ldap-search-basic): Don't treat exit status 32 as an
2676         error [wl:11327].
2677
2678         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Bind print-level,
2679         print-depth.
2680
2681 2003-01-30  TAKAHASHI Kaoru  <kaoru@kaisei.org>
2682
2683         * elmo-archive.el (elmo-folder-rename-internal): Referctoring;
2684         Replace nested conditional with guard clauses.
2685
2686 2003-01-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2687
2688         * elmo-util.el (elmo-object-save): Bind print-level, print-length.
2689         (elmo-passwd-alist-save): Ditto.
2690         * elmo-database.el (elmo-database-msgid-put): Bind print-length.
2691
2692 2003-01-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2693
2694         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Expand
2695         dir-name only if it is absolute path.
2696         (TODO: distinguish +/something and +something)
2697
2698 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2699
2700         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Correct msgdb
2701         path for "+~/something".
2702
2703 2003-01-15  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2704
2705         * elmo-localdir.el (elmo-folder-rename-internal): If new-dir exist
2706         as non-directory, cause error before rename-file.
2707         * elmo-archive.el (elmo-folder-rename-internal): Create directory
2708         apropriately, mimic localdir's one.
2709         Based on the patch from KAMO Tomoyuki <kamo@ITmanage.co.jp>.
2710
2711 2003-01-10  Tsutomu OKADA  <okada@furuno.co.jp>
2712
2713         * elmo-map.el (elmo-folder-pack-numbers): Fix name of the function.
2714
2715 2003-01-06  Yuuichi Teranishi  <teranisi@gohome.org>
2716
2717         * elmo-msgdb.el: Moved global mark handling stuffs to elmo-util.el.
2718
2719         * elmo-util.el: Moved global mark handling stuffs from elmo-msgdb.el.
2720         
2721         * elmo-util.el (elmo-file-cache-delete): Check whether the cache file
2722         is included in the global-mark or not.
2723
2724 2002-12-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2725
2726         * utf7.el (toplevel): Avoid error when the function
2727         find-coding-system does not exist.
2728
2729 2002-12-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2730
2731         * elmo-nntp.el (elmo-folder-search): Body search is to search from
2732         cache even if the folder is plugged.
2733         (elmo-nntp-search-primitive): Do nothing when body search is
2734         invoked (although it is not used by the change above).
2735         * elmo-multi.el (elmo-folder-search): Don't ignore error anymore.
2736
2737 2002-12-20  Kenichi OKADA  <okada@opaopa.org>
2738
2739         * elmo-version.el (elmo-version): Up to 2.11.1.
2740
2741 2002-12-10  Kenichi OKADA  <okada@opaopa.org>
2742
2743         * elmo-archive.el: Specify charset.
2744
2745 2002-12-04  Yuuichi Teranishi  <teranisi@gohome.org>
2746
2747         * elmo-pop3.el (elmo-pop3-process-filter): Check whether the pop3
2748         process buffer lives or not.
2749
2750         * elmo-dop.el (elmo-dop-queue-flush): Don't append to the dop-queue
2751         while flushing queues (It causes infinite loop).
2752
2753 2002-11-26  Yuuichi Teranishi  <teranisi@gohome.org>
2754
2755         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed last change.
2756
2757 2002-11-24  Yuuichi Teranishi  <teranisi@gohome.org>
2758
2759         * utf7.el (toplevel): Check the ucs features dynamically.
2760         (Advice from Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>)
2761
2762         * elmo-pipe.el (elmo-folder-creatable-p): Don't check whether the
2763         folder is creatabe or not if it already exists.
2764
2765 2002-11-21  Yuuichi Teranishi  <teranisi@gohome.org>
2766
2767         * elmo-nntp.el (elmo-nntp-search-primitive): Revert the last change.
2768
2769         * elmo-multi.el (elmo-folder-search): Ignore errors while search.
2770
2771         * elmo-imap4.el (elmo-imap4-response-garbage-p): New macro.
2772         (elmo-imap4-read-response): Take care of garbage response.
2773
2774 2002-11-20  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2775
2776         * elmo-nntp.el (elmo-nntp-search-primitive): Fix the last change,
2777         just return nil instead of error.
2778
2779 2002-11-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2780
2781         * elmo-nntp.el (elmo-nntp-search-primitive): Cause error when the
2782         search-key is "body".
2783
2784 2002-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
2785
2786         * elmo-imap4.el (elmo-folder-list-subfolders): Check the return value
2787         of elmo-string-matched-assoc to use match-data.
2788         (Thanks to Mito <mito@mxa.nes.nec.co.jp>)
2789
2790 2002-11-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2791
2792         * elmo-split.el (elmo-split->): New function.
2793         (elmo-split-<): Ditto.
2794
2795 2002-11-14  Yuuichi Teranishi  <teranisi@gohome.org>
2796
2797         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Added
2798         workaround for invalid message-id.
2799
2800 2002-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
2801
2802         * elmo-pop3.el (elmo-pop3-get-session): If if-exists is 'any-exists,
2803         return normal pop3 session or pop3 biff session.
2804
2805 2002-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
2806
2807         * elmo-maildir.el (elmo-maildir-update-current): Don't append
2808         info part to the cur files when the new files already have it.
2809         (Adviced by Jared Rhine <jared@wordzoo.com>)
2810
2811 2002-11-06  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2812
2813         * elmo-split.el (elmo-split-default-action): New variable.
2814         (elmo-split-subr): Use it if all other conditions are passed.
2815         Extend `fname' and rename it as `action'. (implemented
2816         Teranishi-san's idea in [wl:10800])
2817
2818 2002-10-29  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2819
2820         * elmo-imap4.el: Remove Nemacs hack, replace `elmo-read' by `read'.
2821         * elmo-util.el: Ditto.
2822
2823 2002-10-28  Yuuichi Teranishi  <teranisi@gohome.org>
2824
2825         * elmo.el (elmo-message-accessible-p): Renamed from
2826         elmo-message-cached-p and rewritten.
2827
2828 2002-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
2829
2830         * elmo.el (elmo-folder-list-flagged): New generic function.
2831         (elmo-folder-list-importants): New implementation.
2832         (elmo-folder-list-answereds): Ditto.
2833         (elmo-folder-search-fast):  Use 'flag' instead of 'mark';
2834         Added 'digest'.
2835         (elmo-message-cached-p): New function.
2836         (elmo-message-set-flag): Ditto (no content).
2837         (elmo-message-unset-flag): Ditto.
2838         (elmo-folder-list-messages-mark-match): Abolish.
2839
2840         * elmo-util.el (elmo-regexp-opt): New function.
2841
2842         * elmo-msgdb.el (elmo-msgdb-get-cached): New function.
2843         (elmo-msgdb-match-condition-primitive): Use 'flag' instead of 'mark';
2844         Added 'digest'.
2845         (elmo-msgdb-list-flagged): New function.
2846
2847         * elmo-imap4.el (elmo-imap4-folder-list-digest-plugged): New function.
2848         (elmo-imap4-search-internal-primitive): Use 'flag' instead of 'mark';
2849         Added 'digest'.
2850
2851         * elmo-filter.el (elmo-folder-diff): Use 'flag' instead of 'mark'.
2852
2853 2002-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
2854
2855         * elmo-version.el (elmo-version): Up to 2.11.0.
2856
2857 2002-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2858
2859         * elmo-msgdb.el (elmo-msgdb-set-flag): Use
2860         `elmo-file-cache-exists-p'; use proper mark that depends on
2861         `use-cache'.
2862         (elmo-msgdb-unset-flag): Ditto.
2863         (elmo-msgdb-set-cached): Ditto. added argument `use-cache'.
2864
2865         * elmo.el (elmo-message-set-cached): Call `elmo-msgdb-set-cached'
2866         with 4th argument `use-cache'.
2867
2868 2002-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
2869
2870         * elmo.el (elmo-folder-unmark-important): Follow the changes above.
2871         (elmo-folder-mark-as-important): Ditto.
2872         (elmo-folder-unmark-read): Ditto.
2873         (elmo-folder-mark-as-read): Ditto.
2874         (elmo-folder-unmark-answered): Ditto.
2875         (elmo-folder-mark-as-answered): Ditto.
2876
2877         * elmo-msgdb.el (elmo-msgdb-set-cached): Use the term 'flag' for
2878         message status.
2879         (elmo-msgdb-mark): Likewise.
2880         (elmo-msgdb-set-flag): Renamed from elmo-msgdb-set-status.
2881         (elmo-msgdb-unset-flag): Likewise.
2882
2883         * elmo.el (elmo-generic-folder-diff): Avoid byte-compile warning.
2884
2885 2002-10-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2886
2887         * elmo-filter.el (elmo-folder-diff): Fixed condition checking
2888         `last:' filter.
2889
2890 2002-10-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2891
2892         * elmo-dop.el (elmo-folder-status-dop): If spool-folder is absent,
2893         set spool-length to 0.
2894
2895 2002-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2896
2897         * elmo-dop.el (elmo-dop-queue-flush): Check obsolete at first.
2898         (elmo-dop-queue-flush): Fixed last change.
2899
2900 2002-10-01  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2901
2902         * elmo-filter.el (elmo-folder-list-unreads): Call generic method
2903         if require-msgdb slot is nil.
2904         (elmo-folder-list-importants): Likewise.
2905
2906 2002-09-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2907
2908         * elmo.el (elmo-message-set-cached): Set mark-modified slot if
2909         mark is changed.
2910
2911         * elmo-msgdb.el (elmo-msgdb-set-mark): Return t.
2912         (elmo-msgdb-set-cached): Undo last change; return non-nil if mark
2913         is changed.
2914
2915 2002-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2916
2917         * elmo-msgdb.el (elmo-msgdb-set-cached): Set mark-modified slot.
2918
2919 2002-09-24  Yuuichi Teranishi  <teranisi@gohome.org>
2920
2921         * elmo-msgdb.el (elmo-msgdb-unset-status): Set mark-modified slot.
2922
2923         * elmo-multi.el (elmo-folder-close): Set msgdb of children as nil.
2924
2925 2002-09-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2926
2927         * elmo-msgdb.el (elmo-msgdb-set-status): Fixed logic (new to read).
2928         (elmo-msgdb-uncached-marks): Added elmo-msgdb-new-mark.
2929
2930 2002-09-24  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
2931
2932         * elmo.el: Add autoload setting for elmo-nntp-post, fix against
2933         the problem reported by Sean Rima [wl-en:180].
2934
2935 2002-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
2936
2937         * elmo-filter.el (elmo-folder-diff): Treat 'mark:' filter.
2938
2939         * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'.
2940
2941         * elmo-filter.el (elmo-folder-unmark-read): Ditto.
2942
2943         * elmo-map.el (elmo-folder-unmark-read): Ditto.
2944
2945         * elmo-multi.el (elmo-folder-unmark-read): Ditto.
2946
2947         * elmo-net.el (elmo-folder-unmark-read): Ditto.
2948
2949         * elmo-pipe.el (elmo-folder-unmark-read): Ditto.
2950
2951 2002-09-18  Yuuichi Teranishi  <teranisi@gohome.org>
2952
2953         * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after
2954         status number.
2955
2956 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
2957
2958         * elmo.el (elmo-folder-mark-as-read): Added argument `ignore-flag'.
2959         (elmo-folder-mark-as-read): Follow the API change.
2960         (elmo-message-set-cached): New function.
2961
2962         * elmo-pipe.el (elmo-folder-mark-as-read): Follow the API change.
2963
2964         * elmo-nntp.el (elmo-folder-mark-as-read): Set :before qualifier.
2965
2966         * elmo-net.el (elmo-folder-unmark-important): Set :before qualifier.
2967         (elmo-folder-mark-as-important): Ditto.
2968         (elmo-folder-unmark-read): Ditto.
2969         (elmo-folder-mark-as-read): Ditto.
2970         (elmo-folder-unmark-answered): Ditto.
2971         (elmo-folder-mark-as-answered): Ditto.
2972
2973         * elmo-multi.el (elmo-folder-mark-as-important): Set :before qualifier.
2974         (elmo-folder-unmark-important): Ditto.
2975         (elmo-folder-mark-as-read): Ditto.
2976         (elmo-folder-unmark-read): Ditto.
2977         (elmo-folder-mark-as-answered): Ditto.
2978         (elmo-folder-unmark-answered): Ditto.
2979
2980         * elmo-mark.el (toplevel): Removed some mark method definitions.
2981
2982         * elmo-map.el (elmo-map-folder-unmark-answered): New method.
2983         (elmo-map-folder-mark-as-answered): Ditto.
2984         (elmo-folder-unmark-important): Add :before qualifier.
2985         (elmo-folder-mark-as-important): Ditto.
2986         (elmo-folder-unmark-read): Ditto.
2987         (elmo-folder-mark-as-read): Ditto.
2988         (elmo-folder-unmark-answered): Define.
2989         (elmo-folder-mark-as-answered): Ditto.
2990
2991         * elmo-maildir.el (elmo-map-folder-mark-as-answered): Define.
2992         (elmo-map-folder-unmark-answered): Ditto.
2993
2994         * elmo-filter.el (elmo-folder-mark-as-read): Follow the API change.
2995
2996         * elmo-net.el (elmo-folder-unmark-important): Added :around qualifier.
2997         (elmo-folder-mark-as-important): Ditto.
2998         (elmo-folder-unmark-read): Ditto.
2999         (elmo-folder-mark-as-read): Ditto.
3000         (elmo-folder-unmark-answered): Ditto.
3001         (elmo-folder-mark-as-answered): Ditto.
3002
3003         * elmo-msgdb.el (elmo-msgdb-match-condition-primitive): Added argument
3004         `mark'; evaluate mark condition.
3005         (elmo-msgdb-match-condition-internal): New function.
3006         (elmo-msgdb-match-condition): Call it; changed argument.
3007
3008         * elmo.el (elmo-folder-search): Follow the API change on
3009         `elmo-msgdb-match-condition'.
3010
3011 2002-09-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3012
3013         * elmo-filter.el (elmo-folder-msgdb-create): Add to mark-alist if
3014         original mark is non-nil.
3015
3016 2002-09-17  Yuuichi Teranishi  <teranisi@gohome.org>
3017
3018         * elmo-map.el (elmo-map-folder-list-unreads): Define default behavior.
3019         (elmo-map-folder-list-answereds): New method.
3020         (elmo-folder-list-unreads): Add :around qualifier.
3021         (elmo-folder-list-importants): Ditto.
3022         (elmo-folder-list-answereds): Ditto.
3023
3024 2002-09-16  Yuuichi Teranishi  <teranisi@gohome.org>
3025
3026         * elmo-msgdb.el (elmo-msgdb-mark): New inline function.
3027
3028         * elmo-filter.el (elmo-folder-msgdb-create): Call target-folder's
3029         method if msgdb is not required.
3030         (elmo-filter-folder-list-importants): Don't treat global-mark.
3031
3032         * elmo.el (elmo-folder-list-importants): Ditto.
3033
3034         * elmo-net.el (elmo-folder-list-importants): Ditto.
3035
3036         * elmo-map.el (elmo-folder-list-importants): Ditto.
3037
3038         * elmo-msgdb.el (elmo-msgdb-seen-list): Use `elmo-msgdb-unread-marks'
3039
3040         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Set answered mark.
3041         (elmo-imap4-folder-list-any-plugged): New function.
3042         (elmo-imap4-search-internal-primitive): Use it.
3043
3044         * elmo-filter.el (elmo-folder-check): Synchronize original folder
3045         only when require-msgdb slot is non-nil.
3046         (elmo-folder-close): Clear target folder's msgdb.
3047
3048 2002-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
3049
3050         * elmo-pop3.el (elmo-folder-msgdb-create): Follow the API change.
3051         (elmo-pop3-msgdb-create-by-header): Ditto.
3052         (elmo-pop3-msgdb-create-message): Ditto.
3053
3054         * elmo-shimbun.el (elmo-folder-msgdb-create): Ditto.
3055
3056         * elmo-sendlog.el (elmo-folder-msgdb-create): Ditto.
3057
3058         * elmo-nmz.el (elmo-folder-msgdb-create): Ditto.
3059
3060         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string): Ditto.
3061         (elmo-folder-msgdb-create): Ditto.
3062         (elmo-nntp-folder-msgdb-create): Ditto.
3063         (elmo-nntp-msgdb-create-by-header): Ditto.
3064         (elmo-nntp-msgdb-create-message): Ditto.
3065         (elmo-folder-list-unreads): Define.
3066
3067         * elmo-pipe.el (elmo-folder-msgdb-create): Ditto.
3068         (elmo-folder-append-messages): Ditto.
3069         (elmo-folder-list-unreads): Define.
3070         (elmo-folder-list-importants): Ditto.
3071         (elmo-folder-list-answereds): Ditto.
3072
3073         * elmo-net.el (elmo-folder-list-unreads): Define.
3074         (elmo-folder-list-importants): Ditto.
3075         (elmo-folder-list-answereds): Ditto.
3076         (elmo-folder-list-answereds-plugged): Ditto.
3077         (elmo-folder-msgdb-create): Follow the API change.
3078         (elmo-folder-msgdb-create-unplugged): Ditto.
3079         (elmo-folder-unmark-answered): Define.
3080         (elmo-folder-mark-as-answered-unplugged): Ditto.
3081         (elmo-folder-unmark-answered-unplugged): Ditto.
3082
3083         * elmo-msgdb.el (elmo-msgdb-new-mark): New user option.
3084         (elmo-msgdb-unread-uncached-mark): Ditto.
3085         (elmo-msgdb-unread-cached-mark): Ditto.
3086         (elmo-msgdb-read-uncached-mark): Ditto.
3087         (elmo-msgdb-answered-cached-mark): Ditto.
3088         (elmo-msgdb-answered-uncached-mark): Ditto.
3089         (elmo-msgdb-important-mark): Ditto.
3090         (elmo-msgdb-set-mark): Rewrite.
3091         (elmo-msgdb-count-marks): Rewrite.
3092         (elmo-msgdb-mark-alist-set): Abolish.
3093         (elmo-msgdb-seen-list): Removed argument `seen-marks'.
3094         (elmo-msgdb-add-msgs-to-seen-list): Likewise.
3095
3096         * elmo-multi.el (elmo-folder-check): Call elmo-folder-synchronize.
3097         (elmo-folder-close): Define.
3098         (elmo-folder-msgdb-create): Follow the API change.
3099         (elmo-folder-list-unreads): Rewrite.
3100         (elmo-folder-mark-as-important): Ditto.
3101         (elmo-folder-unmark-important): Ditto.
3102         (elmo-folder-mark-as-read): Ditto.
3103         (elmo-folder-unmark-read): Ditto.
3104         (elmo-folder-mark-as-answered): Define.
3105         (elmo-folder-unmark-answered): Ditto.
3106
3107         * elmo-localdir.el (elmo-folder-msgdb-create): Follow the API change.
3108         (elmo-folder-append-messages): Ditto.
3109
3110         * elmo-mark.el (elmo-folder-msgdb-create): Ditto.
3111
3112         * elmo-map.el (elmo-folder-list-unreads): Ditto.
3113         (elmo-folder-list-importants): Ditto.
3114
3115         * elmo-maildir.el (elmo-folder-msgdb-create): Ditto.
3116         (elmo-folder-append-messages): Ditto.
3117
3118         * elmo-imap4.el (elmo-imap4-fetch-callback-1-subr): Follow the API
3119         change.
3120         (elmo-folder-msgdb-create-plugged): Ditto.
3121         (elmo-folder-append-messages): Ditto.
3122         (elmo-folder-list-answereds-plugged): Define.
3123         (elmo-imap4-search-internal-primitive): Add `mark' processing.
3124         (elmo-folder-unmark-answered-plugged): Define.
3125         (elmo-folder-mark-as-answered-plugged): Ditto.
3126         (elmo-folder-search-requires-msgdb-p): Ditto.
3127
3128         * elmo-filter.el (elmo-filter-folder): Added new slot 'require-msgdb'.
3129         (elmo-folder-initialize): Set it.
3130         (elmo-folder-msgdb): Define.
3131         (elmo-folder-check): Call elmo-folder-synchronize.
3132         (elmo-folder-close): Define.
3133         (elmo-folder-commit): Ditto.
3134         (elmo-folder-msgdb-create): Rewrite.
3135         (elmo-folder-list-unreads): Ditto.
3136         (elmo-folder-list-importants): Ditto.
3137         (elmo-folder-mark-as-read): Ditto.
3138         (elmo-folder-unmark-read): Ditto.
3139         (elmo-folder-mark-as-important): Ditto.
3140         (elmo-folder-unmark-important): Ditto.
3141         (elmo-folder-mark-as-answered): Define.
3142         (elmo-folder-unmark-answered): Ditto.
3143
3144         * elmo-dop.el (elmo-dop-queue-merge-method-list): Added
3145         elmo-folder-mark-as-answered, elmo-folder-unmark-answered.
3146         (elmo-dop-queue-method-name-alist): Likewise.
3147         (elmo-folder-mark-as-answered-dop): New inline function.
3148         (elmo-folder-unmark-answered-dop): Ditto.
3149         (elmo-folder-status-dop): Treat spool-length as 0 if it does not exist.
3150
3151         * elmo-archive.el (elmo-folder-append-messages): Follow the API change.
3152         (elmo-folder-msgdb-create): Ditto.
3153         (elmo-archive-msgdb-create-as-numlist-subr1): Ditto.
3154         (elmo-archive-msgdb-create-as-numlist-subr2): Ditto.
3155         (elmo-archive-parse-mmdf): Ditto.
3156
3157         * elmo-cache.el (elmo-folder-msgdb-create): Ditto.
3158         (elmo-folder-list-unreads-internal): Ditto.
3159
3160         * elmo.el (elmo-folder-msgdb): Define as generic function.
3161         (elmo-folder-list-messages): Added argument `in-msgdb'.
3162         (elmo-folder-list-unreads): Define as generic function.
3163         (elmo-folder-list-importants): Ditto.
3164         (elmo-folder-list-answereds): Ditto.
3165         (elmo-folder-list-messages-with-global-mark): New function.
3166         (elmo-folder-msgdb-create): Removed mark arguments.
3167         (elmo-folder-unmark-answered): New generic function.
3168         (elmo-folder-mark-as-answered): Ditto.
3169         (elmo-folder-append-messages): Removed argunment `unread-marks'
3170         (elmo-folder-list-unreads-internal): Abolish.
3171         (elmo-folder-list-importants-internal): Ditto.
3172         (elmo-folder-search-requires-msgdb-p): New generic function.
3173         (elmo-folder-search-requires-msgdb-p-internal): New function.
3174         (elmo-generic-folder-open): Call elmo-folder-msgdb instead of
3175         elmo-msgdb-load.
3176         (elmo-folder-search-fast): Added key 'mark'.
3177         (elmo-generic-folder-append-messages): Use elmo-msgdb-unread-marks
3178         instead of unread-marks argument.
3179         (elmo-folder-move-messages): Removed argunment `unread-marks'
3180         (elmo-folder-unmark-important): Define.
3181         (elmo-folder-mark-as-important): Ditto.
3182         (elmo-folder-unmark-read): Ditto.
3183         (elmo-folder-mark-as-read): Ditto.
3184         (elmo-folder-unmark-answered): Ditto.
3185         (elmo-folder-mark-as-answered): Ditto.
3186         (elmo-folder-replace-marks): Abolish.
3187         (elmo-generic-folder-append-msgdb): Append msgdb before checking
3188         duplicates.
3189         (elmo-folder-synchronize): Removed mark arguments;
3190         return crosspost only number.
3191
3192 2002-09-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3193
3194         * elmo-dop.el (elmo-dop-queue-flush): Remove unused argument.
3195         Remove redundunt connectivity check.
3196
3197 2002-09-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3198
3199         * elmo-dop.el (elmo-dop-queue-flush): Perform plugged ones only so
3200         as not to clear queue unexpectedly. (Ref. [wl:9778],[wl:10493])
3201
3202 2002-09-03  Yuuichi Teranishi  <teranisi@gohome.org>
3203
3204         * pldap.el (ldap-decode-string): Return string as-is if
3205         `ldap-coding-system' is nil.
3206         (ldap-encode-string): Ditto.
3207         (ldap-search-entries): Encode filter string with `ldap-encode-string'.
3208         (ldap-default-host): Fixed docstring.
3209
3210 2002-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
3211
3212         * elmo-util.el (elmo-warning): Define as a macro which uses
3213         `display-warning' if it is defined as a function.
3214
3215         * elmo-split.el (elmo-split-fetch-decoded-field): New function.
3216         (elmo-split-equal): Use it.
3217         (elmo-split-match): Ditto.
3218         (elmo-split-message-entity): New buffer-local variable.
3219         (elmo-split-subr): Set it.
3220
3221         * elmo-version.el (elmo-version): Up to 2.9.15.
3222
3223 2002-08-18  Kenichi OKADA  <okada@opaopa.org>
3224
3225         * elmo-imap4.el (elmo-network-initialize-session):
3226         Check capability after starttls.
3227
3228 2002-08-06  Yuuichi Teranishi  <teranisi@gohome.org>
3229
3230         * elmo-util.el (elmo-list-delete): Added optional argument
3231         DELETE-FUNCTION.
3232
3233         * elmo-vars.el (elmo-imap4-default-mailbox): Abolished.
3234
3235         * elmo-util.el (elmo-warning): Ignore errors while recenter.
3236
3237         * elmo-msgdb.el (elmo-msgdb-do-each-entity): New macro.
3238
3239         * elmo-imap4.el (elmo-folder-initialize): Don't use
3240         elmo-imap4-default-mailbox.
3241
3242 2002-07-24  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3243
3244         * elmo-split.el (toplevel): Use `product-provide'.
3245         (elmo-split): Checkdoc.
3246
3247 2002-07-21  Tetsurou Okazaki  <okazaki@be.to>
3248
3249         * elmo-imap4.el (elmo-imap4-debug, elmo-imap4-debug-1):
3250         Split `elmo-imap4-debug' into the macro `elmo-imap4-debug' and
3251         the function `elmo-imap4-debug-1'.
3252
3253 2002-07-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3254
3255         * elmo-split.el (elmo-split): Moved to run hooks and to show
3256         message from elmo-split-subr.
3257         (elmo-split-subr): Follow the change above.
3258
3259         * elmo-split.el (elmo-split-subr): New function (renamed from
3260         elmo-split-subr).
3261         (elmo-split): Changed to call elmo-split-subr by element of
3262         elmo-split-folder.
3263         (elmo-split-folder): Changed customization type to choice.
3264
3265 2002-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3266
3267         * elmo-split.el (elmo-split-and): Fixed condition.
3268
3269 2002-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
3270
3271         * elmo-split.el: New file.
3272         (elmo-split): Fixed logic.
3273         Display "Test:" instead of "Folder:" when reharsal.
3274
3275         * elmo-imap4.el (elmo-folder-append-buffer): Set flag as empty
3276         explicitly.
3277
3278         * elmo-version.el (elmo-version): Up to 2.9.14.
3279
3280         * elmo-util.el (elmo-expand-newtext): New function (renamed from
3281         wl-expand-newtext).
3282
3283 2002-06-10  Kenichi Sato <ksato@sonycom.com>
3284
3285         * elmo-msgdb.el (elmo-msgdb-get-message-id-from-buffer): Fix for
3286         message with no message-id field.
3287
3288 2002-05-20  Yuuichi Teranishi  <teranisi@gohome.org>
3289
3290         * elmo-version.el (elmo-version): Up to 2.9.13.
3291
3292         * elmo-dop.el (elmo-folder-status-dop): Fix.
3293
3294 2002-05-19  Yuuichi Teranishi  <teranisi@gohome.org>
3295
3296         * elmo-util.el (elmo-disk-usage): Return 0 if invalid file attribute.
3297
3298         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Avoid
3299         changing default value of default-mime-charset.
3300         (elmo-msgdb-create-overview-from-buffer): Remove TAB character.
3301
3302         * elmo-imap4.el (elmo-folder-open): Fixed NO response check.
3303
3304         * elmo-dop.el (elmo-dop-queue-merge-method-list): New variable.
3305         (elmo-dop-queue-merge): Use elmo-dop-queue-merge-method-list
3306         instead of elmo-dop-queue-method-name-alist to check merging queue.
3307         (elmo-folder-delete-messages-dop): Delete from queue if negative
3308         message number.
3309         (elmo-folder-append-buffer-dop-delayed): Treat as success if queue
3310         file is already removed.
3311
3312 2002-05-10  Katsumi Yamaoka  <yamaoka@jpl.org>
3313
3314         * elmo-vars.el: Bind colon keywords for old Emacsen.
3315
3316 2002-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3317
3318         * elmo-msgdb.el (elmo-msgdb-create-overview-from-buffer): Protect
3319         against non-exsisting charset.
3320
3321 2002-05-09  Yuuichi Teranishi  <teranisi@gohome.org>
3322
3323         * elmo-util.el (elmo-mime-string): Eliminate needless binding;
3324         Use eword-decode-and-unfold-unstructured-field-body.
3325
3326         * elmo-msgdb.el (elmo-msgdb-make-entity): New function.
3327         (elmo-msgdb-create-overview-from-buffer): Use document charset if
3328         exists to decode raw subject string.
3329         (toplevel): Require 'mime.
3330
3331         * elmo-version.el (elmo-version): Up to 2.9.12.
3332
3333 2002-05-02  Yuuichi Teranishi  <teranisi@gohome.org>
3334
3335         * elmo-msgdb.el (elmo-msgdb-get-mark): Fix docstring.
3336         (elmo-msgdb-set-mark): Ditto.
3337
3338         * elmo-version.el (elmo-version): Up to 2.9.11.
3339
3340 2002-05-01  Yuuichi Teranishi  <teranisi@gohome.org>
3341
3342         * elmo-util.el (elmo-delete-match-files): New function.
3343
3344         * elmo-localdir.el (elmo-folder-delete): Use elmo-delete-match-files
3345         instead of elmo-delete-directory.
3346
3347         * elmo-shimbun.el (elmo-shimbun-get-headers): Bind
3348         elmo-hash-minimun-size as 63.
3349
3350         * elmo-multi.el (elmo-multi-folder-diff): Use elmo-diff-new if
3351         elmo-diff-unread is nil.
3352
3353         * elmo-imap4.el (elmo-folder-open): Fix.
3354
3355         * elmo.el (elmo-message-mark): Rewrite.
3356         (elmo-message-field): Ditto.
3357         (elmo-message-set-mark): Ditto.
3358         (elmo-folder-replace-marks): New function.
3359         (elmo-generic-folder-append-msgdb): Removed third argument for
3360         elmo-msgdb-append.
3361         (elmo-folder-synchronize): Use elmo-msgdb-seen-list.
3362         (elmo-msgdb-load): New implementation.
3363
3364         * elmo-vars.el (elmo-use-overview-hashtb): Removed.
3365
3366         * elmo-util.el (elmo-list-insert): New implementation.
3367
3368         * elmo-multi.el (elmo-multi-folder-append-msgdb): Removed third
3369         argument for elmo-msgdb-append.
3370         
3371
3372         * elmo-msgdb.el (elmo-load-msgdb): New function.
3373         (elmo-make-msgdb): Ditto.
3374         (elmo-msgdb-get-index): New inline function.
3375         (elmo-msgdb-set-index): Ditto.
3376         (elmo-msgdb-get-entity-hashtb): Ditto.
3377         (elmo-msgdb-get-mark-hashtb): Ditto.
3378         (elmo-msgdb-get-mark): Ditto.
3379         (elmo-msgdb-set-mark): Ditto.
3380         (elmo-msgdb-count-marks): Ditto.
3381         (elmo-msgdb-get-number): Ditto.
3382         (elmo-msgdb-get-field): Ditto.
3383         (elmo-msgdb-seen-list): Ditto.
3384         (elmo-msgdb-mark-alist-set): Renamed from elmo-msgdb-mark-set.
3385         (elmo-msgdb-delete-msgs): Follow the changes above.
3386         (elmo-msgdb-overview-get-entity): Ditto.
3387         (elmo-msgdb-add-msgs-to-seen-list): Ditto.
3388         (elmo-msgdb-clear-index): Renamed from elmo-msgdb-clear-overview-hastb
3389         and rewritten.
3390         (elmo-msgdb-make-index): Likewise.
3391         (elmo-msgdb-append): Removed third argument.
3392         (elmo-msgdb-clear): Clear index as nil.
3393         (elmo-folder-set-info-hashtb): Removed.
3394         (elmo-folder-set-info-max-by-numdb): Ditto.
3395         (elmo-folder-info-make-hashtb): Ditto.
3396
3397         * elmo-localdir.el (elmo-folder-pack-numbers): Use elmo-make-msgdb.
3398
3399         * elmo-map.el (elmo-folder-pack-number): Ditto.
3400
3401 2002-04-30  Yuuichi Teranishi  <teranisi@gohome.org>
3402
3403         * elmo-version.el (elmo-version): Up to 2.9.10.
3404
3405         * elmo-util.el (elmo-get-hash-val): Check the 1st argument is string.
3406
3407         * elmo-msgdb.el (elmo-msgdb-get-parent-entity): New inline function.
3408
3409 2002-04-26  Kenichi OKADA  <okada@opaopa.org>
3410
3411         * elmo-utils.el (elmo-make-directory): Add option.
3412         Default file mode is 700.
3413
3414 2002-04-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3415
3416         * elmo-shimbun.el (elmo-folder-local-p): Defined.
3417
3418 2002-04-15  Yuuichi Teranishi  <teranisi@gohome.org>
3419
3420         * elmo-shimbun.el (elmo-shimbun-entity-to-header): Decode by
3421         mime-charset.
3422
3423         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added "larger"
3424         and "smaller".
3425
3426 2002-04-14  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3427
3428         * elmo-shimbun.el (elomo-shimbun-folder): Added entity-hash slot.
3429         (elmo-shimbun-folder-entity-hash): New function.
3430         (elmo-shimbun-folder-shimbun-header): Ditto.
3431         (elmo-shimbun-entity-to-header): Ditto.
3432         (elmo-shimbun-msgdb-to-headers): Removed.
3433         (elmo-shimbun-folder-setup): Ditto.
3434         (elmo-shimbun-folder-header-hash-setup): Don't use x-shimbun-id
3435         for hash key.
3436         (elmo-shimbun-get-headers): Set new headers only to slot. Don't
3437         call `elmo-shimbun-folder-header-hash-setup' if headers is nil.
3438         Removed useless local bind.
3439         (elmo-folder-open-internal): Don't call
3440         `elmo-shimbun-folder-setup'.
3441         (elmo-folder-close-internal): Clear entity-hash slot.
3442         (elmo-folder-clear): Ditto.
3443         (elmo-shimbun-msgdb-create-entity): Use
3444         `elmo-shimbun-folder-shimbun-header'.
3445         (elmo-map-message-fetch): Ditto.
3446         (elmo-shimbun-update-overview): Use overview entity instead of
3447         shimbun header to lookup id by references.
3448         (elmo-map-folder-list-message-locations): Use not only headers but
3449         also overviews to list locations.
3450
3451 2002-04-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3452
3453         * elmo-net.el (elmo-folder-exists-p): If unplugged, guessed by
3454         msgdb path.
3455
3456         * elmo-pop3.el (elmo-folder-exists-p): Ditto.
3457
3458 2002-04-08  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3459
3460         * elmo-util.el (elmo-read-search-condition-internal): Give default
3461         value for date.
3462
3463 2002-04-04  Mito  <mito@mxa.nes.nec.co.jp>
3464
3465         * elmo-util.el (elmo-condition-parse-search-value): Accept
3466         YYYY-MM-DD format to search.
3467         * elmo-date.el (elmo-date-get-datevec): Likewise.
3468
3469 2002-04-04  Kenichi OKADA  <okada@opaopa.org>
3470
3471         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Delete
3472         debugging code.
3473
3474 2002-04-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3475
3476         * elmo.el (elmo-folder-creatable-p): Changed default value to nil
3477         from t.
3478
3479         * elmo-pop3.el (elmo-folder-exists-p): Return nil if unplugged.
3480
3481         * elmo-nntp.el (elmo-folder-exists-p-plugged): Divided plugged
3482         case from `elmo-folder-exists-p'.
3483         (elmo-folder-exists-p): Removed.
3484         (elmo-folder-creatable-p) Ditto.
3485
3486         * elmo-net.el (elmo-folder-create): Defined.
3487         (elmo-folder-create-unplugged): New function.
3488         (elmo-folder-exists-p): Changed default value to nil from t.
3489
3490         * elmo-imap4.el (elmo-folder-creatable-p): Defined.
3491         (elmo-folder-create-plugged): Renamed from `elmo-folder-create'.
3492
3493         * elmo-dop.el (elmo-folder-create-dop): Renamed from
3494         `elmo-create-folder-dop' and append queue
3495         'elmo-folder-create-dop-delayed instead of 'elmo-folder-create.
3496         (elmo-folder-create-dop-delayed): New function.
3497
3498         * elmo-cache.el (elmo-folder-creatable-p): Ditto.
3499
3500         * elmo-shimbun.el (elmo-folder-creatable-p): Ditto.
3501
3502         * elmo-sendlog.el (elmo-folder-creatable-p): Ditto.
3503         (elmo-folder-writable-p) : Ditto.
3504
3505         * elmo-version.el (elmo-version): Up to 2.9.9.
3506
3507 2002-03-26  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3508
3509         * elmo.el (elmo-find-fetch-strategy): Don't use file cache when
3510         `elmo-message-use-cache-p' returns nil.
3511         * elmo-mime.el (elmo-mime-display-as-is): Ditto.
3512         (ignore cache file and refer the substance in local folders)
3513
3514 2002-03-12  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3515
3516         * elmo-version.el (elmo-version): Up to 2.9.8.
3517
3518 2002-02-19  Yuuichi Teranishi  <teranisi@gohome.org>
3519
3520         * elmo-version.el (elmo-version): Up to 2.9.7.
3521
3522         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed logic.
3523
3524 2002-02-18  Daiki Ueno  <ueno@unixuser.org>
3525
3526         * elmo-nntp.el (elmo-nntp-send-mode-reader): Don't throw an error.
3527
3528 2002-02-12  Yuuichi Teranishi  <teranisi@gohome.org>
3529
3530         * elmo-nmz.el (elmo-nmz-args): Changed default argumnet to --late
3531         from --early.
3532         (elmo-map-folder-list-message-locations): Reverse location list.
3533
3534 2002-02-01  Kenichi OKADA  <okada@opaopa.org>
3535
3536         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Fix.
3537
3538 2002-01-31  Yuuichi Teranishi  <teranisi@gohome.org>
3539
3540         * elmo-nntp.el (elmo-nntp-list-folders-get-cache): Use group and server
3541         as a key.
3542         (elmo-nntp-folder-list-subfolders): Follow the change above.
3543
3544 2002-01-27  Takaaki MORIYAMA  <aka@iris.eonet.ne.jp>
3545
3546         * elmo-imap4.el (elmo-folder-list-subfolders): Don't omit user
3547         name if authentication type is specified.
3548
3549 2002-01-28  Yuuichi Teranishi  <teranisi@gohome.org>
3550
3551         * elmo.el (elmo-default-imap4-stream-type): Define as obsolete
3552         variable.
3553         (elmo-default-nntp-stream-type): Ditto.
3554         (elmo-default-pop3-stream-type): Ditto.
3555
3556 2002-01-25  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
3557
3558         * elmo.el (elmo-generic-folder-append-messages): Disable multibyte.
3559
3560 2002-01-23  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3561
3562         * elmo-localnews.el (elmo-localnews-folder-path): Moved from
3563         elmo-vars.el.
3564         * elmo-maildir.el (elmo-maildir-folder-path): Ditto.
3565
3566         * elmo-vars.el (elmo-localnews-folder-path): Removed.
3567         (elmo-maildir-folder-path): Ditto.
3568         (elmo-maildir-list): Ditto (abolished).
3569
3570 2002-01-23  Kenichi OKADA  <okada@opaopa.org>
3571
3572         * elmo-version.el (elmo-version): Up to 2.9.6.
3573
3574 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3575
3576         * elmo-vars.el (elmo-localnews-folder-path): Make customizable.
3577         (elmo-maildir-folder-path): Ditto.
3578         (elmo-msgdb-directory): Ditto.
3579         (elmo-passwd-life-time): Ditto.
3580         (elmo-msgdb-extra-fields): Ditto.
3581         (elmo-enable-disconnected-operation): Ditto.
3582
3583 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
3584
3585         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
3586         other choices.
3587         (elmo-pop3-default-authenticate-type): Ditto.
3588
3589 2002-01-22  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3590
3591         * elmo-vars.el (elmo-imap4-default-authenticate-type): Give
3592         choices for custom.
3593         (elmo-pop3-default-authenticate-type): Ditto.
3594
3595 2002-01-22  Kenichi OKADA  <okada@opaopa.org>
3596
3597         * elmo-imap4.el (elmo-folder-rename-internal): Change current
3598         mailbox to new-folder.
3599
3600 2002-01-21  Yuuichi Teranishi  <teranisi@gohome.org>
3601
3602         * elmo-imap4.el (elmo-imap4-folder-diff-plugged): If unread is
3603         less than new, set new as unread.
3604
3605         * elmo-util.el (elmo-string): Don't put text-property if nil.
3606
3607 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
3608
3609         * elmo-imap4.el (elmo-folder-list-subfolders): Case sensitive.
3610         * elmo-nntp.el (elmo-folder-list-subfolders): Ditto.
3611
3612 2002-01-21  Kenichi OKADA  <okada@opaopa.org>
3613
3614         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
3615         is nil on `completing-read'.
3616
3617 2002-01-20  Yuuichi Teranishi  <teranisi@gohome.org>
3618
3619         * elmo-imap4.el (elmo-imap4-extra-namespace-alist): Added grouping
3620         for namespace part.
3621         (elmo-imap4-parse-namespace-subr): Ditto.
3622         (elmo-folder-list-subfolders): Append a delimiter when the specified
3623         folder path is a root with namespace and does not end with delimiter.
3624
3625 2002-01-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3626
3627         * elmo.el (elmo-folder-search-fast): Moved upwards rather than it
3628         was used.
3629
3630 2002-01-19  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3631
3632         * elmo-util.el (elmo-save-buffer): The first argument of message
3633         is a format control string.
3634
3635 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3636
3637         * elmo.el (elmo-diff-new): Fixed (Adapted to doc-string of
3638         `elmo-folder-diff').
3639         (elmo-diff-unread): Likewise.
3640
3641 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
3642
3643         * elmo-utils.el (elmo-read-search-condition-internal): REQUIRE-MATCH
3644         is t on `completing-read'.
3645
3646 2002-01-19  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3647
3648         * elmo-filter.el (elmo-filter-folder-list-unreads-internal): Call
3649         method of target folder with self mark-alist if MARK-ALIST is nil.
3650
3651 2002-01-19  Kenichi OKADA  <okada@opaopa.org>
3652
3653         * elmo-version.el (elmo-version): Up to 2.9.5.
3654
3655 2002-01-17  Kenichi OKADA  <okada@opaopa.org>
3656
3657         * elmo-dop.el (elmo-dop-queue-merge): Implement.
3658         (elmo-dop-merge-funcs): Remove.
3659
3660 2002-01-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3661
3662         * elmo-util.el (elmo-file-cache-delete): Fixed last change;
3663         Return t if PATH is directory, too.
3664         Use `dolist' instead of while loop.
3665
3666 2002-01-11  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3667
3668         * elmo-util.el (elmo-file-cache-delete): Return t if a cache file
3669         is deleted.
3670
3671 2002-01-07  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3672
3673         * elmo-net.el (elmo-folder-list-messages-plugged): Changed default
3674         return value to t.
3675         (elmo-folder-list-messages-unplugged): Return t if
3676         elmo-enable-disconnected-operation is nil.
3677
3678         * elmo-pop3.el (elmo-folder-list-messages-plugged): Renamed from
3679         `elmo-folder-list-messages-internal'.
3680
3681 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
3682
3683         * elmo-nntp.el (elmo-nntp-read-response): Added `error-msg' argument.
3684         Change to looking-at `[23][0-9]+'.
3685         (elmo-network-initialize-session): Use 'error-msg'
3686         * elmo-net.el (elmo-network-open-session): Set unplugged
3687         if elmo-network-initialize-session returns 'elmo-open-err.
3688
3689 2002-01-07  Kenichi OKADA  <okada@opaopa.org>
3690
3691         * elmo-version.el (elmo-version): Up to 2.9.4.
3692
3693 2002-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
3694
3695         * elmo-nntp.el (elmo-folder-list-messages-plugged): Renamed from
3696         `elmo-folder-list-messages-internal'.
3697
3698 2002-01-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3699
3700         * elmo.el (elmo-folder-search): Defined. Fixed docstring.
3701         (elmo-message-match-condition): New method.
3702         (elmo-folder-search-fast): New inline function.
3703         (elmo-msgdb-search): Removed.
3704
3705         * elmo-filter.el (elmo-folder-msgdb-create): Create from msgdb of
3706         target folder if it is unplugged.
3707         (elmo-folder-list-messages-internal): Return t if target folder is
3708         unplugged and itself is persistent; In this case, use list be
3709         searched already.
3710
3711         * elmo-msgdb.el (elmo-msgdb-search-internal): Removed.
3712         (elmo-msgdb-search-internal-primitive): Ditto.
3713         (elmo-msgdb-match-condition): New function.
3714         (elmo-msgdb-match-condition-primitive): Ditto.
3715
3716         * elmo-util.el (elmo-filter-condition-p): New macro.
3717
3718         * elmo-cache.el (elmo-folder-search): Removed.
3719
3720         * elmo-localdir.el (elmo-folder-search): Ditto.
3721
3722         * elmo-maildir.el (elmo-folder-search): Ditto.
3723
3724         * elmo-mark.el (elmo-folder-search): Ditto.
3725
3726         * elmo-nmz.el (elmo-folder-search): Ditto.
3727
3728         * elmo-sendlog.el (elmo-folder-search): Ditto.
3729
3730         * elmo-shimbun.el (elmo-folder-search): Ditto.
3731
3732         * elmo-imap4.el (elmo-folder-search): Call method of parent class
3733         if folder is unplugged.
3734
3735         * elmo-nntp.el (elmo-folder-search): Likewise.
3736         (elmo-nntp-search-internal): New function.
3737
3738         * elmo-version.el (elmo-version): Up to 2.9.3.
3739
3740 2001-12-27  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3741
3742         * elmo.el (elmo-message-fetch-with-cache-process): Fixed typo.
3743
3744 2001-12-27  Tetsurou Okazaki  <okazaki@be.to>
3745
3746         * elmo-vars.el (elmo-nntp-default-user): Customization Type fix.
3747
3748 2001-12-27  Taiji Can  <Taiji.Can@grd.advantest.co.jp>
3749
3750         * elmo-nntp.el (elmo-network-initialize-session): Fixed for NNTP response.
3751
3752 2001-12-27  Yuuichi Teranishi  <teranisi@gohome.org>
3753
3754         * elmo-nmz.el (elmo-nmz-use-drive-letter): New variable.
3755         (elmo-map-folder-list-message-locations): Do drive letter conversion
3756         on Windows environment.
3757         (elmo-nmz-msgdb-create-entity): Use expand-file-name.
3758         (elmo-map-message-fetch): Ditto.
3759
3760 2001-12-27  Kenichi OKADA  <okada@opaopa.org>
3761
3762         * elmo-nntp.el (elmo-nntp-read-response): Fixed for Response '400'
3763         (elmo-network-initialize-session): Ditto.
3764
3765 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
3766
3767         * elmo-imap4.el (elmo-imap4-message-fetch): Fixed '100%' message.
3768
3769         * elmo-pop3.el (elmo-message-fetch-plugged): Ditto.
3770
3771         * elmo-util.el (elmo-progress-clear): Ditto.
3772
3773         * elmo-date.el (elmo-date-get-datevec): Fix timezone of
3774         `DD-Mon-YYYY' type date.
3775
3776 2001-12-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3777
3778         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Use
3779         `elmo-date-make-sortable-string' instead of
3780         `timezone-make-date-sortable'.
3781
3782         * elmo-date.el (elmo-date-make-sortable-string): Use
3783         `timezone-make-time-string'.
3784
3785 2001-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
3786
3787         * elmo.el (elmo-folder-synchronize): Delete important messages too.
3788
3789         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed
3790         `since'; Fix timezone.
3791
3792         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Ditto.
3793
3794         * elmo-nntp.el (elmo-nntp-search-primitive): Likewise.
3795
3796 2001-12-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3797
3798         * elmo.el (elmo-message-fetch-with-cache-process): Rewrite.
3799
3800 2001-12-23  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3801
3802         * elmo.el (elmo-generic-folder-append-messages): Make
3803         fetch-strategy with `use-cache' as 'maybe. Check return value of
3804         `elmo-message-fetch'.
3805         (elmo-message-fetch): Return return value of
3806         `elmo-message-fetch-with-cache-process'.
3807         (elmo-message-fetch-with-cache-process): Return non-nil if
3808         fetching was succeed. Load cache when fetching was failed and
3809         fetch-strategy-use-cache is 'maybe.
3810
3811         * elmo-util.el (elmo-file-cache-load): New function.
3812
3813         * elmo-multi.el (elmo-message-use-cache-p): Remove duplicated
3814         defun.
3815
3816         * elmo-archive.el (elmo-archive-message-fetch-internal): Return
3817         non-nil if fetching was succeed.
3818
3819         * elmo-imap4.el (elmo-imap4-message-fetch): Likewise.
3820
3821         * elmo-nmz.el (elmo-map-message-fetch): Likewise.
3822
3823         * elmo-nntp.el (elmo-nntp-read-body): Likewise.
3824         (elmo-message-fetch-with-cache-process): Likwise.
3825
3826         * elmo-pop3.el (elmo-pop3-read-body): Likewise.
3827
3828         * elmo-shimbun.el (elmo-map-message-fetch): Likewise.
3829
3830         * elmo-version.el (elmo-version): Up to 2.9.2.
3831
3832 2001-12-23  Yuuichi Teranishi  <teranisi@gohome.org>
3833
3834         * elmo.el (elmo-folder-delete): Delete msgdb path.
3835
3836         * elmo-archive.el (elmo-folder-delete): Added `:before' qualifier.
3837
3838         * elmo-maildir.el (elmo-folder-delete): Ditto.
3839
3840         * elmo-localdir.el (elmo-folder-delete): Ditto.
3841
3842         * elmo-imap4.el (elmo-folder-delete): Ditto.
3843
3844 2001-12-19  Yuuichi Teranishi  <teranisi@gohome.org>
3845
3846         * elmo.el (luna-define-class): Added `biff' slot.
3847
3848         * elmo-pop3.el (elmo-pop3-debug): Split biff log.
3849         (elmo-pop3-debug-inhibit-logging): Abolished.
3850         (elmo-network-close-session): Eliminated needless let.
3851         (elmo-pop3-get-session): Set prefix 'BIFF' if biff folder.
3852         (elmo-pop3-send-command): Added `no-log' argument.
3853         (elmo-pop3-process-filter): Use `with-current-buffer'.
3854         (elmo-pop3-auth-user): Set `no-log' argument; Delete process
3855         if login failure.
3856         (elmo-pop3-auth-apop): Likewise.
3857         (elmo-network-authenticate-session): Likewise.
3858
3859         * elmo-nntp.el (elmo-nntp-get-session): Set prefix 'BIFF'
3860         if biff folder.
3861
3862         * elmo-net.el (elmo-network-session-password-key): Use class symbol
3863         string to determine protocol.
3864         (elmo-network-session-name-prefix): Abolished.
3865         (elmo-network-session-cache-key): Follow the change above.
3866         (elmo-network-open-session): Ditto.
3867
3868         * elmo-imap4.el (elmo-imap4-send-command): Modified error message.
3869         (elmo-imap4-get-session): Set prefix 'BIFF' if biff folder.
3870
3871         * elmo-version.el (elmo-version): Up to 2.9.1.
3872
3873         * elmo-util.el (elmo-file-field-primitive-condition-match): Fixed
3874         unmatch condition checking.
3875
3876         * elmo-localdir.el (elmo-folder-search): Don't short cut if unmatch
3877         condition.
3878
3879 2001-12-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
3880
3881         * elmo.el (elmo-folder-confirm-appends): Fixed docstring.
3882
3883 2001-12-17  Yuuichi Teranishi  <teranisi@gohome.org>
3884
3885         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
3886         test for while loop to execute at least one SEARCH command.
3887
3888 2001-12-15  Yuuichi Teranishi  <teranisi@gohome.org>
3889
3890         * elmo-version.el (elmo-version): Up to 2.9.0.
3891
3892 2001-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
3893
3894         * elmo-archive.el (elmo-archive-folder): Added `dir-name' slot.
3895         (elmo-archive-folder-path): Define.
3896         (elmo-folder-initialize): Setup `dir-name' slot.
3897         (elmo-archive-folder-list-subfolders): Fixed problem when `name' is "".
3898         Use `dir-name' as prefix of each subfolders.
3899         (Applyed patch from Takaaki MORIYAMA <taka@arcadia.co.jp>)
3900
3901 2001-12-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
3902
3903         * elmo-pipe.el (elmo-pipe-folder-copied-filename): New variable.
3904         (elmo-pipe-folder-list-target-messages): New internal function.
3905         (elmo-pipe-drain): Use new argument `ignore-list' instead of
3906         `killed-list'.
3907         (elmo-pipe-folder-copied-list-load): New function.
3908         (elmo-pipe-folder-copied-list-save): Ditto.
3909         (elmo-folder-open-internal): Follow the change above.
3910         (elmo-folder-status): Fixed for copy.
3911
3912 2001-12-13  Yuuichi Teranishi  <teranisi@gohome.org>
3913
3914         * elmo-shimbun.el (elmo-folder-creatable-p): Define.
3915
3916 2001-12-12  Yuuichi Teranishi  <teranisi@gohome.org>
3917
3918         * elmo-localdir.el (elmo-folder-message-make-temp-files): Use
3919         elmo-copy-file instead of elmo-add-name-to-file.
3920
3921         * elmo-nmz.el (elmo-folder-message-make-temp-files): Ditto.
3922
3923         * elmo-nmz.el (elmo-map-folder-list-message-locations): Allow
3924         "file://..." index.
3925
3926         * elmo-pop3.el (elmo-pop3-read-response): Set timeout argument
3927         of accept-process-output as 1.
3928         (elmo-pop3-read-contents): Ditto.
3929         (elmo-pop3-read-body): Ditto.
3930
3931 2001-12-12  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3932
3933         * elmo-version.el (product-version-as-string): Remove define.
3934
3935 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
3936
3937         * elmo-imap4.el (elmo-imap4-number-set-chop-length): New variable.
3938         (elmo-imap4-copy-messages): Chop number set using
3939         `elmo-imap4-number-set-chop-length'.
3940         (elmo-imap4-set-flag): Ditto.
3941         (elmo-imap4-search-internal-primitive): Ditto.
3942
3943 2001-12-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3944
3945         * elmo.el (elmo-folder-make-temporary-directory): Renamed from
3946         `elmo-folder-make-temp-dir'
3947
3948         * elmo-vars.el (elmo-cache-directory): New variable.
3949         (elmo-cache-dir): Abolished.
3950         (elmo-msgdb-directory): Renamed from `elmo-msgdb-dir'.
3951
3952         * elmo-version.el (elmo-version): Up to 2.7.7.
3953
3954 2001-12-11  Yuuichi Teranishi  <teranisi@gohome.org>
3955
3956         * elmo-util.el (elmo-obsolete-variable-show-warnings): Define with
3957         defcustom; Set default value as t.
3958
3959 2001-12-10  Yuuichi Teranishi  <teranisi@gohome.org>
3960
3961         * pldap.el (ldap-ldif-field-name-regexp): Changed regexp.
3962         (ldap-search-program-arguments): Changed default value.
3963         (ldap-search-basic): Accept exit status 4.
3964         (ldap/field-body): Parse options.
3965         (ldap/collect-field): Ditto.
3966         (According to the advise from Mito <mito@mxa.nes.nec.co.jp>)
3967
3968         * elmo-imap4.el (elmo-imap4-process-bye): New function.
3969         (elmo-imap4-send-command): Call elmo-imap4-process-bye.
3970         (elmo-imap4-accept-ok): Ditto.
3971         (elmo-imap4-session-select-mailbox): If argument `no-error' equals to
3972         'notify-bye, only BYE error is reported.
3973         (elmo-folder-exists-p-plugged): Set no-error argument of
3974         `elmo-imap4-session-select-mailbox' as 'notify-bye.
3975
3976         * elmo.el (elmo-imap4-bye-error): Changed message.
3977
3978         * elmo-dop.el (elmo-dop-queue-flush): Fixed obsolete version message.
3979         (elmo-dop-queue-flush): Don't append to the dop-queue while flushing
3980         queues (It causes infinite loop).
3981
3982 2001-12-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
3983
3984         * elmo.el (elmo-folder-diff): Fixed docstring for IMAP4
3985         (RECENT UNSEEN MESSAGES) extension.
3986
3987 2001-12-07  Mito <mito@mxa.nes.nec.co.jp>
3988
3989         * elmo-nntp.el (elmo-nntp-create-msgdb-from-overview-string):
3990         Check number of overview fields.
3991
3992 2001-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
3993
3994         * elmo.el (elmo-folder-confirm-appends): Changed message.
3995         (elmo-folder-confirm-appends): Ditto.
3996
3997         * elmo-archive.el (elmo-archive-exec-msgs-subr1): Use
3998         `with-temp-buffer'.
3999         (According to the advise from Nishimoto Masaki <nishimoto@gaju.org>)
4000
4001 2001-12-06  Hiroshi Tsutsui  <tsutsui@easter.kuee.kyoto-u.ac.jp>
4002
4003         * elmo.el (elmo-folder-confirm-appends): Check whether the value
4004         of elmo-folder-update-threshold is nil, which can be set by
4005         wl-summary-update-confirm-threshold.
4006
4007 2001-12-05  Yuuichi Teranishi  <teranisi@gohome.org>
4008
4009         * elmo-nmz.el (elmo-nmz-default-index-path): Allow path list.
4010         (elmo-nmz-index-alias-alist): Ditto.
4011         (elmo-map-folder-list-message-locations): Follow the change above.
4012
4013 2001-12-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4014
4015         * elmo-filter.el (elmo-folder-list-subfolders): Defined.
4016
4017         * elmo-archive.el (elmo-archive-call-process): Ignore nemacs.
4018
4019         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Ditto.
4020
4021         * elmo-util.el (elmo-read): Ditto.
4022         (elmo-display-error): Ditto.
4023
4024         * elmo-vars.el (elmo-date-match): Ditto.
4025
4026         * pldap.el (ldap-coding-system): Ditto.
4027
4028         * elmo-pipe.el (elmo-pipe-drain): If `copy' is non-nil, bind
4029         `elmo-inhibit-number-mapping' as nil.
4030
4031 2001-11-30  Tatsuya Kinoshita  <tats@iris.ne.jp>
4032
4033         * elmo-pop3.el (elmo-pop3-parse-list-response): Allow multiple
4034         space delimiter for list response.
4035
4036 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4037
4038         * elmo-sendlog.el (elmo-sendlog-buffer-name): Deleted.
4039
4040 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4041
4042         * elmo-sendlog.el (elmo-folder-delete-messages): Added.
4043         (elmo-map-message-fetch): Fix.
4044         * elmo-map.el (elmo-folder-status): Fix for killed.
4045
4046 2001-12-02  Kenichi OKADA  <okada@opaopa.org>
4047
4048         * elmo-sendlog.el: New file.
4049         * elmo-internal.el (elmo-internal-folder-list): Added 'sendlog.
4050
4051 2001-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
4052
4053         * acap.el (acap-logging-out): New buffer local variable.
4054         (acap-close): Set it.
4055         (acap-wait-for-response): If acap-logging-out is non-nil, don't cause
4056         an error.
4057
4058 2001-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
4059
4060         * acap.el (acap-response-bye-p): New function.
4061         (acap-response-bye-message): Ditto.
4062         (acap-wait-for-response): If bye response is received, cause an error.
4063         (acap-parse-response): Make bye response when 'Bye' is received.
4064
4065 2001-11-23  Kenichi OKADA  <okada@opaopa.org>
4066
4067         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
4068
4069 2001-11-21  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4070
4071         * elmo-util.el (elmo-copy-file): Added argument
4072         `ok-if-already-exists'.
4073         (elmo-copy-file): Fixed typo.
4074
4075 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
4076
4077         * elmo-pipe.el (elmo-pipe-drain): Load killed-list.
4078
4079 2001-11-21  Kenichi OKADA  <okada@opaopa.org>
4080
4081         * elmo-pipe.el (elmo-pipe-drain): Save killed-list.
4082
4083 2001-11-20  Kenichi OKADA  <okada@opaopa.org>
4084
4085         * elmo-pipe.el (elmo-pipe-drain): Append copied messages
4086         to killed-list.
4087
4088 2001-11-19  Kenichi OKADA  <okada@opaopa.org>
4089
4090         * elmo-pipe.el (elmo-pipe-folder): Add `copy'.
4091         (elmo-folder-initialize): Fix for `copy'.
4092         (elmo-pipe-drain): Ditto.
4093         (elmo-folder-open-internal): Ditto.
4094         (elmo-folder-newsgroups): Fix.
4095
4096 2001-11-19  Yuuichi Teranishi  <teranisi@gohome.org>
4097
4098         * elmo-maildir.el (elmo-folder-append-messages): Make temporal filename
4099         for each message.
4100
4101         * elmo-multi.el (elmo-multi-folder-diff): Fixed problem when
4102         recent value is returned from imap folder.
4103
4104         * elmo.el (elmo-folder-newsgroups): New generic function.
4105
4106         * elmo-localnews.el (elmo-localnews-folder): Added `group' slot.
4107         (elmo-folder-initialize): Set it.
4108         (elmo-folder-expand-msgdb-path): Use it.
4109         (elmo-folder-newsgroups): Define.
4110
4111         * elmo-filter.el (elmo-folder-newsgroups): Define.
4112
4113         * elmo-pipe.el (elmo-folder-newsgroups): Ditto.
4114
4115         * elmo-nntp.el (elmo-folder-newsgroups): Ditto.
4116
4117         * elmo-multi.el (elmo-folder-newsgroups): Ditto.
4118
4119 2001-11-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4120
4121         * elmo-shimbun.el (elmo-shimbun-update-overview-folder-list): New
4122         user option.
4123         (elmo-shimbun-header-extra-field): New inline function.
4124         (elmo-shimbun-header-set-extra-field): Ditto.
4125         (elmo-shimbun-folder-header-hash-setup): Ditto.
4126         (elmo-shimbun-update-overview): Ditto.
4127         (elmo-shimbun-msgdb-to-headers): Set extra field `x-shimbun-id'.
4128         (elmo-shimbun-folder-setup): Use
4129         `elmo-shimbun-folder-header-hash-setup' to be setup hash table.
4130         (elmo-shimbun-get-headers): Ditto.
4131         (elmo-map-message-fetch): Call `elmo-shimbun-update-overview';
4132         Insert `X-Shimbun-Id:' header if extra field is set.
4133         (elmo-map-folder-list-message-locations): Return `x-shimbun-id'
4134         field's value instead of `shimbun-header-id'.
4135
4136         * elmo-msgdb.el (elmo-msgdb-overview-entity-set-references): New
4137         inline function.
4138         (elmo-msgdb-overview-entity-set-date): Ditto.
4139         (elmo-msgdb-overview-entity-set-extra-field): Ditto.
4140
4141 2001-11-09  Yuuichi Teranishi  <teranisi@gohome.org>
4142
4143         * mmimap.el (mmimap-entity-section): Changed body node number from
4144         "0" to "1".
4145
4146 2001-11-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4147
4148         * elmo-pop3.el (elmo-folder-delete-messages-plugged): Renamed from
4149         `elmo-folder-delete-messages'.
4150
4151         * elmo-nmz.el (elmo-nmz-index-alias-alist): New user option.
4152         (elmo-folder-initialize): Changed to expand alias into index path.
4153
4154         * elmo-mime.el (elmo-mime-insert-sorted-header): Call
4155         `elmo-mime-insert-header-from-buffer' with 6th arg
4156         `sorted-fields'.
4157
4158 2001-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
4159
4160         * mmimap.el (mmimap-entity-section): If node-id is nil, return "0".
4161
4162         * elmo.el (elmo-diff-new): New inline function.
4163         (elmo-diff-unread): Ditto.
4164         (elmo-diff-all): Ditto.
4165
4166         * elmo-imap4.el (elmo-imap4-server-diff-async-callback-1): Get recent
4167         value from responseb.
4168         (elmo-imap4-folder-diff-plugged): Ditto.
4169         (elmo-imap4-server-diff-async): Added recent argument.
4170         (elmo-server-diff-async): Ditto.
4171         (elmo-imap4-folder-diff-plugged): Ditto.
4172
4173         * elmo-version.el (elmo-version): Up to 2.7.6.
4174
4175 2001-11-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4176
4177         * elmo-util.el (elmo-parse-token): Fixed how to treat quoted-pair
4178         in quoted-stirng.
4179
4180 2001-11-05  Yuuichi Teranishi  <teranisi@gohome.org>
4181
4182         * elmo-pop3.el (elmo-folder-initialize): Rewrite.
4183
4184         * elmo-imap4.el (elmo-folder-initialize): Ditto.
4185
4186         * elmo-nntp.el (elmo-folder-initialize): Ditto.
4187
4188         * elmo-multi.el (elmo-folder-initialize): Ditto.
4189
4190         * elmo-util.el (elmo-parse-token): New function.
4191         (elmo-parse-prefixed-element): Ditto.
4192
4193 2001-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
4194
4195         * elmo-imap4.el (elmo-imap4-send-command): If BYE response is detected,
4196         delete process.
4197         (elmo-imap4-accept-ok): Ditto.
4198
4199 2001-10-25  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4200
4201         * mmimap.el (mime-imap-entity-header-string): Don't check first
4202         element of node-id is `0' (Follow last change).
4203
4204 2001-10-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4205
4206         * mmimap.el (mmimap-make-mime-entity): Fixed problem to be
4207         assigned irregular node-id to nested multipart section.
4208         (initialize-instance): Followed above change.
4209
4210 2001-10-17  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4211
4212         * elmo-shimbun.el (elmo-shimbun-get-headers): Don't call
4213         `shimbun-open-group' (Moved to `elmo-folder-open-internal').
4214         (elmo-folder-open-internal): Call `shimbun-open-group' (Moved from
4215         `elmo-shimbun-get-headers');
4216         Call `elmo-shimbun-folder-setup' if headers is empty (An entity of
4217         visible article on summary exists in headers).
4218         (elmo-map-message-fetch): Cause an error when folder is unplugged.
4219
4220 2001-10-17  Yoichi NAKAYAMA  <yoichi@eken.phys.nagoya-u.ac.jp>
4221
4222         * elmo-shimbun.el (elmo-shimbun-use-cache): Fix typo in the
4223         definition.
4224
4225 2001-10-16  Yuuichi Teranishi  <teranisi@gohome.org>
4226
4227         * elmo-localnews.el (elmo-folder-expand-msgdb-path): Define.
4228
4229 2001-10-13  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4230
4231         * elmo-msgdb.el (elmo-msgdb-insert-file-header): Moved searching
4232         header separator into loop condition.
4233
4234 2001-10-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4235
4236         * elmo-imap4.el (elmo-folder-list-subfolders): Fixed problem;
4237         Return duplicate folder if it has subfolder.
4238
4239 2001-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
4240
4241         * elmo.el (elmo-make-folder): Add folder name error check.
4242
4243         * elmo-nntp.el (elmo-nntp-group-coding-system): New variable.
4244         (elmo-nntp-encode-group-string): New inline function.
4245         (elmo-nntp-decode-group-string): Ditto.
4246         (elmo-folder-initialize): Use elmo-nntp-encode-group-string.
4247         (elmo-nntp-folder-list-subfolders): Set processing buffer as unibyte;
4248         Use `not' instead of `null';
4249         Use elmo-nntp-decode-group-string.
4250
4251         * elmo-imap4.el (elmo-folder-list-subfolders): Don't append delimiter.
4252
4253         * elmo-version.el (elmo-version): Up to 2.7.5.
4254
4255 2001-10-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4256
4257         * elmo-pipe.el (elmo-pipe-drain): Use `unwind-protect';
4258         Hide progress gauge if `elmo-folder-move-messages' exits
4259         nonlocally.
4260
4261 2001-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
4262
4263         * elmo-imap4.el (elmo-folder-initialize): Use
4264         `elmo-imap4-encode-folder-string' for folder name.
4265
4266 2001-10-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4267
4268         * elmo.el (elmo-folder-move-messages): Removed arguments `all' and
4269         `done'.
4270
4271 2001-10-06  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4272
4273         * elmo-util.el (elmo-progress-counter-alist): New internal
4274         variable.
4275         (elmo-progress-counter-value): New macro.
4276         (elmo-progress-counter-all-value): Ditto.
4277         (elmo-progress-counter-format): Ditto.
4278         (elmo-progress-counter-set-value): Ditto.
4279         (elmo-progress-set): New function.
4280         (elmo-progress-clear): Ditto.
4281         (elmo-progress-notify): Ditto.
4282
4283         * elmo-pipe.el (elmo-pipe-drain): Setup and clear progress
4284         counter.
4285
4286         * elmo.el (elmo-generic-folder-append-messages): Call
4287         `elmo-progress-notify'.
4288         (elmo-folder-move-messages): Don't call `elmo-display-progress'.
4289
4290         * elmo-archive.el (elmo-folder-append-messages): Call
4291         `elmo-progress-notify'.
4292
4293         * elmo-imap4.el (elmo-folder-append-messages): Ditto.
4294
4295         * elmo-localdir.el (elmo-folder-append-messages): Ditto.
4296
4297         * elmo-maildir.el (elmo-folder-append-messages): Ditto.
4298
4299 2001-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
4300
4301         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed 'Encache' and
4302         'Create'.
4303         (elmo-message-encache-dop): Added argument `read'.
4304
4305         * elmo-shimbun.el (elmo-message-encache): Ditto.
4306
4307         * elmo-net.el (elmo-message-encache): Ditto.
4308
4309         * elmo-imap4.el (elmo-imap4-seen-messages): New buffer local variable.
4310         (elmo-imap4-fetch-callback-1-subr): Save important message numbers to
4311         elmo-imap4-seen-messages.
4312         (elmo-folder-msgdb-create-plugged): Initialize
4313         elmo-imap4-seen-messages;
4314         Set seen mark on elmo-imap4-seen-messages.
4315
4316         * elmo-pipe.el (elmo-folder-message-file-p): Define.
4317
4318         * elmo.el (elmo-generic-folder-append-messages): Check return value of
4319         elmo-folder-append-buffer.
4320         (elmo-folder-encache): Added optional argument `read'.
4321         (elmo-message-encache): Ditto.
4322
4323         * elmo-dop.el (elmo-folder-append-buffer-dop-delayed): Ditto.
4324
4325         * elmo-localdir.el (elmo-folder-append-buffer): Ditto.
4326
4327         * elmo-archive.el (elmo-archive-folder-append-buffer): Return t
4328         if append buffer content succeds.
4329
4330 2001-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
4331
4332         * elmo-pop3.el (elmo-message-fetch-plugged): Fixed label for
4333         elmo-display-progress.
4334
4335         * elmo-mime.el (elmo-mime-message-display): Added argument keymap;
4336         Set 4th argument of mime-display-message.
4337         (elmo-mime-display-as-is): Ditto.
4338
4339 2001-10-01  Yuuichi Teranishi  <teranisi@gohome.org>
4340
4341         * elmo-nmz.el (toplevel): Require 'mime-edit.
4342         (elmo-nmz-content-type-alist): Abolished.
4343         (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if
4344         content is not a message.
4345         (elmo-map-message-fetch): Changed behavior exept for message content;
4346         Detect mime-charset automatically, Use `mime-find-file-type' to detect
4347         content-type, Add From: and Subject: field.
4348
4349 2001-09-29  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4350
4351         * elmo-nmz.el (elmo-nmz-content-type-alist): New variable.
4352         (elmo-map-message-fetch): Add `Content-Type' field if contents is
4353         not a message.
4354
4355 2001-09-20  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4356
4357         * elmo.el (elmo-folder-writable-p): Changed default value to nil.
4358         (elmo-folder-move-messages): Check `elmo-folder-writable-p'.
4359
4360         * elmo-archive.el (elmo-folder-writable-p): Defined.
4361
4362         * elmo-cache.el (elmo-folder-writable-p): Ditto.
4363
4364         * elmo-filter.el (elmo-folder-writable-p): Ditto.
4365
4366         * elmo-imap4.el (elmo-folder-writable-p): Ditto.
4367
4368         * elmo-localdir.el (elmo-folder-writable-p): Ditto.
4369
4370         * elmo-maildir.el (elmo-folder-writable-p): Ditto.
4371
4372         * elmo-mark.el (elmo-folder-writable-p): Ditto.
4373
4374         * elmo-pipe.el (elmo-folder-writable-p): Ditto.
4375
4376         * elmo-nntp.el (elmo-folder-writable-p): Eliminated.
4377
4378 2001-09-20  Yuuichi Teranishi  <teranisi@gohome.org>
4379
4380         * elmo-util.el (elmo-address-quote-specials): New function;
4381         Renamed from `wl-address-quote-specials'.
4382
4383 2001-09-18  TAKAHASHI Kaoru  <kaoru@kaisei.org>
4384
4385         * elmo-version.el (elmo-version): Up to 2.7.4.
4386
4387 2001-09-14  Yuuichi Teranishi  <teranisi@gohome.org>
4388
4389         * elmo.el (elmo-quit): Call `elmo-dop-queue-save'.
4390
4391 2001-09-14  Katsumi Yamaoka  <yamaoka@jpl.org>
4392
4393         * acap.el (acap-read-passphrase): Always autoload ange-ftp for
4394         both compile-time and run-time to avoid byte-compile warning.
4395
4396 2001-09-13  Kenichi OKADA  <okada@opaopa.org>
4397
4398         * elmo-nntp.el (elmo-nntp-post): Fix for `elmo-nntp-default-stream-type'.
4399
4400 2001-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
4401
4402         * elmo-mime.el (elmo-mime-display-as-is-coding-system): New user
4403         option.
4404         (elmo-mime-display-as-is-internal): Use it.
4405
4406         * acap.el (acap-read-passphrase): Use `ange-ftp-read-passwd'
4407         if `read-passwd' is not defined.
4408
4409 2001-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
4410
4411         * elmo-pop3.el (elmo-pop3-list-location): Sort locations
4412         by original number.
4413         (elmo-folder-status): Call `elmo-folder-open-internal';
4414         Call `elmo-folder-close-internal' instead of `elmo-folder-close'.
4415         (elmo-folder-close-internal): Set location-alist as nil.
4416         (elmo-folder-clear): Define.
4417         (elmo-folder-check): Don't set location-alist as nil.
4418
4419         * elmo-dop.el (elmo-dop-queue-method-name-alist): Fixed symbols.
4420
4421 2001-09-10  Yuuichi Teranishi  <teranisi@gohome.org>
4422
4423         * elmo-util.el (elmo-msgid-to-cache): Enclose with `save-match-data'.
4424         (Pointed out by Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>)
4425
4426         * mmimap.el (mime-imap-entity::requested): New slot.
4427         (mime-imap-location-fetch-entity-p): New generic function.
4428         (mime-decode-parameters): Define using `defun-maybe'.
4429         (mmimap-make-mime-entity): Use `make-mime-content-type' to make
4430         content-type structure.
4431         (mime-entity-body): Return empty body if
4432         `mime-imap-location-fetch-entity-p' returns nil in the first request.
4433
4434         * elmo.el (elmo-message-displaying): New variable.
4435
4436         * elmo-mime.el (elmo-mime-message-display): Bind
4437         elmo-message-displaying as t.
4438
4439         * elmo-imap4.el (mime-imap-location-fetch-entity-p): Define.
4440
4441 2001-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
4442
4443         * acap.el (acap-open): erase buffer before starting network process.
4444         (acap-store): Rewrite.
4445
4446 2001-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
4447
4448         * elmo-imap4.el (elmo-imap4-default-mailbox,
4449         elmo-imap4-default-server
4450         elmo-imap4-default-authenticate-type,
4451         elmo-imap4-default-user,
4452         elmo-imap4-default-port,
4453         elmo-imap4-default-stream-type,
4454         elmo-imap4-stream-type-alist): Moved to elmo-vars.el.
4455
4456         * elmo-pop3.el (elmo-pop3-default-user,
4457         elmo-pop3-default-server,
4458         elmo-pop3-default-authenticate-type,
4459         elmo-pop3-default-port,
4460         elmo-pop3-default-stream-type,
4461         elmo-pop3-stream-type-alist): Ditto.
4462
4463         * elmo-nntp.el (elmo-nntp-default-server,
4464         elmo-nntp-default-user,
4465         elmo-nntp-default-port,
4466         elmo-nntp-default-stream-type,
4467         elmo-nntp-stream-type-alist): Ditto.
4468
4469         * elmo-vars.el: Follow changes above.
4470         (elmo-setting): New custom group; added 'elmo-setting group to
4471         above variables.
4472
4473         * elmo-version.el (elmo-version): Up to 2.7.3.
4474
4475         * acap.el (acap-parse-response): Don't delete process when BYE
4476         response (It causes hang-up on slow network environment).
4477         (toplevel): Added comment.
4478
4479 2001-08-28  Yuuichi Teranishi  <teranisi@gohome.org>
4480
4481         * slp.el (slp-exec-wait): Use `slp-program-arguments'.
4482
4483         * acap.el (acap-parse-return-metadata-or-return-metalist): Fix for
4484         parsing NIL.
4485         (acap-parse-return-metadata): Ditto.
4486
4487         * slp.el: New file.
4488         (toplevel): Fixed typo.
4489
4490         * acap.el: New file.
4491         (acap-network-stream-open): Show "Connecting..." message.
4492         (acap-parse-response): Fixed problem for BYE untagged response.
4493         (acap-open): Changed argument (Use `acap-default-user' if user is nil).
4494         (toplevel): Added tiny comments.
4495
4496 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
4497
4498         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
4499         space delimiter for uidl response.
4500
4501 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
4502
4503         * elmo-vars.el (elmo-use-semi): Eliminated.
4504
4505         * elmo-util.el (elmo-string-assoc-all): New function.
4506
4507 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4508
4509         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
4510         property 'mime-preview-situation for `mime-preview-quit'.
4511
4512 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4513
4514         * elmo.el (elmo-message-fetch-with-cache-process): Call
4515         elmo-message-fetch-internal instead of causing an error when fetch
4516         strategy is 'entire but only 'section cache is available.
4517
4518 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
4519
4520         * elmo-version.el (elmo-version): Up to 2.7.2.
4521
4522         * elmo.el (elmo-generic-folder-append-messages): Make
4523         fetch-strategy with `use-cache'.
4524
4525         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
4526         (elmo-dop-queue-method-name): New macro.
4527
4528 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4529
4530         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
4531         unbalanced parenthesis.
4532
4533 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
4534
4535         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
4536
4537 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
4538
4539         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
4540         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
4541
4542 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
4543
4544         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
4545         local variables.
4546
4547 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
4548
4549         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
4550         (elmo-message-use-cache-p): Define.
4551         (elmo-folder-msgdb-create): Treat cache.
4552
4553 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
4554
4555         * elmo-nntp.el (elmo-network-initialize-session): Call
4556         `elmo-nntp-send-mode-reader'.
4557         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
4558
4559 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
4560
4561         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
4562         alist.
4563         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
4564         assoc.
4565
4566         * elmo-net.el (elmo-network-get-session): Set stream-type argument
4567         for `elmo-plugged-p'.
4568         (elmo-open-network-stream): Fixed stream-type argument.
4569
4570 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
4571
4572         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
4573         unknown archive type is specified.
4574
4575 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
4576
4577         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
4578
4579         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
4580         while loading msgdb.
4581
4582         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
4583         (elmo-folder-open-internal): Rewrite.
4584
4585 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
4586
4587         * elmo-mime.el (elmo-mime-display-as-is-internal):
4588         Adjust buffer-multibyte status.
4589
4590 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
4591
4592         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
4593         of elmo-condition-find-key.
4594
4595         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
4596         (elmo-condition-in-msgdb-p): Ditto.
4597         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
4598         argument.
4599
4600 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
4601
4602         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
4603
4604 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
4605
4606         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
4607         label for elmo-display-progress.
4608
4609 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
4610
4611         * elmo.el (elmo-folder-clear): New method.
4612         (elmo-folder-clear): Define.
4613         (elmo-folder-synchronize): Call `elmo-folder-clear'.
4614
4615         * elmo-shimbun.el (elmo-folder-check): Rewrite.
4616         (elmo-folder-clear): Define.
4617
4618         * elmo-map.el (elmo-folder-clear): Define.
4619
4620         * elmo-version.el (elmo-version): Up to 2.7.1.
4621
4622 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
4623
4624         * elmo.el (elmo-folder-synchronize): Return list of nil when no
4625         updates.
4626
4627 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
4628
4629         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
4630         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
4631
4632 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
4633
4634         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
4635
4636         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
4637         and re-written.
4638
4639         * elmo-imap4.el (elmo-folder-initialize): Use
4640         elmo-get-network-stream-type.
4641
4642         * elmo-nntp.el (elmo-folder-initialize): Ditto.
4643
4644         * elmo-pop3.el (elmo-folder-initialize): Ditto.
4645
4646 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
4647
4648         * elmo.el (elmo-message-encache): Set unread argument for
4649         elmo-message-fetch.
4650
4651         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
4652
4653         * elmo.el (elmo-net-port-info): New method.
4654
4655         * elmo-shimbun.el (elmo-net-port-info): Define.
4656         (elmo-message-encache): Ditto.
4657
4658         * elmo-net.el (elmo-net-port-info): Define as method.
4659
4660         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
4661         unplugged status when elmo-enable-disconnected-operation is t.
4662
4663         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
4664         of spool folder before checking new number.
4665
4666 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
4667
4668         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
4669         (elmo-network-setup-session): Ditto.
4670         (elmo-message-fetch-plugged): Ditto.
4671         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
4672         (elmo-network-initialize-session): Ditto.
4673         (elmo-pop3-read-response): Abolish 3rd argument.
4674         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
4675         (elmo-pop3-read-contents): Ditto.
4676         (elmo-pop3-read-body): Ditto.
4677         (elmo-folder-status): Call elmo-folder-close.
4678         (elmo-pop3-lock): Abolish.
4679         (elmo-pop3-unlock): Ditto.
4680         (elmo-pop3-locked-p): Ditto.
4681         (elmo-folder-check): Don't call elmo-pop3-locked-p.
4682
4683 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
4684
4685         * elmo-version.el (elmo-version): Up to 2.7.0.
4686
4687         * elmo-pop3.el (elmo-pop3-debug): New variable.
4688         (elmo-pop3-debug-inhibit-logging): Ditto.
4689         (elmo-pop3-debug): New function.
4690         (elmo-pop3-send-command): Call elmo-pop3-debug.
4691         (elmo-pop3-read-response): Added keep-lock optional argument;
4692         Don't unlock if keep-lock is non-nil.
4693         (elmo-pop3-process-filter): Call elmo-pop3-debug.
4694         (elmo-network-authenticate-session): Bind
4695         elmo-pop3-debug-inhibit-logging as t.
4696         (elmo-network-setup-session): Call elmo-pop3-read-response with
4697         keep-lock argument.
4698         (elmo-pop3-read-msg): Ditto.
4699         (elmo-pop3-locked-p): Call elmo-pop3-debug.
4700         (elmo-pop3-read-body): Call elmo-pop3-unlock.
4701         (elmo-network-initialize-session): Call elmo-pop3-lock.
4702         (elmo-folder-close-internal): Don't clear location-alist slot.
4703         (elmo-folder-check): Clear location-alist slot.
4704
4705 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
4706
4707         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
4708         (elmo-pop3-send-command): Call elmo-pop3-lock.
4709         (elmo-pop3-read-response): Call elmo-pop3-unlock.
4710         (elmo-pop3-read-contents): Ditto.
4711         (elmo-pop3-lock): New function.
4712         (elmo-pop3-unlock): Ditto.
4713         (elmo-pop3-locked-p): Ditto.
4714         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
4715         returns t.
4716
4717 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
4718
4719         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
4720
4721         * elmo-util.el (elmo-file-field-primitive-condition-match):
4722         New inline function (Don't fetch file content if "first" or "last").
4723         (elmo-file-field-condition-match): Use
4724         elmo-file-field-primitive-condition-match.
4725
4726         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
4727         "first".
4728
4729         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
4730         (elmo-message-fetch-plugged): Fixed.
4731
4732         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
4733
4734 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
4735
4736         * elmo.el (elmo-folder-move-messages): Bind
4737         elmo-inhibit-display-retrieval-progress as t while moving messages.
4738
4739         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
4740         New variable.
4741         (elmo-inhibit-display-retrieval-progress): Ditto.
4742
4743         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
4744         for retrieval progress;
4745         Don't display progress when total buffer size is smaller than
4746         elmo-display-retrieval-progress-threshold.
4747         (elmo-message-fetch-plugged): Don't display progress when
4748         elmo-inhibit-display-retrieval-progress is non-nil.
4749
4750         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
4751         for retrieval progress;
4752         Don't display progress when literal size is smaller than
4753         elmo-display-retrieval-progress-threshold.
4754         (elmo-imap4-message-fetch): Don't display progress when
4755         elmo-inhibit-display-retrieval-progress is non-nil.
4756
4757 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
4758
4759         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
4760         (elmo-imap4-find-next-line): Display progress whille literal fetching.
4761         (elmo-imap4-message-fetch): Likewise.
4762
4763         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
4764         (elmo-shimbun-index-range-alist): Ditto.
4765         (elmo-shimbun-use-entire-index): Abolish.
4766         (shimbun-mua-use-entire-index): Ditto.
4767         (elmo-shimbun-folder): Added new slot `range'.
4768         (elmo-folder-initialize): Setup slot `range'.
4769
4770 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
4771
4772         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
4773         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
4774         (elmo-shimbun-get-headers): Use return value of
4775         `shimbun-article-expiration-days'.
4776         (elmo-folder-close-internal): Clean up last-check slot.
4777
4778         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
4779         (elmo-pop3-total-size): New variable.
4780         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
4781
4782         * elmo.el (elmo-folder-reserve-status-p): New method.
4783
4784         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
4785         (elmo-shimbun-use-entire-index): New user option.
4786         (shimbun-elmo-mua): New class.
4787         (shimbun-mua-search-id): Define.
4788         (shimbun-mua-use-entire-index): Ditto.
4789         (elmo-shimbun-folder:last-check): New slot.
4790         (elmo-shimbun-headers-cache-header-list): Abolish.
4791         (elmo-shimbun-headers-cache-set-header-list): Ditto.
4792         (elmo-shimbun-headers-cache-header-hash): Ditto.
4793         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
4794         (elmo-shimbun-headers-cache-last-check): Ditto.
4795         (elmo-shimbun-headers-cache-set-last-check): Ditto.
4796         (elmo-shimbun-headers-check-p): Rewrite.
4797         (elmo-shimbun-msgdb-to-headers): New function.
4798         (elmo-shimbun-get-headers): Rewrite.
4799         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
4800         (elmo-folder-open-internal): Get headers only if
4801         `elmo-shimbun-headers-check-p' is non-nil.
4802         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
4803         is non-nil.
4804         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
4805         (elmo-quit): Removed.
4806
4807         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
4808         function.
4809         (elmo-msgdb-overview-entity-set-extra): Ditto.
4810         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
4811
4812         * elmo-map.el (elmo-folder-status): Don't call
4813         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
4814         is non-nil.
4815
4816 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4817
4818         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
4819         of `elmo-msgdb-search-internal-primitive' when condition's car is
4820         `and' or `or'.
4821
4822 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
4823
4824         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
4825
4826 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4827
4828         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
4829         call `elmo-pipe-drain'.
4830
4831 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
4832
4833         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
4834         typo. (elmo-cache-folder -> elmo-mark-folder)
4835
4836 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4837
4838         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
4839         `elmo-message-fetch'.
4840
4841 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4842
4843         * elmo-net.el (elmo-message-encache): Fixed typo.
4844         (elmo-message-fetch-unplugged): Changed call
4845         `elmo-message-fetch-internal' without argument `outbuf'.
4846
4847 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
4848
4849         * elmo.el (elmo-message-encache): Define as generic function.
4850         (elmo-message-fetch-field): New generic function.
4851         (elmo-message-fetch-with-cache-process): Cause an error when
4852         fetch strategy is 'entire but only 'section cache is available.
4853         (toplevel): Fixed nmz folder definition.
4854
4855         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
4856         (elmo-msgdb-resume-list-filename): Ditto.
4857         (elmo-queue-filename): Ditto.
4858         (elmo-enable-disconnected-operation): Changed default value to t.
4859
4860         * elmo-util.el (elmo-cache-path-section-p): New function.
4861         (elmo-file-cache-get): Use it.
4862         (elmo-dop-queue-filename): Moved from elmo-dop.el.
4863         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
4864         (elmo-dop-queue-save): Ditto.
4865
4866         * elmo-net.el (elmo-folder-status-unplugged): Call
4867         elmo-folder-status-dop.
4868         (elmo-folder-list-messages-unplugged): Implemented.
4869         (elmo-folder-delete-messages-unplugged): Define.
4870         (elmo-folder-msgdb-create): Define.
4871         (elmo-folder-msgdb-create-unplugged): Define.
4872         (elmo-folder-mark-as-read-unplugged): Ditto.
4873         (elmo-folder-unmark-read-unplugged): Ditto.
4874         (elmo-folder-mark-as-important-unplugged): Ditto.
4875         (elmo-folder-unmark-important-unplugged): Ditto.
4876         (elmo-message-encache): Ditto.
4877
4878         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
4879         (elmo-dop-queue-save): Ditto.
4880
4881         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
4882         `elmo-folder-msgdb-create'.
4883         (elmo-folder-append-buffer): Implemented unplugged operation.
4884         (elmo-folder-append-messages): Call parent method in unplugged status.
4885         (elmo-message-fetch-unplugged): Removed definition.
4886         (elmo-message-fetch-field): Implemented.
4887
4888         * elmo-dop.el (toplevel): Require 'elmo-localdir.
4889         (elmo-dop-folder): Removed variable definition.
4890         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
4891         (elmo-dop-queue-flush): Implemented.
4892         (elmo-dop-queue-merge): Removed definition (TODO).
4893         (elmo-dop-spool-folder): New function.
4894         (elmo-dop-spool-folder-append-buffer): Ditto.
4895         (elmo-dop-spool-folder-list-messages): Ditto.
4896         (elmo-dop-list-deleting-messages): Ditto.
4897         (elmo-folder-append-buffer-dop): Ditto.
4898         (elmo-folder-delete-messages-dop): Ditto.
4899         (elmo-message-encache-dop): New inline function.
4900         (elmo-create-folder-dop): Ditto.
4901         (elmo-folder-mark-as-read-dop): Ditto.
4902         (elmo-folder-unmark-read-dop): Ditto.
4903         (elmo-folder-mark-as-important-dop): Ditto.
4904         (elmo-folder-unmark-important-dop): Ditto.
4905         (elmo-folder-status-dop): Fixed.
4906         (elmo-folder-append-buffer-dop-delayed): New function.
4907         (elmo-folder-delete-messages-dop-delayed): Ditto.
4908         (elmo-dop-msgdb): Ditto.
4909
4910 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4911
4912         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
4913
4914 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4915
4916         * elmo.el (elmo-folder-move-messages): Fixed problem when
4917         `dst-folder' is 'null.
4918
4919 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4920
4921         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
4922         instead of current mark.
4923
4924         * elmo-multi.el (elmo-folder-list-importants-internal): No
4925         operation if importants is not list.
4926
4927         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
4928         Return t if importants is not list.
4929
4930         * elmo-map.el (elmo-map-folder-list-importants): Define.
4931         (elmo-folder-list-importants-internal): Check return value of
4932         `elmo-map-folder-list-importants-internal'.
4933
4934         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
4935
4936         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
4937
4938         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
4939
4940         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
4941
4942 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
4943
4944         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
4945         (Patch is provided by <kita@coe.nttdata.co.jp>).
4946
4947 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4948
4949         * elmo.el (elmo-folder-synchronize): Don't check important mark in
4950         mark folder.
4951
4952 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4953
4954         * elmo.el (elmo-message-fetch): Define.
4955         (elmo-message-fetch-with-cache-process): New generic method.
4956         (elmo-message-fetch-internal): New generic method.
4957         (elmo-folder-synchronize):
4958
4959         * elmo-archive.el (elmo-message-fetch-internal): Define.
4960         (elmo-message-fetch): Eliminated.
4961
4962         * elmo-localdir.el (elmo-message-fetch-internal): Define.
4963         (elmo-message-fetch): Eliminated.
4964
4965         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
4966         argument OUTBUF.
4967         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
4968
4969         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
4970         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
4971
4972         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
4973         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
4974
4975         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
4976
4977         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
4978
4979         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
4980
4981         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
4982         (elmo-message-fetch-unplugged): New generic method.
4983         (elmo-message-fetch-internal): Remove cache process (Renamed from
4984         `elmo-message-fetch').
4985
4986         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
4987         (elmo-message-fetch): Eliminated.
4988         (elmo-message-fetch-unplugged): Ditto.
4989
4990         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
4991
4992 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4993
4994         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
4995         of `to-be-deleted' from number-alist to number-list.
4996
4997 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
4998
4999         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
5000         (elmo-folder-mark-as-important): Ditto.
5001
5002 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
5003
5004         * elmo.el (elmo-folder): Added process-duplicates slot.
5005
5006         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
5007         (elmo-folder-unmark-read): Ditto.
5008         (elmo-folder-unmark-important): Ditto.
5009         (elmo-folder-mark-as-important): Ditto.
5010
5011         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
5012         duplicated message processing.
5013
5014         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
5015
5016 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5017
5018         * elmo-util.el (elmo-list-subdirectories-1): New function.
5019         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
5020         (elmo-mapcar-list-of-list): New function.
5021
5022         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
5023         `elmo-mapcar-list-of-list' instead of `mapcar'.
5024
5025         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
5026
5027         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
5028         `elmo-have-link-count'. Return the fully qualified folder name.
5029
5030 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
5031
5032         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
5033         (elmo-shimbun-headers-cache): New internal variable.
5034         (elmo-shimbun-headers-cache-header-list): New inline function.
5035         (elmo-shimbun-headers-cache-set-header-list): Ditto.
5036         (elmo-shimbun-headers-cache-header-hash): Ditto.
5037         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
5038         (elmo-shimbun-headers-cache-last-check): Ditto.
5039         (elmo-shimbun-headers-cache-set-last-check): Ditto.
5040         (elmo-shimbun-lapse-seconds): Ditto.
5041         (elmo-shimbun-headers-cache-check-p): Ditto.
5042         (elmo-shimbun-get-headers): New function.
5043         (elmo-folder-open-internal): Call it.
5044         (elmo-quit): Define (Clear headers-cache).
5045
5046 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
5047
5048         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
5049
5050         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
5051         (elmo-msgdb-flist-save): Ditto.
5052
5053         * elmo-shimbun.el (elmo-folder-list-subfolders):
5054         Use `shimbun-groups' instead of `shimbun-groups-internal'.
5055         (elmo-folder-exists-p): Ditto.
5056
5057         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
5058         argument for `shimbun-header-insert'.
5059
5060 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
5061
5062         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
5063         at first time.
5064
5065         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
5066         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
5067
5068 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
5069
5070         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
5071         (elmo-folder-plugged-p): Define.
5072         (elmo-folder-set-plugged): Ditto.
5073         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
5074         (elmo-folder-list-messages-internal): Return t if unplugged.
5075         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
5076
5077         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
5078         when elmo-folder-list-messages-internal method of children returns t.
5079
5080         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
5081         pair is nil.
5082         (elmo-folder-open-internal): Don't update if unplugged status.
5083
5084 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
5085
5086         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
5087         new message.
5088
5089 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
5090
5091         * elmo-util.el (elmo-file-cache-save): Ignore errors.
5092
5093         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
5094         saving.
5095
5096 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
5097
5098         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
5099
5100         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
5101         (elmo-folder-open-internal): Set up headers slot.
5102         (elmo-folder-check): Call elmo-folder-close-internal and
5103         elmo-folder-open-internal.
5104         (elmo-folder-close-internal): Clean up headers slot.
5105
5106 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
5107
5108         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
5109         exactly folder list.
5110         (elmo-folder-append-messages): Fixed append archive with prefix.
5111
5112         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
5113         make temp files with start-number.
5114
5115         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
5116
5117 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
5118
5119         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
5120         argument `visible-only'.
5121         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
5122         instead of `if'.
5123
5124         * elmo-pop3.el (elmo-folder-open-internal): Check
5125         `elmo-inhibit-number-mapping' is non-nil.
5126
5127         * elmo-pipe.el (elmo-folder-status): Fixed.
5128
5129 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
5130
5131         * elmo.el (elmo-dop-queue-flush): Added autload setting.
5132
5133         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
5134         (elmo-folder-open-internal): Setup `header-hash' slot.
5135         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
5136         information.
5137         (elmo-map-message-fetch): Ditto.
5138
5139 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
5140
5141         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
5142         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
5143         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
5144         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
5145
5146         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
5147
5148 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
5149
5150         * sb-airs.el: Added footer.
5151
5152         * shimbun.el (shimbun-article): Define as luna-method.
5153
5154         * sb-tcup.el: New file.
5155
5156         * sb-airs.el (toplevel): Require 'sb-mhonarc.
5157         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
5158
5159 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
5160
5161         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
5162         (shimbun-get-headers): Ditto.
5163
5164         * elmo.el: Moved obsolete variable definitions from
5165         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
5166
5167         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
5168         groups.
5169
5170         * shimbun.el: New file.
5171
5172         * elmo-shimbun.el: New file.
5173
5174         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
5175         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
5176         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
5177         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
5178
5179 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
5180
5181         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
5182         hierarchy is t.
5183
5184 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
5185
5186         * elmo.el (elmo-folder-msgdb): Define as macro.
5187         (elmo-folder-open): Added argument `load-msgdb'.
5188         (elmo-generic-folder-open): Ditto.
5189         (elmo-folder-encache): New function.
5190
5191         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
5192
5193         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
5194
5195         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
5196         Eliminated argument FOLDER and added argument MSGDB.
5197         (elmo-dop-queue-load): Moved from elmo-dop.el.
5198         (elmo-dop-queue-save): Ditto.
5199
5200         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
5201
5202         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
5203
5204         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
5205         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
5206         (elmo-filter-folder-list-importants-internal): Ditto.
5207
5208         * elmo-map.el (elmo-folder-pack-number): Ditto.
5209
5210         * elmo-mime.el (elmo-mime-message-display): Ditto.
5211
5212         * elmo.el (elmo-generic-folder-commit): Ditto.
5213         (elmo-folder-list-unreads): Ditto.
5214         (elmo-folder-list-importants): Ditto.
5215         (elmo-generic-folder-commit): Ditto.
5216         (elmo-message-set-mark): Ditto.
5217         (elmo-generic-folder-append-msgdb): Ditto.
5218         (elmo-folder-synchronize): Ditto.
5219         (elmo-folder-messages): Ditto.
5220         (elmo-init): Call elmo-dop-queue-load.
5221         (elmo-folder-list-messages): Ditto.
5222
5223         * elmo-nntp.el (elmo-folder-update-number): Ditto.
5224         (elmo-nntp-folder-process-crosspost): Ditto.
5225         (elmo-folder-list-unreads-internal): Ditto.
5226
5227         * elmo-dop.el: Removed old functions.
5228
5229 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
5230
5231         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
5232         `folder' to `msgdb'.
5233
5234 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
5235
5236         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
5237         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
5238
5239         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
5240         case-fold-search.
5241
5242 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
5243
5244         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
5245         defined.
5246
5247         * mmimap.el (toplevel): Require 'mime-parse and 'static.
5248         (mmimap-parse-parameters-from-list): Define as alias for
5249         `mime-decode-parameter-plist' if it is defined as function.
5250         (mmimap-make-mime-entity): Added argument `number'.
5251         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
5252         as 0.
5253         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
5254
5255         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
5256
5257         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
5258
5259         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
5260
5261 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
5262
5263         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
5264
5265         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
5266         when elmo-imap4-default-authenticate-type is nil.
5267         (elmo-folder-list-subfolders): Ditto
5268         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
5269         (elmo-imap4-fetch-callback-1-subr): Renamed from
5270         `elmo-imap4-fetch-callback-1' and define as inline function.
5271         (elmo-imap4-fetch-callback-1):
5272         Renamed from `elmo-imap4-fetch-callback'.
5273         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
5274
5275         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
5276         msgdb path (To keep compatibility with main trunk).
5277
5278         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
5279
5280         * elmo-util.el (elmo-make-file-cache): Moved position of
5281         some macros.
5282
5283         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
5284         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
5285         instead of `elmo-pop3-inhibit-uidl'.
5286         (elmo-folder-exists-p): Ditto.
5287         (elmo-pop3-folder-list-messages): Ditto.
5288
5289         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
5290         instead of `elmo-pop3-inhibit-uidl'.
5291         (elmo-folder-status): Ditto.
5292
5293         * elmo-dop.el (elmo-dop-folder): New variable.
5294         (elmo-dop-lock-message): Eliminated.
5295         (elmo-dop-unlock-message): Ditto.
5296         (elmo-dop-lock-list-load): Ditto.
5297         (elmo-dop-lock-list-save): Ditto.
5298         (elmo-dop-delete-folder): Ditto.
5299         (elmo-dop-rename-folder): Ditto.
5300
5301         * elmo.el: Removed incomplete commentary.
5302
5303 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5304
5305         * elmo.el (toplevel): Require 'elmo-version first;
5306         for little `recursive-load-depth' settings.
5307         Fix "ends here" comment.
5308
5309 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
5310
5311         * elmo-util.el (toplevel): Require 'poem;
5312         Some functions are moved from elmo-cache.el.
5313
5314         * elmo-net.el (toplevel): Require 'elmo-cache.
5315
5316         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
5317
5318         * elmo.el (toplevel): Ditto.
5319
5320         * elmo-cache.el: Rewrite with luna;
5321         Some functions are moved to elmo-util.el.
5322
5323         * elmo-internal.el (elmo-internal-folder-list): New variable.
5324         (elmo-internal-folder-initialize): Rewrite.
5325         (elmo-folder-list-subfolders): Ditto.
5326
5327         * elmo-cache.el (elmo-cache-search-all): Eliminated.
5328         (elmo-cache-collect-sub-directories): Ditto.
5329
5330 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
5331
5332         * elmo-version.el (elmo-version): Up to 2.5.8.
5333
5334         * elmo.el (elmo-folder-list-messages-mark-match): New function.
5335
5336         * elmo-util.el (elmo-list-insert): New function.
5337
5338 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
5339
5340         * elmo.el (elmo-init): New function.
5341         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
5342
5343         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
5344         (Renamed from `elmo-localdir-header-chop-length').
5345
5346         * elmo-pop3.el (elmo-pop3-use-cache,
5347         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
5348
5349         * elmo-nntp.el (elmo-message-fetch): Define.
5350         (elmo-message-fetch-unplugged): Ditto.
5351         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
5352         (elmo-nntp-use-cache): Ditto.
5353         (elmo-nntp-max-number-precedes-list-active): Ditto.
5354
5355         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
5356
5357         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
5358         `elmo-msgdb-insert-file-header'.
5359         Use `elmo-msgdb-file-header-chop-length'.
5360
5361         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
5362         `elmo-vars.el'.
5363
5364         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
5365         (elmo-cache-msgdb-create-overview-entity-from-file): Use
5366         `elmo-msgdb-insert-file-header'.
5367
5368         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
5369         Use new variable;
5370         Define obsolete variables with `elmo-define-obsolete-variable',
5371
5372         * elmo-util.el (elmo-warning-buffer-name): New constant.
5373         (elmo-warning): New function.
5374         (elmo-obsolete-variable-alist): New variable.
5375         (elmo-obsolete-variable-show-warnings): New variable.
5376         (elmo-define-obsolete-variable): New function.
5377         (elmo-resque-obsolete-variable): Ditto.
5378         (elmo-resque-obsolete-variables): Ditto.
5379
5380 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
5381
5382         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
5383         Eliminated.
5384
5385         * elmo-pop3.el, elmo-nntp.el: Use custom.
5386
5387 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
5388
5389         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
5390         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
5391
5392 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
5393
5394         * Luna-fy Kenichi OKADA's following changes.
5395         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
5396         `nohide'.
5397         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
5398
5399 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
5400
5401         * elmo-util.el (elmo-display-progress): Prefer
5402         `progress-feedback-with-label' to `lprogress-display'.
5403
5404 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
5405
5406         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
5407
5408 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
5409
5410         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
5411         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
5412         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
5413         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
5414         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
5415         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
5416         * elmo-archive.el (elmo-archive-list-folder): Ditto.
5417         * elmo-filter.el (elmo-filter-list-folder): Ditto.
5418         * elmo-internal.el (elmo-internal-list-folder): Ditto.
5419         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
5420         * elmo-multi.el (elmo-multi-list-folder): Ditto.
5421         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
5422         * elmo-dop.el (elmo-dop-list-folder): Ditto.
5423
5424 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
5425
5426         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
5427         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
5428
5429 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
5430
5431         * elmo.el (elmo-folder-process-crosspost): New generic method.
5432         (elmo-folder-writable-p): Ditto.
5433         (elmo-folder-message-appendable-p): Eliminated.
5434         (elmo-generic-folder-append-msgdb): Rewrite.
5435         (elmo-newsgroups-hashtb): New internal variable.
5436         (elmo-crosspost-message-set): Eliminated.
5437         (elmo-crosspost-message-delete): Ditto.
5438         (elmo-setup-subscribed-newsgroups): New function.
5439         (elmo-crosspost-message-alist-modified): New internal variable.
5440         (elmo-crosspost-message-alist-load): New function (Renamed from
5441         `wl-crosspost-alist-load').
5442         (elmo-crosspost-message-alist-save): Ditto (Renamed from
5443         `wl-crosspost-alist-save').
5444
5445         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
5446
5447         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
5448         `unreads'.
5449         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
5450         elmo-newsgroups-hashtb).
5451         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
5452         `elmo-nntp-folder-update-crosspost-message-alist'.
5453         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
5454         `elmo-nntp-groups-hashtb'.
5455         (elmo-nntp-make-groups-hashtb): Eliminated.
5456         (elmo-nntp-parse-newsgroups): New function (Renamed from
5457         `wl-parse-newsgroups').
5458         (elmo-folder-creatable-p, elmo-folder-writable-p,
5459         elmo-folder-close-internal, elmo-folder-mark-as-read,
5460         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
5461         Define.
5462         (elmo-nntp-folder-update-crosspost-message-alist): New function.
5463
5464         * elmo-net.el (elmo-message-fetch): Check buffer size.
5465
5466         * elmo-multi.el (elmo-multi-split-number-alist): New function.
5467
5468         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
5469
5470         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
5471         before `close' command.
5472
5473         * elmo.el (elmo-folder-list-unreads-internal): Added argument
5474         `mark-alist' (All other related portions are changed).
5475
5476 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
5477
5478         * elmo-util.el (elmo-create-hash-size): Eliminated.
5479         (elmo-make-hash) Make a hash with `one less than a power of two'
5480         length.
5481
5482         * elmo-vars.el (elmo-hash-minimum-size): New variable.
5483         (elmo-hash-maximum-size): Changed value.
5484
5485 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
5486
5487         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
5488         (elmo-mime-message-display-as-is): Ditto.
5489
5490 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
5491
5492         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
5493         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
5494
5495 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
5496
5497         * elmo-mark.el: New file.
5498
5499         * elmo-internal.el: Rewrite (Almost empty).
5500
5501 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
5502
5503         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
5504         (mime-imap-entity-header-string): Ditto.
5505         (mmimap-entity-section): Rewrite.
5506
5507 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
5508
5509         * elmo-nmz.el: New file.
5510
5511         * elmo-pipe.el: Rewrite with luna.
5512
5513 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
5514
5515         * elmo-archive.el: Rewrite with luna.
5516
5517         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
5518         (elmo-folder-list-importants-internal): Ditto.
5519
5520 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
5521
5522         * elmo-archive.el (elmo-archive-version): Abolish.
5523         (toplevel) Removed `boso' comment.
5524
5525 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
5526
5527         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
5528         elmo-msgdb-add-msgs-to-seen-list-subr;
5529         Changed argument seen-marks to unread-marks.
5530
5531         * elmo-nntp.el: Rewrite with luna.
5532
5533 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
5534
5535         * elmo-filter.el: Rewrite with luna.
5536
5537 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
5538
5539         * elmo-pop3.el: Rewrite with luna.
5540
5541 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
5542
5543         * elmo-multi.el: Rewrite with luna.
5544
5545         * elmo-vars.el (elmo-use-killed-list): Abolish.
5546         All other related portions are changed.
5547         (elmo-filename-replace-string-alist): Renamed from
5548         elmo-msgid-replace-string-alist.
5549
5550 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
5551
5552         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
5553
5554         * elmo-map.el: New file.
5555         * elmo-maildir.el: Rewrite with luna.
5556
5557 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
5558
5559         * elmo.el: Changed meaning of `elmo-folder-commit'.
5560         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
5561
5562 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
5563
5564         * elmo.el (elmo-folder-append-buffer): New function.
5565         (Renamed from `elmo-append-msg')
5566
5567 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
5568
5569         * elmo-mime.el: New file.
5570
5571 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
5572
5573         * elmo-cache.el: Rewrite.
5574
5575 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
5576
5577         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
5578
5579 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
5580
5581         * elmo-vars.el (elmo): New group.
5582         (elmo-strict-diff-folder-regexp): New variable.
5583
5584         * elmo-util.el (elmo-call-func): Abolish.
5585         (elmo-folder-get-type): Ditto.
5586         (elmo-*-get-spec): Ditto.
5587         (elmo-*-spec-*): Ditto.
5588         (elmo-imap4-identical-name-space-p): Ditto.
5589         (elmo-folder-identical-system-p): Ditto.
5590         (elmo-folder-direct-copy-alist): Ditto.
5591         (elmo-folder-direct-copy-p): Ditto.
5592
5593         * elmo-pipe.el (elmo-pipe-folder): New luna class.
5594         (elmo-folder-initialize): Define.
5595         (elmo-folder-get-primitive-list): Ditto.
5596
5597         * elmo-nntp.el (elmo-nntp-folder): New luna class.
5598         (elmo-folder-initialize): Define.
5599         Renamed `elmo-network-session-host-internal' to
5600         `elmo-network-session-server-internal'.
5601
5602         * elmo-multi.el (elmo-multi-folder): New luna class.
5603         (elmo-folder-initialize): Define.
5604         (elmo-folder-get-primitive-list): Ditto.
5605         (elmo-folder-contains-type): Ditto.
5606         (elmo-message-use-cache-p): Ditto.
5607
5608         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
5609         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
5610
5611         * elmo-maildir.el (elmo-maildir-folder): New luna class.
5612         (elmo-folder-initialize): Define.
5613
5614         * elmo-filter.el (elmo-filter-folder): New luna class.
5615         (elmo-folder-initialize): Define.
5616         (elmo-folder-get-primitive-list): Ditto.
5617         (elmo-folder-contains-type): Ditto.
5618
5619 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
5620
5621         * elmo-imap4.el: Rewrite with luna.
5622
5623         * mmimap.el: New file.
5624
5625         * mmelmo.el, mmelmo-imap4.el: Removed.
5626
5627         * elmo-net.el: Ditto.
5628
5629         * elmo-pop3.el (elmo-pop3-folder): New luna class.
5630         (elmo-folder-initialize): Define.
5631
5632         * elmo-archive.el (elmo-archive-folder): New luna class.
5633         (elmo-folder-initialize): Define.
5634
5635         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
5636         `elmo-folder-msgdb-path'.
5637         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
5638         `elmo-make-folder'.
5639
5640 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
5641
5642         * elmo.el: New file.
5643
5644         * elmo2.el: Renamed to elmo.el.
5645
5646 \f
5647 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
5648
5649         * elmo-cache.el (elmo-cache-expire-by-size): Count
5650         a disk usage for a cache file entry in KB even when
5651         its kind is a directory.
5652
5653 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
5654
5655         * elmo-version.el (elmo-version): Up to 2.5.7.
5656
5657 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5658
5659         * elmo-version.el (elmo-version): Up to 2.5.6.
5660
5661 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
5662
5663         * elmo-version.el (elmo-version): Up to 2.5.5.
5664
5665 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
5666
5667         * elmo-imap4.el (elmo-network-authenticate-session):
5668         Fixed a logic for response checking.
5669
5670 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
5671
5672         * elmo-net.el: Add autoload settings for `starttls-negotiate',
5673         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
5674         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
5675         `sasl-mechanisms'.
5676
5677         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
5678         for `starttls-open-stream' and `starttls-negotiate'.
5679
5680         * elmo-nntp.el: Remove autoload settings for
5681         `starttls-open-stream' and `starttls-negotiate'.
5682
5683         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
5684         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
5685         `luna-define-class' with `eval-and-compile'.
5686
5687 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
5688
5689         * elmo-util.el (elmo-read-search-condition-internal):
5690         Require an element of table for searching field.
5691
5692 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
5693
5694         * elmo-version.el (elmo-version): Up to 2.5.4.
5695
5696 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
5697
5698         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
5699
5700 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
5701
5702         * elmo-nntp.el (elmo-network-initialize-session): omitted.
5703
5704 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
5705
5706         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
5707         before greeting.
5708
5709 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5710
5711         * elmo-imap4.el (elmo-imap4-delete-folder):
5712         Send "close" before "delete" (Use commented out line).
5713         (elmo-imap4-rename-folder): Ditto.
5714
5715         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
5716         folder string itself.
5717         (elmo-dop-list-deleted): New function.
5718         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
5719         killed.
5720
5721         * elmo-util.el (elmo-string-rassoc-all): New function.
5722
5723 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
5724
5725         * elmo-version.el (elmo-version): Up to 2.5.3.
5726
5727         * elmo-net.el (elmo-network-get-session): Changed logic for
5728         checking process status.
5729
5730         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
5731         process is nil;
5732         Changed logic for checking process status.
5733
5734 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
5735
5736         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
5737         before greeting.
5738         (elmo-network-setup-session): Set UIDL hash size according to
5739         the length of list response.
5740         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
5741         according to the length of list response;
5742         Return the length of list response.
5743         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
5744
5745 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
5746
5747         * elmo-imap4.el (toplevel): Require 'ssl.
5748         Add autoload 'starttls.
5749         * elmo-pop3.el (toplevel): Ditto.
5750         * elmo-nntp.el (toplevel): Ditto.
5751
5752 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5753
5754         * elmo-imap4.el (toplevel): defun at compile time.
5755         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
5756         sasl-next-step, sasl-step-data, sasl-step-set-data.
5757         * elmo-pop3.el (toplevel): Ditto.
5758
5759 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5760
5761         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
5762
5763 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5764
5765         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
5766         if error.
5767         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
5768         and `elmo-pop-auth-apop'.
5769
5770 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5771
5772         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
5773
5774 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5775
5776         * elmo-pop3.el (elmo-network-authenticate-session): Split
5777         encoded response value.
5778
5779 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5780
5781         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
5782         `elmo-pop3-force-login'.
5783         Redefine `sasl-mechanisms'.
5784         * elmo-vars.el (elmo-pop3-force-login): Ditto.
5785
5786 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5787
5788         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
5789         Delete `elmo-imap4-authenticator-alist'.
5790         (elmo-imap4-auth-cram-md5): Delete.
5791         (elmo-imap4-auth-digest-md5): Delete.
5792
5793 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5794
5795         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
5796         (elmo-pop3-auth-scram-md5): Ditto.
5797         (elmo-pop3-auth-cram-md5): Ditto.
5798
5799 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5800
5801         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
5802         Delete `elmo-pop3-authenticator-alist'.
5803
5804 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5805
5806         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
5807         new SASL API.
5808         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
5809
5810 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
5811
5812         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
5813
5814 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
5815
5816         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
5817         Fixed problem when `elmo-pop3-use-uidl' is nil.
5818         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
5819
5820 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5821
5822         * elmo-version.el (elmo-version): Up to 2.5.2.
5823
5824 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
5825
5826         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
5827         New function.
5828         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
5829         (elmo-pop3-msgdb-create-as-numlist): Use it.
5830
5831         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
5832         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
5833
5834         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
5835         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
5836
5837 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
5838
5839         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
5840         when elmo-mark-as-read is called with second argument nil.
5841
5842 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
5843
5844         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
5845         Moved to elmo-util.el.
5846
5847         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
5848         Moved from elmo-pipe.el
5849
5850         * elmo-archive.el (elmo-archive-call-process): Enclose with
5851         static-if.
5852
5853         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
5854         "RFC822" (because RFC822.PEEK is obsolete).
5855         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
5856
5857 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
5858
5859         * elmo-archive.el (elmo-archive-call-process): Don't check for
5860         the exit status when Nemacs is running.
5861
5862 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
5863
5864         * elmo-net.el (elmo-network-session-password-key): Don't set default to
5865         'plain.
5866
5867         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
5868         (elmo-pop3-get-spec): Set default of auth to 'user.
5869
5870         * elmo-imap4.el (elmo-imap4-session-check):
5871         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
5872         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
5873         (elmo-imap4-auth-login): New function; Revival.
5874         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
5875         `elmo-imap4-auth-login'.
5876
5877 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
5878
5879         * elmo2.el (toplevel): Move `product-provide' declare.
5880         * mmelmo.el (toplevel): Ditto.
5881
5882 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5883
5884         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
5885
5886 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
5887
5888         * elmo-util.el (elmo-folder-get-store-type): New function.
5889         (elmo-folder-direct-copy-p): Use it.
5890
5891 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
5892
5893         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
5894         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
5895         and result of `elmo-imap4-use-flag-p'.
5896         (elmo-imap4-fetch-callback-1): Set mark according to
5897         the result of `elmo-imap4-use-flag-p'.
5898
5899 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
5900
5901         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
5902         (elmo-generic-list-folder-unread): Ditto.
5903         (elmo-folder-get-info): Ditto.
5904         (elmo-folder-set-info-max-by-numdb): Ditto.
5905         (elmo-folder-get-info-max): Ditto.
5906         (elmo-folder-get-info-length): Ditto.
5907         (elmo-folder-get-info-unread): Ditto.
5908         (elmo-folder-info-make-hashtb): Ditto.
5909
5910         * elmo2.el: Removed above functions.
5911
5912 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
5913
5914         * elmo-imap4.el (toplevel): Require 'ssl.
5915         Add autoload 'starttls.
5916         * elmo-pop3.el (toplevel): Ditto.
5917         * elmo-nntp.el (toplevel): Ditto.
5918
5919 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5920
5921         * elmo-imap4.el (toplevel): defun at compile time.
5922         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
5923         sasl-next-step, sasl-step-data, sasl-step-set-data.
5924         * elmo-pop3.el (toplevel): Ditto.
5925
5926 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5927
5928         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
5929
5930 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5931
5932         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
5933         if error.
5934         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
5935         and `elmo-pop-auth-apop'.
5936
5937 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5938
5939         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
5940
5941 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5942
5943         * elmo-pop3.el (elmo-network-authenticate-session): Split
5944         encoded response value.
5945
5946 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5947
5948         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
5949         `elmo-pop3-force-login'.
5950         Redefine `sasl-mechanisms'.
5951         * elmo-vars.el (elmo-pop3-force-login): Ditto.
5952
5953 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5954
5955         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
5956         Delete `elmo-imap4-authenticator-alist'.
5957         (elmo-imap4-auth-cram-md5): Delete.
5958         (elmo-imap4-auth-digest-md5): Delete.
5959
5960 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
5961
5962         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
5963         (elmo-pop3-auth-scram-md5): Ditto.
5964         (elmo-pop3-auth-cram-md5): Ditto.
5965
5966 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5967
5968         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
5969         Delete `elmo-pop3-authenticator-alist'.
5970
5971 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
5972
5973         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
5974         new SASL API.
5975         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
5976
5977 \f
5978 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
5979
5980         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
5981
5982 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
5983
5984         * elmo-nntp.el (elmo-nntp-get-folders-info):
5985         Fixed problem when '\' character is contained in user-id.
5986         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
5987
5988 \f
5989 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
5990
5991         * elmo-imap4.el (elmo-imap4-delete-folder):
5992         Send "close" before "delete" (Use commented out line).
5993         (elmo-imap4-rename-folder): Ditto.
5994
5995         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
5996         folder string itself.
5997         (elmo-dop-list-deleted): New function.
5998         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
5999         killed.
6000
6001         * elmo-util.el (elmo-string-rassoc-all): New function.
6002
6003         * elmo-version.el (elmo-version): Up to 2.5.1.
6004
6005 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
6006
6007         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
6008
6009         * elmo-internal.el (elmo-internal-search): Fix last change.
6010
6011 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
6012
6013         * elmo-internal.el (elmo-internal-search): Rewrite.
6014         (Fixed problem which is pointed out by Akihiro MOTOKI
6015         <motoki@da.jp.nec.com>)
6016
6017         * elmo-version.el (elmo-version): Up to 2.5.0.
6018
6019 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
6020
6021         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
6022
6023 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
6024
6025         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
6026         non-nil, make hierarchy.
6027
6028 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
6029
6030         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
6031         `elmo-pop3-use-uidl' must be bound to nil.
6032         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
6033
6034 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
6035
6036         * elmo-util.el (elmo-copy-file): Don't cause an error after
6037         `add-name-to-file' failed.
6038
6039         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
6040         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
6041
6042 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6043
6044         * elmo-version.el (elmo-version): Up to 2.3.93.
6045
6046 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
6047
6048         * elmo-util.el (elmo-flatten): New function.
6049
6050 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6051
6052         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
6053         sync Author header.
6054         * elmo-cache.el (toplevel): Ditto.
6055         * elmo-database.el (toplevel): Ditto.
6056         * elmo-date.el (toplevel): Ditto.
6057         * elmo-dop.el (toplevel): Ditto.
6058         * elmo-filter.el (toplevel): Ditto.
6059         * elmo-imap4.el (toplevel): Ditto.
6060         * elmo-internal.el (toplevel): Ditto.
6061         * elmo-localdir.el (toplevel): Ditto.
6062         * elmo-localnews.el (toplevel): Ditto.
6063         * elmo-maildir.el (toplevel): Ditto.
6064         * elmo-msgdb.el (toplevel): Ditto.
6065         * elmo-multi.el (toplevel): Ditto.
6066         * elmo-net.el (toplevel): Ditto.
6067         * elmo-nntp.el (toplevel): Ditto.
6068         * elmo-pipe.el (toplevel): Ditto.
6069         * elmo-pop3.el (toplevel): Ditto.
6070         * elmo-util.el (toplevel): Ditto.
6071         * elmo-vars.el (toplevel): Ditto.
6072         * elmo2.el (toplevel): Ditto.
6073         * mmelmo-imap4.el (toplevel): Ditto.
6074         * mmelmo.el (toplevel): Ditto.
6075
6076         * elmo-version.el (elmo-version): Move to top.
6077
6078         * elmo-cache.el (toplevel): Fixed multiple Author header format.
6079         * elmo-imap4.el (toplevel): Ditto.
6080         * elmo-localdir.el (toplevel): Ditto.
6081         * elmo-msgdb.el (toplevel): Ditto.
6082         * elmo-nntp.el (toplevel): Ditto.
6083         * elmo-pop3.el (toplevel): Ditto.
6084         * elmo-version.el (toplevel): Ditto.
6085
6086         * elmo-localnews.el (toplevel): Added Keyword header.
6087
6088 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
6089
6090         * elmo-version.el (product-version-as-string): Defined using
6091         `defun-maybe'.
6092         (toplevel): Use it.
6093
6094         * elmo-localdir.el (toplevel): Updated copyright notice.
6095         * elmo-version.el (toplevel): Ditto.
6096         * elmo-msgdb.el (toplevel): Ditto.
6097         * elmo-imap4.el (toplevel): Ditto.
6098         * elmo-nntp.el (toplevel): Ditto.
6099         * elmo-pop3.el (toplevel): Ditto.
6100
6101 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
6102
6103         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
6104         messages.
6105
6106         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
6107         parameter value (It sometimes contains raw kanji).
6108
6109 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6110
6111         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
6112         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
6113
6114 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6115
6116         * elmo-imap4.el (elmo-network-initialize-session): Fix.
6117
6118 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
6119
6120         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
6121         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
6122
6123 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
6124
6125         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
6126         value if selecting folder succceeded.
6127         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
6128
6129 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6130
6131         * elmo-util.el (elmo-make-directory): Fixed permission lateral
6132         representation.
6133
6134         * elmo-util.el (elmo-string-matched-member): New function.
6135
6136 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
6137
6138         * elmo-util.el (elmo-unintern): New macro.
6139         (elmo-number-set-member): Fixed docstring.
6140
6141         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
6142         tag token.
6143
6144 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
6145
6146         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
6147         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
6148
6149 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
6150
6151         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
6152         `no-error'.
6153         Added docstring.
6154         Return non-nil if selecting folder succeeded.
6155         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
6156
6157 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
6158
6159         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
6160         `file-name-completion' returns t.
6161         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
6162         (elmo-maildir-set-mark): Put `info' part to the files in the cur
6163         directory if it does not exist.
6164         (elmo-maildir-update-current): Use `while' instead of `mapcar'
6165         for iteration.
6166
6167 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
6168
6169         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
6170         enclosure (It's harmful in unplugged status).
6171
6172         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
6173
6174         * mmelmo-1.el: Removed.
6175
6176         * mmelmo-2.el: Ditto.
6177
6178         * mmelmo-imap4-1.el: Ditto.
6179
6180         * mmelmo-imap4-2.el: Ditto.
6181
6182         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
6183
6184         * mmelmo.el: Merged mmelmo-2.el.
6185
6186         * elmo-version.el (elmo-version): Up to 2.3.92.
6187
6188 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6189
6190         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
6191         elmo-update-number): Remove last period in "...done." message.
6192         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
6193         Ditto.
6194         * elmo-cache.el (elmo-cache-expire-by-size,
6195         elmo-cache-get-sorted-cache-file-list,
6196         elmo-cache-msgdb-create-as-numlist): Ditto.
6197         * elmo-dop.el (elmo-dop-save-pending-messages,
6198         (elmo-dop-flush-pending-append-operations): Ditto.
6199         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
6200         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
6201         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
6202         (elmo-localdir-pack-number): Ditto.
6203         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
6204         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
6205         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
6206         mime-write-entity-content): Ditto.
6207         * pldap.el (ldap-search-basic): Ditto.
6208
6209 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
6210
6211         * elmo-version.el (elmo-version): Up to 2.3.91.
6212
6213         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
6214         Only when filter is 'last'.
6215
6216         * elmo-util.el (elmo-condition-atom-regexp): New constant.
6217         (elmo-condition-parse-search-value): Use it.
6218         (elmo-read-search-condition-internal): Quote value only when
6219         it is not an atom.
6220
6221 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
6222
6223         * elmo2.el (elmo-generic-folder-diff): Fix.
6224
6225 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
6226
6227         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
6228         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
6229         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
6230         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
6231         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
6232         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
6233
6234 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
6235
6236         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
6237         extra-fields.
6238
6239 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
6240
6241         * elmo-version.el (elmo-version): Up to 2.3.90.
6242
6243         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
6244         (elmo-imap4-list-folder-important): Ditto.
6245
6246 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
6247
6248         * elmo-nntp.el (elmo-network-initialize-session): Fix.
6249
6250 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
6251
6252         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
6253
6254 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
6255
6256         * elmo-nntp.el (elmo-network-initialize-session):
6257         Add starttls negotiation.
6258
6259 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
6260
6261         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
6262         response.
6263         (elmo-network-setup-session): Define.
6264         Call `elmo-nntp-send-mode-reader' when session opened.
6265
6266 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
6267
6268         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
6269
6270 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
6271
6272         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
6273         an invalid SPACE character ahead of `SEARCH' command.  Move
6274         a valid SPACE character following `SEARCH' from conditional
6275         `format' arguments to control-strings.
6276
6277 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
6278
6279         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
6280         was succeeded.
6281
6282         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
6283
6284 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
6285
6286         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
6287         `w32-get-true-file-link-count' as t.
6288
6289         * elmo-imap4.el (elmo-imap4-read): Abolished.
6290         (Renamed to `elmo-read' and moved to elmo-util.el)
6291         All other related portions are changed.
6292
6293         * elmo-util.el (elmo-read): New function.
6294         (elmo-condition-parse-search-value): Use it.
6295
6296 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
6297
6298         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
6299
6300         * elmo-nntp.el (elmo-nntp-session): Define.
6301         (elmo-nntp-setting): Abolished.
6302         All other related portions are changed.
6303         (elmo-nntp-get-server-command): Changed argument.
6304         (elmo-nntp-set-server-command): Ditto.
6305         (elmo-nntp-xover-p): Ditto.
6306         (elmo-nntp-set-xover): Ditto.
6307         (elmo-nntp-listgroup-p): Ditto.
6308         (elmo-nntp-set-listgroup): Ditto.
6309         (elmo-nntp-list-active-p): Ditto.
6310         (elmo-nntp-set-list-active): Ditto.
6311         (elmo-nntp-xhdr-p): Ditto.
6312         (elmo-nntp-set-xhdr): Ditto.
6313         (elmo-nntp-flush-connection): Abolished.
6314         (elmo-nntp-get-connection): Abolished.
6315         (elmo-nntp-get-session): New function.
6316         (elmo-network-initialize-session): Defined.
6317         (elmo-network-authenticate-session): Ditto.
6318         (elmo-nntp-send-mode-reader): Changed argument.
6319         (elmo-nntp-send-command): Changed argument.
6320         All other related portions are changed.
6321         (elmo-nntp-read-response): Ditto.
6322         (elmo-nntp-read-raw-response): Ditto.
6323         (elmo-nntp-read-contents): Ditto.
6324         (elmo-nntp-read-body): Ditto.
6325         (elmo-nntp-goto-folder): Abolished.
6326         (elmo-nntp-select-group): New function.
6327         All other related portions are changed.
6328         (This function substitutes `elmo-nntp-goto-folder')
6329         (elmo-nntp-msgdb-create-by-header): Rewrite.
6330         (elmo-nntp-get-overview): Eliminated.
6331         (elmo-nntp-get-message): Ditto.
6332         (elmo-nntp-open-connection) Abolished.
6333         (elmo-nntp-read-msg): Rewrite.
6334         (elmo-nntp-post): Ditto.
6335         (elmo-nntp-send-data): Abolished.
6336         (elmo-nntp-send-buffer): New function.
6337         (elmo-nntp-send-data-line): Define as inline function.
6338         (elmo-nntp-get-folders-info-prepare): Use session as key.
6339         (elmo-nntp-groups-read-response): Changed argument.
6340         (elmo-nntp-retrieve-headers): Ditto.
6341         (elmo-nntp-msgdb-create-message): Ditto.
6342
6343         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
6344         when searching by 'since' or 'before'.
6345
6346 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6347
6348         * elmo-version.el (toplevel): Use product-version-as-string for set
6349         verstion-string, if defined.
6350
6351 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
6352
6353         * elmo-util.el: Doc fixes.
6354
6355 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6356
6357         * elmo-archive.el (toplevel): Use product-provide.
6358         * elmo-cache.el (toplevel): Ditto.
6359         * elmo-database.el (toplevel): Ditto.
6360         * elmo-date.el (toplevel): Ditto.
6361         * elmo-dop.el (toplevel): Ditto.
6362         * elmo-filter.el (toplevel): Ditto.
6363         * elmo-imap4.el (toplevel): Ditto.
6364         * elmo-internal.el (toplevel): Ditto.
6365         * elmo-localdir.el (toplevel): Ditto.
6366         * elmo-localnews.el (toplevel): Ditto.
6367         * elmo-maildir.el (toplevel): Ditto.
6368         * elmo-msgdb.el (toplevel): Ditto.
6369         * elmo-multi.el (toplevel): Ditto.
6370         * elmo-net.el (toplevel): Ditto.
6371         * elmo-nntp.el (toplevel): Ditto.
6372         * elmo-pipe.el (toplevel): Ditto.
6373         * elmo-pop3.el (toplevel): Ditto.
6374         * elmo-util.el (toplevel): Ditto.
6375         * elmo-vars.el (toplevel): Ditto.
6376         * elmo2.el (toplevel): Ditto.
6377         * mmelmo-1.el (toplevel): Ditto.
6378         * mmelmo-2.el (toplevel): Ditto.
6379         * mmelmo-imap4-1.el (toplevel): Ditto.
6380         * mmelmo-imap4-2.el (toplevel): Ditto.
6381         * mmelmo-imap4.el (toplevel): Ditto.
6382         * mmelmo.el (toplevel): Ditto.
6383
6384 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
6385
6386         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
6387         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
6388
6389 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
6390
6391         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
6392         before splitting.
6393         (elmo-multi-split-number-alist): Ditto.
6394
6395 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
6396
6397         * elmo-version.el: New file.  Use product.el.
6398         * elmo2.el: Add (require 'elmo-version).
6399         * elmo-vars.el (elmo-appname, elmo-version): Move to
6400         elmo-version.el
6401
6402 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
6403
6404         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
6405         `elmo-msgdb-expand-path'.
6406         (elmo-msgdb-load): Ditto.
6407         Abolished 2nd argument. If 1st argument is not string, treat as spec.
6408         (elmo-generic-list-folder-unread): Rewrite.
6409         (elmo-generic-list-folder-important): Changed argument.
6410         (elmo-list-folder-unread): Ditto.
6411         (elmo-list-folder-important): Ditto.
6412         (elmo-folder-diff): Rewrite.
6413         (elmo-generic-folder-diff): New function.
6414         (elmo-multi-get-number-alist-list): Abolished
6415         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
6416         (elmo-multi-folder-diff): Moved to elmo-multi.el
6417         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
6418
6419         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
6420         `elmo-msgdb-expand-path'.
6421         (elmo-pop3-msgdb-create-as-numlist): Ditto.
6422         (elmo-pop3-read-msg): Ditto.
6423         (elmo-pop3-delete-msgs): Ditto.
6424         (elmo-pop3-folder-diff): New alias.
6425
6426         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
6427         `elmo-msgdb-expand-path'.
6428         (elmo-pipe-list-folder-unread): Changed arguments.
6429         (elmo-pipe-list-folder-important): Ditto.
6430         (elmo-pipe-folder-diff): New alias.
6431
6432         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
6433         `elmo-msgdb-expand-path'.
6434         (elmo-nntp-max-of-folder): Ditto.
6435         (elmo-nntp-msgdb-create): Ditto.
6436         (elmo-nntp-delete-msgs): Ditto.
6437         (elmo-nntp-folder-diff): New alias.
6438
6439         * elmo-multi.el (elmo-multi-folder-diff): New function.
6440         (elmo-multi-split-mark-alist): Ditto.
6441         (elmo-multi-split-number-alist): Ditto.
6442         (elmo-multi-mark-alist-list): Abolished (Renamed to
6443         elmo-multi-split-mark-alist).
6444         (elmo-multi-list-folder-unread): Rewrite.
6445         (elmo-multi-list-folder-important): Ditto.
6446         (elmo-multi-list-folder): Set `spec' as 1st argument for
6447         `elmo-msgdb-expand-path'.
6448         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
6449         instead of `elmo-multi-get-number-alist-list'.
6450
6451         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
6452         If 1st argument is not string, treat as spec.
6453         (elmo-list-folder-by-location): Set `spec' as 1st argument for
6454         `elmo-msgdb-expand-path'.
6455         (elmo-msgdb-flist-load): Ditto.
6456         (elmo-msgdb-flist-save): Ditto.
6457         (elmo-msgdb-delete-path): Ditto.
6458         (elmo-msgdb-rename-path): Ditto.
6459
6460         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
6461         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6462         (elmo-maildir-delete-mark-msgs): Ditto.
6463         (elmo-maildir-msgdb-create): Ditto.
6464         (elmo-maildir-read-msg): Ditto.
6465         (elmo-maildir-delete-msgs): Ditto.
6466         (elmo-maildir-list-folder-subr): Ditto.
6467         (elmo-maildir-search): Ditto.
6468         (elmo-maildir-get-msg-filename): Ditto.
6469         (elmo-maildir-pack-number): Ditto.
6470         (elmo-maildir-folder-diff): New alias.
6471
6472         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
6473
6474         * elmo-localdir.el (elmo-localdir-list-folder-subr):
6475         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6476         (elmo-localdir-folder-diff): New alias.
6477
6478         * elmo-internal.el (elmo-internal-list-folder-subr):
6479         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6480         (elmo-internal-list-folder-by-location): Ditto.
6481         (elmo-internal-msgdb-create): Ditto.
6482         (elmo-internal-delete-msgs): Ditto.
6483         (elmo-internal-read-msg): Ditto.
6484         (elmo-internal-folder-diff): New alias.
6485
6486         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
6487         (elmo-imap4-list-folder): Set `spec' as 1st argument for
6488         `elmo-msgdb-expand-path'.
6489         (elmo-imap4-list-folder-unread): Changed arguments.
6490         (elmo-imap4-list-folder-important): Ditto.
6491
6492         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
6493         (elmo-filter-list-folder-important): Ditto.
6494         (elmo-filter-folder-diff): New function.
6495
6496         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
6497
6498         * elmo-cache.el (elmo-cache-list-folder):
6499         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6500         (elmo-cache-copy-msgs): Ditto.
6501         (elmo-cache-folder-diff): New alias.
6502
6503         * elmo-archive.el (elmo-archive-list-folder-subr):
6504         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
6505         (elmo-archive-get-archive-name): Ditto.
6506         (elmo-archive-create-file): Ditto.
6507         (elmo-archive-append-msg): Ditto.
6508         (elmo-archive-copy-msgs): Ditto.
6509         (elmo-archive-copy-msgs-froms): Ditto.
6510         (elmo-archive-get-msg-filename): Ditto.
6511         (elmo-archive-folder-diff): New alias.
6512
6513 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
6514
6515         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
6516         (elmo-pop3-stream-type-alist): New variable.
6517         (elmo-nntp-stream-type-alist): New variable.
6518
6519         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
6520         (elmo-kill-buffer): Ditto.
6521         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
6522         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
6523         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
6524         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
6525         (elmo-imap4-get-spec): Take into account
6526         `elmo-imap4-stream-type-alist'.
6527
6528 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
6529
6530         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
6531         (elmo-nntp-list-folders-get-cache): Ditto.
6532
6533 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
6534
6535         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
6536         character before 'uid'.
6537
6538 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
6539
6540         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
6541
6542         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
6543
6544         * elmo-util.el (elmo-number-set-member): New function.
6545         (elmo-number-set-append-list): Ditto.
6546         (elmo-number-set-append): Ditto.
6547
6548         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
6549         Use `elmo-number-set-member'.
6550         (elmo-living-messages): Ditto.
6551         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
6552         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
6553
6554         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
6555         (elmo-imap4-add-to-cont-list): Abolished.
6556         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
6557         instead of elmo-imap4-add-to-cont-list.
6558
6559         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
6560         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
6561
6562         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
6563
6564 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
6565
6566         * elmo-util.el (elmo-condition-parse-search-value):
6567         Fixed date parsing.
6568
6569 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
6570
6571         * elmo-util.el (elmo-condition-find-key-internal): New function.
6572         (elmo-condition-find-key): Ditto.
6573
6574         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
6575         (elmo-msgdb-search-internal): Ditto.
6576         (elmo-msgdb-search): Ditto.
6577
6578 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
6579
6580         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
6581         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
6582
6583         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
6584         (elmo-nntp-search-primitive): Fixed problem when condition is
6585         'unmatch'.
6586
6587         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
6588
6589         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
6590         (elmo-nntp-xhdr-p): New macro.
6591         (elmo-nntp-set-xhdr): Ditto.
6592         (elmo-nntp-parse-xhdr-response): New function.
6593         (elmo-nntp-retrieve-field): Ditto.
6594         (elmo-nntp-search-primitive): Ditto.
6595         (elmo-nntp-search): Implemented.
6596
6597         * elmo-date.el (elmo-date-make-sortable-string): New macro.
6598
6599         * elmo-archive.el (elmo-archive-search): Set all number list to
6600         `elmo-archive-field-condition-match'
6601
6602         * elmo-localdir.el (elmo-localdir-search): Likewise.
6603
6604         * elmo-maildir.el (elmo-maildir-search): Likewise.
6605
6606 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
6607
6608         * elmo-msgdb.el (elmo-living-messages): New function.
6609         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
6610         * elmo-cache.el (elmo-cache-list-folder): Ditto.
6611         * elmo-dop.el (elmo-dop-list-folder): Ditto.
6612         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
6613         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
6614         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
6615         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
6616         * elmo-multi.el (elmo-multi-list-folder): Ditto.
6617         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
6618         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
6619         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
6620
6621 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
6622
6623         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
6624
6625         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
6626
6627         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
6628
6629         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
6630         arguments for `SEARCH' command.
6631         (elmo-imap4-parse-string): Set `POS' argument for char-after.
6632         All other related portions are changed.
6633
6634         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
6635
6636         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
6637         (elmo-list-folder-unread): Rewrite.
6638         (elmo-list-folder-important): Ditto.
6639
6640         * elmo-util.el (elmo-filter-get-spec): Rewrite.
6641         (elmo-condition-parse-error): New inline function.
6642         (elmo-read-search-condition): New function.
6643         (elmo-read-search-condition-internal): Ditto.
6644         (elmo-parse-search-condition): Rewrite.
6645         (elmo-condition-parse): New function.
6646         (elmo-condition-parse-or-expr): Ditto.
6647         (elmo-condition-parse-and-expr): Ditto.
6648         (elmo-condition-parse-primitive): Ditto.
6649         (elmo-condition-parse-search-value): Ditto.
6650         (elmo-buffer-field-primitive-condition-match): Ditto.
6651         (elmo-buffer-field-condition-match): Rewrite.
6652         (elmo-file-field-condition-match): Ditto.
6653
6654         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
6655         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
6656
6657         * elmo-internal.el (elmo-internal-search): Set `number' and
6658         `number-list' argument of `elmo-file-field-condition-match'.
6659
6660         * elmo-maildir.el (elmo-maildir-search): Ditto.
6661
6662         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
6663         `msgdb' as argument instead of `mark-alist'.
6664         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
6665         `overview'.
6666
6667         * elmo-multi.el: Likewise.
6668
6669         * elmo-pipe.el: Likewise.
6670
6671         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
6672         (elmo-imap4-search-internal): Rewrite.
6673         (elmo-imap4-search): Ditto.
6674
6675         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
6676         (elmo-filter-list-folder-unread): Ditto.
6677         (elmo-filter-list-folder-important): Ditto.
6678         (elmo-filter-search): Rewrite.
6679
6680         * elmo-cache.el (elmo-cache-search-all): Set `number' and
6681         `number-list' argument of `elmo-file-field-condition-match'.
6682         (elmo-cache-search): Ditto.
6683
6684         * elmo-localdir.el: Likewise.
6685
6686         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
6687         number-list and pass it to `elmo-buffer-field-condition-match'.
6688         (elmo-archive-field-condition-match): Pass `number-list' to
6689         `elmo-archive-field-condition-match'
6690
6691 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
6692
6693         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
6694         `listgroup'.
6695
6696         * elmo2.el (elmo-folder-diff-async-callback): New variable.
6697         (elmo-folder-diff-async-callback-data): Ditto.
6698         (elmo-folder-diff-async): New function.
6699
6700         * elmo-net.el (elmo-network-session-name-prefix): New variable.
6701         (elmo-network-session-cache-key): Use it as a prefix of the session
6702         name.
6703         (elmo-network-open-session): Ditto.
6704
6705         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
6706         (elmo-imap4-status-callback-data): Ditto.
6707         (elmo-imap4-server-diff-async-callback): New variable.
6708         (elmo-imap4-server-diff-async-callback-data): Ditto.
6709         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
6710         `elmo-imap4-status-callback-data'.
6711         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
6712         `elmo-imap4-status-callback-data' as nil.
6713         (elmo-imap4-server-diff): Ditto.
6714         (elmo-imap4-server-diff-async-callback-1): New function.
6715         (elmo-imap4-server-diff-async): Ditto.
6716         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
6717
6718 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
6719
6720         * elmo-util.el (elmo-list-delete): Doc fix.
6721         (elmo-delete-lists): Abolish.
6722         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
6723         instead of `elmo-delete-lists'.
6724
6725 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
6726
6727         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
6728         before `sort'.
6729
6730 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
6731
6732         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
6733         `elmo-imap4-literal-subr'.
6734         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
6735         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
6736
6737 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
6738
6739         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
6740         (elmo-archive-list-folder): Fix.
6741         (elmo-archive-max-of-folder): Fix.
6742
6743 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
6744
6745         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
6746          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
6747         (elmo-localdir-append-msg): Ditto.
6748         (elmo-localdir-list-folder): Fix for `nonsort'.
6749         (elmo-localdir-list-folder-subr): Fix for `killed'.
6750         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
6751         (elmo-maildir-list-folder-subr): Ditto.
6752         * elmo-archive.el (elmo-archive-list-folder): Ditto.
6753         (elmo-archive-list-folder-subr): Ditto.
6754         * elmo-internal.el (elmo-internal-list-folder): Ditto.
6755         (elmo-internal-list-folder-subr): Ditto.
6756
6757 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
6758
6759         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
6760
6761 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
6762
6763         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
6764
6765 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
6766
6767         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
6768         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
6769
6770         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
6771         before greeting.
6772         (elmo-imap4-read-part): Use "body.peek" to fetch part.
6773         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
6774
6775 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
6776
6777         * mmelmo-imap4-2.el (mime-entity-children): Defined.
6778
6779         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
6780         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
6781         before STORE command.
6782
6783 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
6784
6785         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
6786
6787         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
6788         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
6789         of `response'.
6790         (elmo-imap4-list-folders): Removed unused local variable.
6791         (elmo-network-initialize-session): Ditto.
6792         (elmo-imap4-delete-msg-by-id): Ditto.
6793         (elmo-imap4-parse-fetch): Ditto.
6794         (elmo-imap4-copy-msgs): Ditto.
6795         Use `dst-spec' instead of `dst-folder'.
6796         (elmo-network-authenticate-session): Check authenticate type `plain'.
6797
6798 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
6799
6800         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
6801         garbage checking.
6802         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
6803         `elmo-imap4-response-value'.
6804         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
6805
6806 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
6807
6808         * elmo-imap4.el (elmo-imap4-send-command):
6809         Cause elmo-imap4-bye-error when current response is BYE.
6810         (elmo-imap4-arrival-filter): Changed greeting response value.
6811
6812         * elmo2.el (elmo-imap4-bye-error): Define.
6813
6814         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
6815         (elmo-imap4-server-diff): Ditto.
6816         (elmo-imap4-response-bye-p): New macro.
6817         (elmo-imap4-response-error-text): Get text from BYE response.
6818         (elmo-imap4-read-response): Return if BYE response.
6819         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
6820         (elmo-imap4-folder-exists-p): Ditto.
6821         (elmo-imap4-commit): Do nothing when different mailbox is selected.
6822         (elmo-imap4-parse-bye): New function.
6823         (elmo-imap4-parse-response): Remove needless let.
6824         Call `elmo-imap4-parse-bye'.
6825
6826 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
6827
6828         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
6829         the mailbox does not exist.
6830         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
6831
6832 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
6833
6834         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
6835
6836 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
6837
6838         * elmo-vars.el (elmo-search-mime-charset): Abolished.
6839
6840         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
6841         (elmo-network-initialize-session-buffer): Defined.
6842
6843         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
6844         Abolished.
6845         (mmelmo-imap4-get-mime-entity): Rewrite.
6846
6847         * elmo2.el (elmo-error): Capitalize error message.
6848
6849         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
6850         (elmo-network-session-buffer): New macro.
6851         (elmo-network-open-session): Use it.
6852
6853         * elmo-imap4.el: Rewrite.
6854
6855 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
6856
6857         * elmo-nntp.el (Toplevel): Require 'elmo-net.
6858
6859 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
6860
6861         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
6862         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
6863         (elmo-imap4-create-msgdb-from-overview-string): Use
6864         `elmo-msgdb-create-overview-from-buffer'.
6865
6866 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
6867
6868         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
6869         (elmo-imap4-default-hierarchy-delimiter): New variable.
6870         (elmo-imap4-list-folders): Use it.
6871
6872 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
6873
6874         * elmo-net.el (elmo-network-open-session): Add user and
6875         stream-type for process-buffer name.
6876
6877         * elmo-pop3.el (elmo-network-initialize-session): Call
6878         buffer-disable-undo.
6879
6880         * elmo-imap4.el (elmo-network-initialize-session):
6881         Set current-buffer as an argument for `buffer-disable-undo'.
6882
6883         * elmo-pop3.el (elmo-network-close-session): Don't use
6884         `process-live-p'.
6885
6886         * elmo-vars.el (elmo-default-pop3-authenticate-type):
6887         Set default as 'user.
6888
6889         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
6890
6891         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
6892         and `elmo-imap4-flush-connection'.
6893
6894         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
6895         (elmo-pop3-get-spec): Assume auth as symbol.
6896         (elmo-open-network-stream): Moved to `elmo-net'.
6897
6898         * elmo-pop3.el (toplevel): Require 'elmo-net.
6899         Define `sasl-cram-md5' to silence byte compilier.
6900         (elmo-pop3-connection-cache) Abolished.
6901         (elmo-pop3-authenticator-alist) New variable.
6902         (elmo-pop3-session): Define.
6903         (elmo-pop3-connection-get-process): Abolished.
6904         (elmo-pop3-connection-get-buffer): Ditto.
6905         (elmo-pop3-close-connection): Ditto.
6906         (elmo-pop3-flush-connection): Ditto.
6907         (elmo-pop3-get-connection): Ditto.
6908         (elmo-pop3-get-session): New function.
6909         (Replacement for `elmo-pop3-get-connection').
6910         All other related modules are changed.
6911         (elmo-network-close-session): Define.
6912         (elmo-pop3-send-command): Abolished argument `buffer'.
6913         All other related modules are changed.
6914         (elmo-pop3-read-response): Likewise.
6915         (elmo-pop3-open-connection): Abolished.
6916         (elmo-pop3-auth-user): New function.
6917         (elmo-pop3-auth-apop): Ditto.
6918         (elmo-pop3-auth-cram-md5): Ditto.
6919         (elmo-pop3-auth-scram-md5): Ditto.
6920         (elmo-pop3-auth-digest-md5): Ditto.
6921         (elmo-network-initialize-session): Define.
6922         (elmo-network-authenticate-session): Ditto.
6923         (elmo-network-setup-session): Ditto.
6924
6925         * elmo-imap4.el (toplevel): Require 'elmo-net.
6926         (elmo-imap4-session): Define.
6927         (elmo-imap4-connection-cache): Abolished.
6928         (elmo-imap4-password-key): Ditto.
6929         (elmo-imap4-flush-connection): Ditto.
6930         (elmo-imap4-get-connection): Ditto.
6931         All other related modules are changed.
6932         (elmo-imap4-get-session): New function
6933         (Replacement for `elmo-imap4-get-connection').
6934         (elmo-imap4-read-response): Abolished argument `buffer'.
6935         All other related modules are changed.
6936         (elmo-imap4-send-command): Likewise.
6937         (elmo-imap4-select-folder): Abolished.
6938         All other related modules are changed.
6939         (elmo-imap4-select-mailbox): New function.
6940         (Replacement for `elmo-imap4-select-folder').
6941         (elmo-imap4-auth-login): Simplify.
6942         (Assume current buffer as process buffer)
6943         (elmo-imap4-auth-cram-md5): Ditto.
6944         (elmo-imap4-auth-digest-md5): Ditto.
6945         (elmo-imap4-login): Ditto.
6946         (elmo-imap4-open-connection): Abolished.
6947         (elmo-imap4-open-connection-1): Abolished.
6948         (elmo-network-initialize-sessoin): Define.
6949         (elmo-network-authenticate-session): Ditto.
6950         (elmo-network-setup-session): Ditto.
6951
6952         * elmo-net.el: New module.
6953
6954 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
6955
6956         * elmo-util.el (elmo-define-error): New function.
6957
6958         * elmo2.el (elmo-error): Define.
6959         (elmo-open-error): Define.
6960         (elmo-authenticate-error): Define.
6961
6962         * elmo-imap4.el (elmo-imap4-error): Abolish.
6963         (elmo-imap4-error-type): Abolish.
6964         (elmo-imap4-error-process): Abolish.
6965         (elmo-imap4-error-message): Abolish
6966         (elmo-imap4-list-folders): Don't quote lambda.
6967         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
6968         (elmo-imap4-parse-namespace): Ditto.
6969         (elmo-imap4-open-connection): Rewrite.
6970         (elmo-imap4-open-connection-1): Simplified (authenticate only).
6971         (elmo-imap4-get-connection): Abolish local variable `result'.
6972
6973 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
6974
6975         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
6976         wrong-type-argument error when auth is nil.
6977
6978 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
6979
6980         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
6981         (elmo-default-nntp-stream-type): Ditto.
6982         (elmo-default-pop3-stream-type): Ditto.
6983         (elmo-network-stream-type-alist): Ditto.
6984         (elmo-default-imap4-ssl): Abolished.
6985         (elmo-default-nntp-ssl): Ditto.
6986         (elmo-default-pop3-ssl): Ditto.
6987
6988         * elmo-util.el: (toplevel): Removed needless requires.
6989         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
6990         (elmo-open-network-stream): Open network stream according to
6991         the value of `elmo-network-stream-type-alist'.
6992         (elmo-get-network-stream-type): New function.
6993         (elmo-network-stream-type-spec-string): New macro.
6994         (elmo-network-stream-type-symbol): Ditto.
6995         (elmo-network-stream-type-function): Ditto.
6996
6997         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
6998         network-stream-type. All other related portions are changed.
6999         (elmo-pop3-open-connection): Ditto.
7000
7001         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
7002         network-stream-type. All other related portions are changed.
7003
7004         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
7005         network-stream-type.All other related portions are changed.
7006         (elmo-imap4-error): New macro.
7007         (elmo-imap4-error-type): Ditto.
7008         (elmo-imap4-error-process): Ditto.
7009         (elmo-imap4-error-message): Ditto.
7010         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
7011         (elmo-imap4-auth-cram-md5): Ditto.
7012         (elmo-imap4-auth-digest-md5): Ditto.
7013         (elmo-imap4-login): Ditto.
7014         (elmo-imap4-open-connection): Remove password entry if authentication
7015         was in vain.
7016         (elmo-imap4-user-at-host): Abolished.
7017         (elmo-imap4-password-key): New buffer local variable.
7018         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
7019         using protocol, port, auth and stream-type.
7020
7021         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
7022
7023 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
7024
7025         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
7026
7027         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
7028
7029         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
7030         (elmo-imap4-authenticator-alist): New variable.
7031         (elmo-imap4-open-connection-1): Rename from
7032         elmo-imap4-open-connection.
7033         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
7034         only wraps elmo-imap4-open-connection-1.
7035         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
7036         user-at-host.
7037         (elmo-imap4-auth-login): New function.
7038         (elmo-imap4-auth-cram-md5): New function.
7039         (elmo-imap4-auth-digest-md5): New function.
7040         (elmo-imap4-login): New function.
7041
7042 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
7043
7044         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
7045         function `error'.
7046
7047 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
7048
7049         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
7050
7051 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
7052
7053         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
7054
7055 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
7056
7057         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
7058         for server responses, quote `*' regardless of where it appears.
7059
7060 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
7061
7062         * elmo-maildir.el (elmo-maildir-commit): New alias.
7063
7064 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
7065
7066         * elmo-util.el (elmo-display-progress):
7067                 Use `progress-feedback-with-label'.
7068
7069 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
7070
7071         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
7072         (elmo-imap4-non-atom-char-regex): Ditto.
7073         (elmo-imap4-non-text-char-regex): Ditto.
7074         (elmo-imap4-literal-threshold): Ditto.
7075         (elmo-imap4-atom-p): New function.
7076         (elmo-imap4-quotable-p): Ditto.
7077         (elmo-imap4-nil): Ditto.
7078         (elmo-imap4-atom): Ditto.
7079         (elmo-imap4-quoted): Ditto.
7080         (elmo-imap4-literal-subr): Ditto.
7081         (elmo-imap4-literal): Ditto.
7082         (elmo-imap4-buffer-literal): Ditto.
7083         (elmo-imap4-string-subr): Ditto.
7084         (elmo-imap4-string): Ditto.
7085         (elmo-imap4-buffer-string): Ditto.
7086         (elmo-imap4-astring-subr): Ditto.
7087         (elmo-imap4-astring): Ditto.
7088         (elmo-imap4-buffer-astring): Ditto.
7089         (elmo-imap4-nstring): Ditto.
7090         (elmo-imap4-buffer-nstring): Ditto.
7091         (elmo-imap4-mailbox): New alias.
7092         (elmo-imap4-field-body): Ditto.
7093         (elmo-imap4-userid): Ditto.
7094         (elmo-imap4-password): Ditto.
7095         (elmo-imap4-format-quoted): New function.
7096         (elmo-imap4-send-command): Rewritten.  Accept a list of command
7097         arguments and handle "atom", "quoted" and "literal" string here.
7098         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
7099         `elmo-imap4-send-command'.
7100         (elmo-imap4-folder-exists-p): Likewise.
7101         (elmo-imap4-create-folder): Likewise.
7102         (elmo-imap4-delete-folder): Likewise.
7103         (elmo-imap4-rename-folder): Likewise.
7104         (elmo-imap4-max-of-folder): Likewise.
7105         (elmo-imap4-check-validity): Likewise.
7106         (elmo-imap4-sync-validity): Likewise.
7107         (elmo-imap4-server-diff): Likewise.
7108         (elmo-imap4-select-folder): Likewise.
7109         (elmo-imap4-copy-msgs): Likewise.
7110         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
7111         (elmo-imap4-mark-set-on-msgs): Likewise.
7112         (elmo-imap4-read-part): Likewise.
7113         (elmo-imap4-read-msg): Likewise.
7114         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
7115         `elmo-imap4-password' for `elmo-imap4-send-command'.
7116         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
7117         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
7118         `elmo-imap4-buffer-literal'.
7119         (elmo-imap4-append-msg): Likewise.
7120
7121         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
7122         `delete' for removing dead connection from the connection cache.
7123         Move deletion of the process buffer after that.
7124         (elmo-imap4-list): Change `defsubst' to `defun'.
7125         (elmo-imap4-commit): Make error message verbose.
7126         (elmo-imap4-search): Ditto.
7127         (elmo-imap4-list): Ditto.
7128         (elmo-imap4-select-folder): Ditto.
7129         (elmo-imap4-copy-msgs): Ditto.
7130         (elmo-imap4-delete-msg-by-id): Ditto.
7131         (elmo-imap4-append-msg-by-id): Ditto.
7132         (elmo-imap4-append-msg): Ditto.
7133
7134 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
7135
7136         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
7137         when dired is used on XEmacs.
7138
7139 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
7140
7141         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
7142         instead of `append'.
7143         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
7144         `elmo-plugged-p' directly.
7145         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
7146         of `elmo-plugged-p' directly.
7147
7148         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
7149         Eliminate unused variable.  Use `memq' for checking a process status.
7150         Use `cons' instead of `append' for updating the connection cache.
7151         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
7152         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
7153
7154 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
7155
7156         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
7157         `elmo-imap4-read-point' exactly.
7158
7159         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
7160         the local variable `folder' to `mailbox'.
7161         Rename the argument `fld' to `folder'.
7162
7163 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
7164
7165         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
7166         * elmo-imap4.el (elmo-imap4-commit): Ditto.
7167
7168 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
7169
7170         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
7171         (elmo-pop3-number-uidl-hash): New buffer-local variable.
7172         (elmo-pop3-uidl-number-hash): Ditto.
7173         (elmo-pop3-size-hash): Ditto.
7174         (elmo-pop3-uidl-done): Ditto.
7175         (elmo-pop3-list-done): Ditto.
7176         (elmo-pop3-connection-get-process): New defmacro.
7177         (elmo-pop3-connection-get-buffer): Ditto.
7178         (elmo-pop3-close-connection): Delete buffer and process.
7179         (elmo-pop3-flush-connection): Don't delete buffer and process.
7180         (elmo-pop3-get-connection): Added optional argument `if-exists'.
7181         Setup UIDL and size hash.
7182         (elmo-pop3-send-command-no-erase): Deleted
7183         (elmo-pop3-send-command): Added optional argument `no-erase'.
7184         (elmo-pop3-parse-uidl-response): New function.
7185         (elmo-pop3-parse-list-response): Set size hash.
7186         (elmo-pop3-list-location): New function.
7187         (elmo-pop3-list-by-uidl-subr): Ditto.
7188         (elmo-pop3-list-by-list): Ditto.
7189         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
7190         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
7191         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
7192         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
7193         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
7194         Use uidl.
7195         (elmo-pop3-uidl-to-number): New function.
7196         (elmo-pop3-number-to-uidl): Ditto.
7197         (elmo-pop3-number-to-size): Ditto.
7198         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
7199         Set number by use of uidl.
7200         (elmo-pop3-msgdb-create-message): Likewise.
7201         Set size, loc-alist in msgdb.
7202         (elmo-pop3-read-msg): Set number by use of uidl.
7203         Added optional argument `msgdb'.
7204         (elmo-pop3-delete-msg): Ditto.
7205         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
7206         (elmo-pop3-commit): Close connection.
7207
7208         * elmo-pipe.el (elmo-pipe-max-of-folder):
7209         Bind `elmo-pop3-use-uidl' as nil.
7210         (elmo-pipe-drain): Ditto.
7211         Call `elmo-commit'.
7212
7213         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
7214         (elmo-msgdb-overview-entity-set-size): New defsubst.
7215
7216 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
7217
7218         * elmo-vars.el (elmo-use-killed-list): New variable
7219         (Renamed from `elmo-nntp-use-killed-list').
7220         (elmo-nntp-use-killed-list): Eliminated.
7221
7222         * elmo-msgdb.el (elmo-msgdb-expand-path):
7223         Changed expanding msgdb path for elmo-multi.
7224
7225         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
7226         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
7227         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
7228         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
7229         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
7230         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
7231         (toplevel): Deleted time-stamp line.
7232
7233         * elmo2.el (elmo-clear-killed ): Defined as function
7234         (Abolished defining as a backend function).
7235         All other related modules are changed.
7236
7237 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
7238
7239         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
7240
7241 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
7242
7243         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
7244
7245 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
7246
7247         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
7248
7249 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
7250
7251         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
7252         asynchronous folder check.
7253
7254         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
7255
7256         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
7257         `elmo-nntp-use-killed-list'.
7258         (elmo-nntp-list-folder): Use killed list.
7259         (elmo-nntp-max-of-folder): Ditto.
7260         (elmo-nntp-msgdb-create): Set killed list.
7261
7262         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
7263
7264         * elmo2.el (elmo-clear-killed): New backend function.
7265         All other related modules are changed.
7266
7267 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
7268
7269         * elmo-util.el (elmo-imap4-spec-folder): Use
7270         `elmo-imap4-spec-mailbox'; Mark as obsolete.
7271         All callers changed.
7272
7273 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
7274
7275         * mmelmo-2.el (initialize-instance):
7276         Use `mime-buffer-entity-buffer-internal' instead of
7277         `mime-entity-buffer'.
7278
7279         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
7280         (mime-entity-body): Implemented.
7281         (mime-goto-header-start-point): Deleted.
7282         (mime-goto-body-end-point): Ditto.
7283         (mime-entity-point-min): Ditto.
7284         (mime-entity-point-max): Ditto.
7285         (mime-entity-children): Ditto.
7286         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
7287         instead of `mime-entity-buffer'.
7288         (mime-entity-header-buffer): Ditto.
7289         (mime-entity-body-buffer): Ditto.
7290         (mime-write-entity-content): Ditto.
7291
7292         * pldap.el (ldap-static-if): New macro.
7293         (toplevel): Use it instead of `static-if'.
7294
7295 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
7296
7297         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
7298         included in `attrs' argument.
7299
7300 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
7301
7302         * elmo-util.el (elmo-get-passwd): Use old backquote style.
7303
7304         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
7305         (ldap-ldif-safe-init-char-regexp): Ditto.
7306         (ldap-ldif-safe-string-regexp): Ditto.
7307         (ldap/ldif-safe-string-p): New macro.
7308         (ldap/ldif-insert-field): Ditto.
7309         (ldap-modify): Use it.
7310         (ldap-add): Ditto.
7311         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
7312         (ldap-decode-attribute): Decode only when `attr' is consp.
7313         (ldap-delete): Bind `ret'.
7314         (toplevel): Require 'cl at compile time.
7315         Removed (require 'poe) and (require 'std11).
7316         (pldap-version): Eliminated.
7317         (ldap-search-basic): Removed auth and dn binding.
7318         (ldap-ldif-field-name-regexp): New constant.
7319         (ldap-ldif-field-head-regexp): Ditto.
7320         (ldap-ldif-next-field-head-regexp): Ditto.
7321         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
7322         (ldap/field-end): New function.
7323         (ldap/field-body): Use it.
7324         (ldap/collect-field): Ditto.
7325         (ldap-search-basic): Use `ldap/field-body'.
7326
7327 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
7328
7329         * pldap.el (ldap-default-attribute-encoder): New user option.
7330         (ldap/field-body): Decode base64 string.
7331         (ldap/collect-field): Ditto.
7332         (ldap-encode-attribute): New function.
7333         (ldap-add-entries): Use it.
7334         (ldap-modify-entries): Ditto.
7335         (ldap-search-entries): Enclosed decoding function with
7336         `with-temp-buffer' and set as unibyte.
7337         (ldap-search-basic): Set process buffer as unibyte.
7338
7339         * elmo-util.el (elmo-folder-identical-system-p):
7340         Eliminated name space checking.
7341
7342         * pldap.el: New module.
7343         toplevel: Changed condition to detect built-in ldap feature.
7344         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
7345         (ldap-add): Added error handling.
7346         (ldap-modify): Ditto.
7347         (ldap-delete): Ditto.
7348
7349 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
7350
7351         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
7352         Initialize local variables with `let'.  Inline a temporary
7353         variable for the progress percentage.  Sort `setq' to reduce
7354         function call in the while-loop.
7355
7356         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
7357         into the conditional branch.
7358
7359 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
7360
7361         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
7362         Move a conditional out of the while-loop.
7363
7364 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7365
7366         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
7367         elmo-msgdb-overview-get-entity-by-number.
7368         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
7369         throw.
7370
7371 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
7372
7373         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
7374         the local variable for a packed number self descriptively.
7375
7376 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7377
7378         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
7379         * elmo-localdir.el (elmo-localdir-pack-number): Use
7380         `elmo-msgdb-overview-get-entity' instead of
7381         `elmo-msgdb-overview-get-entity-by-number'.
7382         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
7383         (elmo-msgdb-search-overview-entity): Removed.
7384         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
7385         by message-id or number.
7386         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
7387         instead of `elmo-msgdb-overview-get-entity-by-number'.
7388
7389 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7390
7391         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
7392         non-nil, use hash table for overview.
7393         (elmo-hash-maximum-size): New variable.
7394         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
7395         (elmo-msgdb-make-overview-hashtb): New function.
7396         (elmo-msgdb-clear-overview-hashtb): New function.
7397         (elmo-clear-hash-val): New macro.
7398         All other related modules are changed.
7399
7400 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
7401
7402         * elmo2.el (elmo-move-msgs): If there's other message with
7403         same message-id, don't use cache.
7404
7405 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
7406
7407         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
7408         number is already packed.
7409
7410 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
7411
7412         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
7413
7414 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7415
7416         * elmo-vars.el (elmo-display-progress-threshold): New variable.
7417         All other related modules are changed.
7418
7419 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
7420
7421         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
7422         of refiling failure on Maildir.
7423
7424 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7425
7426         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
7427         decoded mime-charset with cache.
7428         (elmo-msgdb-overview-entity-get-from): Ditto.
7429         (elmo-msgdb-overview-entity-get-subject): Ditto.
7430         * elmo-vars.el (elmo-use-decoded-cache): New variable.
7431
7432 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
7433
7434         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
7435         (elmo-remove-passwd): Fill password with 0 before erase.
7436         * elmo-vars.el (elmo-passwd-life-time): New variable.
7437
7438 \f
7439 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
7440
7441         * elmo-cache.el (elmo-buffer-cache-add):
7442         Set message cache buffer as unibyte.
7443
7444 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
7445
7446         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
7447         become nil.
7448
7449 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
7450
7451         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
7452         when display is finished.
7453         (elmo-nntp-msgdb-create): Ditto.
7454         (elmo-nntp-groups-read-response): Ditto.
7455         (elmo-nntp-retrieve-headers): Ditto.
7456         (elmo-nntp-msgdb-create-message): Ditto.
7457         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
7458         (elmo-pop3-msgdb-create-message): Ditto.
7459
7460 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
7461
7462         * elmo-maildir.el (elmo-maildir-msgdb-create):
7463         Use `elmo-msgdb-sort-by-date'.
7464
7465 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
7466
7467         * elmo2.el (elmo-read-msg-no-cache):
7468         Eliminated arguments after `outbuf'.
7469         Don't use cache even if it exists.
7470         (elmo-read-msg): Don't pass arguments after `outbuf' to
7471         `elmo-read-msg-no-cache'.
7472
7473 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
7474
7475         * elmo-archive.el (elmo-archive-list-folders):
7476         Use `file-name-directory' if base folder does not exist.
7477
7478 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
7479
7480         * elmo-archive.el (elmo-archive-list-folders): Don't use
7481         `file-name-directory'.
7482
7483 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
7484
7485         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
7486         If `force' is non-nil, try flushing all operation queues.
7487
7488 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
7489
7490         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
7491         as-binary-process.
7492
7493 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
7494
7495         * elmo-util.el (elmo-display-progress): Fixed.
7496
7497 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
7498
7499         * elmo-util.el (elmo-display-progress): New function.
7500         All other related modules are changed.
7501