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