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