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