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