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