* elmo2.el (elmo-generic-folder-diff): Fix.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2000-10-18  Kenichi OKADA  <okada@opaopa.org>
2
3         * elmo2.el (elmo-generic-folder-diff): Fix.
4
5 2000-10-17  Kenichi OKADA  <okada@opaopa.org>
6
7         * elmo-msgdb.el (elmo-msgdb-killed-list-length): New function.
8         * elmo-localdir.el (elmo-localdir-list-folder-subr): Fix.
9         * elmo-maildir.el (elmo-maildir-list-folder-subr): Fix.
10         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
11         * elmo-internal.el (elmo-internal-list-folder-subr): Fix.
12         * elmo-imap4.el (elmo-imap4-max-of-folder): Fix.
13
14 2000-10-17  Akihiro MOTOKI <motoki@da.jp.nec.com>
15
16         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Search by
17         extra-fields.
18
19 2000-10-17  Yuuichi Teranishi  <teranisi@gohome.org>
20
21         * elmo-version.el (elmo-version): Up to 2.3.90.
22
23         * elmo-imap4.el (elmo-imap4-list-folder-unread): Check plugged status.
24         (elmo-imap4-list-folder-important): Ditto.
25
26 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
27
28         * elmo-nntp.el (elmo-network-initialize-session): Fix.
29
30 2000-10-16  Kenichi OKADA  <okada@opaopa.org>
31
32         * elmo-nntp.el (elmo-nntp-read-msg): Don't error.
33
34 2000-10-15  Kenichi OKADA  <okada@opaopa.org>
35
36         * elmo-nntp.el (elmo-network-initialize-session):
37         Add starttls negotiation.
38
39 2000-10-15  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
40
41         * elmo-nntp.el (elmo-network-initialize-session): Read greeting
42         response.
43         (elmo-network-setup-session): Define.
44         Call `elmo-nntp-send-mode-reader' when session opened.
45
46 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
47
48         * elmo-multi.el (elmo-multi-list-folder-unread): Fixed.
49
50 2000-10-13  OKAZAKI Tetsurou  <okazaki@be.to>
51
52         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Remove
53         an invalid SPACE character ahead of `SEARCH' command.  Move
54         a valid SPACE character following `SEARCH' from conditional
55         `format' arguments to control-strings.
56
57 2000-10-13  Yuuichi Teranishi  <teranisi@gohome.org>
58
59         * elmo2.el (elmo-call-func-on-markable-msgs): Return t if marking
60         was succeeded.
61
62         * elmo-util.el (elmo-folder-get-spec): Enclose with save-match-data.
63
64 2000-10-12  Yuuichi Teranishi  <teranisi@gohome.org>
65
66         * elmo-localdir.el (elmo-localdir-list-folders-subr): Bind
67         `w32-get-true-file-link-count' as t.
68
69         * elmo-imap4.el (elmo-imap4-read): Abolished.
70         (Renamed to `elmo-read' and moved to elmo-util.el)
71         All other related portions are changed.
72
73         * elmo-util.el (elmo-read): New function.
74         (elmo-condition-parse-search-value): Use it.
75
76 2000-10-11  Yuuichi Teranishi  <teranisi@gohome.org>
77
78         * elmo2.el (elmo-quit): Don't use `elmo-nntp-flush-connection'.
79
80         * elmo-nntp.el (elmo-nntp-session): Define.
81         (elmo-nntp-setting): Abolished.
82         All other related portions are changed.
83         (elmo-nntp-get-server-command): Changed argument.
84         (elmo-nntp-set-server-command): Ditto.
85         (elmo-nntp-xover-p): Ditto.
86         (elmo-nntp-set-xover): Ditto.
87         (elmo-nntp-listgroup-p): Ditto.
88         (elmo-nntp-set-listgroup): Ditto.
89         (elmo-nntp-list-active-p): Ditto.
90         (elmo-nntp-set-list-active): Ditto.
91         (elmo-nntp-xhdr-p): Ditto.
92         (elmo-nntp-set-xhdr): Ditto.
93         (elmo-nntp-flush-connection): Abolished.
94         (elmo-nntp-get-connection): Abolished.
95         (elmo-nntp-get-session): New function.
96         (elmo-network-initialize-session): Defined.
97         (elmo-network-authenticate-session): Ditto.
98         (elmo-nntp-send-mode-reader): Changed argument.
99         (elmo-nntp-send-command): Changed argument.
100         All other related portions are changed.
101         (elmo-nntp-read-response): Ditto.
102         (elmo-nntp-read-raw-response): Ditto.
103         (elmo-nntp-read-contents): Ditto.
104         (elmo-nntp-read-body): Ditto.
105         (elmo-nntp-goto-folder): Abolished.
106         (elmo-nntp-select-group): New function.
107         All other related portions are changed.
108         (This function substitutes `elmo-nntp-goto-folder')
109         (elmo-nntp-msgdb-create-by-header): Rewrite.
110         (elmo-nntp-get-overview): Eliminated.
111         (elmo-nntp-get-message): Ditto.
112         (elmo-nntp-open-connection) Abolished.
113         (elmo-nntp-read-msg): Rewrite.
114         (elmo-nntp-post): Ditto.
115         (elmo-nntp-send-data): Abolished.
116         (elmo-nntp-send-buffer): New function.
117         (elmo-nntp-send-data-line): Define as inline function.
118         (elmo-nntp-get-folders-info-prepare): Use session as key.
119         (elmo-nntp-groups-read-response): Changed argument.
120         (elmo-nntp-retrieve-headers): Ditto.
121         (elmo-nntp-msgdb-create-message): Ditto.
122
123         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): Fixed problem
124         when searching by 'since' or 'before'.
125
126 2000-10-11  TAKAHASHI Kaoru  <kaoru@kaisei.org>
127
128         * elmo-version.el (toplevel): Use product-version-as-string for set
129         verstion-string, if defined.
130
131 2000-10-11  OKAZAKI Tetsurou  <okazaki@be.to>
132
133         * elmo-util.el: Doc fixes.
134
135 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
136
137         * elmo-archive.el (toplevel): Use product-provide.
138         * elmo-cache.el (toplevel): Ditto.
139         * elmo-database.el (toplevel): Ditto.
140         * elmo-date.el (toplevel): Ditto.
141         * elmo-dop.el (toplevel): Ditto.
142         * elmo-filter.el (toplevel): Ditto.
143         * elmo-imap4.el (toplevel): Ditto.
144         * elmo-internal.el (toplevel): Ditto.
145         * elmo-localdir.el (toplevel): Ditto.
146         * elmo-localnews.el (toplevel): Ditto.
147         * elmo-maildir.el (toplevel): Ditto.
148         * elmo-msgdb.el (toplevel): Ditto.
149         * elmo-multi.el (toplevel): Ditto.
150         * elmo-net.el (toplevel): Ditto.
151         * elmo-nntp.el (toplevel): Ditto.
152         * elmo-pipe.el (toplevel): Ditto.
153         * elmo-pop3.el (toplevel): Ditto.
154         * elmo-util.el (toplevel): Ditto.
155         * elmo-vars.el (toplevel): Ditto.
156         * elmo2.el (toplevel): Ditto.
157         * mmelmo-1.el (toplevel): Ditto.
158         * mmelmo-2.el (toplevel): Ditto.
159         * mmelmo-imap4-1.el (toplevel): Ditto.
160         * mmelmo-imap4-2.el (toplevel): Ditto.
161         * mmelmo-imap4.el (toplevel): Ditto.
162         * mmelmo.el (toplevel): Ditto.
163
164 2000-10-10  Kenichi OKADA  <okada@opaopa.org>
165
166         * elmo-dop.el (elmo-dop-flush-pending-append-operations): Add no-see.
167         (elmo-dop-call-func-on-msgs): Don't delete appends from msgs.
168
169 2000-10-10  Yuuichi Teranishi  <teranisi@gohome.org>
170
171         * elmo-multi.el (elmo-multi-split-mark-alist): Copy and sort alist
172         before splitting.
173         (elmo-multi-split-number-alist): Ditto.
174
175 2000-10-10  TAKAHASHI Kaoru  <kaoru@kaisei.org>
176
177         * elmo-version.el: New file.  Use product.el.
178         * elmo2.el: Add (require 'elmo-version).
179         * elmo-vars.el (elmo-appname, elmo-version): Move to
180         elmo-version.el
181
182 2000-10-09  Yuuichi Teranishi  <teranisi@gohome.org>
183
184         * elmo2.el (elmo-copy-msgs): Set `spec' as 1st argument for
185         `elmo-msgdb-expand-path'.
186         (elmo-msgdb-load): Ditto.
187         Abolished 2nd argument. If 1st argument is not string, treat as spec.
188         (elmo-generic-list-folder-unread): Rewrite.
189         (elmo-generic-list-folder-important): Changed argument.
190         (elmo-list-folder-unread): Ditto.
191         (elmo-list-folder-important): Ditto.
192         (elmo-folder-diff): Rewrite.
193         (elmo-generic-folder-diff): New function.
194         (elmo-multi-get-number-alist-list): Abolished
195         (Renamed to elmo-multi-split-number-alist and moved to elmo-multi.el)
196         (elmo-multi-folder-diff): Moved to elmo-multi.el
197         (toplevel): Removed autoload setting of `elmo-multi-folder-diff'.
198
199         * elmo-pop3.el (elmo-pop3-list-folder): Set `spec' as 1st argument for
200         `elmo-msgdb-expand-path'.
201         (elmo-pop3-msgdb-create-as-numlist): Ditto.
202         (elmo-pop3-read-msg): Ditto.
203         (elmo-pop3-delete-msgs): Ditto.
204         (elmo-pop3-folder-diff): New alias.
205
206         * elmo-pipe.el (elmo-pipe-list-folder): Set `spec' as 1st argument for
207         `elmo-msgdb-expand-path'.
208         (elmo-pipe-list-folder-unread): Changed arguments.
209         (elmo-pipe-list-folder-important): Ditto.
210         (elmo-pipe-folder-diff): New alias.
211
212         * elmo-nntp.el (elmo-nntp-list-folder): Set `spec' as 1st argument for
213         `elmo-msgdb-expand-path'.
214         (elmo-nntp-max-of-folder): Ditto.
215         (elmo-nntp-msgdb-create): Ditto.
216         (elmo-nntp-delete-msgs): Ditto.
217         (elmo-nntp-folder-diff): New alias.
218
219         * elmo-multi.el (elmo-multi-folder-diff): New function.
220         (elmo-multi-split-mark-alist): Ditto.
221         (elmo-multi-split-number-alist): Ditto.
222         (elmo-multi-mark-alist-list): Abolished (Renamed to
223         elmo-multi-split-mark-alist).
224         (elmo-multi-list-folder-unread): Rewrite.
225         (elmo-multi-list-folder-important): Ditto.
226         (elmo-multi-list-folder): Set `spec' as 1st argument for
227         `elmo-msgdb-expand-path'.
228         (elmo-multi-sync-number-alist): Use `elmo-multi-split-number-alist'
229         instead of `elmo-multi-get-number-alist-list'.
230
231         * elmo-msgdb.el (elmo-msgdb-expand-path): Abolished 2nd argument.
232         If 1st argument is not string, treat as spec.
233         (elmo-list-folder-by-location): Set `spec' as 1st argument for
234         `elmo-msgdb-expand-path'.
235         (elmo-msgdb-flist-load): Ditto.
236         (elmo-msgdb-flist-save): Ditto.
237         (elmo-msgdb-delete-path): Ditto.
238         (elmo-msgdb-rename-path): Ditto.
239
240         * elmo-maildir.el (elmo-maildir-set-mark-msgs):
241         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
242         (elmo-maildir-delete-mark-msgs): Ditto.
243         (elmo-maildir-msgdb-create): Ditto.
244         (elmo-maildir-read-msg): Ditto.
245         (elmo-maildir-delete-msgs): Ditto.
246         (elmo-maildir-list-folder-subr): Ditto.
247         (elmo-maildir-search): Ditto.
248         (elmo-maildir-get-msg-filename): Ditto.
249         (elmo-maildir-pack-number): Ditto.
250         (elmo-maildir-folder-diff): New alias.
251
252         * elmo-localnews.el (elmo-localnews-folder-diff): New alias.
253
254         * elmo-localdir.el (elmo-localdir-list-folder-subr):
255         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
256         (elmo-localdir-folder-diff): New alias.
257
258         * elmo-internal.el (elmo-internal-list-folder-subr):
259         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
260         (elmo-internal-list-folder-by-location): Ditto.
261         (elmo-internal-msgdb-create): Ditto.
262         (elmo-internal-delete-msgs): Ditto.
263         (elmo-internal-read-msg): Ditto.
264         (elmo-internal-folder-diff): New alias.
265
266         * elmo-imap4.el (elmo-imap4-folder-diff): New function.
267         (elmo-imap4-list-folder): Set `spec' as 1st argument for
268         `elmo-msgdb-expand-path'.
269         (elmo-imap4-list-folder-unread): Changed arguments.
270         (elmo-imap4-list-folder-important): Ditto.
271
272         * elmo-filter.el (elmo-filter-list-folder-unread): Changed arguments.
273         (elmo-filter-list-folder-important): Ditto.
274         (elmo-filter-folder-diff): New function.
275
276         * elmo-dop.el (elmo-dop-folder-exists-p): Check elmo directory first.
277
278         * elmo-cache.el (elmo-cache-list-folder):
279         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
280         (elmo-cache-copy-msgs): Ditto.
281         (elmo-cache-folder-diff): New alias.
282
283         * elmo-archive.el (elmo-archive-list-folder-subr):
284         Set `spec' as 1st argument for `elmo-msgdb-expand-path'.
285         (elmo-archive-get-archive-name): Ditto.
286         (elmo-archive-create-file): Ditto.
287         (elmo-archive-append-msg): Ditto.
288         (elmo-archive-copy-msgs): Ditto.
289         (elmo-archive-copy-msgs-froms): Ditto.
290         (elmo-archive-get-msg-filename): Ditto.
291         (elmo-archive-folder-diff): New alias.
292
293 2000-10-06   Daiki Ueno  <ueno@unixuser.org>
294
295         * elmo-vars.el (elmo-imap4-stream-type-alist): New variable.
296         (elmo-pop3-stream-type-alist): New variable.
297         (elmo-nntp-stream-type-alist): New variable.
298
299         * elmo-util.el (elmo-buffer-exists-p): Rewrite as function.
300         (elmo-kill-buffer): Ditto.
301         (elmo-get-network-stream-type): Add 2nd argument `stream-type-alist'.
302         (elmo-network-get-spec): Add 5th argument `stream-type-alist'.
303         (elmo-nntp-get-spec): Take into account `elmo-nntp-stream-type-alist'.
304         (elmo-pop3-get-spec): Take into account `elmo-pop3-stream-type-alist'.
305         (elmo-imap4-get-spec): Take into account
306         `elmo-imap4-stream-type-alist'.
307
308 2000-10-06  Kenichi OKADA  <okada@opaopa.org>
309
310         * elmo-nntp.el (elmo-nntp-list-folders): Fix for `-/'
311         (elmo-nntp-list-folders-get-cache): Ditto.
312
313 2000-10-05  Yuuichi Teranishi  <teranisi@gohome.org>
314
315         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Added space
316         character before 'uid'.
317
318 2000-10-04  Yuuichi Teranishi  <teranisi@gohome.org>
319
320         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Don't save location data.
321
322         * elmo-nntp.el (elmo-nntp-max-of-folder): Fixed.
323
324         * elmo-util.el (elmo-number-set-member): New function.
325         (elmo-number-set-append-list): Ditto.
326         (elmo-number-set-append): Ditto.
327
328         * elmo-msgdb.el (elmo-msgdb-killed-message-p):
329         Use `elmo-number-set-member'.
330         (elmo-living-messages): Ditto.
331         (elmo-msgdb-set-as-killed): Use `elmo-number-set-append'.
332         (elmo-msgdb-append-to-killed-list): Use `elmo-number-set-append-list'.
333
334         * elmo-imap4.el (elmo-imap4-folder-exists-p): Rewrite.
335         (elmo-imap4-add-to-cont-list): Abolished.
336         (elmo-imap4-make-number-set-list): Use `elmo-number-set-append'
337         instead of elmo-imap4-add-to-cont-list.
338
339         * elmo2.el (elmo-msgdb-search): Moved from elmo-msgdb.el.
340         (toplevel): Removed autoload setting for `elmo-imap4-get-connection'.
341
342         * elmo-msgdb.el (elmo-msgdb-search): Moved to elmo2.el.
343
344 2000-10-03  Hiroya Murata      <lapis-lazuli@pop06.odn.ne.jp>
345
346         * elmo-util.el (elmo-condition-parse-search-value):
347         Fixed date parsing.
348
349 2000-10-03  Yuuichi Teranishi  <teranisi@gohome.org>
350
351         * elmo-util.el (elmo-condition-find-key-internal): New function.
352         (elmo-condition-find-key): Ditto.
353
354         * elmo-msgdb.el (elmo-msgdb-search-internal-primitive): New function.
355         (elmo-msgdb-search-internal): Ditto.
356         (elmo-msgdb-search): Ditto.
357
358 2000-10-02  Yuuichi Teranishi  <teranisi@gohome.org>
359
360         * elmo-util.el (elmo-cross-device-link-error-p): Abolished.
361         (elmo-copy-file): Uncheck error condition for `add-name-to-file'.
362
363         * elmo-nntp.el (elmo-nntp-search-primitive): Decode header field.
364         (elmo-nntp-search-primitive): Fixed problem when condition is
365         'unmatch'.
366
367         * elmo-util.el (elmo-buffer-field-primitive-condition-match): Fixed.
368
369         * elmo-nntp.el (elmo-nntp-default-use-xhdr): New variable.
370         (elmo-nntp-xhdr-p): New macro.
371         (elmo-nntp-set-xhdr): Ditto.
372         (elmo-nntp-parse-xhdr-response): New function.
373         (elmo-nntp-retrieve-field): Ditto.
374         (elmo-nntp-search-primitive): Ditto.
375         (elmo-nntp-search): Implemented.
376
377         * elmo-date.el (elmo-date-make-sortable-string): New macro.
378
379         * elmo-archive.el (elmo-archive-search): Set all number list to
380         `elmo-archive-field-condition-match'
381
382         * elmo-localdir.el (elmo-localdir-search): Likewise.
383
384         * elmo-maildir.el (elmo-maildir-search): Likewise.
385
386 2000-10-01  OKAZAKI Tetsurou  <okazaki@be.to>
387
388         * elmo-msgdb.el (elmo-living-messages): New function.
389         * elmo-archive.el (elmo-archive-list-folder-subr): Use it.
390         * elmo-cache.el (elmo-cache-list-folder): Ditto.
391         * elmo-dop.el (elmo-dop-list-folder): Ditto.
392         * elmo-imap4.el (elmo-imap4-list-folder): Ditto.
393         * elmo-internal.el (elmo-internal-list-folder-subr): Ditto.
394         * elmo-localdir.el (elmo-localdir-list-folder-subr): Ditto.
395         * elmo-maildir.el (elmo-maildir-list-folder-subr): Ditto.
396         * elmo-multi.el (elmo-multi-list-folder): Ditto.
397         * elmo-nntp.el (elmo-nntp-list-folder): Ditto.
398         * elmo-pipe.el (elmo-pipe-list-folder): Ditto.
399         * elmo-pop3.el (elmo-pop3-list-folder): Ditto.
400
401 2000-09-29  Yuuichi Teranishi  <teranisi@gohome.org>
402
403         * elmo-maildir.el (elmo-maildir-pack-number): Implemented.
404
405         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Save location data.
406
407         * elmo2.el (elmo-pack-number): Added 'maildir as allowd type.
408
409         * elmo-imap4.el (elmo-imap4-search-internal-primitive): Fixed
410         arguments for `SEARCH' command.
411         (elmo-imap4-parse-string): Set `POS' argument for char-after.
412         All other related portions are changed.
413
414         * elmo-cache.el (elmo-cache-search-all): Added argument `from-msgs'.
415
416         * elmo2.el (elmo-generic-list-folder-unread): Rewrite.
417         (elmo-list-folder-unread): Rewrite.
418         (elmo-list-folder-important): Ditto.
419
420         * elmo-util.el (elmo-filter-get-spec): Rewrite.
421         (elmo-condition-parse-error): New inline function.
422         (elmo-read-search-condition): New function.
423         (elmo-read-search-condition-internal): Ditto.
424         (elmo-parse-search-condition): Rewrite.
425         (elmo-condition-parse): New function.
426         (elmo-condition-parse-or-expr): Ditto.
427         (elmo-condition-parse-and-expr): Ditto.
428         (elmo-condition-parse-primitive): Ditto.
429         (elmo-condition-parse-search-value): Ditto.
430         (elmo-buffer-field-primitive-condition-match): Ditto.
431         (elmo-buffer-field-condition-match): Rewrite.
432         (elmo-file-field-condition-match): Ditto.
433
434         * elmo-msgdb.el (elmo-msgdb-expand-path): Use
435         `elmo-replace-msgid-as-filename' instead of `elmo-safe-filename'.
436
437         * elmo-internal.el (elmo-internal-search): Set `number' and
438         `number-list' argument of `elmo-file-field-condition-match'.
439
440         * elmo-maildir.el (elmo-maildir-search): Ditto.
441
442         * elmo-imap4.el (elmo-imap4-list-folder-unread): Use
443         `msgdb' as argument instead of `mark-alist'.
444         (elmo-imap4-list-folder-important): Use `msgdb' as argument instead of
445         `overview'.
446
447         * elmo-multi.el: Likewise.
448
449         * elmo-pipe.el: Likewise.
450
451         * elmo-imap4.el (elmo-imap4-search-internal-primitive): New function.
452         (elmo-imap4-search-internal): Rewrite.
453         (elmo-imap4-search): Ditto.
454
455         * elmo-filter.el (elmo-filter-list-folder): Rewrite.
456         (elmo-filter-list-folder-unread): Ditto.
457         (elmo-filter-list-folder-important): Ditto.
458         (elmo-filter-search): Rewrite.
459
460         * elmo-cache.el (elmo-cache-search-all): Set `number' and
461         `number-list' argument of `elmo-file-field-condition-match'.
462         (elmo-cache-search): Ditto.
463
464         * elmo-localdir.el: Likewise.
465
466         * elmo-archive.el (elmo-archive-field-condition-match): Added argument
467         number-list and pass it to `elmo-buffer-field-condition-match'.
468         (elmo-archive-field-condition-match): Pass `number-list' to
469         `elmo-archive-field-condition-match'
470
471 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
472
473         * elmo-nntp.el (elmo-nntp-list-folder): Set current group after
474         `listgroup'.
475
476         * elmo2.el (elmo-folder-diff-async-callback): New variable.
477         (elmo-folder-diff-async-callback-data): Ditto.
478         (elmo-folder-diff-async): New function.
479
480         * elmo-net.el (elmo-network-session-name-prefix): New variable.
481         (elmo-network-session-cache-key): Use it as a prefix of the session
482         name.
483         (elmo-network-open-session): Ditto.
484
485         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
486         (elmo-imap4-status-callback-data): Ditto.
487         (elmo-imap4-server-diff-async-callback): New variable.
488         (elmo-imap4-server-diff-async-callback-data): Ditto.
489         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
490         `elmo-imap4-status-callback-data'.
491         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
492         `elmo-imap4-status-callback-data' as nil.
493         (elmo-imap4-server-diff): Ditto.
494         (elmo-imap4-server-diff-async-callback-1): New function.
495         (elmo-imap4-server-diff-async): Ditto.
496         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
497
498 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
499
500         * elmo-util.el (elmo-list-delete): Doc fix.
501         (elmo-delete-lists): Abolish.
502         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
503         instead of `elmo-delete-lists'.
504
505 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
506
507         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
508         before `sort'.
509
510 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
511
512         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
513         `elmo-imap4-literal-subr'.
514         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
515         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
516
517 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
518
519         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
520         (elmo-archive-list-folder): Fix.
521         (elmo-archive-max-of-folder): Fix.
522
523 2000-09-15  Kenichi OKADA  <okada@opaopa.org>
524
525         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
526          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
527         (elmo-localdir-append-msg): Ditto.
528         (elmo-localdir-list-folder): Fix for `nonsort'.
529         (elmo-localdir-list-folder-subr): Fix for `killed'.
530         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
531         (elmo-maildir-list-folder-subr): Ditto.
532         * elmo-archive.el (elmo-archive-list-folder): Ditto.
533         (elmo-archive-list-folder-subr): Ditto.
534         * elmo-internal.el (elmo-internal-list-folder): Ditto.
535         (elmo-internal-list-folder-subr): Ditto.
536
537 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
538
539         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
540
541 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
542
543         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
544
545 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
546
547         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
548         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
549
550         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
551         before greeting.
552         (elmo-imap4-read-part): Use "body.peek" to fetch part.
553         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
554
555 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
556
557         * mmelmo-imap4-2.el (mime-entity-children): Defined.
558
559         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
560         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
561         before STORE command.
562
563 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
564
565         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
566
567         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
568         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
569         of `response'.
570         (elmo-imap4-list-folders): Removed unused local variable.
571         (elmo-network-initialize-session): Ditto.
572         (elmo-imap4-delete-msg-by-id): Ditto.
573         (elmo-imap4-parse-fetch): Ditto.
574         (elmo-imap4-copy-msgs): Ditto.
575         Use `dst-spec' instead of `dst-folder'.
576         (elmo-network-authenticate-session): Check authenticate type `plain'.
577
578 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
579
580         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
581         garbage checking.
582         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
583         `elmo-imap4-response-value'.
584         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
585
586 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
587
588         * elmo-imap4.el (elmo-imap4-send-command):
589         Cause elmo-imap4-bye-error when current response is BYE.
590         (elmo-imap4-arrival-filter): Changed greeting response value.
591
592         * elmo2.el (elmo-imap4-bye-error): Define.
593
594         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
595         (elmo-imap4-server-diff): Ditto.
596         (elmo-imap4-response-bye-p): New macro.
597         (elmo-imap4-response-error-text): Get text from BYE response.
598         (elmo-imap4-read-response): Return if BYE response.
599         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
600         (elmo-imap4-folder-exists-p): Ditto.
601         (elmo-imap4-commit): Do nothing when different mailbox is selected.
602         (elmo-imap4-parse-bye): New function.
603         (elmo-imap4-parse-response): Remove needless let.
604         Call `elmo-imap4-parse-bye'.
605
606 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
607
608         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
609         the mailbox does not exist.
610         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
611
612 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
613
614         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
615
616 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
617
618         * elmo-vars.el (elmo-search-mime-charset): Abolished.
619
620         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
621         (elmo-network-initialize-session-buffer): Defined.
622
623         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
624         Abolished.
625         (mmelmo-imap4-get-mime-entity): Rewrite.
626
627         * elmo2.el (elmo-error): Capitalize error message.
628
629         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
630         (elmo-network-session-buffer): New macro.
631         (elmo-network-open-session): Use it.
632
633         * elmo-imap4.el: Rewrite.
634
635 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
636
637         * elmo-nntp.el (Toplevel): Require 'elmo-net.
638
639 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
640
641         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
642         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
643         (elmo-imap4-create-msgdb-from-overview-string): Use
644         `elmo-msgdb-create-overview-from-buffer'.
645
646 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
647
648         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
649         (elmo-imap4-default-hierarchy-delimiter): New variable.
650         (elmo-imap4-list-folders): Use it.
651
652 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
653
654         * elmo-net.el (elmo-network-open-session): Add user and
655         stream-type for process-buffer name.
656
657         * elmo-pop3.el (elmo-network-initialize-session): Call
658         buffer-disable-undo.
659
660         * elmo-imap4.el (elmo-network-initialize-session):
661         Set current-buffer as an argument for `buffer-disable-undo'.
662
663         * elmo-pop3.el (elmo-network-close-session): Don't use
664         `process-live-p'.
665
666         * elmo-vars.el (elmo-default-pop3-authenticate-type):
667         Set default as 'user.
668
669         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
670
671         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
672         and `elmo-imap4-flush-connection'.
673
674         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
675         (elmo-pop3-get-spec): Assume auth as symbol.
676         (elmo-open-network-stream): Moved to `elmo-net'.
677
678         * elmo-pop3.el (toplevel): Require 'elmo-net.
679         Define `sasl-cram-md5' to silence byte compilier.
680         (elmo-pop3-connection-cache) Abolished.
681         (elmo-pop3-authenticator-alist) New variable.
682         (elmo-pop3-session): Define.
683         (elmo-pop3-connection-get-process): Abolished.
684         (elmo-pop3-connection-get-buffer): Ditto.
685         (elmo-pop3-close-connection): Ditto.
686         (elmo-pop3-flush-connection): Ditto.
687         (elmo-pop3-get-connection): Ditto.
688         (elmo-pop3-get-session): New function.
689         (Replacement for `elmo-pop3-get-connection').
690         All other related modules are changed.
691         (elmo-network-close-session): Define.
692         (elmo-pop3-send-command): Abolished argument `buffer'.
693         All other related modules are changed.
694         (elmo-pop3-read-response): Likewise.
695         (elmo-pop3-open-connection): Abolished.
696         (elmo-pop3-auth-user): New function.
697         (elmo-pop3-auth-apop): Ditto.
698         (elmo-pop3-auth-cram-md5): Ditto.
699         (elmo-pop3-auth-scram-md5): Ditto.
700         (elmo-pop3-auth-digest-md5): Ditto.
701         (elmo-network-initialize-session): Define.
702         (elmo-network-authenticate-session): Ditto.
703         (elmo-network-setup-session): Ditto.
704
705         * elmo-imap4.el (toplevel): Require 'elmo-net.
706         (elmo-imap4-session): Define.
707         (elmo-imap4-connection-cache): Abolished.
708         (elmo-imap4-password-key): Ditto.
709         (elmo-imap4-flush-connection): Ditto.
710         (elmo-imap4-get-connection): Ditto.
711         All other related modules are changed.
712         (elmo-imap4-get-session): New function
713         (Replacement for `elmo-imap4-get-connection').
714         (elmo-imap4-read-response): Abolished argument `buffer'.
715         All other related modules are changed.
716         (elmo-imap4-send-command): Likewise.
717         (elmo-imap4-select-folder): Abolished.
718         All other related modules are changed.
719         (elmo-imap4-select-mailbox): New function.
720         (Replacement for `elmo-imap4-select-folder').
721         (elmo-imap4-auth-login): Simplify.
722         (Assume current buffer as process buffer)
723         (elmo-imap4-auth-cram-md5): Ditto.
724         (elmo-imap4-auth-digest-md5): Ditto.
725         (elmo-imap4-login): Ditto.
726         (elmo-imap4-open-connection): Abolished.
727         (elmo-imap4-open-connection-1): Abolished.
728         (elmo-network-initialize-sessoin): Define.
729         (elmo-network-authenticate-session): Ditto.
730         (elmo-network-setup-session): Ditto.
731
732         * elmo-net.el: New module.
733
734 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
735
736         * elmo-util.el (elmo-define-error): New function.
737
738         * elmo2.el (elmo-error): Define.
739         (elmo-open-error): Define.
740         (elmo-authenticate-error): Define.
741
742         * elmo-imap4.el (elmo-imap4-error): Abolish.
743         (elmo-imap4-error-type): Abolish.
744         (elmo-imap4-error-process): Abolish.
745         (elmo-imap4-error-message): Abolish
746         (elmo-imap4-list-folders): Don't quote lambda.
747         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
748         (elmo-imap4-parse-namespace): Ditto.
749         (elmo-imap4-open-connection): Rewrite.
750         (elmo-imap4-open-connection-1): Simplified (authenticate only).
751         (elmo-imap4-get-connection): Abolish local variable `result'.
752
753 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
754
755         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
756         wrong-type-argument error when auth is nil.
757
758 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
759
760         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
761         (elmo-default-nntp-stream-type): Ditto.
762         (elmo-default-pop3-stream-type): Ditto.
763         (elmo-network-stream-type-alist): Ditto.
764         (elmo-default-imap4-ssl): Abolished.
765         (elmo-default-nntp-ssl): Ditto.
766         (elmo-default-pop3-ssl): Ditto.
767
768         * elmo-util.el: (toplevel): Removed needless requires.
769         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
770         (elmo-open-network-stream): Open network stream according to
771         the value of `elmo-network-stream-type-alist'.
772         (elmo-get-network-stream-type): New function.
773         (elmo-network-stream-type-spec-string): New macro.
774         (elmo-network-stream-type-symbol): Ditto.
775         (elmo-network-stream-type-function): Ditto.
776
777         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
778         network-stream-type. All other related portions are changed.
779         (elmo-pop3-open-connection): Ditto.
780
781         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
782         network-stream-type. All other related portions are changed.
783
784         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
785         network-stream-type.All other related portions are changed.
786         (elmo-imap4-error): New macro.
787         (elmo-imap4-error-type): Ditto.
788         (elmo-imap4-error-process): Ditto.
789         (elmo-imap4-error-message): Ditto.
790         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
791         (elmo-imap4-auth-cram-md5): Ditto.
792         (elmo-imap4-auth-digest-md5): Ditto.
793         (elmo-imap4-login): Ditto.
794         (elmo-imap4-open-connection): Remove password entry if authentication
795         was in vain.
796         (elmo-imap4-user-at-host): Abolished.
797         (elmo-imap4-password-key): New buffer local variable.
798         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
799         using protocol, port, auth and stream-type.
800
801         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
802
803 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
804
805         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
806
807         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
808
809         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
810         (elmo-imap4-authenticator-alist): New variable.
811         (elmo-imap4-open-connection-1): Rename from
812         elmo-imap4-open-connection.
813         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
814         only wraps elmo-imap4-open-connection-1.
815         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
816         user-at-host.
817         (elmo-imap4-auth-login): New function.
818         (elmo-imap4-auth-cram-md5): New function.
819         (elmo-imap4-auth-digest-md5): New function.
820         (elmo-imap4-login): New function.
821
822 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
823
824         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
825         function `error'.
826
827 2000-08-12  Kenichi OKADA  <okada@opaopa.org>
828
829         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
830
831 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
832
833         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
834
835 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
836
837         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
838         for server responses, quote `*' regardless of where it appears.
839
840 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
841
842         * elmo-maildir.el (elmo-maildir-commit): New alias.
843
844 2000-08-03  Kenichi OKADA  <okada@opaopa.org>
845
846         * elmo-util.el (elmo-display-progress):
847                 Use `progress-feedback-with-label'.
848
849 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
850
851         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
852         (elmo-imap4-non-atom-char-regex): Ditto.
853         (elmo-imap4-non-text-char-regex): Ditto.
854         (elmo-imap4-literal-threshold): Ditto.
855         (elmo-imap4-atom-p): New function.
856         (elmo-imap4-quotable-p): Ditto.
857         (elmo-imap4-nil): Ditto.
858         (elmo-imap4-atom): Ditto.
859         (elmo-imap4-quoted): Ditto.
860         (elmo-imap4-literal-subr): Ditto.
861         (elmo-imap4-literal): Ditto.
862         (elmo-imap4-buffer-literal): Ditto.
863         (elmo-imap4-string-subr): Ditto.
864         (elmo-imap4-string): Ditto.
865         (elmo-imap4-buffer-string): Ditto.
866         (elmo-imap4-astring-subr): Ditto.
867         (elmo-imap4-astring): Ditto.
868         (elmo-imap4-buffer-astring): Ditto.
869         (elmo-imap4-nstring): Ditto.
870         (elmo-imap4-buffer-nstring): Ditto.
871         (elmo-imap4-mailbox): New alias.
872         (elmo-imap4-field-body): Ditto.
873         (elmo-imap4-userid): Ditto.
874         (elmo-imap4-password): Ditto.
875         (elmo-imap4-format-quoted): New function.
876         (elmo-imap4-send-command): Rewritten.  Accept a list of command
877         arguments and handle "atom", "quoted" and "literal" string here.
878         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
879         `elmo-imap4-send-command'.
880         (elmo-imap4-folder-exists-p): Likewise.
881         (elmo-imap4-create-folder): Likewise.
882         (elmo-imap4-delete-folder): Likewise.
883         (elmo-imap4-rename-folder): Likewise.
884         (elmo-imap4-max-of-folder): Likewise.
885         (elmo-imap4-check-validity): Likewise.
886         (elmo-imap4-sync-validity): Likewise.
887         (elmo-imap4-server-diff): Likewise.
888         (elmo-imap4-select-folder): Likewise.
889         (elmo-imap4-copy-msgs): Likewise.
890         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
891         (elmo-imap4-mark-set-on-msgs): Likewise.
892         (elmo-imap4-read-part): Likewise.
893         (elmo-imap4-read-msg): Likewise.
894         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
895         `elmo-imap4-password' for `elmo-imap4-send-command'.
896         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
897         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
898         `elmo-imap4-buffer-literal'.
899         (elmo-imap4-append-msg): Likewise.
900
901         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
902         `delete' for removing dead connection from the connection cache.
903         Move deletion of the process buffer after that.
904         (elmo-imap4-list): Change `defsubst' to `defun'.
905         (elmo-imap4-commit): Make error message verbose.
906         (elmo-imap4-search): Ditto.
907         (elmo-imap4-list): Ditto.
908         (elmo-imap4-select-folder): Ditto.
909         (elmo-imap4-copy-msgs): Ditto.
910         (elmo-imap4-delete-msg-by-id): Ditto.
911         (elmo-imap4-append-msg-by-id): Ditto.
912         (elmo-imap4-append-msg): Ditto.
913
914 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
915
916         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
917         when dired is used on XEmacs.
918
919 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
920
921         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
922         instead of `append'.
923         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
924         `elmo-plugged-p' directly.
925         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
926         of `elmo-plugged-p' directly.
927
928         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
929         Eliminate unused variable.  Use `memq' for checking a process status.
930         Use `cons' instead of `append' for updating the connection cache.
931         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
932         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
933
934 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
935
936         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
937         `elmo-imap4-read-point' exactly.
938
939         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
940         the local variable `folder' to `mailbox'.
941         Rename the argument `fld' to `folder'.
942
943 2000-07-20  Kenichi OKADA  <okada@opaopa.org>
944
945         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
946         * elmo-imap4.el (elmo-imap4-commit): Ditto.
947
948 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
949
950         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
951         (elmo-pop3-number-uidl-hash): New buffer-local variable.
952         (elmo-pop3-uidl-number-hash): Ditto.
953         (elmo-pop3-size-hash): Ditto.
954         (elmo-pop3-uidl-done): Ditto.
955         (elmo-pop3-list-done): Ditto.
956         (elmo-pop3-connection-get-process): New defmacro.
957         (elmo-pop3-connection-get-buffer): Ditto.
958         (elmo-pop3-close-connection): Delete buffer and process.
959         (elmo-pop3-flush-connection): Don't delete buffer and process.
960         (elmo-pop3-get-connection): Added optional argument `if-exists'.
961         Setup UIDL and size hash.
962         (elmo-pop3-send-command-no-erase): Deleted
963         (elmo-pop3-send-command): Added optional argument `no-erase'.
964         (elmo-pop3-parse-uidl-response): New function.
965         (elmo-pop3-parse-list-response): Set size hash.
966         (elmo-pop3-list-location): New function.
967         (elmo-pop3-list-by-uidl-subr): Ditto.
968         (elmo-pop3-list-by-list): Ditto.
969         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
970         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
971         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
972         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
973         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
974         Use uidl.
975         (elmo-pop3-uidl-to-number): New function.
976         (elmo-pop3-number-to-uidl): Ditto.
977         (elmo-pop3-number-to-size): Ditto.
978         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
979         Set number by use of uidl.
980         (elmo-pop3-msgdb-create-message): Likewise.
981         Set size, loc-alist in msgdb.
982         (elmo-pop3-read-msg): Set number by use of uidl.
983         Added optional argument `msgdb'.
984         (elmo-pop3-delete-msg): Ditto.
985         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
986         (elmo-pop3-commit): Close connection.
987
988         * elmo-pipe.el (elmo-pipe-max-of-folder):
989         Bind `elmo-pop3-use-uidl' as nil.
990         (elmo-pipe-drain): Ditto.
991         Call `elmo-commit'.
992
993         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
994         (elmo-msgdb-overview-entity-set-size): New defsubst.
995
996 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
997
998         * elmo-vars.el (elmo-use-killed-list): New variable
999         (Renamed from `elmo-nntp-use-killed-list').
1000         (elmo-nntp-use-killed-list): Eliminated.
1001
1002         * elmo-msgdb.el (elmo-msgdb-expand-path):
1003         Changed expanding msgdb path for elmo-multi.
1004
1005         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
1006         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
1007         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
1008         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
1009         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
1010         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
1011         (toplevel): Deleted time-stamp line.
1012
1013         * elmo2.el (elmo-clear-killed ): Defined as function
1014         (Abolished defining as a backend function).
1015         All other related modules are changed.
1016
1017 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
1018
1019         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
1020
1021 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
1022
1023         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
1024
1025 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
1026
1027         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
1028
1029 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
1030
1031         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
1032         asynchronous folder check.
1033
1034         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
1035
1036         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
1037         `elmo-nntp-use-killed-list'.
1038         (elmo-nntp-list-folder): Use killed list.
1039         (elmo-nntp-max-of-folder): Ditto.
1040         (elmo-nntp-msgdb-create): Set killed list.
1041
1042         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
1043
1044         * elmo2.el (elmo-clear-killed): New backend function.
1045         All other related modules are changed.
1046
1047 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
1048
1049         * elmo-util.el (elmo-imap4-spec-folder): Use
1050         `elmo-imap4-spec-mailbox'; Mark as obsolete.
1051         All callers changed.
1052
1053 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
1054
1055         * mmelmo-2.el (initialize-instance):
1056         Use `mime-buffer-entity-buffer-internal' instead of
1057         `mime-entity-buffer'.
1058
1059         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
1060         (mime-entity-body): Implemented.
1061         (mime-goto-header-start-point): Deleted.
1062         (mime-goto-body-end-point): Ditto.
1063         (mime-entity-point-min): Ditto.
1064         (mime-entity-point-max): Ditto.
1065         (mime-entity-children): Ditto.
1066         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
1067         instead of `mime-entity-buffer'.
1068         (mime-entity-header-buffer): Ditto.
1069         (mime-entity-body-buffer): Ditto.
1070         (mime-write-entity-content): Ditto.
1071
1072         * pldap.el (ldap-static-if): New macro.
1073         (toplevel): Use it instead of `static-if'.
1074
1075 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
1076
1077         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
1078         included in `attrs' argument.
1079
1080 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
1081
1082         * elmo-util.el (elmo-get-passwd): Use old backquote style.
1083
1084         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
1085         (ldap-ldif-safe-init-char-regexp): Ditto.
1086         (ldap-ldif-safe-string-regexp): Ditto.
1087         (ldap/ldif-safe-string-p): New macro.
1088         (ldap/ldif-insert-field): Ditto.
1089         (ldap-modify): Use it.
1090         (ldap-add): Ditto.
1091         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
1092         (ldap-decode-attribute): Decode only when `attr' is consp.
1093         (ldap-delete): Bind `ret'.
1094         (toplevel): Require 'cl at compile time.
1095         Removed (require 'poe) and (require 'std11).
1096         (pldap-version): Eliminated.
1097         (ldap-search-basic): Removed auth and dn binding.
1098         (ldap-ldif-field-name-regexp): New constant.
1099         (ldap-ldif-field-head-regexp): Ditto.
1100         (ldap-ldif-next-field-head-regexp): Ditto.
1101         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
1102         (ldap/field-end): New function.
1103         (ldap/field-body): Use it.
1104         (ldap/collect-field): Ditto.
1105         (ldap-search-basic): Use `ldap/field-body'.
1106
1107 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
1108
1109         * pldap.el (ldap-default-attribute-encoder): New user option.
1110         (ldap/field-body): Decode base64 string.
1111         (ldap/collect-field): Ditto.
1112         (ldap-encode-attribute): New function.
1113         (ldap-add-entries): Use it.
1114         (ldap-modify-entries): Ditto.
1115         (ldap-search-entries): Enclosed decoding function with
1116         `with-temp-buffer' and set as unibyte.
1117         (ldap-search-basic): Set process buffer as unibyte.
1118
1119         * elmo-util.el (elmo-folder-identical-system-p):
1120         Eliminated name space checking.
1121
1122         * pldap.el: New module.
1123         toplevel: Changed condition to detect built-in ldap feature.
1124         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
1125         (ldap-add): Added error handling.
1126         (ldap-modify): Ditto.
1127         (ldap-delete): Ditto.
1128
1129 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
1130
1131         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
1132         Initialize local variables with `let'.  Inline a temporary
1133         variable for the progress percentage.  Sort `setq' to reduce
1134         function call in the while-loop.
1135
1136         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
1137         into the conditional branch.
1138
1139 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
1140
1141         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
1142         Move a conditional out of the while-loop.
1143
1144 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1145
1146         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
1147         elmo-msgdb-overview-get-entity-by-number.
1148         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
1149         throw.
1150
1151 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
1152
1153         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
1154         the local variable for a packed number self descriptively.
1155
1156 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1157
1158         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
1159         * elmo-localdir.el (elmo-localdir-pack-number): Use
1160         `elmo-msgdb-overview-get-entity' instead of
1161         `elmo-msgdb-overview-get-entity-by-number'.
1162         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
1163         (elmo-msgdb-search-overview-entity): Removed.
1164         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
1165         by message-id or number.
1166         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
1167         instead of `elmo-msgdb-overview-get-entity-by-number'.
1168
1169 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1170
1171         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
1172         non-nil, use hash table for overview.
1173         (elmo-hash-maximum-size): New variable.
1174         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
1175         (elmo-msgdb-make-overview-hashtb): New function.
1176         (elmo-msgdb-clear-overview-hashtb): New function.
1177         (elmo-clear-hash-val): New macro.
1178         All other related modules are changed.
1179
1180 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
1181
1182         * elmo2.el (elmo-move-msgs): If there's other message with
1183         same message-id, don't use cache.
1184
1185 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
1186
1187         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
1188         number is already packed.
1189
1190 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
1191
1192         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
1193
1194 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1195
1196         * elmo-vars.el (elmo-display-progress-threshold): New variable.
1197         All other related modules are changed.
1198
1199 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
1200
1201         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
1202         of refiling failure on Maildir.
1203
1204 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1205
1206         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
1207         decoded mime-charset with cache.
1208         (elmo-msgdb-overview-entity-get-from): Ditto.
1209         (elmo-msgdb-overview-entity-get-subject): Ditto.
1210         * elmo-vars.el (elmo-use-decoded-cache): New variable.
1211
1212 2000-05-10  Kenichi OKADA  <okada@opaopa.org>
1213
1214         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
1215         (elmo-remove-passwd): Fill password with 0 before erase.
1216         * elmo-vars.el (elmo-passwd-life-time): New variable.
1217
1218 \f
1219 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
1220
1221         * elmo-cache.el (elmo-buffer-cache-add):
1222         Set message cache buffer as unibyte.
1223
1224 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
1225
1226         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
1227         become nil.
1228
1229 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
1230
1231         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
1232         when display is finished.
1233         (elmo-nntp-msgdb-create): Ditto.
1234         (elmo-nntp-groups-read-response): Ditto.
1235         (elmo-nntp-retrieve-headers): Ditto.
1236         (elmo-nntp-msgdb-create-message): Ditto.
1237         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
1238         (elmo-pop3-msgdb-create-message): Ditto.
1239
1240 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
1241
1242         * elmo-maildir.el (elmo-maildir-msgdb-create):
1243         Use `elmo-msgdb-sort-by-date'.
1244
1245 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
1246
1247         * elmo2.el (elmo-read-msg-no-cache):
1248         Eliminated arguments after `outbuf'.
1249         Don't use cache even if it exists.
1250         (elmo-read-msg): Don't pass arguments after `outbuf' to
1251         `elmo-read-msg-no-cache'.
1252
1253 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
1254
1255         * elmo-archive.el (elmo-archive-list-folders):
1256         Use `file-name-directory' if base folder does not exist.
1257
1258 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
1259
1260         * elmo-archive.el (elmo-archive-list-folders): Don't use
1261         `file-name-directory'.
1262
1263 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
1264
1265         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
1266         If `force' is non-nil, try flushing all operation queues.
1267
1268 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
1269
1270         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
1271         as-binary-process.
1272
1273 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
1274
1275         * elmo-util.el (elmo-display-progress): Fixed.
1276
1277 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
1278
1279         * elmo-util.el (elmo-display-progress): New function.
1280         All other related modules are changed.
1281