2001-08-20 Tatsuya Kinoshita <tats@iris.ne.jp>
[elisp/wanderlust.git] / elmo / ChangeLog
1 2001-08-20  Tatsuya Kinoshita <tats@iris.ne.jp>
2
3         * elmo-pop3.el (elmo-pop3-parse-uidl-response): Allow multiple
4         space delimiter for uidl response.
5
6 2001-08-20  Yuuichi Teranishi  <teranisi@gohome.org>
7
8         * elmo-vars.el (elmo-use-semi): Eliminated.
9
10         * elmo-util.el (elmo-string-assoc-all): New function.
11
12 2001-08-16  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
13
14         * elmo-mime.el (elmo-mime-display-as-is-internal): Put text
15         property 'mime-preview-situation for `mime-preview-quit'.
16
17 2001-08-15  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
18
19         * elmo.el (elmo-message-fetch-with-cache-process): Call
20         elmo-message-fetch-internal instead of causing an error when fetch
21         strategy is 'entire but only 'section cache is available.
22
23 2001-08-15  Yuuichi Teranishi  <teranisi@gohome.org>
24
25         * elmo-version.el (elmo-version): Up to 2.7.2.
26
27         * elmo.el (elmo-generic-folder-append-messages): Make 
28         fetch-strategy with `use-cache'.
29
30         * elmo-dop.el (elmo-dop-queue-method-name-alist): New variable.
31         (elmo-dop-queue-method-name): New macro.
32
33 2001-08-03  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
34
35         * elmo-archive.el (elmo-archive-get-archive-name): Fixed
36         unbalanced parenthesis.
37
38 2001-08-03  YAMASHITA Junji <ysjj@unixuser.org>
39
40         * elmo-localdir.el (elmo-folder-rename-internal): Fixed typo.
41
42 2001-08-03  Yuuichi Teranishi  <teranisi@gohome.org>
43
44         * elmo-archive.el (elmo-archive-get-archive-name): Fixed logic.
45         (Advised by YAMASHITA Junji <ysjj@unixuser.org>.)
46
47 2001-08-02  Yuuichi Teranishi  <teranisi@gohome.org>
48
49         * elmo-shimbun.el (elmo-folder-msgdb-create): Bind unbound
50         local variables.
51
52 2001-07-30  Yuuichi Teranishi  <teranisi@gohome.org>
53
54         * elmo-shimbun.el (elmo-shimbun-use-cache): New user option.
55         (elmo-message-use-cache-p): Define.
56         (elmo-folder-msgdb-create): Treat cache.
57
58 2001-07-28  Kenichi OKADA  <okada@opaopa.org>
59
60         * elmo-nntp.el (elmo-network-initialize-session): Call
61         `elmo-nntp-send-mode-reader'.
62         (elmo-network-setup-session): Remove `elmo-nntp-send-mode-reader'.
63
64 2001-07-26  Yuuichi Teranishi  <teranisi@gohome.org>
65
66         * elmo-shimbun.el (elmo-shimbun-index-range-alist): Changed to regexp
67         alist.
68         (elmo-folder-initialize): Use elmo-string-matched-assoc instead of
69         assoc.
70
71         * elmo-net.el (elmo-network-get-session): Set stream-type argument
72         for `elmo-plugged-p'.
73         (elmo-open-network-stream): Fixed stream-type argument.
74
75 2001-07-25  Yuuichi Teranishi  <teranisi@gohome.org>
76
77         * elmo-archive.el (elmo-archive-get-archive-name): Cause an error when
78         unknown archive type is specified.
79
80 2001-07-23  Yuuichi Teranishi  <teranisi@gohome.org>
81
82         * elmo-shimbun.el (elmo-folder-open-internal): Fixed.
83
84         * elmo.el (elmo-generic-folder-open): Bind inhibit-quit as t
85         while loading msgdb.
86
87         * elmo-shimbun.el (elmo-shimbun-folder-setup): New function.
88         (elmo-folder-open-internal): Rewrite.
89
90 2001-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
91
92         * elmo-mime.el (elmo-mime-display-as-is-internal):
93         Adjust buffer-multibyte status.
94
95 2001-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
96
97         * elmo.el (elmo-msgdb-search): Use elmo-condition-in-msgdb-p instead
98         of elmo-condition-find-key.
99
100         * elmo-util.el (elmo-condition-in-msgdb-p-internal): New function.
101         (elmo-condition-in-msgdb-p): Ditto.
102         (elmo-read-search-condition-internal): Don't set REQUIRE-MATCH
103         argument.
104
105 2001-07-12  Yuuichi Teranishi  <teranisi@gohome.org>
106
107         * elmo-pipe.el (elmo-folder-pack-numbers): Define.
108
109 2001-07-05  Yuuichi Teranishi  <teranisi@gohome.org>
110
111         * elmo-imap4.el (elmo-imap4-find-next-line): Fixed
112         label for elmo-display-progress.
113
114 2001-07-02  Yuuichi Teranishi  <teranisi@gohome.org>
115
116         * elmo.el (elmo-folder-clear): New method.
117         (elmo-folder-clear): Define.
118         (elmo-folder-synchronize): Call `elmo-folder-clear'.
119
120         * elmo-shimbun.el (elmo-folder-check): Rewrite.
121         (elmo-folder-clear): Define.
122
123         * elmo-map.el (elmo-folder-clear): Define.
124
125         * elmo-version.el (elmo-version): Up to 2.7.1.
126
127 2001-06-26  Yuuichi Teranishi  <teranisi@gohome.org>
128
129         * elmo.el (elmo-folder-synchronize): Return list of nil when no
130         updates.
131
132 2001-06-21  Yuuichi Teranishi  <teranisi@gohome.org>
133
134         * elmo.el (elmo-generic-folder-append-messages): Fixed logic.
135         (Detected by NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>)
136
137 2001-06-20  Yuuichi Teranishi  <teranisi@gohome.org>
138
139         * elmo-util.el (elmo-get-network-stream-type): Moved to elmo-net.el.
140
141         * elmo-net.el (elmo-get-network-stream-type): Moved from elmo-util.el
142         and re-written.
143
144         * elmo-imap4.el (elmo-folder-initialize): Use
145         elmo-get-network-stream-type.
146
147         * elmo-nntp.el (elmo-folder-initialize): Ditto.
148
149         * elmo-pop3.el (elmo-folder-initialize): Ditto.
150
151 2001-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
152
153         * elmo.el (elmo-message-encache): Set unread argument for
154         elmo-message-fetch.
155
156         * elmo-shimbun.el (elmo-dop): Require 'elmo-dop.
157
158         * elmo.el (elmo-net-port-info): New method.
159
160         * elmo-shimbun.el (elmo-net-port-info): Define.
161         (elmo-message-encache): Ditto.
162
163         * elmo-net.el (elmo-net-port-info): Define as method.
164
165         * elmo.el (elmo-generic-folder-append-messages): Find cache file in
166         unplugged status when elmo-enable-disconnected-operation is t.
167
168         * elmo-dop.el (elmo-dop-spool-folder-append-buffer): Check existence
169         of spool folder before checking new number.
170
171 2001-06-18  Yuuichi Teranishi  <teranisi@gohome.org>
172
173         * elmo-pop3.el (elmo-network-close-session): Removed 3rd argument.
174         (elmo-network-setup-session): Ditto.
175         (elmo-message-fetch-plugged): Ditto.
176         (elmo-pop3-send-command): Don't call elmo-pop3-lock.
177         (elmo-network-initialize-session): Ditto.
178         (elmo-pop3-read-response): Abolish 3rd argument.
179         (elmo-pop3-read-response): Don't call elmo-pop3-unlock.
180         (elmo-pop3-read-contents): Ditto.
181         (elmo-pop3-read-body): Ditto.
182         (elmo-folder-status): Call elmo-folder-close.
183         (elmo-pop3-lock): Abolish.
184         (elmo-pop3-unlock): Ditto.
185         (elmo-pop3-locked-p): Ditto.
186         (elmo-folder-check): Don't call elmo-pop3-locked-p.
187
188 2001-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
189
190         * elmo-version.el (elmo-version): Up to 2.7.0.
191
192         * elmo-pop3.el (elmo-pop3-debug): New variable.
193         (elmo-pop3-debug-inhibit-logging): Ditto.
194         (elmo-pop3-debug): New function.
195         (elmo-pop3-send-command): Call elmo-pop3-debug.
196         (elmo-pop3-read-response): Added keep-lock optional argument;
197         Don't unlock if keep-lock is non-nil.
198         (elmo-pop3-process-filter): Call elmo-pop3-debug.
199         (elmo-network-authenticate-session): Bind
200         elmo-pop3-debug-inhibit-logging as t.
201         (elmo-network-setup-session): Call elmo-pop3-read-response with
202         keep-lock argument.
203         (elmo-pop3-read-msg): Ditto.
204         (elmo-pop3-locked-p): Call elmo-pop3-debug.
205         (elmo-pop3-read-body): Call elmo-pop3-unlock.
206         (elmo-network-initialize-session): Call elmo-pop3-lock.
207         (elmo-folder-close-internal): Don't clear location-alist slot.
208         (elmo-folder-check): Clear location-alist slot.
209
210 2001-06-13  Yuuichi Teranishi  <teranisi@gohome.org>
211
212         * elmo-pop3.el (elmo-pop3-lock): New buffer local variable.
213         (elmo-pop3-send-command): Call elmo-pop3-lock.
214         (elmo-pop3-read-response): Call elmo-pop3-unlock.
215         (elmo-pop3-read-contents): Ditto.
216         (elmo-pop3-lock): New function.
217         (elmo-pop3-unlock): Ditto.
218         (elmo-pop3-locked-p): Ditto.
219         (elmo-folder-check): Don't delete process if elmo-pop3-locked-p
220         returns t.
221
222 2001-06-11  Yuuichi Teranishi  <teranisi@gohome.org>
223
224         * elmo-shimbun.el (elmo-shimbun-msgdb-to-headers): Inverted logic.
225
226         * elmo-util.el (elmo-file-field-primitive-condition-match):
227         New inline function (Don't fetch file content if "first" or "last").
228         (elmo-file-field-condition-match): Use
229         elmo-file-field-primitive-condition-match.
230
231         * elmo-localdir.el (elmo-folder-search): Speed up simple "last" and
232         "first".
233
234         * elmo-pop3.el (elmo-pop3-process-filter): Don't use floor nor float.
235         (elmo-message-fetch-plugged): Fixed.
236
237         * elmo-imap4.el (elmo-imap4-find-next-line): Ditto.
238
239 2001-06-10  Yuuichi Teranishi  <teranisi@gohome.org>
240
241         * elmo.el (elmo-folder-move-messages): Bind
242         elmo-inhibit-display-retrieval-progress as t while moving messages.
243
244         * elmo-vars.el (elmo-display-retrieval-progress-threshold):
245         New variable.
246         (elmo-inhibit-display-retrieval-progress): Ditto.
247
248         * elmo-pop3.el (elmo-pop3-process-filter): Use elmo-display-progress
249         for retrieval progress;
250         Don't display progress when total buffer size is smaller than
251         elmo-display-retrieval-progress-threshold.
252         (elmo-message-fetch-plugged): Don't display progress when
253         elmo-inhibit-display-retrieval-progress is non-nil.
254
255         * elmo-imap4.el (elmo-imap4-find-next-line): Use elmo-display-progress
256         for retrieval progress;
257         Don't display progress when literal size is smaller than
258         elmo-display-retrieval-progress-threshold.
259         (elmo-imap4-message-fetch): Don't display progress when
260         elmo-inhibit-display-retrieval-progress is non-nil.
261
262 2001-06-07  Yuuichi Teranishi  <teranisi@gohome.org>
263
264         * elmo-imap4.el (elmo-imap4-display-literal-progress): New variable.
265         (elmo-imap4-find-next-line): Display progress whille literal fetching.
266         (elmo-imap4-message-fetch): Likewise.
267
268         * elmo-shimbun.el (elmo-shimbun-default-index-range): New user option.
269         (elmo-shimbun-index-range-alist): Ditto.
270         (elmo-shimbun-use-entire-index): Abolish.
271         (shimbun-mua-use-entire-index): Ditto.
272         (elmo-shimbun-folder): Added new slot `range'.
273         (elmo-folder-initialize): Setup slot `range'.
274
275 2001-06-06  Yuuichi Teranishi  <teranisi@gohome.org>
276
277         * elmo-shimbun.el (elmo-shimbun-parse-time-string): New function.
278         (elmo-shimbun-msgdb-to-headers): Added `expire-days' argument.
279         (elmo-shimbun-get-headers): Use return value of
280         `shimbun-article-expiration-days'.
281         (elmo-folder-close-internal): Clean up last-check slot.
282
283         * elmo-pop3.el (elmo-pop3-process-filter): Show retrieve progress.
284         (elmo-pop3-total-size): New variable.
285         (elmo-message-fetch-plugged): Bind elmo-pop3-total-size while fetching.
286
287         * elmo.el (elmo-folder-reserve-status-p): New method.
288
289         * elmo-shimbun.el (elmo-shimbun-headers-cache): Abolish.
290         (elmo-shimbun-use-entire-index): New user option.
291         (shimbun-elmo-mua): New class.
292         (shimbun-mua-search-id): Define.
293         (shimbun-mua-use-entire-index): Ditto.
294         (elmo-shimbun-folder:last-check): New slot.
295         (elmo-shimbun-headers-cache-header-list): Abolish.
296         (elmo-shimbun-headers-cache-set-header-list): Ditto.
297         (elmo-shimbun-headers-cache-header-hash): Ditto.
298         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
299         (elmo-shimbun-headers-cache-last-check): Ditto.
300         (elmo-shimbun-headers-cache-set-last-check): Ditto.
301         (elmo-shimbun-headers-check-p): Rewrite.
302         (elmo-shimbun-msgdb-to-headers): New function.
303         (elmo-shimbun-get-headers): Rewrite.
304         (elmo-folder-initialize): Set 1st argument of `shimbun-open'.
305         (elmo-folder-open-internal): Get headers only if
306         `elmo-shimbun-headers-check-p' is non-nil.
307         (elmo-folder-check): Check only if `elmo-shimbun-headers-check-p'
308         is non-nil.
309         (elmo-shimbun-msgdb-create-entity): Re-use old msgdb entities.
310         (elmo-quit): Removed.
311
312         * elmo-msgdb.el (elmo-msgdb-overview-entity-get-extra): New inline
313         function.
314         (elmo-msgdb-overview-entity-set-extra): Ditto.
315         (elmo-msgdb-make-overview-hashtb): Make hash if overview is non-nil.
316
317         * elmo-map.el (elmo-folder-status): Don't call
318         elmo-folder-close-internal if `elmo-folder-reserve-status-p'
319         is non-nil.
320
321 2001-06-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
322
323         * elmo-msgdb.el (elmo-msgdb-search-internal): Call itself instead
324         of `elmo-msgdb-search-internal-primitive' when condition's car is
325         `and' or `or'.
326
327 2001-05-23  Kenichi OKADA  <okada@opaopa.org>
328
329         * elmo-nntp.el (elmo-nntp-get-newsgroup-by-msgid): Fix for luna.
330
331 2001-05-22  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
332
333         * elmo-pipe.el (elmo-folder-open-internal): Check plugged before
334         call `elmo-pipe-drain'.
335
336 2001-05-19  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
337
338         * elmo-mark.el (elmo-message-fetch-with-cache-process): Fixed
339         typo. (elmo-cache-folder -> elmo-mark-folder)
340
341 2001-05-11  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
342
343         * elmo-net.el (elmo-message-fetch-unplugged): Don't call
344         `elmo-message-fetch'.
345
346 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
347
348         * elmo-net.el (elmo-message-encache): Fixed typo.
349         (elmo-message-fetch-unplugged): Changed call
350         `elmo-message-fetch-internal' without argument `outbuf'.
351
352 2001-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
353
354         * elmo.el (elmo-message-encache): Define as generic function.
355         (elmo-message-fetch-field): New generic function.
356         (elmo-message-fetch-with-cache-process): Cause an error when
357         fetch strategy is 'entire but only 'section cache is available.
358         (toplevel): Fixed nmz folder definition.
359
360         * elmo-vars.el (elmo-msgdb-lock-list-filename): Removed.
361         (elmo-msgdb-resume-list-filename): Ditto.
362         (elmo-queue-filename): Ditto.
363         (elmo-enable-disconnected-operation): Changed default value to t.
364
365         * elmo-util.el (elmo-cache-path-section-p): New function.
366         (elmo-file-cache-get): Use it.
367         (elmo-dop-queue-filename): Moved from elmo-dop.el.
368         (elmo-dop-queue-load): Moved from elmo-msgdb.el.
369         (elmo-dop-queue-save): Ditto.
370
371         * elmo-net.el (elmo-folder-status-unplugged): Call
372         elmo-folder-status-dop.
373         (elmo-folder-list-messages-unplugged): Implemented.
374         (elmo-folder-delete-messages-unplugged): Define.
375         (elmo-folder-msgdb-create): Define.
376         (elmo-folder-msgdb-create-unplugged): Define.
377         (elmo-folder-mark-as-read-unplugged): Ditto.
378         (elmo-folder-unmark-read-unplugged): Ditto.
379         (elmo-folder-mark-as-important-unplugged): Ditto.
380         (elmo-folder-unmark-important-unplugged): Ditto.
381         (elmo-message-encache): Ditto.
382
383         * elmo-msgdb.el (elmo-dop-queue-load): Moved to elmo-util.el.
384         (elmo-dop-queue-save): Ditto.
385
386         * elmo-imap4.el (elmo-folder-msgdb-create-plugged): Renamed from
387         `elmo-folder-msgdb-create'.
388         (elmo-folder-append-buffer): Implemented unplugged operation.
389         (elmo-folder-append-messages): Call parent method in unplugged status.
390         (elmo-message-fetch-unplugged): Removed definition.
391         (elmo-message-fetch-field): Implemented.
392
393         * elmo-dop.el (toplevel): Require 'elmo-localdir.
394         (elmo-dop-folder): Removed variable definition.
395         (elmo-dop-queue-append): Changed argument `fname' to `folder'.
396         (elmo-dop-queue-flush): Implemented.
397         (elmo-dop-queue-merge): Removed definition (TODO).
398         (elmo-dop-spool-folder): New function.
399         (elmo-dop-spool-folder-append-buffer): Ditto.
400         (elmo-dop-spool-folder-list-messages): Ditto.
401         (elmo-dop-list-deleting-messages): Ditto.
402         (elmo-folder-append-buffer-dop): Ditto.
403         (elmo-folder-delete-messages-dop): Ditto.
404         (elmo-message-encache-dop): New inline function.
405         (elmo-create-folder-dop): Ditto.
406         (elmo-folder-mark-as-read-dop): Ditto.
407         (elmo-folder-unmark-read-dop): Ditto.
408         (elmo-folder-mark-as-important-dop): Ditto.
409         (elmo-folder-unmark-important-dop): Ditto.
410         (elmo-folder-status-dop): Fixed.
411         (elmo-folder-append-buffer-dop-delayed): New function.
412         (elmo-folder-delete-messages-dop-delayed): Ditto.
413         (elmo-dop-msgdb): Ditto.
414
415 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
416
417         * elmo-localdir.el (elmo-folder-pack-numbers): Fixed.
418
419 2001-05-10  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
420
421         * elmo.el (elmo-folder-move-messages): Fixed problem when
422         `dst-folder' is 'null.
423
424 2001-05-09  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
425
426         * elmo.el (elmo-folder-list-importants): Rewirte. Use global mark
427         instead of current mark.
428
429         * elmo-multi.el (elmo-folder-list-importants-internal): No
430         operation if importants is not list.
431
432         * elmo-filter.el (elmo-filter-folder-list-importants-internal):
433         Return t if importants is not list.
434
435         * elmo-map.el (elmo-map-folder-list-importants): Define.
436         (elmo-folder-list-importants-internal): Check return value of
437         `elmo-map-folder-list-importants-internal'.
438
439         * elmo-cache.el (elmo-folder-list-importants-internal): Eliminated.
440
441         * elmo-mark.el (elmo-folder-list-importants-internal): Ditto.
442
443         * elmo-nmz.el (elmo-folder-list-importants-internal): Ditto.
444
445         * elmo-shimbun.el (elmo-folder-list-importants-internal): Ditto.
446
447 2001-05-08  Yuuichi Teranishi  <teranisi@gohome.org>
448
449         * elmo.el (elmo-message-fetch-confirm): Fixed docstring.
450         (Patch is provided by <kita@coe.nttdata.co.jp>).
451
452 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
453
454         * elmo.el (elmo-folder-synchronize): Don't check important mark in
455         mark folder.
456
457 2001-05-08  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
458
459         * elmo.el (elmo-message-fetch): Define.
460         (elmo-message-fetch-with-cache-process): New generic method.
461         (elmo-message-fetch-internal): New generic method.
462         (elmo-folder-synchronize): 
463
464         * elmo-archive.el (elmo-message-fetch-internal): Define.
465         (elmo-message-fetch): Eliminated.
466
467         * elmo-localdir.el (elmo-message-fetch-internal): Define.
468         (elmo-message-fetch): Eliminated.
469
470         * elmo-map.el (elmo-map-message-fetch): Eliminated optional
471         argument OUTBUF.
472         (elmo-message-fetch-internal): Define (Renamed from `elmo-message-fetch').
473
474         * elmo-cache.el (elmo-message-fetch-with-cache-process): Define.
475         (elmo-map-message-fetch): Merged with elmo-cache-folder-map-message-fetch.
476
477         * elmo-mark.el (elmo-message-fetch-with-cache-process): Define.
478         (elmo-map-message-fetch): Merged with `elmo-mark-folder-map-message-fetch'.
479
480         * elmo-maildir.el (elmo-map-message-fetch): Rewrite.
481
482         * elmo-nmz.el (elmo-map-message-fetch): Ditto.
483
484         * elmo-shimbun.el (elmo-map-message-fetch): Ditto.
485
486         * elmo-net.el (elmo-message-fetch-plugged): Remove cache process.
487         (elmo-message-fetch-unplugged): New generic method.
488         (elmo-message-fetch-internal): Remove cache process (Renamed from
489         `elmo-message-fetch').
490
491         * elmo-nntp.el (elmo-message-fetch-with-cache-process): Define.
492         (elmo-message-fetch): Eliminated.
493         (elmo-message-fetch-unplugged): Ditto.
494
495         * elmo-imap4.el (elmo-message-fetch-unplugged): Remove cache process.
496
497 2001-05-02  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
498
499         * elmo-multi.el (elmo-multi-folder-append-msgdb): Fixed structure
500         of `to-be-deleted' from number-alist to number-list.
501
502 2001-04-26  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
503
504         * elmo-pipe.el (elmo-folder-unmark-important): Fixed typo.
505         (elmo-folder-mark-as-important): Ditto.
506
507 2001-04-26  Yuuichi Teranishi  <teranisi@gohome.org>
508
509         * elmo.el (elmo-folder): Added process-duplicates slot.
510
511         * elmo-pipe.el (elmo-folder-mark-as-read): Define.
512         (elmo-folder-unmark-read): Ditto.
513         (elmo-folder-unmark-important): Ditto.
514         (elmo-folder-mark-as-important): Ditto.
515
516         * elmo-multi.el (elmo-multi-folder-append-msgdb): Implemented
517         duplicated message processing.
518
519         * elmo.el (elmo-generic-folder-append-msgdb): Ditto.
520
521 2001-04-24  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
522
523         * elmo-util.el (elmo-list-subdirectories-1): New function.
524         (elmo-list-subdirectories): Use `elmo-list-subdirectories-1'.
525         (elmo-mapcar-list-of-list): New function.
526
527         * elmo-archive.el (elmo-archive-folder-list-subfolders): Use
528         `elmo-mapcar-list-of-list' instead of `mapcar'.
529
530         * elmo-localdir.el (elmo-folder-list-subfolders): Ditto.
531
532         * elmo-maildir.el (elmo-folder-list-subfolders): Ditto. Bind
533         `elmo-have-link-count'. Return the fully qualified folder name.
534
535 2001-04-23  Yuuichi Teranishi  <teranisi@gohome.org>
536
537         * elmo-shimbun.el (elmo-shimbun-check-interval): New user option.
538         (elmo-shimbun-headers-cache): New internal variable.
539         (elmo-shimbun-headers-cache-header-list): New inline function.
540         (elmo-shimbun-headers-cache-set-header-list): Ditto.
541         (elmo-shimbun-headers-cache-header-hash): Ditto.
542         (elmo-shimbun-headers-cache-set-header-hash): Ditto.
543         (elmo-shimbun-headers-cache-last-check): Ditto.
544         (elmo-shimbun-headers-cache-set-last-check): Ditto.
545         (elmo-shimbun-lapse-seconds): Ditto.
546         (elmo-shimbun-headers-cache-check-p): Ditto.
547         (elmo-shimbun-get-headers): New function.
548         (elmo-folder-open-internal): Call it.
549         (elmo-quit): Define (Clear headers-cache).
550
551 2001-04-18  Yuuichi Teranishi  <teranisi@gohome.org>
552
553         * elmo-nntp.el (elmo-folder-initialize): Fixed typo (folder->name).
554
555         * elmo-msgdb.el (elmo-msgdb-flist-load): Use elmo-mime-charset.
556         (elmo-msgdb-flist-save): Ditto.
557
558         * elmo-shimbun.el (elmo-folder-list-subfolders):
559         Use `shimbun-groups' instead of `shimbun-groups-internal'.
560         (elmo-folder-exists-p): Ditto.
561
562         * elmo-shimbun.el (elmo-shimbun-msgdb-create-entity): Set `shimbun'
563         argument for `shimbun-header-insert'.
564
565 2001-04-17  Yuuichi Teranishi  <teranisi@gohome.org>
566
567         * elmo-multi.el (elmo-multi-folder-diff): Use dummy number list
568         at first time.
569
570         * elmo-util.el (toplevel): Require 'mcharset and 'pces.
571         (With a little help from 'NAKAJIMA Mikio <minakaji@osaka.email.ne.jp>')
572
573 2001-04-16  Yuuichi Teranishi  <teranisi@gohome.org>
574
575         * elmo-shimbun.el (elmo-folder-open-internal): Do nothing if unplugged.
576         (elmo-folder-plugged-p): Define.
577         (elmo-folder-set-plugged): Ditto.
578         (elmo-shimbun-msgdb-create-entity): Do nothing if there's no header.
579         (elmo-folder-list-messages-internal): Return t if unplugged.
580         (elmo-folder-initialize): Fixed for "@gnome.gnome-1.4-list".
581
582         * elmo-multi.el (elmo-folder-list-messages-internal): Fixed problem
583         when elmo-folder-list-messages-internal method of children returns t.
584
585         * elmo-map.el (elmo-map-folder-update-locations): Fixed problem when
586         pair is nil.
587         (elmo-folder-open-internal): Don't update if unplugged status.
588
589 2001-04-13  Yuuichi Teranishi  <teranisi@gohome.org>
590
591         * elmo.el (elmo-folder-synchronize): Fixed problem when there's no
592         new message.
593
594 2001-04-12  Yuuichi Teranishi  <teranisi@gohome.org>
595
596         * elmo-util.el (elmo-file-cache-save): Ignore errors.
597
598         * elmo-net.el (elmo-message-fetch): Check cache-path is non-nil before
599         saving.
600
601 2001-04-09  Yuuichi Teranishi  <teranisi@gohome.org>
602
603         * elmo.el (elmo-folder-synchronize): Added optional no-check argument.
604
605         * elmo-shimbun.el (elmo-shimbun-folder): Added headers slot.
606         (elmo-folder-open-internal): Set up headers slot.
607         (elmo-folder-check): Call elmo-folder-close-internal and
608         elmo-folder-open-internal.
609         (elmo-folder-close-internal): Clean up headers slot.
610
611 2001-04-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
612
613         * elmo-archive.el (elmo-archive-folder-list-subfolders): Match
614         exactly folder list.
615         (elmo-folder-append-messages): Fixed append archive with prefix.
616
617         * elmo-localdir.el (elmo-folder-message-make-temp-files): Fixed
618         make temp files with start-number.
619
620         * elmo-pipe.el (elmo-folder-message-make-temp-file-p): Fixed typo.
621
622 2001-04-05  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
623
624         * elmo.el (elmo-folder-list-messages-internal): Fixed lucking optional
625         argument `visible-only'.
626         (elmo-generic-folder-append-messages): Fixed condition. Use `unless'
627         instead of `if'.
628
629         * elmo-pop3.el (elmo-folder-open-internal): Check
630         `elmo-inhibit-number-mapping' is non-nil.
631
632         * elmo-pipe.el (elmo-folder-status): Fixed.
633
634 2001-04-05  Yuuichi Teranishi  <teranisi@gohome.org>
635
636         * elmo.el (elmo-dop-queue-flush): Added autload setting.
637
638         * elmo-shimbun.el (elmo-shimbun-folder): Added `header-hash' slot.
639         (elmo-folder-open-internal): Setup `header-hash' slot.
640         (elmo-shimbun-msgdb-create-entity): Use `header-hash' to get header
641         information.
642         (elmo-map-message-fetch): Ditto.
643
644 2001-04-04  Yuuichi Teranishi  <teranisi@gohome.org>
645
646         * shimbun.el, sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
647         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
648         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
649         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el, sb-tcup.el: Removed.
650
651         * elmo-util.el (elmo-resque-obsolete-variable): Fix.
652
653 2001-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
654
655         * sb-airs.el: Added footer.
656
657         * shimbun.el (shimbun-article): Define as luna-method.
658
659         * sb-tcup.el: New file.
660
661         * sb-airs.el (toplevel): Require 'sb-mhonarc.
662         (According to the report from ABE Yasushi <yasushi@indigo.co.jp>)
663
664 2001-04-02  Yuuichi Teranishi  <teranisi@gohome.org>
665
666         * sb-asahi.el (shimbun-index-url): Removed redundant '/' in URL string.
667         (shimbun-get-headers): Ditto.
668
669         * elmo.el: Moved obsolete variable definitions from
670         elmo-imap4.el, elmo-nntp.el and elmo-pop3.el.
671
672         * sb-asahi.el (shimbun-asahi-groups): Deleted "feneral" and "personal"
673         groups.
674
675         * shimbun.el: New file.
676
677         * elmo-shimbun.el: New file.
678
679         * sb-airs.el, sb-asahi.el, sb-bbdb-ml.el, sb-cnet.el,
680         sb-fml.el, sb-lump.el, sb-mew.el, sb-mhonarc.el,
681         sb-netbsd.el, sb-sponichi.el, sb-text.el, sb-wired.el,
682         sb-xemacs.el, sb-yomiuri.el, sb-zdnet.el: New files.
683
684 2001-03-27  Kenichi OKADA  <okada@opaopa.org>
685
686         * elmo-imap4.el (elmo-imap4-list-folders): Fixed problem when
687         hierarchy is t.
688
689 2001-03-12  Yuuichi Teranishi  <teranisi@gohome.org>
690
691         * elmo.el (elmo-folder-msgdb): Define as macro.
692         (elmo-folder-open): Added argument `load-msgdb'.
693         (elmo-generic-folder-open): Ditto.
694         (elmo-folder-encache): New function.
695
696         * elmo-dop.el (elmo-dop-queue): Moved from elmo-dop.el.
697
698         * elmo-net.el (elmo-message-fetch): Check the cache path is non-nil.
699
700         * elmo-msgdb.el (elmo-msgdb-delete-msgs):
701         Eliminated argument FOLDER and added argument MSGDB.
702         (elmo-dop-queue-load): Moved from elmo-dop.el.
703         (elmo-dop-queue-save): Ditto.
704
705         * elmo-map.el (elmo-map-folder-update-locations): Sort by number.
706
707         * elmo-imap4.el (elmo-folder-open): Added argument load-msgdb.
708
709         * elmo-filter.el (elmo-filter-folder-list-unreads-internal):
710         Use elmo-folder-msgdb instead of elmo-folder-msgdb-internal.
711         (elmo-filter-folder-list-importants-internal): Ditto.
712
713         * elmo-map.el (elmo-folder-pack-number): Ditto.
714
715         * elmo-mime.el (elmo-mime-message-display): Ditto.
716
717         * elmo.el (elmo-generic-folder-commit): Ditto.
718         (elmo-folder-list-unreads): Ditto.
719         (elmo-folder-list-importants): Ditto.
720         (elmo-generic-folder-commit): Ditto.
721         (elmo-message-set-mark): Ditto.
722         (elmo-generic-folder-append-msgdb): Ditto.
723         (elmo-folder-synchronize): Ditto.
724         (elmo-folder-messages): Ditto.
725         (elmo-init): Call elmo-dop-queue-load.
726         (elmo-folder-list-messages): Ditto.
727
728         * elmo-nntp.el (elmo-folder-update-number): Ditto.
729         (elmo-nntp-folder-process-crosspost): Ditto.
730         (elmo-folder-list-unreads-internal): Ditto.
731
732         * elmo-dop.el: Removed old functions.
733
734 2001-03-05  Yuuichi Teranishi  <teranisi@gohome.org>
735
736         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument from
737         `folder' to `msgdb'.
738
739 2001-03-01  Yuuichi Teranishi  <teranisi@gohome.org>
740
741         * mmimap.el (mmimap-parse-parameters-from-list): Define as alias for
742         `mime-decode-parameters' instead of `mime-decode-parameter-plist'.
743
744         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Bind
745         case-fold-search.
746
747 2001-02-28  Yuuichi Teranishi  <teranisi@gohome.org>
748
749         * elmo-util.el (elmo-resque-obsolete-variable): Use defvaralias if
750         defined.
751
752         * mmimap.el (toplevel): Require 'mime-parse and 'static.
753         (mmimap-parse-parameters-from-list): Define as alias for
754         `mime-decode-parameter-plist' if it is defined as function.
755         (mmimap-make-mime-entity): Added argument `number'.
756         (initialize-instance): Set `number' argument of mmimap-make-mime-entity
757         as 0.
758         (mime-imap-entity-header-string): Arrange node-id for rfc2060 section.
759
760         * elmo.el (elmo-folder-have-subfolder-p): New generic function.
761
762         * elmo-mark.el (elmo-folder-have-subfolder-p): Define.
763
764         * elmo-internal.el (elmo-folder-list-subfolders): Rewrite.
765
766 2001-02-27  Yuuichi Teranishi  <teranisi@gohome.org>
767
768         * elmo-maildir.el (elmo-folder-msgdb-create): Fixed.
769
770         * elmo-imap4.el (elmo-folder-initialize): Fixed problem
771         when elmo-imap4-default-authenticate-type is nil.
772         (elmo-folder-list-subfolders): Ditto
773         (According to the reported of Bun Mizuhara <mizuhara@acm.org>)
774         (elmo-imap4-fetch-callback-1-subr): Renamed from
775         `elmo-imap4-fetch-callback-1' and define as inline function.
776         (elmo-imap4-fetch-callback-1):
777         Renamed from `elmo-imap4-fetch-callback'.
778         (elmo-imap4-parse-fetch): Funcall `elmo-imap4-fetch-callback'.
779
780         * elmo-localdir.el (elmo-folder-expand-msgdb-path): Fixed
781         msgdb path (To keep compatibility with main trunk).
782
783         * elmo-vars.el (elmo-inhibit-number-mapping): New variable.
784
785         * elmo-util.el (elmo-make-file-cache): Moved position of
786         some macros.
787
788         * elmo-pop3.el (elmo-pop3-inhibit-uidl): Eliminated.
789         (elmo-pop3-get-session): Use `elmo-inhibit-number-mapping'
790         instead of `elmo-pop3-inhibit-uidl'.
791         (elmo-folder-exists-p): Ditto.
792         (elmo-pop3-folder-list-messages): Ditto.
793
794         * elmo-pipe.el (elmo-pipe-drain): Use `elmo-inhibit-number-mapping'
795         instead of `elmo-pop3-inhibit-uidl'.
796         (elmo-folder-status): Ditto.
797
798         * elmo-dop.el (elmo-dop-folder): New variable.
799         (elmo-dop-lock-message): Eliminated.
800         (elmo-dop-unlock-message): Ditto.
801         (elmo-dop-lock-list-load): Ditto.
802         (elmo-dop-lock-list-save): Ditto.
803         (elmo-dop-delete-folder): Ditto.
804         (elmo-dop-rename-folder): Ditto.
805
806         * elmo.el: Removed incomplete commentary.
807
808 2001-02-25  TAKAHASHI Kaoru  <kaoru@kaisei.org>
809
810         * elmo.el (toplevel): Require 'elmo-version first;
811         for little `recursive-load-depth' settings.
812         Fix "ends here" comment.
813
814 2001-02-23  Yuuichi Teranishi  <teranisi@gohome.org>
815
816         * elmo-util.el (toplevel): Require 'poem;
817         Some functions are moved from elmo-cache.el.
818
819         * elmo-net.el (toplevel): Require 'elmo-cache.
820
821         * elmo-msgdb.el (toplevel): Don't require 'elmo-cache.
822
823         * elmo.el (toplevel): Ditto.
824
825         * elmo-cache.el: Rewrite with luna;
826         Some functions are moved to elmo-util.el.
827
828         * elmo-internal.el (elmo-internal-folder-list): New variable.
829         (elmo-internal-folder-initialize): Rewrite.
830         (elmo-folder-list-subfolders): Ditto.
831
832         * elmo-cache.el (elmo-cache-search-all): Eliminated.
833         (elmo-cache-collect-sub-directories): Ditto.
834
835 2001-02-22  Yuuichi Teranishi  <teranisi@gohome.org>
836
837         * elmo-version.el (elmo-version): Up to 2.5.8.
838
839         * elmo.el (elmo-folder-list-messages-mark-match): New function.
840
841         * elmo-util.el (elmo-list-insert): New function.
842
843 2001-02-21  Yuuichi Teranishi  <teranisi@gohome.org>
844
845         * elmo.el (elmo-init): New function.
846         (elmo-quit): Call `elmo-crosspost-message-alist-save'.
847
848         * elmo-vars.el (elmo-msgdb-file-header-chop-length): New variable
849         (Renamed from `elmo-localdir-header-chop-length').
850
851         * elmo-pop3.el (elmo-pop3-use-cache,
852         elmo-pop3-send-command-synchronously): Moved from `elmo-vars.el'.
853
854         * elmo-nntp.el (elmo-message-fetch): Define.
855         (elmo-message-fetch-unplugged): Ditto.
856         (elmo-nntp-overview-fetch-chop-length): Moved from `elmo-vars.el'.
857         (elmo-nntp-use-cache): Ditto.
858         (elmo-nntp-max-number-precedes-list-active): Ditto.
859
860         * elmo-multi.el (elmo-multi-divide-number): Moved from `elmo-vars.el'.
861
862         * elmo-msgdb.el (elmo-localdir-insert-header): Renamed to
863         `elmo-msgdb-insert-file-header'.
864         Use `elmo-msgdb-file-header-chop-length'.
865
866         * elmo-localdir.el (elmo-localdir-lockfile-list): Moved from
867         `elmo-vars.el'.
868
869         * elmo-cache.el (elmo-cache-insert-header): Eliminated.
870         (elmo-cache-msgdb-create-overview-entity-from-file): Use
871         `elmo-msgdb-insert-file-header'.
872
873         * elmo-imap4.el, elmo-nntp.el, elmo-pop3.el:
874         Use new variable;
875         Define obsolete variables with `elmo-define-obsolete-variable',
876
877         * elmo-util.el (elmo-warning-buffer-name): New constant.
878         (elmo-warning): New function.
879         (elmo-obsolete-variable-alist): New variable.
880         (elmo-obsolete-variable-show-warnings): New variable.
881         (elmo-define-obsolete-variable): New function.
882         (elmo-resque-obsolete-variable): Ditto.
883         (elmo-resque-obsolete-variables): Ditto.
884
885 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
886
887         * elmo-vars.el (elmo-use-buffer-cache, elmo-buffer-cache-size):
888         Eliminated.
889
890         * elmo-pop3.el, elmo-nntp.el: Use custom.
891
892 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
893
894         * elmo-imap4.el (elmo-network-authenticate-session): Fix.
895         * elmo-pop3.el (elmo-network-authenticate-session): Add comments.
896
897 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
898
899         * Luna-fy Kenichi OKADA's following changes.
900         * elmo.el (elmo-folder-list-messages-internal): Added optional argument
901         `nohide'.
902         (elmo-folder-synchronize): Changed meaning of argument `ignore-msgdb'.
903
904 2001-02-21  OKAZAKI Tetsurou  <okazaki@be.to>
905
906         * elmo-util.el (elmo-display-progress): Prefer
907         `progress-feedback-with-label' to `lprogress-display'.
908
909 2000-02-20  Kenichi OKADA  <okada@opaopa.org>
910
911         * elmo-imap4.el (elmo-imap4-list-folder): Added 'uid'
912
913 2000-02-19  Kenichi OKADA  <okada@opaopa.org>
914
915         * elmo2.el (elmo-list-folder): Added optional argument `nohide'.
916         * elmo-imap4.el (elmo-imap4-list-folder): Added optional argument `nohide'.
917         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
918         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
919         * elmo-localdir.el (elmo-localdir-list-folder): Ditto.
920         * elmo-localnews.el (elmo-localnews-list-folder): Ditto.
921         * elmo-archive.el (elmo-archive-list-folder): Ditto.
922         * elmo-filter.el (elmo-filter-list-folder): Ditto.
923         * elmo-internal.el (elmo-internal-list-folder): Ditto.
924         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
925         * elmo-multi.el (elmo-multi-list-folder): Ditto.
926         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
927         * elmo-dop.el (elmo-dop-list-folder): Ditto.
928
929 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
930
931         * elmo-msgdb.el (elmo-msgdb-max-of-killed): New function.
932         * elmo-imap4.el (elmo-imap4-list-folder): Use killed-list.
933
934 2001-02-20  Yuuichi Teranishi  <teranisi@gohome.org>
935
936         * elmo.el (elmo-folder-process-crosspost): New generic method.
937         (elmo-folder-writable-p): Ditto.
938         (elmo-folder-message-appendable-p): Eliminated.
939         (elmo-generic-folder-append-msgdb): Rewrite.
940         (elmo-newsgroups-hashtb): New internal variable.
941         (elmo-crosspost-message-set): Eliminated.
942         (elmo-crosspost-message-delete): Ditto.
943         (elmo-setup-subscribed-newsgroups): New function.
944         (elmo-crosspost-message-alist-modified): New internal variable.
945         (elmo-crosspost-message-alist-load): New function (Renamed from
946         `wl-crosspost-alist-load').
947         (elmo-crosspost-message-alist-save): Ditto (Renamed from
948         `wl-crosspost-alist-save').
949
950         * elmo-util.el (elmo-parse): New function (Renamed from `wl-parse').
951
952         * elmo-nntp.el (elmo-nntp-folder): New slots `temp-crosses' and
953         `unreads'.
954         (elmo-nntp-groups-hashtb): Eliminated (Renamed to
955         elmo-newsgroups-hashtb).
956         (elmo-nntp-message-fetch): Call `elmo-nntp-setup-crosspost-buffer',
957         `elmo-nntp-folder-update-crosspost-message-alist'.
958         (elmo-nntp-get-folders-info): Use `elmo-newsgroups-hashtb' instead of
959         `elmo-nntp-groups-hashtb'.
960         (elmo-nntp-make-groups-hashtb): Eliminated.
961         (elmo-nntp-parse-newsgroups): New function (Renamed from
962         `wl-parse-newsgroups').
963         (elmo-folder-creatable-p, elmo-folder-writable-p,
964         elmo-folder-close-internal, elmo-folder-mark-as-read,
965         elmo-folder-process-crosspost, elmo-folder-list-unreads-internal):
966         Define.
967         (elmo-nntp-folder-update-crosspost-message-alist): New function.
968
969         * elmo-net.el (elmo-message-fetch): Check buffer size.
970
971         * elmo-multi.el (elmo-multi-split-number-alist): New function.
972
973         * elmo-localdir.el (elmo-folder-append-buffer): Fixed logic.
974
975         * elmo-imap4.el (elmo-folder-rename-internal): Send `select' command
976         before `close' command.
977
978         * elmo.el (elmo-folder-list-unreads-internal): Added argument
979         `mark-alist' (All other related portions are changed).
980
981 2001-02-13  Yuuichi Teranishi  <teranisi@gohome.org>
982
983         * elmo-util.el (elmo-create-hash-size): Eliminated.
984         (elmo-make-hash) Make a hash with `one less than a power of two'
985         length.
986
987         * elmo-vars.el (elmo-hash-minimum-size): New variable.
988         (elmo-hash-maximum-size): Changed value.
989
990 2001-02-09  Yuuichi Teranishi  <teranisi@gohome.org>
991
992         * elmo-mime.el (elmo-mime-message-display): Added argument `unread'.
993         (elmo-mime-message-display-as-is): Ditto.
994
995 2001-02-07  Yuuichi Teranishi  <teranisi@gohome.org>
996
997         * elmo-pipe.el (elmo-pipe-drain): Eliminated needless bindings;
998         Use `elmo-folder-close-internal' instead of `elmo-folder-close'.
999
1000 2001-02-06  Yuuichi Teranishi  <teranisi@gohome.org>
1001
1002         * elmo-mark.el: New file.
1003
1004         * elmo-internal.el: Rewrite (Almost empty).
1005
1006 2001-02-05  Yuuichi Teranishi  <teranisi@gohome.org>
1007
1008         * mmimap.el (mmimap-make-mime-entity): Consider message/rfc822.
1009         (mime-imap-entity-header-string): Ditto.
1010         (mmimap-entity-section): Rewrite.
1011
1012 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
1013
1014         * elmo-nmz.el: New file.
1015
1016         * elmo-pipe.el: Rewrite with luna.
1017
1018 2001-01-29  Yuuichi Teranishi  <teranisi@gohome.org>
1019
1020         * elmo-archive.el: Rewrite with luna.
1021
1022         * elmo-multi.el (elmo-folder-list-unreads-internal): Fixed.
1023         (elmo-folder-list-importants-internal): Ditto.
1024
1025 2001-01-24  Yuuichi Teranishi  <teranisi@gohome.org>
1026
1027         * elmo-archive.el (elmo-archive-version): Abolish.
1028         (toplevel) Removed `boso' comment.
1029
1030 2001-01-23  Yuuichi Teranishi  <teranisi@gohome.org>
1031
1032         * elmo-msgdb.el (elmo-msgdb-add-msgs-to-seen-list): Renamed from
1033         elmo-msgdb-add-msgs-to-seen-list-subr;
1034         Changed argument seen-marks to unread-marks.
1035
1036         * elmo-nntp.el: Rewrite with luna.
1037
1038 2001-01-22  Yuuichi Teranishi  <teranisi@gohome.org>
1039
1040         * elmo-filter.el: Rewrite with luna.
1041
1042 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
1043
1044         * elmo-pop3.el: Rewrite with luna.
1045
1046 2001-01-17  Yuuichi Teranishi  <teranisi@gohome.org>
1047
1048         * elmo-multi.el: Rewrite with luna.
1049
1050         * elmo-vars.el (elmo-use-killed-list): Abolish.
1051         All other related portions are changed.
1052         (elmo-filename-replace-string-alist): Renamed from
1053         elmo-msgid-replace-string-alist.
1054
1055 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
1056
1057         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Changed argument.
1058
1059         * elmo-map.el: New file.
1060         * elmo-maildir.el: Rewrite with luna.
1061
1062 2001-01-14  Yuuichi Teranishi  <teranisi@gohome.org>
1063
1064         * elmo.el: Changed meaning of `elmo-folder-commit'.
1065         * elmo-mime.el (elmo-mime-display-as-is-internal): New function.
1066
1067 2001-01-07  Yuuichi Teranishi  <teranisi@gohome.org>
1068
1069         * elmo.el (elmo-folder-append-buffer): New function.
1070         (Renamed from `elmo-append-msg')
1071
1072 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
1073
1074         * elmo-mime.el: New file.
1075
1076 2000-12-14  Yuuichi Teranishi  <teranisi@gohome.org>
1077
1078         * elmo-cache.el: Rewrite.
1079
1080 2000-02-17  Kenichi OKADA  <okada@opaopa.org>
1081
1082         * elmo-pop3.el (elmo-network-authenticate-session): Bind `sasl-mechanisms'
1083
1084 2000-12-08  Yuuichi Teranishi  <teranisi@gohome.org>
1085
1086         * elmo-vars.el (elmo): New group.
1087         (elmo-strict-diff-folder-regexp): New variable.
1088
1089         * elmo-util.el (elmo-call-func): Abolish.
1090         (elmo-folder-get-type): Ditto.
1091         (elmo-*-get-spec): Ditto.
1092         (elmo-*-spec-*): Ditto.
1093         (elmo-imap4-identical-name-space-p): Ditto.
1094         (elmo-folder-identical-system-p): Ditto.
1095         (elmo-folder-direct-copy-alist): Ditto.
1096         (elmo-folder-direct-copy-p): Ditto.
1097
1098         * elmo-pipe.el (elmo-pipe-folder): New luna class.
1099         (elmo-folder-initialize): Define.
1100         (elmo-folder-get-primitive-list): Ditto.
1101
1102         * elmo-nntp.el (elmo-nntp-folder): New luna class.
1103         (elmo-folder-initialize): Define.
1104         Renamed `elmo-network-session-host-internal' to
1105         `elmo-network-session-server-internal'.
1106
1107         * elmo-multi.el (elmo-multi-folder): New luna class.
1108         (elmo-folder-initialize): Define.
1109         (elmo-folder-get-primitive-list): Ditto.
1110         (elmo-folder-contains-type): Ditto.
1111         (elmo-message-use-cache-p): Ditto.
1112
1113         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolish.
1114         Use `elmo-folder-msgdb-path' instead of `elmo-msgdb-expand-path'.
1115
1116         * elmo-maildir.el (elmo-maildir-folder): New luna class.
1117         (elmo-folder-initialize): Define.
1118
1119         * elmo-filter.el (elmo-filter-folder): New luna class.
1120         (elmo-folder-initialize): Define.
1121         (elmo-folder-get-primitive-list): Ditto.
1122         (elmo-folder-contains-type): Ditto.
1123
1124 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
1125
1126         * elmo-imap4.el: Rewrite with luna.
1127
1128         * mmimap.el: New file.
1129
1130         * mmelmo.el, mmelmo-imap4.el: Removed.
1131
1132         * elmo-net.el: Ditto.
1133
1134         * elmo-pop3.el (elmo-pop3-folder): New luna class.
1135         (elmo-folder-initialize): Define.
1136
1137         * elmo-archive.el (elmo-archive-folder): New luna class.
1138         (elmo-folder-initialize): Define.
1139
1140         * elmo-dop.el: Rename `elmo-msgdb-expand-path' to
1141         `elmo-folder-msgdb-path'.
1142         (elmo-dop-queue-append): Use `elmo-folder-name-internal' and
1143         `elmo-make-folder'.
1144
1145 2000-12-06  Yuuichi Teranishi  <teranisi@gohome.org>
1146
1147         * elmo.el: New file.
1148
1149         * elmo2.el: Renamed to elmo.el.
1150
1151 \f
1152 2001-02-01  OKAZAKI Tetsurou  <okazaki@be.to>
1153
1154         * elmo-cache.el (elmo-cache-expire-by-size): Count
1155         a disk usage for a cache file entry in KB even when
1156         its kind is a directory.
1157
1158 2001-02-01  Yuuichi Teranishi  <teranisi@gohome.org>
1159
1160         * elmo-version.el (elmo-version): Up to 2.5.7.
1161
1162 2001-01-23  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1163
1164         * elmo-version.el (elmo-version): Up to 2.5.6.
1165
1166 2001-01-18  Yuuichi Teranishi  <teranisi@gohome.org>
1167
1168         * elmo-version.el (elmo-version): Up to 2.5.5.
1169
1170 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1171
1172         * elmo-imap4.el (elmo-network-authenticate-session):
1173         Fixed a logic for response checking.
1174
1175 2000-12-15   Daiki Ueno  <ueno@unixuser.org>
1176
1177         * elmo-net.el: Add autoload settings for `starttls-negotiate',
1178         `sasl-find-mechanism', `sasl-make-client', `sasl-mechanism-name',
1179         `sasl-next-step', `sasl-step-data' and `sasl-step-set-data'; bind
1180         `sasl-mechanisms'.
1181
1182         * elmo-imap4.el: Don't require `sasl'; remove autoload settings
1183         for `starttls-open-stream' and `starttls-negotiate'.
1184
1185         * elmo-nntp.el: Remove autoload settings for
1186         `starttls-open-stream' and `starttls-negotiate'.
1187
1188         * elmo-pop3.el: Don't require `sasl'; remove autoload settings
1189         for `starttls-open-stream' and `starttls-negotiate'; don't enclose
1190         `luna-define-class' with `eval-and-compile'.
1191
1192 2000-12-01  Kenichi OKADA  <okada@opaopa.org>
1193
1194         * elmo-util.el (elmo-read-search-condition-internal):
1195         Require an element of table for searching field.
1196
1197 2000-11-30  Yuuichi Teranishi  <teranisi@gohome.org>
1198
1199         * elmo-version.el (elmo-version): Up to 2.5.4.
1200
1201 2000-11-26  Kenichi OKADA  <okada@opaopa.org>
1202
1203         * elmo-nntp.el (elmo-network-initialize-session): Accept response 20[01].
1204
1205 2000-11-24  Kenichi OKADA  <okada@opaopa.org>
1206
1207         * elmo-nntp.el (elmo-network-initialize-session): omitted.
1208
1209 2000-11-22  Kenichi OKADA  <okada@opaopa.org>
1210
1211         * elmo-nntp.el (elmo-network-initialize-session): Skip garbage output
1212         before greeting.
1213
1214 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
1215
1216         * elmo-imap4.el (elmo-imap4-delete-folder):
1217         Send "close" before "delete" (Use commented out line).
1218         (elmo-imap4-rename-folder): Ditto.
1219
1220         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
1221         folder string itself.
1222         (elmo-dop-list-deleted): New function.
1223         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
1224         killed.
1225
1226         * elmo-util.el (elmo-string-rassoc-all): New function.
1227
1228 2000-11-22  Yuuichi Teranishi  <teranisi@gohome.org>
1229
1230         * elmo-version.el (elmo-version): Up to 2.5.3.
1231
1232         * elmo-net.el (elmo-network-get-session): Changed logic for
1233         checking process status.
1234
1235         * elmo-pop3.el (elmo-network-close-session): Do nothing if session
1236         process is nil;
1237         Changed logic for checking process status.
1238
1239 2000-11-20  Yuuichi Teranishi  <teranisi@gohome.org>
1240
1241         * elmo-pop3.el (elmo-network-initialize-session): Skip garbage output
1242         before greeting.
1243         (elmo-network-setup-session): Set UIDL hash size according to
1244         the length of list response.
1245         (elmo-pop3-parse-list-response): Setup elmo-pop3-size-hash
1246         according to the length of list response;
1247         Return the length of list response.
1248         (Adviced by OKAZAKI Tetsurou <okazaki@be.to>)
1249
1250 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
1251
1252         * elmo-imap4.el (toplevel): Require 'ssl.
1253         Add autoload 'starttls.
1254         * elmo-pop3.el (toplevel): Ditto.
1255         * elmo-nntp.el (toplevel): Ditto.
1256
1257 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1258
1259         * elmo-imap4.el (toplevel): defun at compile time.
1260         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
1261         sasl-next-step, sasl-step-data, sasl-step-set-data.
1262         * elmo-pop3.el (toplevel): Ditto.
1263
1264 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1265
1266         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
1267
1268 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1269
1270         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
1271         if error.
1272         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
1273         and `elmo-pop-auth-apop'.
1274
1275 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1276
1277         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
1278
1279 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1280
1281         * elmo-pop3.el (elmo-network-authenticate-session): Split
1282         encoded response value.
1283
1284 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1285
1286         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
1287         `elmo-pop3-force-login'.
1288         Redefine `sasl-mechanisms'.
1289         * elmo-vars.el (elmo-pop3-force-login): Ditto.
1290
1291 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1292
1293         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
1294         Delete `elmo-imap4-authenticator-alist'.
1295         (elmo-imap4-auth-cram-md5): Delete.
1296         (elmo-imap4-auth-digest-md5): Delete.
1297
1298 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1299
1300         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
1301         (elmo-pop3-auth-scram-md5): Ditto.
1302         (elmo-pop3-auth-cram-md5): Ditto.
1303
1304 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
1305
1306         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
1307         Delete `elmo-pop3-authenticator-alist'.
1308
1309 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
1310
1311         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
1312         new SASL API.
1313         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
1314
1315 2001-01-30  Yuuichi Teranishi  <teranisi@gohome.org>
1316
1317         * elmo-util.el (elmo-folder-local-p): Treat pipe and filter.
1318
1319 2001-01-19  Yuuichi Teranishi  <teranisi@gohome.org>
1320
1321         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
1322         Fixed problem when `elmo-pop3-use-uidl' is nil.
1323         (Reported by Takenobu Sugiyama <sugiyama@ae.advantest.co.jp>)
1324
1325 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
1326
1327         * elmo-version.el (elmo-version): Up to 2.5.2.
1328
1329 2001-01-16  Yuuichi Teranishi  <teranisi@gohome.org>
1330
1331         * elmo-pop3.el (elmo-pop3-sort-overview-by-original-number):
1332         New function.
1333         (elmo-pop3-sort-msgdb-by-original-number): Ditto.
1334         (elmo-pop3-msgdb-create-as-numlist): Use it.
1335
1336         * elmo-imap4.el (elmo-imap4-arrival-filter): Check process-buffer.
1337         (Based on the report by AMAKAWA Shuhei <sa264@cam.ac.uk>)
1338
1339         * elmo-pop3.el (elmo-pop3-msgdb-create-as-numlist): Sort msgdb by date.
1340         (Pointed out by Mikiya Tani <m-tani@hml.cl.nec.co.jp>)
1341
1342 2001-01-13 Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
1343
1344         * elmo2.el (elmo-make-folder-numbers-list): Fixed problem
1345         when elmo-mark-as-read is called with second argument nil.
1346
1347 2001-01-12  Yuuichi Teranishi  <teranisi@gohome.org>
1348
1349         * elmo-pipe.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
1350         Moved to elmo-util.el.
1351
1352         * elmo-util.el (elmo-pipe-spec-src, elmo-pipe-spec-dst):
1353         Moved from elmo-pipe.el
1354
1355         * elmo-archive.el (elmo-archive-call-process): Enclose with
1356         static-if.
1357
1358         * elmo-imap4.el (elmo-imap4-read-msg): Use "BODY[]" instead of
1359         "RFC822" (because RFC822.PEEK is obsolete).
1360         (Adviced by IMAI Takeshi <imai@on.rim.or.jp>)
1361
1362 2001-01-10  Katsumi Yamaoka    <yamaoka@jpl.org>
1363
1364         * elmo-archive.el (elmo-archive-call-process): Don't check for
1365         the exit status when Nemacs is running.
1366
1367 2001-01-09  Yuuichi Teranishi  <teranisi@gohome.org>
1368
1369         * elmo-net.el (elmo-network-session-password-key): Don't set default to
1370         'plain.
1371
1372         * elmo-util.el (elmo-imap4-get-spec): Set default of auth to 'clear.
1373         (elmo-pop3-get-spec): Set default of auth to 'user.
1374
1375         * elmo-imap4.el (elmo-imap4-session-check):
1376         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
1377         (elmo-imap4-clear-login): New function; Renamed from `elmo-imap4-login'.
1378         (elmo-imap4-auth-login): New function; Revival.
1379         (elmo-network-authenticate-session): Use `elmo-imap4-clear-login' and
1380         `elmo-imap4-auth-login'.
1381
1382 2000-12-29  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1383
1384         * elmo2.el (toplevel): Move `product-provide' declare.
1385         * mmelmo.el (toplevel): Ditto.
1386
1387 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
1388
1389         * elmo-util.el (elmo-folder-get-store-type): Rewrite.
1390
1391 2000-12-26  OKAZAKI Tetsurou <okazaki@be.to>
1392
1393         * elmo-util.el (elmo-folder-get-store-type): New function.
1394         (elmo-folder-direct-copy-p): Use it.
1395
1396 2000-12-26  Yuuichi Teranishi  <teranisi@gohome.org>
1397
1398         * elmo-imap4.el (elmo-imap4-msgdb-create): Set
1399         `elmo-imap4-fetch-callback-data' as a cons cell of `args'
1400         and result of `elmo-imap4-use-flag-p'.
1401         (elmo-imap4-fetch-callback-1): Set mark according to
1402         the result of `elmo-imap4-use-flag-p'.
1403
1404 2000-12-22  Yuuichi Teranishi  <teranisi@gohome.org>
1405
1406         * elmo-msgdb.el (elmo-generic-folder-diff): Moved from elmo2.el
1407         (elmo-generic-list-folder-unread): Ditto.
1408         (elmo-folder-get-info): Ditto.
1409         (elmo-folder-set-info-max-by-numdb): Ditto.
1410         (elmo-folder-get-info-max): Ditto.
1411         (elmo-folder-get-info-length): Ditto.
1412         (elmo-folder-get-info-unread): Ditto.
1413         (elmo-folder-info-make-hashtb): Ditto.
1414
1415         * elmo2.el: Removed above functions.
1416
1417 2000-11-21  Kenichi OKADA  <okada@opaopa.org>
1418
1419         * elmo-imap4.el (toplevel): Require 'ssl.
1420         Add autoload 'starttls.
1421         * elmo-pop3.el (toplevel): Ditto.
1422         * elmo-nntp.el (toplevel): Ditto.
1423
1424 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1425
1426         * elmo-imap4.el (toplevel): defun at compile time.
1427         sasl-find-mechanism, sasl-make-client, sasl-mechanism-name,
1428         sasl-next-step, sasl-step-data, sasl-step-set-data.
1429         * elmo-pop3.el (toplevel): Ditto.
1430
1431 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1432
1433         * elmo-imap4.el (elmo-network-authenticate-session): Use `elmo-imap4-login'
1434
1435 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1436
1437         * elmo-pop3.el (elmo-pop3-auth-apop): Signal `elmo-pop-auth-apop'
1438         if error.
1439         (elmo-network-authenticate-session): Use `elmo-pop-auth-user'
1440         and `elmo-pop-auth-apop'.
1441
1442 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1443
1444         * elmo-pop3.el (elmo-network-authenticate-session): Fix for `APOP'.
1445
1446 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1447
1448         * elmo-pop3.el (elmo-network-authenticate-session): Split
1449         encoded response value.
1450
1451 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1452
1453         * elmo-pop3.el (elmo-network-authenticate-session): Abolish
1454         `elmo-pop3-force-login'.
1455         Redefine `sasl-mechanisms'.
1456         * elmo-vars.el (elmo-pop3-force-login): Ditto.
1457
1458 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1459
1460         * elmo-imap4.el (toplevel): Delete defun-maybe for sasl-*.
1461         Delete `elmo-imap4-authenticator-alist'.
1462         (elmo-imap4-auth-cram-md5): Delete.
1463         (elmo-imap4-auth-digest-md5): Delete.
1464
1465 2000-11-20  Kenichi OKADA  <okada@opaopa.org>
1466
1467         * elmo-pop3.el (elmo-pop3-auth-digest-md5): Delete.
1468         (elmo-pop3-auth-scram-md5): Ditto.
1469         (elmo-pop3-auth-cram-md5): Ditto.
1470
1471 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
1472
1473         * elmo-pop3.el (toplevel): Delete defun-maybe for sasl-*.
1474         Delete `elmo-pop3-authenticator-alist'.
1475
1476 2000-11-19  Kenichi OKADA  <okada@opaopa.org>
1477
1478         * elmo-pop3.el (elmo-network-authenticate-session): Rewrite for
1479         new SASL API.
1480         * elmo-imap4.el (elmo-network-authenticate-session): Ditto.
1481
1482 \f
1483 2000-12-18  Yuuichi Teranishi  <teranisi@gohome.org>
1484
1485         * elmo-nntp.el (elmo-nntp-get-folders-info): Fixed last change.
1486
1487 2000-12-01  Yuuichi Teranishi  <teranisi@gohome.org>
1488
1489         * elmo-nntp.el (elmo-nntp-get-folders-info):
1490         Fixed problem when '\' character is contained in user-id.
1491         (Reported by Yoichiro Okabe <okabe@wizsoft.co.jp>)
1492
1493 \f
1494 2000-11-28  Yuuichi Teranishi  <teranisi@gohome.org>
1495
1496         * elmo-imap4.el (elmo-imap4-delete-folder):
1497         Send "close" before "delete" (Use commented out line).
1498         (elmo-imap4-rename-folder): Ditto.
1499
1500         * elmo-dop.el (elmo-dop-queue-append): Use `elmo-string' to get
1501         folder string itself.
1502         (elmo-dop-list-deleted): New function.
1503         (elmo-dop-list-folder): Treat result of `elmo-dop-list-deleted' as
1504         killed.
1505
1506         * elmo-util.el (elmo-string-rassoc-all): New function.
1507
1508         * elmo-version.el (elmo-version): Up to 2.5.1.
1509
1510 2000-11-13  Yuuichi Teranishi  <teranisi@gohome.org>
1511
1512         * elmo-pop3.el (elmo-pop3-folder-exists-p): Don't use UIDL.
1513
1514         * elmo-internal.el (elmo-internal-search): Fix last change.
1515
1516 2000-11-08  Yuuichi Teranishi  <teranisi@gohome.org>
1517
1518         * elmo-internal.el (elmo-internal-search): Rewrite.
1519         (Fixed problem which is pointed out by Akihiro MOTOKI
1520         <motoki@da.jp.nec.com>)
1521
1522         * elmo-version.el (elmo-version): Up to 2.5.0.
1523
1524 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
1525
1526         * elmo-imap4.el (elmo-imap4-list-folders): Append authenticate-type.
1527
1528 2000-11-06  Kenichi OKADA  <okada@opaopa.org>
1529
1530         * elmo-imap4.el (elmo-imap4-list-folders): When hierarchy is
1531         non-nil, make hierarchy.
1532
1533 2000-11-05  OKAZAKI Tetsurou  <okazaki@be.to>
1534
1535         * elmo-pipe.el (elmo-pipe-drain): When calling `elmo-list-folder',
1536         `elmo-pop3-use-uidl' must be bound to nil.
1537         (Pointed out by Hiroya Murata <lapis-lazuli@pop06.odn.ne.jp>)
1538
1539 2000-11-02  Yuuichi Teranishi  <teranisi@gohome.org>
1540
1541         * elmo-util.el (elmo-copy-file): Don't cause an error after
1542         `add-name-to-file' failed.
1543
1544         * elmo-pipe.el (elmo-pipe-drain): List folder before loading msgdb.
1545         (Fix by HIROSE Yuuji <yuuji@gentei.org>)
1546
1547 2000-11-01  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1548
1549         * elmo-version.el (elmo-version): Up to 2.3.93.
1550
1551 2000-11-01  Yuuichi Teranishi  <teranisi@gohome.org>
1552
1553         * elmo-util.el (elmo-flatten): New function.
1554
1555 2000-10-31  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1556
1557         * elmo-archive.el (toplevel): Added (C) to copyright notice, and
1558         sync Author header.
1559         * elmo-cache.el (toplevel): Ditto.
1560         * elmo-database.el (toplevel): Ditto.
1561         * elmo-date.el (toplevel): Ditto.
1562         * elmo-dop.el (toplevel): Ditto.
1563         * elmo-filter.el (toplevel): Ditto.
1564         * elmo-imap4.el (toplevel): Ditto.
1565         * elmo-internal.el (toplevel): Ditto.
1566         * elmo-localdir.el (toplevel): Ditto.
1567         * elmo-localnews.el (toplevel): Ditto.
1568         * elmo-maildir.el (toplevel): Ditto.
1569         * elmo-msgdb.el (toplevel): Ditto.
1570         * elmo-multi.el (toplevel): Ditto.
1571         * elmo-net.el (toplevel): Ditto.
1572         * elmo-nntp.el (toplevel): Ditto.
1573         * elmo-pipe.el (toplevel): Ditto.
1574         * elmo-pop3.el (toplevel): Ditto.
1575         * elmo-util.el (toplevel): Ditto.
1576         * elmo-vars.el (toplevel): Ditto.
1577         * elmo2.el (toplevel): Ditto.
1578         * mmelmo-imap4.el (toplevel): Ditto.
1579         * mmelmo.el (toplevel): Ditto.
1580
1581         * elmo-version.el (elmo-version): Move to top.
1582
1583         * elmo-cache.el (toplevel): Fixed multiple Author header format.
1584         * elmo-imap4.el (toplevel): Ditto.
1585         * elmo-localdir.el (toplevel): Ditto.
1586         * elmo-msgdb.el (toplevel): Ditto.
1587         * elmo-nntp.el (toplevel): Ditto.
1588         * elmo-pop3.el (toplevel): Ditto.
1589         * elmo-version.el (toplevel): Ditto.
1590
1591         * elmo-localnews.el (toplevel): Added Keyword header.
1592
1593 2000-10-31  Yuuichi Teranishi  <teranisi@gohome.org>
1594
1595         * elmo-version.el (product-version-as-string): Defined using
1596         `defun-maybe'.
1597         (toplevel): Use it.
1598
1599         * elmo-localdir.el (toplevel): Updated copyright notice.
1600         * elmo-version.el (toplevel): Ditto.
1601         * elmo-msgdb.el (toplevel): Ditto.
1602         * elmo-imap4.el (toplevel): Ditto.
1603         * elmo-nntp.el (toplevel): Ditto.
1604         * elmo-pop3.el (toplevel): Ditto.
1605
1606 2000-10-30  Yuuichi Teranishi  <teranisi@gohome.org>
1607
1608         * elmo-pipe.el (elmo-pipe-drain): Don't save msgdb after moving
1609         messages.
1610
1611         * mmelmo.el (mime-parse-parameters-from-list): Don't downcase
1612         parameter value (It sometimes contains raw kanji).
1613
1614 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
1615
1616         * elmo-imap4.el (elmo-network-initialize-session): Check capability.
1617         * elmo-pop3.el (elmo-network-initialize-session): Ditto.
1618
1619 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
1620
1621         * elmo-imap4.el (elmo-network-initialize-session): Fix.
1622
1623 2000-10-28  Kenichi OKADA  <okada@opaopa.org>
1624
1625         * elmo-imap4.el (elmo-network-initialize-session): Change error message.
1626         * elmo-pop3.el (elmo-network-initialize-session): Change error message.
1627
1628 2000-10-27  Yuuichi Teranishi  <teranisi@gohome.org>
1629
1630         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Return response
1631         value if selecting folder succceeded.
1632         (Advised by MII Kazuyoshi <mii@isl.ntt.co.jp> for prom-wl.)
1633
1634 2000-10-26  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1635
1636         * elmo-util.el (elmo-make-directory): Fixed permission lateral
1637         representation.
1638
1639         * elmo-util.el (elmo-string-matched-member): New function.
1640
1641 2000-10-26  Yuuichi Teranishi  <teranisi@gohome.org>
1642
1643         * elmo-util.el (elmo-unintern): New macro.
1644         (elmo-number-set-member): Fixed docstring.
1645
1646         * elmo-imap4.el (elmo-imap4-parse-response): Call `elmo-unintern' for
1647         tag token.
1648
1649 2000-10-25  OKAZAKI Tetsurou  <okazaki@be.to>
1650
1651         * elmo-imap4.el (elmo-imap4-client-eol): Remove duplicated defvar
1652         of `elmo-imap4-status' and `elmo-imap4-reached-tag'.
1653
1654 2000-10-24  Yuuichi Teranishi  <teranisi@gohome.org>
1655
1656         * elmo-imap4.el (elmo-imap4-session-select-mailbox): Added argument
1657         `no-error'.
1658         Added docstring.
1659         Return non-nil if selecting folder succeeded.
1660         (elmo-imap4-folder-exists-p): Call with argument 'no-error.
1661
1662 2000-10-23  Yuuichi Teranishi  <teranisi@gohome.org>
1663
1664         * elmo-maildir.el (elmo-maildir-get-filename): Fixed problem when
1665         `file-name-completion' returns t.
1666         (Reported by Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>)
1667         (elmo-maildir-set-mark): Put `info' part to the files in the cur
1668         directory if it does not exist.
1669         (elmo-maildir-update-current): Use `while' instead of `mapcar'
1670         for iteration.
1671
1672 2000-10-20  Yuuichi Teranishi  <teranisi@gohome.org>
1673
1674         * elmo-imap4.el (elmo-imap4-folder-exists-p): Removed `condition-case'
1675         enclosure (It's harmful in unplugged status).
1676
1677         * elmo-pop3.el (elmo-pop3-folder-exists-p): Ditto.
1678
1679         * mmelmo-1.el: Removed.
1680
1681         * mmelmo-2.el: Ditto.
1682
1683         * mmelmo-imap4-1.el: Ditto.
1684
1685         * mmelmo-imap4-2.el: Ditto.
1686
1687         * mmelmo-imap4.el: Merged mmelmo-imap4-2.el
1688
1689         * mmelmo.el: Merged mmelmo-2.el.
1690
1691         * elmo-version.el (elmo-version): Up to 2.3.92.
1692
1693 2000-10-19  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1694
1695         * elmo2.el (elmo-move-msgs, elmo-msgdb-load, elmo-msgdb-save,
1696         elmo-update-number): Remove last period in "...done." message.
1697         * elmo-archive.el (elmo-archive-msgdb-create-as-numlist-subr1):
1698         Ditto.
1699         * elmo-cache.el (elmo-cache-expire-by-size,
1700         elmo-cache-get-sorted-cache-file-list,
1701         elmo-cache-msgdb-create-as-numlist): Ditto.
1702         * elmo-dop.el (elmo-dop-save-pending-messages,
1703         (elmo-dop-flush-pending-append-operations): Ditto.
1704         * elmo-imap4.el (elmo-imap4-msgdb-create): Ditto.
1705         * elmo-internal.el (elmo-internal-msgdb-create): Ditto.
1706         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist,
1707         (elmo-localdir-pack-number): Ditto.
1708         * elmo-maildir.el (elmo-maildir-msgdb-create): Ditto.
1709         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Ditto.
1710         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer,
1711         mime-write-entity-content): Ditto.
1712         * pldap.el (ldap-search-basic): Ditto.
1713
1714 2000-10-18  Yuuichi Teranishi  <teranisi@gohome.org>
1715
1716         * elmo-version.el (elmo-version): Up to 2.3.91.
1717
1718         * elmo-filter.el (elmo-filter-folder-diff): Use target folder's diff
1719         Only when filter is 'last'.
1720
1721         * elmo-util.el (elmo-condition-atom-regexp): New constant.
1722         (elmo-condition-parse-search-value): Use it.
1723         (elmo-read-search-condition-internal): Quote value only when
1724         it is not an atom.
1725
1726 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
1727
1728         * elmo2.el (elmo-generic-folder-diff): Fix.
1729
1730 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
1731
1732         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
1733         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
1734         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
1735         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
1736         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
1737         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
1738
1739 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
1740
1741         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
1742         extra-fields.
1743
1744 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
1745
1746         * elmo-version.el (elmo-version): Up to 2.3.90.
1747
1748         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
1749         (elmo-imap4-list-folder-important): Ditto.
1750
1751 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
1752
1753         * elmo-nntp.el (elmo-network-initialize-session): Fix.
1754
1755 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
1756
1757         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
1758
1759 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
1760
1761         * elmo-nntp.el (elmo-network-initialize-session):
1762         Add starttls negotiation.
1763
1764 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1765
1766         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
1767         response.
1768         (elmo-network-setup-session): Define.
1769         Call `elmo-nntp-send-mode-reader' when session opened.
1770
1771 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
1772
1773         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
1774
1775 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
1776
1777         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
1778         an invalid SPACE character ahead of `SEARCH' command.  Move
1779         a valid SPACE character following `SEARCH' from conditional
1780         `format' arguments to control-strings.
1781
1782 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
1783
1784         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
1785         was succeeded.
1786
1787         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
1788
1789 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
1790
1791         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
1792         `w32-get-true-file-link-count' as t.
1793
1794         * elmo-imap4.el (elmo-imap4-read): Abolished.
1795         (Renamed to `elmo-read' and moved to elmo-util.el)
1796         All other related portions are changed.
1797
1798         * elmo-util.el (elmo-read): New function.
1799         (elmo-condition-parse-search-value): Use it.
1800
1801 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
1802
1803         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
1804
1805         * elmo-nntp.el (elmo-nntp-session): Define.
1806         (elmo-nntp-setting): Abolished.
1807         All other related portions are changed.
1808         (elmo-nntp-get-server-command): Changed argument.
1809         (elmo-nntp-set-server-command): Ditto.
1810         (elmo-nntp-xover-p): Ditto.
1811         (elmo-nntp-set-xover): Ditto.
1812         (elmo-nntp-listgroup-p): Ditto.
1813         (elmo-nntp-set-listgroup): Ditto.
1814         (elmo-nntp-list-active-p): Ditto.
1815         (elmo-nntp-set-list-active): Ditto.
1816         (elmo-nntp-xhdr-p): Ditto.
1817         (elmo-nntp-set-xhdr): Ditto.
1818         (elmo-nntp-flush-connection): Abolished.
1819         (elmo-nntp-get-connection): Abolished.
1820         (elmo-nntp-get-session): New function.
1821         (elmo-network-initialize-session): Defined.
1822         (elmo-network-authenticate-session): Ditto.
1823         (elmo-nntp-send-mode-reader): Changed argument.
1824         (elmo-nntp-send-command): Changed argument.
1825         All other related portions are changed.
1826         (elmo-nntp-read-response): Ditto.
1827         (elmo-nntp-read-raw-response): Ditto.
1828         (elmo-nntp-read-contents): Ditto.
1829         (elmo-nntp-read-body): Ditto.
1830         (elmo-nntp-goto-folder): Abolished.
1831         (elmo-nntp-select-group): New function.
1832         All other related portions are changed.
1833         (This function substitutes `elmo-nntp-goto-folder')
1834         (elmo-nntp-msgdb-create-by-header): Rewrite.
1835         (elmo-nntp-get-overview): Eliminated.
1836         (elmo-nntp-get-message): Ditto.
1837         (elmo-nntp-open-connection) Abolished.
1838         (elmo-nntp-read-msg): Rewrite.
1839         (elmo-nntp-post): Ditto.
1840         (elmo-nntp-send-data): Abolished.
1841         (elmo-nntp-send-buffer): New function.
1842         (elmo-nntp-send-data-line): Define as inline function.
1843         (elmo-nntp-get-folders-info-prepare): Use session as key.
1844         (elmo-nntp-groups-read-response): Changed argument.
1845         (elmo-nntp-retrieve-headers): Ditto.
1846         (elmo-nntp-msgdb-create-message): Ditto.
1847
1848         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
1849         when searching by 'since' or 'before'.
1850
1851 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1852
1853         * elmo-version.el (toplevel): Use product-version-as-string for set
1854         verstion-string, if defined.
1855
1856 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
1857
1858         * elmo-util.el: Doc fixes.
1859
1860 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1861
1862         * elmo-archive.el (toplevel): Use product-provide.
1863         * elmo-cache.el (toplevel): Ditto.
1864         * elmo-database.el (toplevel): Ditto.
1865         * elmo-date.el (toplevel): Ditto.
1866         * elmo-dop.el (toplevel): Ditto.
1867         * elmo-filter.el (toplevel): Ditto.
1868         * elmo-imap4.el (toplevel): Ditto.
1869         * elmo-internal.el (toplevel): Ditto.
1870         * elmo-localdir.el (toplevel): Ditto.
1871         * elmo-localnews.el (toplevel): Ditto.
1872         * elmo-maildir.el (toplevel): Ditto.
1873         * elmo-msgdb.el (toplevel): Ditto.
1874         * elmo-multi.el (toplevel): Ditto.
1875         * elmo-net.el (toplevel): Ditto.
1876         * elmo-nntp.el (toplevel): Ditto.
1877         * elmo-pipe.el (toplevel): Ditto.
1878         * elmo-pop3.el (toplevel): Ditto.
1879         * elmo-util.el (toplevel): Ditto.
1880         * elmo-vars.el (toplevel): Ditto.
1881         * elmo2.el (toplevel): Ditto.
1882         * mmelmo-1.el (toplevel): Ditto.
1883         * mmelmo-2.el (toplevel): Ditto.
1884         * mmelmo-imap4-1.el (toplevel): Ditto.
1885         * mmelmo-imap4-2.el (toplevel): Ditto.
1886         * mmelmo-imap4.el (toplevel): Ditto.
1887         * mmelmo.el (toplevel): Ditto.
1888
1889 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
1890
1891         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
1892         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
1893
1894 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
1895
1896         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
1897         before splitting.
1898         (elmo-multi-split-number-alist): Ditto.
1899
1900 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
1901
1902         * elmo-version.el: New file.  Use product.el.
1903         * elmo2.el: Add (require 'elmo-version).
1904         * elmo-vars.el (elmo-appname, elmo-version): Move to
1905         elmo-version.el
1906
1907 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
1908
1909         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
1910         `elmo-msgdb-expand-path'.
1911         (elmo-msgdb-load): Ditto.
1912         Abolished 2nd argument. If 1st argument is not string, treat as spec.
1913         (elmo-generic-list-folder-unread): Rewrite.
1914         (elmo-generic-list-folder-important): Changed argument.
1915         (elmo-list-folder-unread): Ditto.
1916         (elmo-list-folder-important): Ditto.
1917         (elmo-folder-diff): Rewrite.
1918         (elmo-generic-folder-diff): New function.
1919         (elmo-multi-get-number-alist-list): Abolished
1920         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
1921         (elmo-multi-folder-diff): Moved to elmo-multi.el
1922         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
1923
1924         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
1925         `elmo-msgdb-expand-path'.
1926         (elmo-pop3-msgdb-create-as-numlist): Ditto.
1927         (elmo-pop3-read-msg): Ditto.
1928         (elmo-pop3-delete-msgs): Ditto.
1929         (elmo-pop3-folder-diff): New alias.
1930
1931         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
1932         `elmo-msgdb-expand-path'.
1933         (elmo-pipe-list-folder-unread): Changed arguments.
1934         (elmo-pipe-list-folder-important): Ditto.
1935         (elmo-pipe-folder-diff): New alias.
1936
1937         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
1938         `elmo-msgdb-expand-path'.
1939         (elmo-nntp-max-of-folder): Ditto.
1940         (elmo-nntp-msgdb-create): Ditto.
1941         (elmo-nntp-delete-msgs): Ditto.
1942         (elmo-nntp-folder-diff): New alias.
1943
1944         * elmo-multi.el (elmo-multi-folder-diff): New function.
1945         (elmo-multi-split-mark-alist): Ditto.
1946         (elmo-multi-split-number-alist): Ditto.
1947         (elmo-multi-mark-alist-list): Abolished (Renamed to
1948         elmo-multi-split-mark-alist).
1949         (elmo-multi-list-folder-unread): Rewrite.
1950         (elmo-multi-list-folder-important): Ditto.
1951         (elmo-multi-list-folder): Set `spec' as 1st argument for
1952         `elmo-msgdb-expand-path'.
1953         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
1954         instead of `elmo-multi-get-number-alist-list'.
1955
1956         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
1957         If 1st argument is not string, treat as spec.
1958         (elmo-list-folder-by-location): Set `spec' as 1st argument for
1959         `elmo-msgdb-expand-path'.
1960         (elmo-msgdb-flist-load): Ditto.
1961         (elmo-msgdb-flist-save): Ditto.
1962         (elmo-msgdb-delete-path): Ditto.
1963         (elmo-msgdb-rename-path): Ditto.
1964
1965         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
1966         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
1967         (elmo-maildir-delete-mark-msgs): Ditto.
1968         (elmo-maildir-msgdb-create): Ditto.
1969         (elmo-maildir-read-msg): Ditto.
1970         (elmo-maildir-delete-msgs): Ditto.
1971         (elmo-maildir-list-folder-subr): Ditto.
1972         (elmo-maildir-search): Ditto.
1973         (elmo-maildir-get-msg-filename): Ditto.
1974         (elmo-maildir-pack-number): Ditto.
1975         (elmo-maildir-folder-diff): New alias.
1976
1977         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
1978
1979         * elmo-localdir.el (elmo-localdir-list-folder-subr):
1980         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
1981         (elmo-localdir-folder-diff): New alias.
1982
1983         * elmo-internal.el (elmo-internal-list-folder-subr):
1984         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
1985         (elmo-internal-list-folder-by-location): Ditto.
1986         (elmo-internal-msgdb-create): Ditto.
1987         (elmo-internal-delete-msgs): Ditto.
1988         (elmo-internal-read-msg): Ditto.
1989         (elmo-internal-folder-diff): New alias.
1990
1991         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
1992         (elmo-imap4-list-folder): Set `spec' as 1st argument for
1993         `elmo-msgdb-expand-path'.
1994         (elmo-imap4-list-folder-unread): Changed arguments.
1995         (elmo-imap4-list-folder-important): Ditto.
1996
1997         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
1998         (elmo-filter-list-folder-important): Ditto.
1999         (elmo-filter-folder-diff): New function.
2000
2001         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
2002
2003         * elmo-cache.el (elmo-cache-list-folder):
2004         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
2005         (elmo-cache-copy-msgs): Ditto.
2006         (elmo-cache-folder-diff): New alias.
2007
2008         * elmo-archive.el (elmo-archive-list-folder-subr):
2009         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
2010         (elmo-archive-get-archive-name): Ditto.
2011         (elmo-archive-create-file): Ditto.
2012         (elmo-archive-append-msg): Ditto.
2013         (elmo-archive-copy-msgs): Ditto.
2014         (elmo-archive-copy-msgs-froms): Ditto.
2015         (elmo-archive-get-msg-filename): Ditto.
2016         (elmo-archive-folder-diff): New alias.
2017
2018 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
2019
2020         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
2021         (elmo-pop3-stream-type-alist): New variable.
2022         (elmo-nntp-stream-type-alist): New variable.
2023
2024         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
2025         (elmo-kill-buffer): Ditto.
2026         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
2027         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
2028         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
2029         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
2030         (elmo-imap4-get-spec): Take into account
2031         `elmo-imap4-stream-type-alist'.
2032
2033 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
2034
2035         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
2036         (elmo-nntp-list-folders-get-cache): Ditto.
2037
2038 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
2039
2040         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
2041         character before 'uid'.
2042
2043 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
2044
2045         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
2046
2047         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
2048
2049         * elmo-util.el (elmo-number-set-member): New function.
2050         (elmo-number-set-append-list): Ditto.
2051         (elmo-number-set-append): Ditto.
2052
2053         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
2054         Use `elmo-number-set-member'.
2055         (elmo-living-messages): Ditto.
2056         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
2057         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
2058
2059         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
2060         (elmo-imap4-add-to-cont-list): Abolished.
2061         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
2062         instead of elmo-imap4-add-to-cont-list.
2063
2064         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
2065         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
2066
2067         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
2068
2069 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
2070
2071         * elmo-util.el (elmo-condition-parse-search-value):
2072         Fixed date parsing.
2073
2074 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
2075
2076         * elmo-util.el (elmo-condition-find-key-internal): New function.
2077         (elmo-condition-find-key): Ditto.
2078
2079         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
2080         (elmo-msgdb-search-internal): Ditto.
2081         (elmo-msgdb-search): Ditto.
2082
2083 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
2084
2085         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
2086         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
2087
2088         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
2089         (elmo-nntp-search-primitive): Fixed problem when condition is
2090         'unmatch'.
2091
2092         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
2093
2094         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
2095         (elmo-nntp-xhdr-p): New macro.
2096         (elmo-nntp-set-xhdr): Ditto.
2097         (elmo-nntp-parse-xhdr-response): New function.
2098         (elmo-nntp-retrieve-field): Ditto.
2099         (elmo-nntp-search-primitive): Ditto.
2100         (elmo-nntp-search): Implemented.
2101
2102         * elmo-date.el (elmo-date-make-sortable-string): New macro.
2103
2104         * elmo-archive.el (elmo-archive-search): Set all number list to
2105         `elmo-archive-field-condition-match'
2106
2107         * elmo-localdir.el (elmo-localdir-search): Likewise.
2108
2109         * elmo-maildir.el (elmo-maildir-search): Likewise.
2110
2111 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
2112
2113         * elmo-msgdb.el (elmo-living-messages): New function.
2114         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
2115         * elmo-cache.el (elmo-cache-list-folder): Ditto.
2116         * elmo-dop.el (elmo-dop-list-folder): Ditto.
2117         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
2118         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
2119         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
2120         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
2121         * elmo-multi.el (elmo-multi-list-folder): Ditto.
2122         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
2123         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
2124         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
2125
2126 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
2127
2128         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
2129
2130         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
2131
2132         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
2133
2134         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
2135         arguments for `SEARCH' command.
2136         (elmo-imap4-parse-string): Set `POS' argument for char-after.
2137         All other related portions are changed.
2138
2139         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
2140
2141         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
2142         (elmo-list-folder-unread): Rewrite.
2143         (elmo-list-folder-important): Ditto.
2144
2145         * elmo-util.el (elmo-filter-get-spec): Rewrite.
2146         (elmo-condition-parse-error): New inline function.
2147         (elmo-read-search-condition): New function.
2148         (elmo-read-search-condition-internal): Ditto.
2149         (elmo-parse-search-condition): Rewrite.
2150         (elmo-condition-parse): New function.
2151         (elmo-condition-parse-or-expr): Ditto.
2152         (elmo-condition-parse-and-expr): Ditto.
2153         (elmo-condition-parse-primitive): Ditto.
2154         (elmo-condition-parse-search-value): Ditto.
2155         (elmo-buffer-field-primitive-condition-match): Ditto.
2156         (elmo-buffer-field-condition-match): Rewrite.
2157         (elmo-file-field-condition-match): Ditto.
2158
2159         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
2160         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
2161
2162         * elmo-internal.el (elmo-internal-search): Set `number' and
2163         `number-list' argument of `elmo-file-field-condition-match'.
2164
2165         * elmo-maildir.el (elmo-maildir-search): Ditto.
2166
2167         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
2168         `msgdb' as argument instead of `mark-alist'.
2169         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
2170         `overview'.
2171
2172         * elmo-multi.el: Likewise.
2173
2174         * elmo-pipe.el: Likewise.
2175
2176         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
2177         (elmo-imap4-search-internal): Rewrite.
2178         (elmo-imap4-search): Ditto.
2179
2180         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
2181         (elmo-filter-list-folder-unread): Ditto.
2182         (elmo-filter-list-folder-important): Ditto.
2183         (elmo-filter-search): Rewrite.
2184
2185         * elmo-cache.el (elmo-cache-search-all): Set `number' and
2186         `number-list' argument of `elmo-file-field-condition-match'.
2187         (elmo-cache-search): Ditto.
2188
2189         * elmo-localdir.el: Likewise.
2190
2191         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
2192         number-list and pass it to `elmo-buffer-field-condition-match'.
2193         (elmo-archive-field-condition-match): Pass `number-list' to
2194         `elmo-archive-field-condition-match'
2195
2196 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2197
2198         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
2199         `listgroup'.
2200
2201         * elmo2.el (elmo-folder-diff-async-callback): New variable.
2202         (elmo-folder-diff-async-callback-data): Ditto.
2203         (elmo-folder-diff-async): New function.
2204
2205         * elmo-net.el (elmo-network-session-name-prefix): New variable.
2206         (elmo-network-session-cache-key): Use it as a prefix of the session
2207         name.
2208         (elmo-network-open-session): Ditto.
2209
2210         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
2211         (elmo-imap4-status-callback-data): Ditto.
2212         (elmo-imap4-server-diff-async-callback): New variable.
2213         (elmo-imap4-server-diff-async-callback-data): Ditto.
2214         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
2215         `elmo-imap4-status-callback-data'.
2216         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
2217         `elmo-imap4-status-callback-data' as nil.
2218         (elmo-imap4-server-diff): Ditto.
2219         (elmo-imap4-server-diff-async-callback-1): New function.
2220         (elmo-imap4-server-diff-async): Ditto.
2221         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
2222
2223 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
2224
2225         * elmo-util.el (elmo-list-delete): Doc fix.
2226         (elmo-delete-lists): Abolish.
2227         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
2228         instead of `elmo-delete-lists'.
2229
2230 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
2231
2232         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
2233         before `sort'.
2234
2235 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
2236
2237         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
2238         `elmo-imap4-literal-subr'.
2239         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
2240         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
2241
2242 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
2243
2244         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
2245         (elmo-archive-list-folder): Fix.
2246         (elmo-archive-max-of-folder): Fix.
2247
2248 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
2249
2250         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
2251          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
2252         (elmo-localdir-append-msg): Ditto.
2253         (elmo-localdir-list-folder): Fix for `nonsort'.
2254         (elmo-localdir-list-folder-subr): Fix for `killed'.
2255         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
2256         (elmo-maildir-list-folder-subr): Ditto.
2257         * elmo-archive.el (elmo-archive-list-folder): Ditto.
2258         (elmo-archive-list-folder-subr): Ditto.
2259         * elmo-internal.el (elmo-internal-list-folder): Ditto.
2260         (elmo-internal-list-folder-subr): Ditto.
2261
2262 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
2263
2264         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
2265
2266 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
2267
2268         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
2269
2270 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
2271
2272         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
2273         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
2274
2275         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
2276         before greeting.
2277         (elmo-imap4-read-part): Use "body.peek" to fetch part.
2278         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
2279
2280 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
2281
2282         * mmelmo-imap4-2.el (mime-entity-children): Defined.
2283
2284         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
2285         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
2286         before STORE command.
2287
2288 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
2289
2290         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
2291
2292         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
2293         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
2294         of `response'.
2295         (elmo-imap4-list-folders): Removed unused local variable.
2296         (elmo-network-initialize-session): Ditto.
2297         (elmo-imap4-delete-msg-by-id): Ditto.
2298         (elmo-imap4-parse-fetch): Ditto.
2299         (elmo-imap4-copy-msgs): Ditto.
2300         Use `dst-spec' instead of `dst-folder'.
2301         (elmo-network-authenticate-session): Check authenticate type `plain'.
2302
2303 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
2304
2305         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
2306         garbage checking.
2307         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
2308         `elmo-imap4-response-value'.
2309         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
2310
2311 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
2312
2313         * elmo-imap4.el (elmo-imap4-send-command):
2314         Cause elmo-imap4-bye-error when current response is BYE.
2315         (elmo-imap4-arrival-filter): Changed greeting response value.
2316
2317         * elmo2.el (elmo-imap4-bye-error): Define.
2318
2319         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
2320         (elmo-imap4-server-diff): Ditto.
2321         (elmo-imap4-response-bye-p): New macro.
2322         (elmo-imap4-response-error-text): Get text from BYE response.
2323         (elmo-imap4-read-response): Return if BYE response.
2324         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
2325         (elmo-imap4-folder-exists-p): Ditto.
2326         (elmo-imap4-commit): Do nothing when different mailbox is selected.
2327         (elmo-imap4-parse-bye): New function.
2328         (elmo-imap4-parse-response): Remove needless let.
2329         Call `elmo-imap4-parse-bye'.
2330
2331 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
2332
2333         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
2334         the mailbox does not exist.
2335         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
2336
2337 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
2338
2339         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
2340
2341 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
2342
2343         * elmo-vars.el (elmo-search-mime-charset): Abolished.
2344
2345         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
2346         (elmo-network-initialize-session-buffer): Defined.
2347
2348         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
2349         Abolished.
2350         (mmelmo-imap4-get-mime-entity): Rewrite.
2351
2352         * elmo2.el (elmo-error): Capitalize error message.
2353
2354         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
2355         (elmo-network-session-buffer): New macro.
2356         (elmo-network-open-session): Use it.
2357
2358         * elmo-imap4.el: Rewrite.
2359
2360 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
2361
2362         * elmo-nntp.el (Toplevel): Require 'elmo-net.
2363
2364 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
2365
2366         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
2367         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
2368         (elmo-imap4-create-msgdb-from-overview-string): Use
2369         `elmo-msgdb-create-overview-from-buffer'.
2370
2371 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
2372
2373         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
2374         (elmo-imap4-default-hierarchy-delimiter): New variable.
2375         (elmo-imap4-list-folders): Use it.
2376
2377 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
2378
2379         * elmo-net.el (elmo-network-open-session): Add user and
2380         stream-type for process-buffer name.
2381
2382         * elmo-pop3.el (elmo-network-initialize-session): Call
2383         buffer-disable-undo.
2384
2385         * elmo-imap4.el (elmo-network-initialize-session):
2386         Set current-buffer as an argument for `buffer-disable-undo'.
2387
2388         * elmo-pop3.el (elmo-network-close-session): Don't use
2389         `process-live-p'.
2390
2391         * elmo-vars.el (elmo-default-pop3-authenticate-type):
2392         Set default as 'user.
2393
2394         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
2395
2396         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
2397         and `elmo-imap4-flush-connection'.
2398
2399         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
2400         (elmo-pop3-get-spec): Assume auth as symbol.
2401         (elmo-open-network-stream): Moved to `elmo-net'.
2402
2403         * elmo-pop3.el (toplevel): Require 'elmo-net.
2404         Define `sasl-cram-md5' to silence byte compilier.
2405         (elmo-pop3-connection-cache) Abolished.
2406         (elmo-pop3-authenticator-alist) New variable.
2407         (elmo-pop3-session): Define.
2408         (elmo-pop3-connection-get-process): Abolished.
2409         (elmo-pop3-connection-get-buffer): Ditto.
2410         (elmo-pop3-close-connection): Ditto.
2411         (elmo-pop3-flush-connection): Ditto.
2412         (elmo-pop3-get-connection): Ditto.
2413         (elmo-pop3-get-session): New function.
2414         (Replacement for `elmo-pop3-get-connection').
2415         All other related modules are changed.
2416         (elmo-network-close-session): Define.
2417         (elmo-pop3-send-command): Abolished argument `buffer'.
2418         All other related modules are changed.
2419         (elmo-pop3-read-response): Likewise.
2420         (elmo-pop3-open-connection): Abolished.
2421         (elmo-pop3-auth-user): New function.
2422         (elmo-pop3-auth-apop): Ditto.
2423         (elmo-pop3-auth-cram-md5): Ditto.
2424         (elmo-pop3-auth-scram-md5): Ditto.
2425         (elmo-pop3-auth-digest-md5): Ditto.
2426         (elmo-network-initialize-session): Define.
2427         (elmo-network-authenticate-session): Ditto.
2428         (elmo-network-setup-session): Ditto.
2429
2430         * elmo-imap4.el (toplevel): Require 'elmo-net.
2431         (elmo-imap4-session): Define.
2432         (elmo-imap4-connection-cache): Abolished.
2433         (elmo-imap4-password-key): Ditto.
2434         (elmo-imap4-flush-connection): Ditto.
2435         (elmo-imap4-get-connection): Ditto.
2436         All other related modules are changed.
2437         (elmo-imap4-get-session): New function
2438         (Replacement for `elmo-imap4-get-connection').
2439         (elmo-imap4-read-response): Abolished argument `buffer'.
2440         All other related modules are changed.
2441         (elmo-imap4-send-command): Likewise.
2442         (elmo-imap4-select-folder): Abolished.
2443         All other related modules are changed.
2444         (elmo-imap4-select-mailbox): New function.
2445         (Replacement for `elmo-imap4-select-folder').
2446         (elmo-imap4-auth-login): Simplify.
2447         (Assume current buffer as process buffer)
2448         (elmo-imap4-auth-cram-md5): Ditto.
2449         (elmo-imap4-auth-digest-md5): Ditto.
2450         (elmo-imap4-login): Ditto.
2451         (elmo-imap4-open-connection): Abolished.
2452         (elmo-imap4-open-connection-1): Abolished.
2453         (elmo-network-initialize-sessoin): Define.
2454         (elmo-network-authenticate-session): Ditto.
2455         (elmo-network-setup-session): Ditto.
2456
2457         * elmo-net.el: New module.
2458
2459 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
2460
2461         * elmo-util.el (elmo-define-error): New function.
2462
2463         * elmo2.el (elmo-error): Define.
2464         (elmo-open-error): Define.
2465         (elmo-authenticate-error): Define.
2466
2467         * elmo-imap4.el (elmo-imap4-error): Abolish.
2468         (elmo-imap4-error-type): Abolish.
2469         (elmo-imap4-error-process): Abolish.
2470         (elmo-imap4-error-message): Abolish
2471         (elmo-imap4-list-folders): Don't quote lambda.
2472         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
2473         (elmo-imap4-parse-namespace): Ditto.
2474         (elmo-imap4-open-connection): Rewrite.
2475         (elmo-imap4-open-connection-1): Simplified (authenticate only).
2476         (elmo-imap4-get-connection): Abolish local variable `result'.
2477
2478 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
2479
2480         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
2481         wrong-type-argument error when auth is nil.
2482
2483 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
2484
2485         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
2486         (elmo-default-nntp-stream-type): Ditto.
2487         (elmo-default-pop3-stream-type): Ditto.
2488         (elmo-network-stream-type-alist): Ditto.
2489         (elmo-default-imap4-ssl): Abolished.
2490         (elmo-default-nntp-ssl): Ditto.
2491         (elmo-default-pop3-ssl): Ditto.
2492
2493         * elmo-util.el: (toplevel): Removed needless requires.
2494         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
2495         (elmo-open-network-stream): Open network stream according to
2496         the value of `elmo-network-stream-type-alist'.
2497         (elmo-get-network-stream-type): New function.
2498         (elmo-network-stream-type-spec-string): New macro.
2499         (elmo-network-stream-type-symbol): Ditto.
2500         (elmo-network-stream-type-function): Ditto.
2501
2502         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
2503         network-stream-type. All other related portions are changed.
2504         (elmo-pop3-open-connection): Ditto.
2505
2506         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
2507         network-stream-type. All other related portions are changed.
2508
2509         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
2510         network-stream-type.All other related portions are changed.
2511         (elmo-imap4-error): New macro.
2512         (elmo-imap4-error-type): Ditto.
2513         (elmo-imap4-error-process): Ditto.
2514         (elmo-imap4-error-message): Ditto.
2515         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
2516         (elmo-imap4-auth-cram-md5): Ditto.
2517         (elmo-imap4-auth-digest-md5): Ditto.
2518         (elmo-imap4-login): Ditto.
2519         (elmo-imap4-open-connection): Remove password entry if authentication
2520         was in vain.
2521         (elmo-imap4-user-at-host): Abolished.
2522         (elmo-imap4-password-key): New buffer local variable.
2523         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
2524         using protocol, port, auth and stream-type.
2525
2526         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
2527
2528 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
2529
2530         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
2531
2532         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
2533
2534         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
2535         (elmo-imap4-authenticator-alist): New variable.
2536         (elmo-imap4-open-connection-1): Rename from
2537         elmo-imap4-open-connection.
2538         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
2539         only wraps elmo-imap4-open-connection-1.
2540         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
2541         user-at-host.
2542         (elmo-imap4-auth-login): New function.
2543         (elmo-imap4-auth-cram-md5): New function.
2544         (elmo-imap4-auth-digest-md5): New function.
2545         (elmo-imap4-login): New function.
2546
2547 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
2548
2549         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
2550         function `error'.
2551
2552 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
2553
2554         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
2555
2556 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
2557
2558         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
2559
2560 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
2561
2562         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
2563         for server responses, quote `*' regardless of where it appears.
2564
2565 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
2566
2567         * elmo-maildir.el (elmo-maildir-commit): New alias.
2568
2569 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
2570
2571         * elmo-util.el (elmo-display-progress):
2572                 Use `progress-feedback-with-label'.
2573
2574 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
2575
2576         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
2577         (elmo-imap4-non-atom-char-regex): Ditto.
2578         (elmo-imap4-non-text-char-regex): Ditto.
2579         (elmo-imap4-literal-threshold): Ditto.
2580         (elmo-imap4-atom-p): New function.
2581         (elmo-imap4-quotable-p): Ditto.
2582         (elmo-imap4-nil): Ditto.
2583         (elmo-imap4-atom): Ditto.
2584         (elmo-imap4-quoted): Ditto.
2585         (elmo-imap4-literal-subr): Ditto.
2586         (elmo-imap4-literal): Ditto.
2587         (elmo-imap4-buffer-literal): Ditto.
2588         (elmo-imap4-string-subr): Ditto.
2589         (elmo-imap4-string): Ditto.
2590         (elmo-imap4-buffer-string): Ditto.
2591         (elmo-imap4-astring-subr): Ditto.
2592         (elmo-imap4-astring): Ditto.
2593         (elmo-imap4-buffer-astring): Ditto.
2594         (elmo-imap4-nstring): Ditto.
2595         (elmo-imap4-buffer-nstring): Ditto.
2596         (elmo-imap4-mailbox): New alias.
2597         (elmo-imap4-field-body): Ditto.
2598         (elmo-imap4-userid): Ditto.
2599         (elmo-imap4-password): Ditto.
2600         (elmo-imap4-format-quoted): New function.
2601         (elmo-imap4-send-command): Rewritten.  Accept a list of command
2602         arguments and handle "atom", "quoted" and "literal" string here.
2603         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
2604         `elmo-imap4-send-command'.
2605         (elmo-imap4-folder-exists-p): Likewise.
2606         (elmo-imap4-create-folder): Likewise.
2607         (elmo-imap4-delete-folder): Likewise.
2608         (elmo-imap4-rename-folder): Likewise.
2609         (elmo-imap4-max-of-folder): Likewise.
2610         (elmo-imap4-check-validity): Likewise.
2611         (elmo-imap4-sync-validity): Likewise.
2612         (elmo-imap4-server-diff): Likewise.
2613         (elmo-imap4-select-folder): Likewise.
2614         (elmo-imap4-copy-msgs): Likewise.
2615         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
2616         (elmo-imap4-mark-set-on-msgs): Likewise.
2617         (elmo-imap4-read-part): Likewise.
2618         (elmo-imap4-read-msg): Likewise.
2619         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
2620         `elmo-imap4-password' for `elmo-imap4-send-command'.
2621         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
2622         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
2623         `elmo-imap4-buffer-literal'.
2624         (elmo-imap4-append-msg): Likewise.
2625
2626         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
2627         `delete' for removing dead connection from the connection cache.
2628         Move deletion of the process buffer after that.
2629         (elmo-imap4-list): Change `defsubst' to `defun'.
2630         (elmo-imap4-commit): Make error message verbose.
2631         (elmo-imap4-search): Ditto.
2632         (elmo-imap4-list): Ditto.
2633         (elmo-imap4-select-folder): Ditto.
2634         (elmo-imap4-copy-msgs): Ditto.
2635         (elmo-imap4-delete-msg-by-id): Ditto.
2636         (elmo-imap4-append-msg-by-id): Ditto.
2637         (elmo-imap4-append-msg): Ditto.
2638
2639 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
2640
2641         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
2642         when dired is used on XEmacs.
2643
2644 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
2645
2646         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
2647         instead of `append'.
2648         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
2649         `elmo-plugged-p' directly.
2650         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
2651         of `elmo-plugged-p' directly.
2652
2653         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
2654         Eliminate unused variable.  Use `memq' for checking a process status.
2655         Use `cons' instead of `append' for updating the connection cache.
2656         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
2657         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
2658
2659 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
2660
2661         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
2662         `elmo-imap4-read-point' exactly.
2663
2664         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
2665         the local variable `folder' to `mailbox'.
2666         Rename the argument `fld' to `folder'.
2667
2668 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
2669
2670         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
2671         * elmo-imap4.el (elmo-imap4-commit): Ditto.
2672
2673 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
2674
2675         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
2676         (elmo-pop3-number-uidl-hash): New buffer-local variable.
2677         (elmo-pop3-uidl-number-hash): Ditto.
2678         (elmo-pop3-size-hash): Ditto.
2679         (elmo-pop3-uidl-done): Ditto.
2680         (elmo-pop3-list-done): Ditto.
2681         (elmo-pop3-connection-get-process): New defmacro.
2682         (elmo-pop3-connection-get-buffer): Ditto.
2683         (elmo-pop3-close-connection): Delete buffer and process.
2684         (elmo-pop3-flush-connection): Don't delete buffer and process.
2685         (elmo-pop3-get-connection): Added optional argument `if-exists'.
2686         Setup UIDL and size hash.
2687         (elmo-pop3-send-command-no-erase): Deleted
2688         (elmo-pop3-send-command): Added optional argument `no-erase'.
2689         (elmo-pop3-parse-uidl-response): New function.
2690         (elmo-pop3-parse-list-response): Set size hash.
2691         (elmo-pop3-list-location): New function.
2692         (elmo-pop3-list-by-uidl-subr): Ditto.
2693         (elmo-pop3-list-by-list): Ditto.
2694         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
2695         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
2696         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
2697         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
2698         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
2699         Use uidl.
2700         (elmo-pop3-uidl-to-number): New function.
2701         (elmo-pop3-number-to-uidl): Ditto.
2702         (elmo-pop3-number-to-size): Ditto.
2703         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
2704         Set number by use of uidl.
2705         (elmo-pop3-msgdb-create-message): Likewise.
2706         Set size, loc-alist in msgdb.
2707         (elmo-pop3-read-msg): Set number by use of uidl.
2708         Added optional argument `msgdb'.
2709         (elmo-pop3-delete-msg): Ditto.
2710         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
2711         (elmo-pop3-commit): Close connection.
2712
2713         * elmo-pipe.el (elmo-pipe-max-of-folder):
2714         Bind `elmo-pop3-use-uidl' as nil.
2715         (elmo-pipe-drain): Ditto.
2716         Call `elmo-commit'.
2717
2718         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
2719         (elmo-msgdb-overview-entity-set-size): New defsubst.
2720
2721 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
2722
2723         * elmo-vars.el (elmo-use-killed-list): New variable
2724         (Renamed from `elmo-nntp-use-killed-list').
2725         (elmo-nntp-use-killed-list): Eliminated.
2726
2727         * elmo-msgdb.el (elmo-msgdb-expand-path):
2728         Changed expanding msgdb path for elmo-multi.
2729
2730         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
2731         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
2732         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
2733         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
2734         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
2735         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
2736         (toplevel): Deleted time-stamp line.
2737
2738         * elmo2.el (elmo-clear-killed ): Defined as function
2739         (Abolished defining as a backend function).
2740         All other related modules are changed.
2741
2742 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
2743
2744         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
2745
2746 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
2747
2748         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
2749
2750 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
2751
2752         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
2753
2754 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
2755
2756         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
2757         asynchronous folder check.
2758
2759         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
2760
2761         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
2762         `elmo-nntp-use-killed-list'.
2763         (elmo-nntp-list-folder): Use killed list.
2764         (elmo-nntp-max-of-folder): Ditto.
2765         (elmo-nntp-msgdb-create): Set killed list.
2766
2767         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
2768
2769         * elmo2.el (elmo-clear-killed): New backend function.
2770         All other related modules are changed.
2771
2772 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
2773
2774         * elmo-util.el (elmo-imap4-spec-folder): Use
2775         `elmo-imap4-spec-mailbox'; Mark as obsolete.
2776         All callers changed.
2777
2778 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
2779
2780         * mmelmo-2.el (initialize-instance):
2781         Use `mime-buffer-entity-buffer-internal' instead of
2782         `mime-entity-buffer'.
2783
2784         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
2785         (mime-entity-body): Implemented.
2786         (mime-goto-header-start-point): Deleted.
2787         (mime-goto-body-end-point): Ditto.
2788         (mime-entity-point-min): Ditto.
2789         (mime-entity-point-max): Ditto.
2790         (mime-entity-children): Ditto.
2791         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
2792         instead of `mime-entity-buffer'.
2793         (mime-entity-header-buffer): Ditto.
2794         (mime-entity-body-buffer): Ditto.
2795         (mime-write-entity-content): Ditto.
2796
2797         * pldap.el (ldap-static-if): New macro.
2798         (toplevel): Use it instead of `static-if'.
2799
2800 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
2801
2802         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
2803         included in `attrs' argument.
2804
2805 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
2806
2807         * elmo-util.el (elmo-get-passwd): Use old backquote style.
2808
2809         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
2810         (ldap-ldif-safe-init-char-regexp): Ditto.
2811         (ldap-ldif-safe-string-regexp): Ditto.
2812         (ldap/ldif-safe-string-p): New macro.
2813         (ldap/ldif-insert-field): Ditto.
2814         (ldap-modify): Use it.
2815         (ldap-add): Ditto.
2816         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
2817         (ldap-decode-attribute): Decode only when `attr' is consp.
2818         (ldap-delete): Bind `ret'.
2819         (toplevel): Require 'cl at compile time.
2820         Removed (require 'poe) and (require 'std11).
2821         (pldap-version): Eliminated.
2822         (ldap-search-basic): Removed auth and dn binding.
2823         (ldap-ldif-field-name-regexp): New constant.
2824         (ldap-ldif-field-head-regexp): Ditto.
2825         (ldap-ldif-next-field-head-regexp): Ditto.
2826         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
2827         (ldap/field-end): New function.
2828         (ldap/field-body): Use it.
2829         (ldap/collect-field): Ditto.
2830         (ldap-search-basic): Use `ldap/field-body'.
2831
2832 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
2833
2834         * pldap.el (ldap-default-attribute-encoder): New user option.
2835         (ldap/field-body): Decode base64 string.
2836         (ldap/collect-field): Ditto.
2837         (ldap-encode-attribute): New function.
2838         (ldap-add-entries): Use it.
2839         (ldap-modify-entries): Ditto.
2840         (ldap-search-entries): Enclosed decoding function with
2841         `with-temp-buffer' and set as unibyte.
2842         (ldap-search-basic): Set process buffer as unibyte.
2843
2844         * elmo-util.el (elmo-folder-identical-system-p):
2845         Eliminated name space checking.
2846
2847         * pldap.el: New module.
2848         toplevel: Changed condition to detect built-in ldap feature.
2849         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
2850         (ldap-add): Added error handling.
2851         (ldap-modify): Ditto.
2852         (ldap-delete): Ditto.
2853
2854 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
2855
2856         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
2857         Initialize local variables with `let'.  Inline a temporary
2858         variable for the progress percentage.  Sort `setq' to reduce
2859         function call in the while-loop.
2860
2861         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
2862         into the conditional branch.
2863
2864 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
2865
2866         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
2867         Move a conditional out of the while-loop.
2868
2869 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
2870
2871         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
2872         elmo-msgdb-overview-get-entity-by-number.
2873         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
2874         throw.
2875
2876 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
2877
2878         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
2879         the local variable for a packed number self descriptively.
2880
2881 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
2882
2883         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
2884         * elmo-localdir.el (elmo-localdir-pack-number): Use
2885         `elmo-msgdb-overview-get-entity' instead of
2886         `elmo-msgdb-overview-get-entity-by-number'.
2887         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
2888         (elmo-msgdb-search-overview-entity): Removed.
2889         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
2890         by message-id or number.
2891         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
2892         instead of `elmo-msgdb-overview-get-entity-by-number'.
2893
2894 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
2895
2896         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
2897         non-nil, use hash table for overview.
2898         (elmo-hash-maximum-size): New variable.
2899         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
2900         (elmo-msgdb-make-overview-hashtb): New function.
2901         (elmo-msgdb-clear-overview-hashtb): New function.
2902         (elmo-clear-hash-val): New macro.
2903         All other related modules are changed.
2904
2905 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
2906
2907         * elmo2.el (elmo-move-msgs): If there's other message with
2908         same message-id, don't use cache.
2909
2910 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
2911
2912         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
2913         number is already packed.
2914
2915 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
2916
2917         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
2918
2919 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
2920
2921         * elmo-vars.el (elmo-display-progress-threshold): New variable.
2922         All other related modules are changed.
2923
2924 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
2925
2926         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
2927         of refiling failure on Maildir.
2928
2929 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
2930
2931         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
2932         decoded mime-charset with cache.
2933         (elmo-msgdb-overview-entity-get-from): Ditto.
2934         (elmo-msgdb-overview-entity-get-subject): Ditto.
2935         * elmo-vars.el (elmo-use-decoded-cache): New variable.
2936
2937 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
2938
2939         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
2940         (elmo-remove-passwd): Fill password with 0 before erase.
2941         * elmo-vars.el (elmo-passwd-life-time): New variable.
2942
2943 \f
2944 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
2945
2946         * elmo-cache.el (elmo-buffer-cache-add):
2947         Set message cache buffer as unibyte.
2948
2949 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
2950
2951         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
2952         become nil.
2953
2954 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
2955
2956         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
2957         when display is finished.
2958         (elmo-nntp-msgdb-create): Ditto.
2959         (elmo-nntp-groups-read-response): Ditto.
2960         (elmo-nntp-retrieve-headers): Ditto.
2961         (elmo-nntp-msgdb-create-message): Ditto.
2962         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
2963         (elmo-pop3-msgdb-create-message): Ditto.
2964
2965 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
2966
2967         * elmo-maildir.el (elmo-maildir-msgdb-create):
2968         Use `elmo-msgdb-sort-by-date'.
2969
2970 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
2971
2972         * elmo2.el (elmo-read-msg-no-cache):
2973         Eliminated arguments after `outbuf'.
2974         Don't use cache even if it exists.
2975         (elmo-read-msg): Don't pass arguments after `outbuf' to
2976         `elmo-read-msg-no-cache'.
2977
2978 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
2979
2980         * elmo-archive.el (elmo-archive-list-folders):
2981         Use `file-name-directory' if base folder does not exist.
2982
2983 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
2984
2985         * elmo-archive.el (elmo-archive-list-folders): Don't use
2986         `file-name-directory'.
2987
2988 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
2989
2990         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
2991         If `force' is non-nil, try flushing all operation queues.
2992
2993 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
2994
2995         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
2996         as-binary-process.
2997
2998 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
2999
3000         * elmo-util.el (elmo-display-progress): Fixed.
3001
3002 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
3003
3004         * elmo-util.el (elmo-display-progress): New function.
3005         All other related modules are changed.
3006