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