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