* elmo2.el (elmo-folder-diff-async-callback): New variable.
[elisp/wanderlust.git] / elmo / ChangeLog
1 2000-09-25  Yuuichi Teranishi  <teranisi@gohome.org>
2
3         * elmo2.el (elmo-folder-diff-async-callback): New variable.
4         (elmo-folder-diff-async-callback-data): Ditto.
5         (elmo-folder-diff-async): New function.
6
7         * elmo-net.el (elmo-network-session-name-prefix): New variable.
8         (elmo-network-session-cache-key): Use it as a prefix of the session
9         name.
10         (elmo-network-open-session): Ditto.
11
12         * elmo-imap4.el (elmo-imap4-status-callback): New local variable.
13         (elmo-imap4-status-callback-data): Ditto.
14         (elmo-imap4-server-diff-async-callback): New variable.
15         (elmo-imap4-server-diff-async-callback-data): Ditto.
16         (elmo-imap4-local-variables): Added `elmo-imap4-status-callback' and
17         `elmo-imap4-status-callback-data'.
18         (elmo-imap4-max-of-folder): Set `elmo-imap4-status-callback' and
19         `elmo-imap4-status-callback-data' as nil.
20         (elmo-imap4-server-diff): Ditto.
21         (elmo-imap4-server-diff-async-callback-1): New function.
22         (elmo-imap4-server-diff-async): Ditto.
23         (elmo-imap4-parse-status): Call `elmo-imap4-status-callback'.
24
25 2000-09-24  OKAZAKI Tetsurou  <okazaki@be.to>
26
27         * elmo-util.el (elmo-list-delete): Doc fix.
28         (elmo-delete-lists): Abolish.
29         * elmo2.el (elmo-crosspost-message-delete): Use `elmo-list-delete'
30         instead of `elmo-delete-lists'.
31
32 2000-09-19  Yuuichi Teranishi  <teranisi@gohome.org>
33
34         * elmo-imap4.el (elmo-imap4-make-number-set-list): Copy `msg-list'
35         before `sort'.
36
37 2000-09-18  OKAZAKI Tetsurou  <okazaki@be.to>
38
39         * elmo-imap4.el (elmo-imap4-literal-1): Renamed from
40         `elmo-imap4-literal-subr'.
41         (elmo-imap4-string-1): Renamed from `elmo-imap4-string-subr'.
42         (elmo-imap4-astring-1): Renamed from `elmo-imap4-astring-subr'.
43
44 2000-09-15  Kenichi OKADA <okada@opaopa.org>
45
46         * elmo-archive.el (elmo-archive-list-folder-subr): Fix.
47         (elmo-archive-list-folder): Fix.
48         (elmo-archive-max-of-folder): Fix.
49
50 2000-09-15  Kenichi OKADA <okada@opaopa.org>
51
52         * elmo-localdir.el (elmo-localdir-copy-msgs): Use
53          `elmo-localdir-max-of-folder' instead of 'elmo-localdir-list-folder-subr'.
54         (elmo-localdir-append-msg): Ditto.
55         (elmo-localdir-list-folder): Fix for `nonsort'.
56         (elmo-localdir-list-folder-subr): Fix for `killed'.
57         * elmo-maildir.el (elmo-maildir-list-folder): Ditto.
58         (elmo-maildir-list-folder-subr): Ditto.
59         * elmo-archive.el (elmo-archive-list-folder): Ditto.
60         (elmo-archive-list-folder-subr): Ditto.
61         * elmo-internal.el (elmo-internal-list-folder): Ditto.
62         (elmo-internal-list-folder-subr): Ditto.
63
64 2000-09-13  Yuuichi Teranishi  <teranisi@gohome.org>
65
66         * elmo-imap4.el (elmo-imap4-parse-flag-list): Rewrite.
67
68 2000-09-12  Katsumi Yamaoka    <yamaoka@jpl.org>
69
70         * elmo-util.el (elmo-delete-plugged): Fix parenthesis.
71
72 2000-09-11  Yuuichi Teranishi  <teranisi@gohome.org>
73
74         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity):
75         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
76
77         * elmo-imap4.el (elmo-network-initialize-session): Skip garbage output
78         before greeting.
79         (elmo-imap4-read-part): Use "body.peek" to fetch part.
80         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'.
81
82 2000-09-06  Yuuichi Teranishi  <teranisi@gohome.org>
83
84         * mmelmo-imap4-2.el (mime-entity-children): Defined.
85
86         * elmo-imap4.el (elmo-imap4-mark-set-on-msgs):
87         Clear `elmo-imap4-fetch-callback' and `elmo-imap4-fetch-callback-data'
88         before STORE command.
89
90 2000-09-04  Yuuichi Teranishi  <teranisi@gohome.org>
91
92         * elmo2.el (elmo-multi-folder-diff): Fixed problem of filter folder.
93
94         * elmo-imap4.el (elmo-imap4-authenticator-alist): Added `plain' entry.
95         (elmo-imap4-send-command): Use `elmo-imap4-current-response' instead
96         of `response'.
97         (elmo-imap4-list-folders): Removed unused local variable.
98         (elmo-network-initialize-session): Ditto.
99         (elmo-imap4-delete-msg-by-id): Ditto.
100         (elmo-imap4-parse-fetch): Ditto.
101         (elmo-imap4-copy-msgs): Ditto.
102         Use `dst-spec' instead of `dst-folder'.
103         (elmo-network-authenticate-session): Check authenticate type `plain'.
104
105 2000-09-01  Yuuichi Teranishi  <teranisi@gohome.org>
106
107         * elmo-imap4.el (elmo-imap4-parse-response): Use string-match for
108         garbage checking.
109         (elmo-imap4-read-part): Use `elmo-imap4-response-value-all' instead of
110         `elmo-imap4-response-value'.
111         (elmo-imap4-parse-response): Return value of `EXPUNGE'.
112
113 2000-08-31  Yuuichi Teranishi  <teranisi@gohome.org>
114
115         * elmo-imap4.el (elmo-imap4-send-command):
116         Cause elmo-imap4-bye-error when current response is BYE.
117         (elmo-imap4-arrival-filter): Changed greeting response value.
118
119         * elmo2.el (elmo-imap4-bye-error): Define.
120
121         * elmo-imap4.el (elmo-imap4-list): Don't call `elmo-imap4-commit'.
122         (elmo-imap4-server-diff): Ditto.
123         (elmo-imap4-response-bye-p): New macro.
124         (elmo-imap4-response-error-text): Get text from BYE response.
125         (elmo-imap4-read-response): Return if BYE response.
126         (elmo-imap4-accept-ok): Cause elmo-imap4-bye-error when BYE response.
127         (elmo-imap4-folder-exists-p): Ditto.
128         (elmo-imap4-commit): Do nothing when different mailbox is selected.
129         (elmo-imap4-parse-bye): New function.
130         (elmo-imap4-parse-response): Remove needless let.
131         Call `elmo-imap4-parse-bye'.
132
133 2000-08-30  Yuuichi Teranishi  <teranisi@gohome.org>
134
135         * elmo-imap4.el (elmo-imap4-folder-exists-p): Don't cause an error when
136         the mailbox does not exist.
137         (elmo-imap4-parse-namespace): Copy `elmo-imap4-extra-namespace-alist'.
138
139 2000-08-30  OKAZAKI Tetsurou  <okazaki@be.to>
140
141         * elmo-imap4.el (elmo-imap4-send-command): Remove unused local variable.
142
143 2000-08-29  Yuuichi Teranishi  <teranisi@gohome.org>
144
145         * elmo-vars.el (elmo-search-mime-charset): Abolished.
146
147         * elmo-pop3.el (elmo-pop3-local-variables): New variable.
148         (elmo-network-initialize-session-buffer): Defined.
149
150         * mmelmo-imap4-2.el (mmelmo-imap4-parse-bodystructure-string):
151         Abolished.
152         (mmelmo-imap4-get-mime-entity): Rewrite.
153
154         * elmo2.el (elmo-error): Capitalize error message.
155
156         * elmo-net.el (elmo-network-initialize-session-buffer): New method.
157         (elmo-network-session-buffer): New macro.
158         (elmo-network-open-session): Use it.
159
160         * elmo-imap4.el: Rewrite.
161
162 2000-08-27 Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>
163
164         * elmo-nntp.el (Toplevel): Require 'elmo-net.
165
166 2000-08-27   Daiki Ueno  <ueno@unixuser.org>
167
168         * elmo-imap4.el (elmo-imap4-make-address): Abolish.
169         (elmo-imap4-msgdb-create): Don't request ENVELOPE.
170         (elmo-imap4-create-msgdb-from-overview-string): Use
171         `elmo-msgdb-create-overview-from-buffer'.
172
173 2000-08-26   Daiki Ueno  <ueno@unixuser.org>
174
175         * elmo-imap4.el (elmo-imap4-parse-namespace): Tolerate INBOX regexp.
176         (elmo-imap4-default-hierarchy-delimiter): New variable.
177         (elmo-imap4-list-folders): Use it.
178
179 2000-08-23  Yuuichi Teranishi  <teranisi@gohome.org>
180
181         * elmo-net.el (elmo-network-open-session): Add user and
182         stream-type for process-buffer name.
183
184         * elmo-pop3.el (elmo-network-initialize-session): Call
185         buffer-disable-undo.
186
187         * elmo-imap4.el (elmo-network-initialize-session):
188         Set current-buffer as an argument for `buffer-disable-undo'.
189
190         * elmo-pop3.el (elmo-network-close-session): Don't use
191         `process-live-p'.
192
193         * elmo-vars.el (elmo-default-pop3-authenticate-type):
194         Set default as 'user.
195
196         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rewrite.
197
198         * elmo2.el (elmo-quit): Don't use `elmo-pop3-flush-connection'
199         and `elmo-imap4-flush-connection'.
200
201         * elmo-util.el (toplevel): Removed workaround for timezone y2k.
202         (elmo-pop3-get-spec): Assume auth as symbol.
203         (elmo-open-network-stream): Moved to `elmo-net'.
204
205         * elmo-pop3.el (toplevel): Require 'elmo-net.
206         Define `sasl-cram-md5' to silence byte compilier.
207         (elmo-pop3-connection-cache) Abolished.
208         (elmo-pop3-authenticator-alist) New variable.
209         (elmo-pop3-session): Define.
210         (elmo-pop3-connection-get-process): Abolished.
211         (elmo-pop3-connection-get-buffer): Ditto.
212         (elmo-pop3-close-connection): Ditto.
213         (elmo-pop3-flush-connection): Ditto.
214         (elmo-pop3-get-connection): Ditto.
215         (elmo-pop3-get-session): New function.
216         (Replacement for `elmo-pop3-get-connection').
217         All other related modules are changed.
218         (elmo-network-close-session): Define.
219         (elmo-pop3-send-command): Abolished argument `buffer'.
220         All other related modules are changed.
221         (elmo-pop3-read-response): Likewise.
222         (elmo-pop3-open-connection): Abolished.
223         (elmo-pop3-auth-user): New function.
224         (elmo-pop3-auth-apop): Ditto.
225         (elmo-pop3-auth-cram-md5): Ditto.
226         (elmo-pop3-auth-scram-md5): Ditto.
227         (elmo-pop3-auth-digest-md5): Ditto.
228         (elmo-network-initialize-session): Define.
229         (elmo-network-authenticate-session): Ditto.
230         (elmo-network-setup-session): Ditto.
231
232         * elmo-imap4.el (toplevel): Require 'elmo-net.
233         (elmo-imap4-session): Define.
234         (elmo-imap4-connection-cache): Abolished.
235         (elmo-imap4-password-key): Ditto.
236         (elmo-imap4-flush-connection): Ditto.
237         (elmo-imap4-get-connection): Ditto.
238         All other related modules are changed.
239         (elmo-imap4-get-session): New function
240         (Replacement for `elmo-imap4-get-connection').
241         (elmo-imap4-read-response): Abolished argument `buffer'.
242         All other related modules are changed.
243         (elmo-imap4-send-command): Likewise.
244         (elmo-imap4-select-folder): Abolished.
245         All other related modules are changed.
246         (elmo-imap4-select-mailbox): New function.
247         (Replacement for `elmo-imap4-select-folder').
248         (elmo-imap4-auth-login): Simplify.
249         (Assume current buffer as process buffer)
250         (elmo-imap4-auth-cram-md5): Ditto.
251         (elmo-imap4-auth-digest-md5): Ditto.
252         (elmo-imap4-login): Ditto.
253         (elmo-imap4-open-connection): Abolished.
254         (elmo-imap4-open-connection-1): Abolished.
255         (elmo-network-initialize-sessoin): Define.
256         (elmo-network-authenticate-session): Ditto.
257         (elmo-network-setup-session): Ditto.
258
259         * elmo-net.el: New module.
260
261 2000-08-22   Daiki Ueno  <ueno@unixuser.org>
262
263         * elmo-util.el (elmo-define-error): New function.
264
265         * elmo2.el (elmo-error): Define.
266         (elmo-open-error): Define.
267         (elmo-authenticate-error): Define.
268
269         * elmo-imap4.el (elmo-imap4-error): Abolish.
270         (elmo-imap4-error-type): Abolish.
271         (elmo-imap4-error-process): Abolish.
272         (elmo-imap4-error-message): Abolish
273         (elmo-imap4-list-folders): Don't quote lambda.
274         (elmo-imap4-create-msgdb-from-overview-string): Ditto.
275         (elmo-imap4-parse-namespace): Ditto.    
276         (elmo-imap4-open-connection): Rewrite.
277         (elmo-imap4-open-connection-1): Simplified (authenticate only).
278         (elmo-imap4-get-connection): Abolish local variable `result'.
279
280 2000-08-21  Kaoru Takahashi  <kaoru@kaisei.org>
281
282         * elmo-imap4.el (elmo-imap4-open-connection-1): Fixed probrem
283         wrong-type-argument error when auth is nil.
284
285 2000-08-21  Yuuichi Teranishi  <teranisi@gohome.org>
286
287         * elmo-vars.el (elmo-default-imap4-stream-type): New variable.
288         (elmo-default-nntp-stream-type): Ditto.
289         (elmo-default-pop3-stream-type): Ditto.
290         (elmo-network-stream-type-alist): Ditto.
291         (elmo-default-imap4-ssl): Abolished.
292         (elmo-default-nntp-ssl): Ditto.
293         (elmo-default-pop3-ssl): Ditto.
294
295         * elmo-util.el: (toplevel): Removed needless requires.
296         (elmo-network-get-spec): Use `elmo-network-stream-type-alist'.
297         (elmo-open-network-stream): Open network stream according to
298         the value of `elmo-network-stream-type-alist'.
299         (elmo-get-network-stream-type): New function.
300         (elmo-network-stream-type-spec-string): New macro.
301         (elmo-network-stream-type-symbol): Ditto.
302         (elmo-network-stream-type-function): Ditto.
303
304         * elmo-pop3.el (elmo-pop3-get-connection): Follow up changes for
305         network-stream-type. All other related portions are changed.
306         (elmo-pop3-open-connection): Ditto.
307
308         * elmo-nntp.el (elmo-nntp-setting): Follow up changes for
309         network-stream-type. All other related portions are changed.
310
311         * elmo-imap4.el (elmo-imap4-get-connection): Follow up changes for
312         network-stream-type.All other related portions are changed.
313         (elmo-imap4-error): New macro.
314         (elmo-imap4-error-type): Ditto.
315         (elmo-imap4-error-process): Ditto.
316         (elmo-imap4-error-message): Ditto.
317         (elmo-imap4-auth-login): Use `elmo-imap4-error'.
318         (elmo-imap4-auth-cram-md5): Ditto.
319         (elmo-imap4-auth-digest-md5): Ditto.
320         (elmo-imap4-login): Ditto.
321         (elmo-imap4-open-connection): Remove password entry if authentication
322         was in vain.
323         (elmo-imap4-user-at-host): Abolished.
324         (elmo-imap4-password-key): New buffer local variable.
325         (elmo-imap4-open-connection-1): Set value of `elmo-imap4-password-key'
326         using protocol, port, auth and stream-type.
327
328         * elmo-dop.el (elmo-dop-list-folder): Use killed list.
329
330 2000-08-13   Daiki Ueno  <ueno@unixuser.org>
331
332         * elmo-vars.el (elmo-default-imap4-authenticate-type): Default to nil.
333
334         * elmo-util.el (elmo-imap4-get-spec): Assume auth as symbol.
335
336         * elmo-imap4.el (elmo-imap4-user-at-host): New variable.
337         (elmo-imap4-authenticator-alist): New variable.
338         (elmo-imap4-open-connection-1): Rename from
339         elmo-imap4-open-connection.
340         (elmo-imap4-open-connection): Abolish 5th argument `passphrase';
341         only wraps elmo-imap4-open-connection-1.
342         (elmo-imap4-get-connection): Abolish local variable buffer, proc-stat,
343         user-at-host.
344         (elmo-imap4-auth-login): New function.
345         (elmo-imap4-auth-cram-md5): New function.
346         (elmo-imap4-auth-digest-md5): New function.
347         (elmo-imap4-login): New function.
348
349 2000-08-12  Kenichi OKADA <okada@opaopa.org>
350
351         * elmo-maildir.el (elmo-maildir-delete-folder): Set argument of the
352         function `error'.
353
354 2000-08-12  Kenichi OKADA <okada@opaopa.org>
355
356         * elmo-pop3.el (elmo-pop3-get-connection): Add `signal'.
357
358 2000-08-08  Yuuichi Teranishi  <teranisi@gohome.org>
359
360         * elmo2.el (elmo-move-msgs): Set value of `unseen'.
361
362 2000-08-06  OKAZAKI Tetsurou  <okazaki@be.to>
363
364         * elmo-imap4.el (elmo-imap4-parse-overview-string): In regexps
365         for server responses, quote `*' regardless of where it appears.
366
367 2000-08-03  Kenichi OKADA <okada@opaopa.org>
368
369         * elmo-maildir.el (elmo-maildir-commit): New alias.
370
371 2000-08-03  Kenichi OKADA <okada@opaopa.org>
372
373         * elmo-util.el (elmo-display-progress):
374                 Use `progress-feedback-with-label'.
375
376 2000-08-02  OKAZAKI Tetsurou  <okazaki@be.to>
377
378         * elmo-imap4.el (elmo-imap4-quoted-specials-list): New constant.
379         (elmo-imap4-non-atom-char-regex): Ditto.
380         (elmo-imap4-non-text-char-regex): Ditto.
381         (elmo-imap4-literal-threshold): Ditto.
382         (elmo-imap4-atom-p): New function.
383         (elmo-imap4-quotable-p): Ditto.
384         (elmo-imap4-nil): Ditto.
385         (elmo-imap4-atom): Ditto.
386         (elmo-imap4-quoted): Ditto.
387         (elmo-imap4-literal-subr): Ditto.
388         (elmo-imap4-literal): Ditto.
389         (elmo-imap4-buffer-literal): Ditto.
390         (elmo-imap4-string-subr): Ditto.
391         (elmo-imap4-string): Ditto.
392         (elmo-imap4-buffer-string): Ditto.
393         (elmo-imap4-astring-subr): Ditto.
394         (elmo-imap4-astring): Ditto.
395         (elmo-imap4-buffer-astring): Ditto.
396         (elmo-imap4-nstring): Ditto.
397         (elmo-imap4-buffer-nstring): Ditto.
398         (elmo-imap4-mailbox): New alias.
399         (elmo-imap4-field-body): Ditto.
400         (elmo-imap4-userid): Ditto.
401         (elmo-imap4-password): Ditto.
402         (elmo-imap4-format-quoted): New function.
403         (elmo-imap4-send-command): Rewritten.  Accept a list of command
404         arguments and handle "atom", "quoted" and "literal" string here.
405         (elmo-imap4-list-folders): Use `elmo-imap4-mailbox' for
406         `elmo-imap4-send-command'.
407         (elmo-imap4-folder-exists-p): Likewise.
408         (elmo-imap4-create-folder): Likewise.
409         (elmo-imap4-delete-folder): Likewise.
410         (elmo-imap4-rename-folder): Likewise.
411         (elmo-imap4-max-of-folder): Likewise.
412         (elmo-imap4-check-validity): Likewise.
413         (elmo-imap4-sync-validity): Likewise.
414         (elmo-imap4-server-diff): Likewise.
415         (elmo-imap4-select-folder): Likewise.
416         (elmo-imap4-copy-msgs): Likewise.
417         (elmo-imap4-search-internal): Use `elmo-imap4-astring'.
418         (elmo-imap4-mark-set-on-msgs): Likewise.
419         (elmo-imap4-read-part): Likewise.
420         (elmo-imap4-read-msg): Likewise.
421         (elmo-imap4-open-connection): Use `elmo-imap4-userid' and
422         `elmo-imap4-password' for `elmo-imap4-send-command'.
423         (elmo-imap4-delete-msg-by-id): Use `elmo-imap4-field-body'.
424         (elmo-imap4-append-msg-by-id): Use `elmo-imap4-mailbox' and
425         `elmo-imap4-buffer-literal'.
426         (elmo-imap4-append-msg): Likewise.
427
428         * elmo-imap4.el (elmo-imap4-get-connection): Use `delq' instead of
429         `delete' for removing dead connection from the connection cache.
430         Move deletion of the process buffer after that.
431         (elmo-imap4-list): Change `defsubst' to `defun'.
432         (elmo-imap4-commit): Make error message verbose.
433         (elmo-imap4-search): Ditto.
434         (elmo-imap4-list): Ditto.
435         (elmo-imap4-select-folder): Ditto.
436         (elmo-imap4-copy-msgs): Ditto.
437         (elmo-imap4-delete-msg-by-id): Ditto.
438         (elmo-imap4-append-msg-by-id): Ditto.
439         (elmo-imap4-append-msg): Ditto.
440
441 2000-07-26  Takaaki MORIYAMA <taka@airlab.cs.ritsumei.ac.jp>
442
443         * elmo-archive.el (elmo-archive-get-archive-name): Fixed problem
444         when dired is used on XEmacs.
445
446 2000-07-25  OKAZAKI Tetsurou  <okazaki@be.to>
447
448         * elmo-imap4.el (elmo-imap4-process-folder-list): Use `nconc'
449         instead of `append'.
450         (elmo-imap4-commit): Use `elmo-imap4-plugged-p' instead of
451         `elmo-plugged-p' directly.
452         * elmo-pop3.el (elmo-pop3-commit): Use `elmo-pop3-plugged-p' instead
453         of `elmo-plugged-p' directly.
454
455         * elmo-pop3.el (elmo-pop3-get-connection): Split temporary variable.
456         Eliminate unused variable.  Use `memq' for checking a process status.
457         Use `cons' instead of `append' for updating the connection cache.
458         * elmo-nntp.el (elmo-nntp-get-connection): Likewise.
459         * elmo-imap4.el (elmo-imap4-get-connection): Likewise.
460
461 2000-07-22  OKAZAKI Tetsurou  <okazaki@be.to>
462
463         * elmo-imap4.el (elmo-imap4-read-bytes): Advance
464         `elmo-imap4-read-point' exactly.
465
466         * mmelmo-imap4-2.el (mmelmo-imap4-get-mime-entity): Rename
467         the local variable `folder' to `mailbox'.
468         Rename the argument `fld' to `folder'.
469
470 2000-07-20  Kenichi OKADA <okada@opaopa.org>
471
472         * elmo-pop3.el (elmo-pop3-commit): Do nothing when unplugged.
473         * elmo-imap4.el (elmo-imap4-commit): Ditto.
474
475 2000-07-18  Yuuichi Teranishi  <teranisi@gohome.org>
476
477         * elmo-pop3.el (elmo-pop3-use-uidl): New variable.
478         (elmo-pop3-number-uidl-hash): New buffer-local variable.
479         (elmo-pop3-uidl-number-hash): Ditto.
480         (elmo-pop3-size-hash): Ditto.
481         (elmo-pop3-uidl-done): Ditto.
482         (elmo-pop3-list-done): Ditto.
483         (elmo-pop3-connection-get-process): New defmacro.
484         (elmo-pop3-connection-get-buffer): Ditto.
485         (elmo-pop3-close-connection): Delete buffer and process.
486         (elmo-pop3-flush-connection): Don't delete buffer and process.
487         (elmo-pop3-get-connection): Added optional argument `if-exists'.
488         Setup UIDL and size hash.
489         (elmo-pop3-send-command-no-erase): Deleted
490         (elmo-pop3-send-command): Added optional argument `no-erase'.
491         (elmo-pop3-parse-uidl-response): New function.
492         (elmo-pop3-parse-list-response): Set size hash.
493         (elmo-pop3-list-location): New function.
494         (elmo-pop3-list-by-uidl-subr): Ditto.
495         (elmo-pop3-list-by-list): Ditto.
496         (elmo-pop3-list-folder): Call `elmo-pop3-commit'.
497         Call `elmo-pop3-list-by-uidl-subr' or `elmo-pop3-list-by-list'.
498         (elmo-pop3-max-of-folder): Call `elmo-pop3-commit'.
499         Call `elmo-pop3-list-by-uidl-subr' if `elmo-pop3-use-uidl' is non-nil.
500         (elmo-pop3-msgdb-create-as-numlist): Added optional argument `msgdb'.
501         Use uidl.
502         (elmo-pop3-uidl-to-number): New function.
503         (elmo-pop3-number-to-uidl): Ditto.
504         (elmo-pop3-number-to-size): Ditto.
505         (elmo-pop3-msgdb-create-by-header): Added argument `loc-alist'.
506         Set number by use of uidl.
507         (elmo-pop3-msgdb-create-message): Likewise.
508         Set size, loc-alist in msgdb.
509         (elmo-pop3-read-msg): Set number by use of uidl.
510         Added optional argument `msgdb'.
511         (elmo-pop3-delete-msg): Ditto.
512         (elmo-pop3-delete-msgs): Added optional argument `msgdb'.
513         (elmo-pop3-commit): Close connection.
514
515         * elmo-pipe.el (elmo-pipe-max-of-folder):
516         Bind `elmo-pop3-use-uidl' as nil.
517         (elmo-pipe-drain): Ditto.
518         Call `elmo-commit'.
519
520         * elmo-msgdb.el (elmo-msgdb-delete-msgs): Delete location too.
521         (elmo-msgdb-overview-entity-set-size): New defsubst.
522
523 2000-07-17  Yuuichi Teranishi  <teranisi@gohome.org>
524
525         * elmo-vars.el (elmo-use-killed-list): New variable
526         (Renamed from `elmo-nntp-use-killed-list').
527         (elmo-nntp-use-killed-list): Eliminated.
528
529         * elmo-msgdb.el (elmo-msgdb-expand-path):
530         Changed expanding msgdb path for elmo-multi.
531
532         * elmo-archive.el, elmo-cache.el, elmo-database.el, elmo-date.el,
533         elmo-dop.el, elmo-filter.el, elmo-imap4.el, elmo-internal.el,
534         elmo-localdir.el, elmo-localnews.el, elmo-maildir.el, elmo-msgdb.el,
535         elmo-multi.el, elmo-nntp.el, elmo-pipe.el, elmo-pop3.el,
536         elmo-util.el, elmo-vars.el, elmo2.el, mmelmo-1.el, mmelmo-2.el,
537         mmelmo-imap4-1.el, mmelmo-imap4-2.el, mmelmo-imap4.el, mmelmo.el
538         (toplevel): Deleted time-stamp line.
539
540         * elmo2.el (elmo-clear-killed ): Defined as function
541         (Abolished defining as a backend function).
542         All other related modules are changed.
543
544 2000-07-14  Hiroshi Tsutsui <tsutsui@easter.kuee.kyoto-u.ac.jp>
545
546         * elmo-cache.el (elmo-cache-clear-killed): Fixed.
547
548 2000-07-13  Yuuichi Teranishi  <teranisi@gohome.org>
549
550         * elmo-msgdb.el (elmo-msgdb-append-to-killed-list): New function.
551
552 2000-07-12  Hiroya Murata  <lapis-lazuli@pop06.odn.ne.jp>
553
554         * elmo-pop3.el (elmo-pop3-clear-killed): New alias.
555
556 2000-07-11  Yuuichi Teranishi  <teranisi@gohome.org>
557
558         * elmo-nntp.el (elmo-nntp-max-of-folder): Use killed list in
559         asynchronous folder check.
560
561         * elmo2.el (elmo-move-msgs): Don't move message when buffer-size is 0.
562
563         * elmo-nntp.el (elmo-nntp-delete-msgs): Check the value of
564         `elmo-nntp-use-killed-list'.
565         (elmo-nntp-list-folder): Use killed list.
566         (elmo-nntp-max-of-folder): Ditto.
567         (elmo-nntp-msgdb-create): Set killed list.
568
569         * elmo-vars.el (elmo-nntp-use-killed-list): New user option.
570
571         * elmo2.el (elmo-clear-killed): New backend function.
572         All other related modules are changed.
573
574 2000-07-07  OKAZAKI Tetsurou  <okazaki@be.to>
575
576         * elmo-util.el (elmo-imap4-spec-folder): Use
577         `elmo-imap4-spec-mailbox'; Mark as obsolete.
578         All callers changed.
579
580 2000-06-22  Yuuichi Teranishi  <teranisi@gohome.org>
581
582         * mmelmo-2.el (initialize-instance):
583         Use `mime-buffer-entity-buffer-internal' instead of
584         `mime-entity-buffer'.
585
586         * mmelmo-imap4-2.el (mmelmo-imap4-mime-entity-buffer): New function.
587         (mime-entity-body): Implemented.
588         (mime-goto-header-start-point): Deleted.
589         (mime-goto-body-end-point): Ditto.
590         (mime-entity-point-min): Ditto.
591         (mime-entity-point-max): Ditto.
592         (mime-entity-children): Ditto.
593         (mime-insert-header): Use `mime-buffer-entity-buffer-internal'
594         instead of `mime-entity-buffer'.
595         (mime-entity-header-buffer): Ditto.
596         (mime-entity-body-buffer): Ditto.
597         (mime-write-entity-content): Ditto.
598
599         * pldap.el (ldap-static-if): New macro.
600         (toplevel): Use it instead of `static-if'.
601
602 2000-06-19  Yuuichi Teranishi  <teranisi@gohome.org>
603
604         * pldap.el (ldap-search-basic): Don't collect 'dn' value even if it is
605         included in `attrs' argument.
606
607 2000-06-16  Yuuichi Teranishi  <teranisi@gohome.org>
608
609         * elmo-util.el (elmo-get-passwd): Use old backquote style.
610
611         * pldap.el (ldap-ldif-safe-char-regexp): New constant.
612         (ldap-ldif-safe-init-char-regexp): Ditto.
613         (ldap-ldif-safe-string-regexp): Ditto.
614         (ldap/ldif-safe-string-p): New macro.
615         (ldap/ldif-insert-field): Ditto.
616         (ldap-modify): Use it.
617         (ldap-add): Ditto.
618         (ldap-search-basic): Consider `attrsonly' also when `attrs' is nil.
619         (ldap-decode-attribute): Decode only when `attr' is consp.
620         (ldap-delete): Bind `ret'.
621         (toplevel): Require 'cl at compile time.
622         Removed (require 'poe) and (require 'std11).
623         (pldap-version): Eliminated.
624         (ldap-search-basic): Removed auth and dn binding.
625         (ldap-ldif-field-name-regexp): New constant.
626         (ldap-ldif-field-head-regexp): Ditto.
627         (ldap-ldif-next-field-head-regexp): Ditto.
628         (ldap/collect-field): Use `ldap-ldif-field-head-regexp'.
629         (ldap/field-end): New function.
630         (ldap/field-body): Use it.
631         (ldap/collect-field): Ditto.
632         (ldap-search-basic): Use `ldap/field-body'.
633
634 2000-06-15  Yuuichi Teranishi  <teranisi@gohome.org>
635
636         * pldap.el (ldap-default-attribute-encoder): New user option.
637         (ldap/field-body): Decode base64 string.
638         (ldap/collect-field): Ditto.
639         (ldap-encode-attribute): New function.
640         (ldap-add-entries): Use it.
641         (ldap-modify-entries): Ditto.
642         (ldap-search-entries): Enclosed decoding function with
643         `with-temp-buffer' and set as unibyte.
644         (ldap-search-basic): Set process buffer as unibyte.
645
646         * elmo-util.el (elmo-folder-identical-system-p):
647         Eliminated name space checking.
648
649         * pldap.el: New module.
650         toplevel: Changed condition to detect built-in ldap feature.
651         (ldap-delete): Enclosed call-process with `with-temp-buffer'.
652         (ldap-add): Added error handling.
653         (ldap-modify): Ditto.
654         (ldap-delete): Ditto.
655
656 2000-06-03  OKAZAKI Tetsurou  <okazaki@be.to>
657
658         * elmo-localdir.el (elmo-localdir-msgdb-create-as-numlist):
659         Initialize local variables with `let'.  Inline a temporary
660         variable for the progress percentage.  Sort `setq' to reduce
661         function call in the while-loop.
662
663         * mmelmo.el (mmelmo-get-original-buffer): Move `save-excursion'
664         into the conditional branch.
665
666 2000-05-30  OKAZAKI Tetsurou  <okazaki@be.to>
667
668         * elmo2.el (elmo-move-msgs): Replace `append' with `nconc'.
669         Move a conditional out of the while-loop.
670
671 2000-05-27  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
672
673         * elmo-msgdb.el (elmo-msgdb-overview-get-entity): Use
674         elmo-msgdb-overview-get-entity-by-number.
675         (elmo-msgdb-overview-get-entity-by-number): Don't use catch and
676         throw.
677
678 2000-05-26  OKAZAKI Tetsurou  <okazaki@be.to>
679
680         * elmo-localdir.el (elmo-localdir-pack-number): Renamed
681         the local variable for a packed number self descriptively.
682
683 2000-05-21  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
684
685         * elmo2.el (elmo-msgdb-load): Remove elmo-msgdb-overview-hashtb.
686         * elmo-localdir.el (elmo-localdir-pack-number): Use
687         `elmo-msgdb-overview-get-entity' instead of
688         `elmo-msgdb-overview-get-entity-by-number'.
689         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): Removed.
690         (elmo-msgdb-search-overview-entity): Removed.
691         (elmo-msgdb-overview-get-entity): Change argument. Get overview entity
692         by message-id or number.
693         (elmo-msgdb-delete-msgs): Use `elmo-msgdb-overview-get-entity'
694         instead of `elmo-msgdb-overview-get-entity-by-number'.
695
696 2000-05-20  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
697
698         * elmo-vars.el (elmo-use-overview-hashtb): New variable. If
699         non-nil, use hash table for overview.
700         (elmo-hash-maximum-size): New variable.
701         * elmo-msgdb.el (elmo-msgdb-overview-hashtb): New variable.
702         (elmo-msgdb-make-overview-hashtb): New function.
703         (elmo-msgdb-clear-overview-hashtb): New function.
704         (elmo-clear-hash-val): New macro.
705         All other related modules are changed.
706
707 2000-05-18  Yuuichi Teranishi  <teranisi@gohome.org>
708
709         * elmo2.el (elmo-move-msgs): If there's other message with
710         same message-id, don't use cache.
711
712 2000-05-18  Nishimoto Masaki <nishimoto@gaju.org>
713
714         * elmo-localdir.el (elmo-localdir-pack-number): Fixed problem when
715         number is already packed.
716
717 2000-05-15  OKAZAKI Tetsurou  <okazaki@be.to>
718
719         * elmo-vars.el: Doc fixes. Trim trailing whitespace.
720
721 2000-05-12  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
722
723         * elmo-vars.el (elmo-display-progress-threshold): New variable.
724         All other related modules are changed.
725
726 2000-05-11  Yuuichi Teranishi  <teranisi@gohome.org>
727
728         * elmo-msgdb.el (elmo-msgdb-sort-by-date): Fixed a problem
729         of refiling failure on Maildir.
730
731 2000-05-10  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
732
733         * elmo-msgdb.el (elmo-msgdb-get-decoded-cache): get string of
734         decoded mime-charset with cache.
735         (elmo-msgdb-overview-entity-get-from): Ditto.
736         (elmo-msgdb-overview-entity-get-subject): Ditto.
737         * elmo-vars.el (elmo-use-decoded-cache): New variable.
738
739 2000-05-10  Kenichi OKADA <okada@opaopa.org>
740
741         * elmo-utils.el (elmo-get-passwd): Set timeout of password.
742         (elmo-remove-passwd): Fill password with 0 before erase.
743         * elmo-vars.el (elmo-passwd-life-time): New variable.
744
745 \f
746 2000-05-10  Yuuichi Teranishi  <teranisi@gohome.org>
747
748         * elmo-cache.el (elmo-buffer-cache-add):
749         Set message cache buffer as unibyte.
750
751 2000-05-07  Masahiro MURATA  <muse@ba2.so-net.ne.jp>
752
753         * elmo-archive.el (elmo-archive-list-folders): Fix base-folder
754         become nil.
755
756 2000-04-28  Yuuichi Teranishi  <teranisi@gohome.org>
757
758         * elmo-nntp.el (elmo-nntp-list-folders): Remove progress gauge
759         when display is finished.
760         (elmo-nntp-msgdb-create): Ditto.
761         (elmo-nntp-groups-read-response): Ditto.
762         (elmo-nntp-retrieve-headers): Ditto.
763         (elmo-nntp-msgdb-create-message): Ditto.
764         * elmo-pop3.el (elmo-pop3-retrieve-headers): Ditto.
765         (elmo-pop3-msgdb-create-message): Ditto.
766
767 2000-04-24  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
768
769         * elmo-maildir.el (elmo-maildir-msgdb-create):
770         Use `elmo-msgdb-sort-by-date'.
771
772 2000-04-20  Yuuichi Teranishi  <teranisi@gohome.org>
773
774         * elmo2.el (elmo-read-msg-no-cache):
775         Eliminated arguments after `outbuf'.
776         Don't use cache even if it exists.
777         (elmo-read-msg): Don't pass arguments after `outbuf' to
778         `elmo-read-msg-no-cache'.
779
780 2000-04-15  Yuuichi Teranishi  <teranisi@elmo.dq.isl.ntt.co.jp>
781
782         * elmo-archive.el (elmo-archive-list-folders):
783         Use `file-name-directory' if base folder does not exist.
784
785 2000-04-14  Nishimoto Masaki <nishimoto@gaju.org>
786
787         * elmo-archive.el (elmo-archive-list-folders): Don't use
788         `file-name-directory'.
789
790 2000-04-07  Yuuichi Teranishi  <teranisi@gohome.org>
791
792         * elmo-dop.el (elmo-dop-queue-flush): Add optional argument `force'.
793         If `force' is non-nil, try flushing all operation queues.
794
795 2000-04-03  Yuuichi Teranishi  <teranisi@gohome.org>
796
797         * elmo-pop3.el (elmo-pop3-open-connection): Enclose with
798         as-binary-process.
799
800 2000-03-29  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
801
802         * elmo-util.el (elmo-display-progress): Fixed.
803
804 2000-03-27  Daiki Ueno <ueno@kiss.kake.info.waseda.ac.jp>
805
806         * elmo-util.el (elmo-display-progress): New function.
807         All other related modules are changed.
808